Chuẩn bị dữ liệu

Một phần của tài liệu Các thuật toán phân cụm dữ liệu và ứng dụng trong phân loại protein (Trang 66 - 70)

CHƯƠNG 3. CHƯƠNG TRÌNH THỬ NGHIỆM

3.2. Cài đặt thử nghiệm thuật toán phân cụm dữ liệu trong phân loại Protein 55 1. Phát biểu bài toán

3.2.3. Chuẩn bị dữ liệu

Bộ dữ liệu đƣợc mô tả trong phần 2.3.2 không chứa đầy đủ giá trị của toàn bộ các thuộc tính. Do vậy trước khi áp dụng thuật toán phân cụm trên bộ dữ liệu này, cần áp dụng các kỹ thuật để xử lý các giá trị thiếu. Dưới đây là bốn kỹ thuật phổ biến đƣợc áp dụng:

 Loại bỏ các trường hợp thiếu giá trị

 Điền các giá trị thiếu bằng các giá trị trung bình hoặc trung vị

 Điền các giá trị thiếu sử dụng tương quan giữa các thuộc tính

 Điền các giá trị thiếu sử dụng sự tương tự giữa các mẫu

Phần dưới đây sẽ mô tả chi tiết từng kỹ thuật được áp dụng để xử lý các giá trị thiếu trong bộ dữ liệu.

3.2.3.1. Loại bỏ trường hợp thiếu giá trị

Đây là kỹ thuật đơn giản và dễ thực hiện nhất đối với trường hợp bộ dữ liệu có số lƣợng mẫu thiếu giá trị nhỏ hơn rất nhiều so với toàn bộ mẫu.

Với kỹ thuật này, tất cả các mẫu (bản ghi hoặc dòng) sẽ bị loại bỏ nếu nó chứa ít nhất một giá trị thiếu. Tuy vậy, với bộ dữ liệu mẫu mà có nhiều giá trị thiếu thì không khả thi khi áp dụng kỹ thuật này vì sẽ làm mất đi nhiều

58

mẫu có giá trị dẫn đến khi áp dụng các kỹ thuật khai phá dữ liệu sẽ thu đƣợc kết quả không tốt.

3.2.3.2. Thay thế các giá trị thiếu bằng giá trị trung bình hoặc trung vị Kỹ thuật này sẽ điền các giá trị thiếu trong bộ dữ liệu bằng các giá trị trung tâm trong thống kê, cụ thể là giá trị trung bình hoặc trung vị. Tuy vậy để lựa chọn giá trị trung bình hay trung vị, cần phụ thuộc vào sự phân bố của giá trị trên thuộc tính tương ứng.

Số trung vị là lƣợng biến của đơn vị tổng thể đứng ở vị trí giữa trong dãy số lƣợng biến đã đƣợc sắp xếp theo thứ tự tăng dần. Số trung vị phân chia dãy số lượng biến làm hai phần (phần trên và phần dưới số trung bình) mỗi phần có số đơn vị tổng thể bằng nhau.

Đối với các thuộc tính mà giá trị tuân theo phân bố chuẩn (normal distribution) thì khi đó các giá trị sẽ tập trung xung quanh giá trị trung bình.

Khi đó các giá trị thiếu cũng sẽ có xu hướng gần với giá trị này, do vậy giá trị trung bình sẽ đƣợc sử dụng để thay thế các giá trị thiếu. Đối với thuộc tính mà giá trị phân bố không đồng đều, điều này dẫn đến giá trị phân bố sẽ bị lệch khỏi giá trị trung bình do vậy không thể lựa chọn giá trị trung bình để thay thế giá trị thiếu trong trường hợp. Thêm nữa, sự xuất hiện của các phân tử ngoại lai (do phép đo hoặc sai số) càng làm thay đổi giá trị trung bình. Trong trường hợp này, giá trị trung vị sẽ được sử dụng để thay thế cho các giá trị thiếu.

Tuy nhiên kỹ thuật này có nhƣợc điểm là nó sẽ làm “thiên vị” sự phân bố các giá trị trong các thuộc tính vì đã thay thế sự đa dạng của các giá trị bằng các giá trị trung tâm. Điều này ảnh hưởng khá nhiều đến kết quả khai phá dữ liệu sau này.

59

3.2.3.3. Sử dụng tương quan giữa các thuộc tính

Tương quan giữa các thuộc tính là chỉ ra mối liên hệ giữa các thuộc tính, đơn giản nhất là mối liên hệ tuyến tính. Ở kỹ thuật này, ta sẽ tìm ra các cặp thuộc tính mà tương quan với nhau nhất, tức là chúng cùng tăng hoặc cùng giảm (hoặc ngƣợc lại cái kia tăng, cái này giảm) một “lƣợng” nhất định. Khi đó giá trị ở thuộc tính này nếu thiếu thì sẽ có thể tính đƣợc thông qua giá trị của thuộc tính kia. Ví dụ: với hai thuộc tính attr1 và attr2 ta tìm ra được giữa chúng có mối tương quan cao, trong trường hợp lý tưởng là tương quan 1:1, khi đó ta sẽ xây dựng hàm truyến tính như sau:

Attr2 = Attr1* a + b

Trong đó: a và b là các hệ số tuyến tính tìm được dựa trên mối tương quan giữa hai thuộc tính. Do đó, nếu biết giá trị của thuộc tính này có thể tìm đƣợc giá trị của thuộc tính kia.

Nhược điểm của kỹ thuật này là cần phân tích tương quan trên tất cả các cặp thuộc tính dẫn đến không hiệu quả với bộ dữ liệu có số lƣợng thuộc tính lớn. Mặt khác với thuộc tính mà có giá trị không phải là số, trong thống kê gọi là kiểu phân loại (nominal), thì kỹ thuật này cũng không áp dụng đƣợc.

3.2.3.4. Sử dụng sự tương tự giữa các mẫu

Thay vì khám phá tương quan giữa các thuộc tính, kỹ thuật này sẽ sử dụng sự tương tự giữa các mẫu (dòng) để điền các giá trị thiếu. Sự tương tự ở đây cần đƣợc định nghĩa thông qua một độ đo cụ thể. Một độ đo d là một hàm d : X × X → R, trong đó R là tập số thực, cho x,y,z thuộc X thì d phải thỏa mãn bốn tính chất cơ bản:

1. d(x, y) ≥ 0

2. d(x, y) = 0 khi và chỉ khi x = y 3. d(x, y) = d(y, x)

60 4. d(x, z) ≤ d(x, y) + d(y, z)

Một độ đo thường được sử dụng là khoảng cách Euclid được định

nghĩa nhƣ sau: 2

1

( , ) ( )

p

i i

i

d x y x y

Trong đó p là số thuộc tính, xi,yi là giá trị của đối tƣợng x,y trên thuộc tính thứ i.

Sự tương tự giữa các mẫu ở đây chính là sự “gần nhau” giữa các mẫu khi tính độ đo giữa chúng. Phương pháp này sẽ tính khoảng cách Euclid và tìm 10 mẫu gần nhất (hàng xóm) với mẫu có giá trị thiếu, sau đó sẽ tính giá trị thiếu bằng một trong hai phương pháp:

+ Phương pháp a: sử dụng số trung vị của 10 hàng xóm

+ Phương pháp b: tính trung bình trọng số của 10 hàng xóm. Trọng số này giảm khi khoảng cách giữa mẫu và hàng xóm của nó càng lớn. Để tính trọng số, ta sử dụng hàm Gaussian. Khi đó trọng số đƣợc tính theo khoảng cách d nhờ công thức sau:

w(d) = e-d

Để tính đƣợc khoảng cách Euclid với cả các giá trị số (liên tục) và giá trị phân loại (nominal), chúng ta sử dụng hàm sau:

1

( , ) ( , )

p

i i i

i

d x y x y

Trong đó i() sẽ xác định khoảng cách giữa hai mẫu trên thuộc tính i đƣợc cho bởi:

1 nếu i là thuộc tính phân loại và v1 v2

1 2

(v , v )

i 0 nếu i là thuộc tính phân loại và v1 v2 2

1 2

(v v ) nếu i là thuộc tính kiểu số

61

Luận văn sử dụng kỹ thuật tìm sự tương tự giữa các mẫu và phương pháp b để điền các giá trị thiếu cho bộ dữ liệu. Việc hiện thực hóa kỹ thuật này đƣợc trình bày trong phần cài đặt và thử nghiệm sau đây.

Một phần của tài liệu Các thuật toán phân cụm dữ liệu và ứng dụng trong phân loại protein (Trang 66 - 70)

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

(82 trang)