Các thuật toán trong phân cụm phân hoạch

Một phần của tài liệu Phân cụm dữ liệu cho nhận dạng ảnh sử dụng mạng nơron (Trang 25 - 31)

Ý tƣởng chung của thuật toán trong phân cụm phân cụm phân hoạch: phân một tập dữ liệu có n phần tử cho trƣớc thành k nhóm dữ liệu sao cho mỗi phần tử dữ liệu chỉ thuộc về một nhóm dữ liệu và mỗi nhóm dữ liệu có tối thiểu một phần tử dữ liệu. Thuật toán phân cụm phân hoạch tối ƣu cục bộ là sử dụng chiến lƣợc ăn tham để tìm kiếm nghiệm.

Dƣới đây là một số thuật toán đƣợc sử dụng rộng rãi:

Thuật toán K-Means:

Ý tưởng : dựa trên độ đo khoảng cách của các đối tƣợng dữ liệu trong cụm.

Thực tế, nó đo khoảng cách tới giá trị trung bình của các đối tƣợng dữ liệu trong cụm. Nó đƣợc xem nhƣ là trung tâm của cụm. Nhƣ vậy, nó khởi tạo một tập trung tâm các cụm trung tâm ban đầu và thông qua đó nó lặp lại các bƣớc gồm gán mỗi đối tƣợng tới

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

cụm mà trung tâm gần nhất và tính toán tại trung tâm của mỗi cụm trên cơ sở gán mới cho các đối tƣợng. Quá trình lặp này dừng khi các trung tâm hội tụ.

Hình 2.5: Thiết lập để xác định danh giới các cụm ban đầu

Mục đích: sinh ra k cụm dữ liệu {C1,C2…, Ck} từ một tập dữ liệu ban đầu gồm n đối tƣợng trong không gian d chiều Xi = (xi1,xi2, …, xid) )(i=1..n), sao cho hàm tiêu chuẩn:

      k i x CiD x mi E 1 ( )

2 đạt giá trị tối thiểu.

Với mi là trọng tâm của cụm Ci, D là khoảng cách giữa hai đối tƣợng.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Thuật toán phân hoạch K-means do MacQeen đề xuất trong lĩnh vực thống kê năm 1967, mục đích của thuật toán K-means là sinh ra k cụm dữ liệu {C1, C2, …,Ck} từ một tập dữ liệu chứa n đối tƣợng trong không gian d chiều Xi = (xi1, xi2, …, xid) (i1,n), sao cho hàm tiêu chuẩn :

      k i x CiD x mi E 1 ( ) 2 (2.1)

Đạt giá trị tối thiểu. Trong đó : mi là trọng tâm của cụm Ci, D là khoảng cách giữa hai đối tƣợng ( khoảng cách Euclide). Trọng tâm của một cụm là một véc tơ, trong đó giá trị của mỗi phần tử của nó là trung bình cộng của các thành phần tƣơng ứng của các đối tƣợng vectơ dữ liệu trong cụm đang xét. Tham số đầu vào của thuật toán là số cụm k, và tham số đầu ra của thuật toán là các trọng tâm của các cụm dữ liệu. K-means bao gồm các bƣớc cơ bản nhƣ sau:

InPut : Số cụm k và các trọng tâm cụm {mj}kj=1 ;

OutPut : Các cụm Cii 1,kvà hàm tiêu chuẩn E đạt giá trị tối thiểu Begin

Bƣớc 1: Khởi tạo :Chọn k trọng tâm {mj}kj=1 ban đầu trong không gian Rd (d là số chiều của dữ liệu, việc chọn có thể ngẫu nhiên hoặc theo kinh nghiệm)

Bƣớc 2 : Tính toán khoảng cách :

Đối với mỗi điểm Xi (1<=i<=n), tính toán khoảng cách của nó tới mỗi trọng tâm mj j=1,k.

Tìm trọng tâm gần nhất đối với mỗi điểm. Bƣớc 3 : Cập nhật lại trọng tâm :

Đối với mỗi j=1,k , cập nhật trọng tâm cụm mj bằng các xác định trung bình cộng của các vectơ đối tƣợng dữ liệu.

Bƣớc 4 : Điều kiện dừng:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Nhận xét: Độ phức tạp của thuật toán là O Tkn với T là số lần lặp, n số đối tƣợng của tập dữ liệu đƣa vào.

Ƣu điểm:

Độ phức tạp nhỏ: O(nkd.t), với :d là số chiều, t số vòng lặp.

K-means phân tích phân cụm đơn giản nên có thể áp dụng đối với tập dữ liệu lớn.

Nhƣợc điểm:

K-means không có khả năng tìm ra các cụm không lồi hoặc các cụm có hình dạng phức tạp, chỉ áp dụng với dữ liệu số. Nó không khắc phục đƣợc nhiễu và các phần tử ngoại lai.

Chất lƣợng phân cụm phụ thuộc vào nhiều tham số đầu vào nhƣ: số cụm k và k trọng tâm khởi tạo ban đầu.

Số lƣợng và các tham số là do ngƣời dùng nhập, nên nếu đầu vào khác nhau thì kết quả các cụm sẽ khác nhau

Thuật toán K-tâm:

Ý tƣởng :Thuật toán K-tâm phân cụm dữ liệu hỗn hợp là mở rộng của thuật toán K-means cho dữ liệu hỗn hợp trong đó có sử dụng khái niệm Mode của dữ liệu hỗn hợp, khi đã mở rộng các miền giá trị của thuộc tính có thứ tự và xác định khoảng cách giữa các đối tƣợng.

Thuật toán này hội tụ sau một số hữu hạn bƣớc lặp tới điểm cực tiểu địa phƣơng của hàm P nhƣ sau:  j z x k j x Cdj p , 1 2     (2.2) Ta xét D là tập N đối tƣợng N i i x 1trong đó ( i xin m x i m x i x i x ,..., 1 , ,..., 1   ) là phần tử

của quan hệ r trên lƣợc đồ quan hệ R = {A1,..., An} và i

j

x Dom(Aj) với mỗi j  m là các giá trị thực còn với m1 jn là các giá trị định danh.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Dƣới đây em xin đƣa ra một số khái niệm sử dụng trong dữ liệu hỗn hợp: a) Mode của tập dữ liệu hỗn hợp.

Định nghĩa. Giả sử C là tập con của tập dữ liệu hỗn hợp D.

i) Với mọi j n, j-mode của C ( kí kiệu là j-mode(C)) là giá trị có tần xuất nhiều nhất trong thuộc tính Aj của C nếu A là thuộc tính định danh và là trung bình cộng của các giá trị thuộc tính Aj của C khi Aj là thuộc tính số. Nếu Aj là thuộc tính định danh và có nhiều giá trị có tần xuất nhƣ nhau trong C thì j-mode (C) có thể không duy nhất và ta chọn giá trị nào cũng đƣợc.

ii) Mode của tập hợp C ký hiệu là mode(C) là phần tử z = (z1,..., zn) trong đó : zj = j- mode(C),  j n

b) Metric trên dữ liệu hỗn hợp.

Trong lƣợc đồ quan hệ R, miền giá trị của các thuộc tính Aj có thể là tập số thực, định danh hay là tập có thứ tự.

Định nghĩa 1: Giả sử DOM(Aj) là miền giá trị của thuộc tính Aj. Ta có các khái niệm sau:

i) Thuộc tính định danh: Aj đƣợcgọi là thuộc tính định danh nếu DOM(Aj) là tập không có thứ tự, tức là  a,b  DOM(Aj), hoặc a = b hay ab.

ii) Thuộc tính số: Aj thuộctính số nếu DOM(Aj) là tập số thực.

ii) Thuộc tính thứ tự: Nếu DOM(Aj) là tập hữu hạn và có thứ tự hoàn toàn thì Aj đƣợc gọi là thuộc tính có thứ tự (chẳng hạn: DOM(Aj) = { không đau, hơi đau, đau và rất đau}..

Trên miền giá trị DOM(Aj) của một thuộc tính Aj ta xác định các khoảng cách nhƣ sau.

Định nghĩa 2: x,y DOM(Aj) hàm dj(x,y) xác định bởi :

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Nếu Aj là thuộc tính thứ tự và DOM(Aj) = k

j j a a1,..., với k j j j a a a1  2 ... , ta lấy một hàm đơn điệu fj: DOM(Aj)→ [0,1] sao cho ( 1)0; ( k)1

j j j j a f a f (Hàm này có thể là : 1 1 ) (    k i i j a j

f ). Khi đó dj(x,y)= │fj(x) - fj(y) │ (2.4) Nếu Aj là dữ liệu định danh thì dj(x,y)=

     y x khi y x khi : 1 : 0 (2.5)

Định nghĩa khoảng cách giữa hai đối tƣợng dữ liệu hỗn hợp:

Định nghĩa 3: Giả sử x = (x1,..., xn) và y = (y1,..., yn) là hai đối tƣợng dữ liệu hỗn hợp trên D, khoảng cách d(x, y) đƣợc tính bởi công thức:

   n j jdj xj yj y x d 1 ( , ) 2 2 ) , (  (2.6)

Trong đó các dj (xj, yj) đƣợc tính theo các công thức (2.3 -2.5) vàjlà các trọng số dƣơng cho bởi các chuyên gia.

Ta xem các thuộc tính thứ tự có miền giá trị là đoạn [0,1] (các giá trị trên thuộc tính này của D là tập con) và nó cũng đƣợc xem là thuộc tính. Ta có định lý sau:

Định lý . Thuật toán trên hội tụ sau một số hữu hạn bƣớc lặp tới điểm cực tiểu địa phƣơng của hàm E:     k j x cj j z x d E 1 ( , ) 2 (2.7)

Các bƣớc của thuật toán:

Begin Chọn các trọng số j, các hàm fj, xác định k. Chọn k phần tử ban đầu  k j j z 1 của D làm tâm các cụm Xếp mỗi x D vào cụm Cj mà nó gần tâm nhất;

For j=1,...,k do zj mode(Cj);

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Phân bố lại cụm theo tâm mới// nhƣ k-mean; Cập nhật lại tâm cho các cụm // nhờ tính mode

Until các cụm không đổi; Xác định các cụm

End.

Nhận xét: Khi thuật toán kết thúc, các đối tƣợng tâm có thể không thuộc tập D.

Để tìm phần tử đại diện cho mỗi cụm, ta lấy phần tử thuộc cụm gần với tâm của nó nhất. Nhƣ đã nói ở định lý trên, thuật toán chỉ hội tụ tới điểm cực tiểu địa phƣơng của E. Để tăng hiệu quả của thuật toán ta có thể kết hợp với thuật toán di truyền hoặc khởi tạo tâm ban đầu bằng phƣơng pháp chuyên gia (theo cách nửa giám sát).

Thuật toán PAM:

Thuật toán này là sự mở rộng của K-means, để khắc phục đƣợc dữ liệu nhiễu hoặc các phần tử ngoại lai. PAM sử dụng các đối tƣợng medoid để biểu diễn cho các cụm dữ liệu, một đối tƣợng medoid là đối tƣợng đặt tại vị trí trung tâm nhất bên trong của mỗi cụm.

Xác định medoid :Chọn k đối tƣợng medoid bất kỳ. Sau mỗi bƣớc thực hiện, PAM cố gắng hoán chuyển giữa đối tƣợng medoid Om và một đối tƣợng Op không phải là medoid, miễn là sự hoán chuyển này nhằm cải tiến chất lƣợng của phân cụm, quá trình này kết thúc khi chất lƣợng phân cụm không thay đổi.

Ngoài ra, phân cụm phân hoạch còn có thêm một số thuật toán CLARA, thuật toán CLARANS.

Một phần của tài liệu Phân cụm dữ liệu cho nhận dạng ảnh sử dụng mạng nơron (Trang 25 - 31)

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

(79 trang)