Dữ liệu bị thiếu (missing)

Một phần của tài liệu ĐỀ TÀI TIỀN XỬ LÝ DỮ LIỆU (Trang 25 - 28)

Tưởng tượng là bạn cần phải phân tích dữ liệu bán hàng của AllElectronics và dữ liệu khách hàng. Chú ý là nhiều bộ có những giá trị không được lưu cho vài thuộc tính, chẳng hạn như thu nhập của khách hàng (income). Bạn có thể làm đầy những giá trị bị thiếu cho những thuộc tính đó như thế nào? Hãy xem những phương pháp sau:

1. Bỏ qua những bộ thiếu giá trị (Ignore the tuple): Phương pháp này thường dùng khi nhãn lớp bị thiếu (giả sử việc khai thác bao gồm phân lớp). Phương

pháp này không hiệu quả nếu bộ không chứa một vài thuộc tính bị mất giá trị. Nó đặc biệt tệ trong trường hợp số lượng giá trị bị thiếu trên mỗi thuộc tính lớn.

2. Làm đầy bằng tay: Tổng quát, cách tiếp cận này tốn nhiều thời gian và có thể không khả thi với một tập dữ liệu lớn có nhiều giá trị bị thiếu.

3. Làm đầy bằng hằng số toàn cục: Thay thế tất cả các giá trị bị thiếu bằng cùng một hằng số, như là một nhãn “Unknown” or -∞. Nếu những giá trị bị thiếu được thay thế bằng “Unknown” thì chương trình khai thác có thể gặp lỗi khi nghĩ rằng đó là một giá trị đáng lưu ý vì nó xuất hiện với tần số cao trong dữ liệu. Mặt dù phương pháp này đơn giản, nhưng nó không hiệu quả.

Ví dụ: các giá trị bị thiếu được thay thế bằng hằng “Unknown”

ID Age ID Age 01 10 01 10 02 02 Unknown 03 22 03 22 … … 20 20 20 20 21 21 Unknown … … 48 45 48 45 49 20 49 20 50 50 Unknown

4. Dùng giá trị trung bình của thuộc tính: Ví dụ, giá trị trung bình của thuộc tính tuổi là 35 thì giá trị đó được dùng để thay thế những giá trị bị thiếu trong thuộc tính tuổi. ID Age ID Age 01 10 01 10 02 02 35 03 22 03 22 … … 20 20 20 20 21 21 35 … … 48 45 48 45

49 20 49 20

50 50 35

5. Dùng giá trị trung bình của tất cả các bộ thuộc về cùng 1 lớp với bộ đã cho: Những giá trị bị thiếu sẽ được thay bằng giá trị trung bình của các giá trị thuộc cùng lớp với bộ bị thiếu. Phương pháp này gần giống với phương pháp 4 nhưng khác ở chỗ nếu phương pháp 4 thay thế bằng giá trị trung bình của tất cả các bộ thì phương pháp này thay bằng giá trị trung bình của các bộ thuộc cùng lớp với bộ đang xét.

Ví dụ: nếu phân chia khách hàng theo độ tuổi từ 1 – 20, 20 – 30, 30 – 50, … và mean của các giá trị thuộc lớp 20 – 30 là $45000 thì giá trị bị thiếu của thuộc tính income (thu nhập) ở bộ có ID bằng 03 sẽ được thay thế bằng $45000 (vì bộ 03 thuộc lớp 20 – 30).

ID Age Income ID Age Income

01 25 $50000 01 25 $50000

02 40 $40000 02 40 $40000

03 30 03 30 $45000

… …

6. Dùng giá trị có nhiều khả năng nhất (most probable): Phương pháp này có thể được quyết định bằng hồi quy, dựa vào những công cụ suy luận như là phương pháp Bayesian hoặc cây quyết định. Ví dụ, sử dụng những thuộc tính khác trong tập dữ liệu của bạn, bạn có thể xây dựng cây quyết định để dự đoán những giá trị bị thiếu của thuộc tính income. Cây quyết định, hồi quy hay phương pháp Bayesian được mô tả chi tiết trong chương 6.

Những giá trị được làm đầy có thể không chính xác. Tuy nhiên, phương pháp 6 là một chiến lược phổ biến. So với những phương pháp khác, nó sử dụng thông tin tốt nhất từ dữ liệu hiện có để dự đoán những giá trị bị thiếu. Bằng việc dùng những

giá trị của các thuộc tính khác để ước lượng những giá trị bị thiếu cho income, có một khả năng lớn hơn là mối quan hệ giữa income và những thuộc tính khác được bảo toàn.

Một lưu ý quan trọng là, trong một vài trường hợp, giá trị bị thiếu có thể không dẫn đến lỗi trong dữ liệu. Ví dụ, khi á p dụng cho credit card, những ứng viên có thể được yêu cầu cung cấp mã số bằng lái xe cua họ. Những ứng viên mà không có bằng lái xe sinhra một trường trống một cách tự nhiên. Những dạng đó nên cho phép những giá trị đặc biệt như là “not applicable”. Những công việc của phần mềm có thể được sử dụng để phát hiện những giá trị null khác, như là “don’t know”, “?”, hoặc “none”. Một thuộc tính nêncó một hoặc nhiều hơn những quy luật xem xét cho trường hợp null. Những quy luật đó có thể xác định cụ thể cho phép có giá trị null hay không, hoặc là những giá trị đó sẽ đuợc giải quyết hoặc chuẩn hóa như thế nào. Một trường có thể được để trống nếu nó được cung cấp trong bước tiếp theo của quá trình. Vì vậy, một thiết kế tốt của cơ sở dữ liệu và của quá trình nhập dữ liệu nên giảm đến mức tối thiểu số liệu những giá trị bị thiếu hoặc sai ngay từ bước đầu tiên.

Một phần của tài liệu ĐỀ TÀI TIỀN XỬ LÝ DỮ LIỆU (Trang 25 - 28)

Tải bản đầy đủ (PDF)

(81 trang)