0
Tải bản đầy đủ (.pdf) (76 trang)

Thuật toán phân cụm EM (Expectation Maximization)

Một phần của tài liệu TÌM HIỂU MÔ HÌNH SOM VÀ ỨNG DỤNG TRONG TƯ VẤN THI ĐẠI HỌC. (Trang 35 -76 )

Thuật toán EM đƣợc xem nhƣ là thuật toán dựa trên mẫu hoặc là mở rộng của thuật toán K-means. EM gán các đối tƣợng cho các cụm đã cho theo xác suất phân phối thành phần của đối tƣợng đó. Phân phối xác suất thƣờng đƣợc sử dụng là phân phối xác suất Gaussian với mục đích là khám phá lặp các giá trị tốt cho các tham số của nó bằng hàm tiêu chuẩn là hàm logarit khả năng của đối tƣợng dữ liệu, đây là hàm tốt để mô hình xác suất cho các đối tƣợng dữ liệu. EM có thể khám phá ra nhiều hình dạng cụm khác nhau, tuy nhiên do thời gian lặp của thuật toán khá nhiều nhằm xác định các tham số tốt nên chi phí tính toán của thuật toán khá cao.

Thuật toán phân cụm EM

Cho X={x1,x2…xn} là tập hợp các điểm dữ liệu V={μ μ μ μ1, 2, 3... c} là tập các giá trị trung bình. P={ p1,p2,p3…pc} là tập hợp các xác xuất xảy ra. Bƣớc 1: Khởi tạo lần lặp thứ 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

1 2 c 1 2 1 1 2 c

(t) (t), (t)... (t), (t), (t)... (t),p (t),p (t)...p (t) λ  μ μ μ

  

Bƣớc E: Tính toán các lớp của tất cả các điểm dữ liệu sử dụng cho mỗi lớp:

 

 

k t t t t k i i i i c t k t k t k j j j j j 1 P x w , P(w ) P(x w , (t), (t))P (t) P(w x , ) P x P(x w , (t), (t))P (t) λ λ μ λ λ μ  

 

(2.8)

Bƣớc M: Tính μ lớn nhất cho lớp dữ liệu bằng công thức:

t k t k k i t k t k P(w x , )x (t 1) P(w x , ) λ μ λ  

(2.9) t k t k i P(w x , ) P (t 1) R λ  

(2.10) Trong đó R là số điểm dữ liệu

2.2.5 Thuật toán phân cụm chất lượng ngưỡng

Thuật toán đòi hỏi phải có kĩ thuật tiên nghiệm khoảng cách ngƣỡng trong phạm vi cụm và giá trị nhỏ nhất của các phần tử trong cụm. Từ mỗi điểm dữ liệu tìm thấy tất cả các điểm dữ liệu đáp ứng đƣợc yêu cầu. Điểm dữ liệu đáp ứng đƣợc yêu cầu trong phạm vi ngƣỡng từ tập hợp các điểm dữ liệu đã cho. Bằng cách này có thể tìm thấy các điểm dữ liệu yêu cầu và chọn ra 1 điểm trong tập hợp các điểm tạo tạo thành cụm. Sau đó các điểm dữ liệu thuộc nhóm này đƣợc loại bỏ và các thủ tục tƣơng tự đƣợc lặp đi lặp lại với bộ giảm điểm dữ liệu cho đến khi nhóm không còn có thể đƣợc hình thành đáp ứng các tiêu chí kích thƣớc tối thiểu.

Thuật toán phân cụm chất lượng ngưỡng

Bƣớc 1: Khởi tạo khoảng cách ngƣỡng cho phép cho các cụm và kích thƣớc tối thiểu của cụm.

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

Bƣớc 2: Xây dựng các cụm điểm dữ liệu đáp ứng yêu cầu: các điểm gần nhất, các điểm lân cận các điểm gần nhất. Tạo các cụm cho đến khi khoảng cách của các cụm vƣợt qua ngƣỡng thì dừng.

Bƣớc 3: Đáp ứng yêu cầu với điểm ở mức độ cao hình thành lên cụm đầu tiên và loại bỏ tất cả các điểm trong cụm không đƣợc xét đến.

Bƣớc 4: Lặp lại với tập hợp các điểm còn lại cho đến khi không còn hình thành thêm các cụm có kích thƣớc tối thiểu.

Ưu điểm của thuật toán:

Mỗi cụm chỉ vƣợt qua một ngƣỡng chất lƣợng đã đƣợc xác định. Số cụm không cần xác định trƣớc. Cụm đạt yêu cầu tiêu chuẩn tạo ra mối liên hệ với mỗi điểm dữ liệu và kiểm tra thứ tự dựa vào chất lƣợng kích thƣớc tiêu chuẩn.

Nhược điểm của thuật toán:

Tăng kích thƣớc cụm tối thiểu hoặc làm tăng số lƣợng các điểm dữ liệu có thể làm tăng đáng kể thời gian tính toán. Khoảng cách ngƣỡng và số lƣợng tối thiểu của một phần tử trong cụm có thể đƣợc xác định tiên nghiệm.

2.3 Thuật toán phân cụm phi tuyến tính không giám sát

2.3.1 Thuật toán phân cụm MST (Minimum spanning tree)

Đầu tiên cấu trúc MST (tối thiểu cây mở rộng) sử dụng thuật toán Kruskal và sau đó thiết lập một giá trị ngƣỡng và kích thƣớc bƣớc. Sau đó loại bỏ các cạnh từ MST có chiều dài lớn hơn giá trị ngƣỡng. Tiếp theo chúng ta tính toán tỷ lệ giữa khoảng cách bên trong cụm với khoảng cách cụm liên quan và ghi lại tỷ lệ cũng nhƣ ngƣỡng. Cập nhật các giá trị ngƣỡng bằng cách tăng kích thƣớc bƣớc. Mỗi khi có đƣợc giá trị ngƣỡng mới (cập nhật) thực hiện lặp lại các thủ tục trên. Ngừng các bƣớc lặp đi lặp lại khi ngƣỡng có giá trị tối đa và nhƣ vậy không có cạnh MST đƣợc gỡ bỏ. Tất cả các điểm thuộc về một cụm duy nhất. Cuối cùng có đƣợc giá trị tối thiểu là tỷ lệ ghi lại và hình thành các cụm tƣơng ứng với ngƣỡng giá trị đƣợc lƣu trữ. Các thuật toán

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

trên có hai trƣờng hợp đặc biệt: Với giá trị ngƣỡng không mỗi điểm vẫn nằm trong một cụm duy nhất, với giá trị ngƣỡng tối đa tất cả các điểm nằm bên trong một cụm duy nhất. Giá trị tối ƣu của ngƣỡng đạt đƣợc khi khoảng cách bên trong trong cụm với khoảng cách với cụm xung quanh là nhỏ nhất. Để giảm thiểu số lần lặp khi thiết lập giá trị ngƣỡng ban đầu phải khác 0.

Ưu điểm của thuật toán: Hiệu suất thực hiện của thuật toán MST tốt hơn

thuật toán K-mean

Nhược điểm: Giá trị ngƣỡng và kích thƣớc bƣớc cần đƣợc biết trƣớc.

2.3.2 Thuật toán phân cụm dữ liệu Kernel K-mean.

Kernel K-mean là sự suy rộng của thuật toán K-mean chuẩn, điểm dữ liệu đƣợc ánh xạ từ không gian đầu vào tới không gian đầu vào đặc trƣng có số chiều lớn hơn thông qua một chuyển đổi phi tuyến tính và khi đó K-mean đƣợc áp dụng trong không gian đặc trƣng. Không gian đặc trƣng phân cách tuyến tính kết quả tƣơng ứng với phân cách phi tuyến tính trong không gian đầu vào. Kernel K-mean tránh đƣợc hạn chế của các cụm tuyến tính tách rời trong không gian đầu vào mà thuật toán K-mean gặp phải. Thuật toán này đƣợc áp dụng phƣơng pháp tƣơng tự nhƣ K-mean nhƣng sự khác biệt ở đây là trong việc tính toán khoảng cách, phƣơng pháp hạt nhân đƣợc sử dụng thay khoảng cách Euclide.

Thuật toán Kernel K-mean

Cho tập hợp các điểm dữ liệu X={a1,a2…an}, c là số cụm dữ liệu. Bƣớc 1: Khởi tạo ngẫu nhiên c trung tâm cụm.

Bƣớc 2: Tính khoảng cách của mỗi điểm dữ liệu và trung tâm cụm trong không gian biến đổi bằng cách sử dụng công thức:

 

i c 2 k k c c 1 i c c 1 a r D( r ) (a m )

 

  (2.11)

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

Trong đó:

Trong đó: Cụm thứ c đƣợc biểu diễn bởi rc mc là giá trị trung bình của cụm rc

i

(a )

 : biểu diễn điểm dữ liệu ai trong không gian chuyển đổi.

i i (a ). (a )   : * i j a a q exp

trong nhân gauss. Bƣớc 3: Gán điểm dữ liệu đến trung tâm cụm là nhỏ nhất.

Bƣớc 4: Lặp cho đến khi các điểm dữ liệu đƣợc gán lặp lại bƣớc 2.

Ưu điểm của thuật toán: Thuật toán có thể xác định các cấu trúc phi

tuyến tính. Thuật toán thích hợp với những bộ dữ liệu thực.

Nhược điểm của thuật toán: Số lƣợng trung tâm cụm phải đƣợc xác định

sẵn. Thuật toán có độ phức tạp lớn về thời gian và bản chất.

2.3.3 Thuật toán phân cụm dựa trên mật độ DBSCAN

Thuật toán phân cụm dựa trên mật độ đóng vai trò quan trọng trong tìm kiếm cấu trúc phi tuyến tính dựa trên mật độ. Thuật toán phân cụm dựa trên không gian mật độ DBSCAN đƣợc sử dụng rộng rãi dựa trên mật độ. Nó dựa trên hai khái niệm khả năng tiếp cận mật độ và khả năng kết nối mật độ.

Khả năng tiếp cận mật độ: Một điểm p đƣợc gọi là mật độ truy cập từ một điểm q nếu p nằm trong khoảng cách ε từ điểm q và q có đủ số điểm lân cận với khoảng cách trong phạm vi ε.

Khả năng kết nối mật độ: Một điểm p và q đƣợc cho là kết nối mật độ nếu có tồn tại một điểm r trong đó có đủ số điểm trong lân cận và cả hai điểm p và q nằm trong khoảng cách ε. Nếu q là lân cận của r, r là lân cận của s, s là lân cận của t, t là lân cận của p có nghĩa là q là lân cận của p.

i i j i j j c j i c i c 2 c i i c c c (a ) 2 (a ). (a ) (a ). (a ) a r a ,a r a r m . (a ). (a ) r r r

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ác bƣớc của thuật toán phân cụm dựa trên mật độ DBSCAN:

Cho tập hợp các điểm dữ liệu X={x1,x2,x3…xn}. DBSCAN yêu cầu hai tham số: ε và số lƣợng tối thiểu các điểm cần thiết để tạo thành một cụm

Bƣớc 1: Bắt đầu với một điểm tùy ý không đƣợc kiểm tra.

Bƣớc 2: Rút ra các lân cận của điểm này bằng cách sử dụng khoảng cách ε.

Bƣớc 3: Nếu có đầy đủ các điểm lân cận xung quanh điểm này thì bắt đầu quá trình phân cụm và điểm đƣợc đánh dấu truy cập khác thời điểm này đƣợc dán nhãn nhƣ là nhiễu.

Bƣớc 4: Nếu một điểm đƣợc tìm thấy là một phần của cụm thì lân cận ε của nó cũng là một phần của cụm và thủ tục trên từ bƣớc 2 đƣợc lặp đi lặp lại cho tất cả các điểm lân cận ε. Điều này đƣợc lặp đi lặp lại cho đến khi tất cả các điểm trong cụm đƣợc xác định

Bƣớc 5: Một điểm mới ghé thăm thƣờng xuyên đƣợc lấy ra và xử lý, dẫn đến việc phát hiện ra một cụm hoặc nhiễu.

Bƣớc 6: Quá trình này đƣợc thực hiện cho tới khi các điểm viếng thăm đƣợc đánh dấu.

2.4 Mạng nơron Kohonen (SOM)

2.4.1 Giới thiệu về mạng Kohonen (SOM)

SOM là một mô hình mạng nơron do GS Kohonen tìm ra nhƣ một dạng thông tin topo thƣờng thấy trong dữ liệu đầu đa chiều biến đổi đổi thành lớp một chiều hoặc hai chiều của nơron, thƣờng với hai chiều, lƣới hình chữ nhật [5]. Bản đồ topo đảm bảo một trật tự hoặc một ma trận số liệu đƣợc xác định tác động đến đầu vào. Nó thúc đẩy biểu diễn các thông tin giác quan quan trọng trong bộ nhớ của con ngƣời có một thứ tự hình học. Cấu trúc liên kết bảo toàn là một thuộc tính quan trọng trong SOM. Các nơron đại diện cho các lớp có tính chất tƣơng tự nhau do đó có thể nhóm lại đƣợc với nhau. Nói cách

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

khác cấu trúc liên kết của các tập dữ liệu trong không gian n chiều, nó đƣợc chụp bởi SOM và thể hiện trong sự sắp xếp các nút của nó. SOM nén dữ liệu trong khi vẫn giữ mối liên hệ topo quan trọng nhất, nó có thể đƣợc coi nhƣ tạo ra một số kiểu trừu tƣợng.

Mạng SOM gồm có một mảng hoặc một mạng tinh thể các số của các phần tử xử lý nơron (các nơron hoặc các nút) thƣờng đƣợc sắp xếp trong một mạng lƣới đa chiều mà mỗi nơron đƣợc kết nối với đầu vào. Kiểu mạng tinh thể có thể có nhiều mẫu nhƣ hình chữ nhật, hình lục giác hoặc thậm chí bất thƣờng. Liên kết với mỗi nơron có một mẫu đƣợc gọi là bảng mã, mô hình có cùng số chiều với số chiều của mẫu đầu vào.

Phƣơng thức học của SOM là một biến thể của cạnh tranh: phƣơng pháp tiếp cận winner-take-all. Tính năng của bản đồ Kohonen tạo ra một bản đồ topo điều chỉnh không chỉ trọng số của nơron chiến thắng mà còn điều chỉnh trọng số của các đơn vị đầu ra liền kề hoặc vùng lân cận của nơron chiến thắng. Không chỉ nơnon chiến thắng đƣợc điều chỉnh mà toàn bộ đầu ra lân cận đƣợc di chuyển gần hơn đến các mẫu đầu vào. Bắt đầu từ giá trị trọng số ngẫu nhiên, các đơn vị đầu vào tự sắp xếp chúng khi một mẫu đầu vào đƣợc thể hiện và một lân cận đáp ứng các mẫu đầu vào. Tiến trình huấn luyện giảm kích thƣớc của các miền lân cận tỏa ra từ các đơn vị chiến thắng. Đơn vị đầu ra lớn sẽ đƣợc cập nhật sau đó sẽ đến đơn vị nhỏ hơn và nhỏ hơn đƣợc cập nhật cho đến khi kết thúc huấn luyện chỉ có một đơn vị chiến thắng đƣợc điều chỉnh. Tƣơng tự nhƣ vậy tỉ lệ học sẽ giảm nhƣ tiến trình huấn luyện, tìm hiểu tỉ lệ phân rã với khoảng cách từ đơn vị đầu ra chiến thắng

2.4.2 Cấu trúc của SOM

SOM đƣợc tạo thành từ các nơron đƣợc đặt trên một lƣới một chiều hoặc hai chiều. Trọng số n chiều hoặc vector tham chiếu đại diện cho nơron thứ 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

trong SOM

 

T i i1 i 2 in

M  m , m ...m trong đó n bằng kích thức của các vector đầu vào. Cấu trúc liên kết của SOM có thể là hình chữ nhật hoặc hình lục giác.

Hình 2.1: Cấu trúc của mạng SOM

Các nơron trong bản đồ đƣợc kết nối với các nơron lân cận thông qua các lệnh mối quan hệ liền kề trong cấu trúc của bản đồ. Các nơron liền kề thuộc lân cận thứ nhất ni1 của nơron thứ i. Trong không gian hai chiều các nơron có thể đƣợc bố trí trong hình chữ nhật hoặc hình lục giác. Các kích cỡ khác nhau của lân cận đƣợc minh họa nhƣ hình. Số lƣợng các nơron xác định kết quả chi tiết của bản đồ và nó ảnh hƣởng đến tính chính xác và khả năng khái quát của SOM.

2.4.3 Khởi tạo SOM

Trong thuật toán SOM cơ sở mối quan hệ giữa các topo và số nơron đƣợc bố trí ngay từ đầu. Số lƣợng các nơron thƣờng đƣợc lựa chọn là lớn nhất với kích thƣớc lân cận điều chỉnh độ mịn và tính khái quát của bản đồ. Bản đồ không bị ảnh hƣởng nhiều khi số lƣợng nơron vƣợt quá số lƣợng vector đầu vào nếu kích thƣớc lân cận đƣợc lựa chọn thích hợp. Khi kích thƣớc của bản đồ tăng số lƣợng nơron các giai đoạn huấn luyện trở nên nặng nề và khó khăn. Trƣớc khi huấn luyện phải khởi tạo giá trị ban đầu cho vector trọng số. Có ba phƣơng pháp khởi tạo đƣợc sử dụng[8]: Khởi tạo ngẫu nhiên, khởi tạo sử dụng hàm mẫu ban đầu, khởi tạo tuyến tính.

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

Khởi tạo ngẫu nhiên: Các giá trị ngẫu nhiên đƣợc gán cho vector bảng mã đây là trƣờng hợp đƣợc sử dụng khi dữ liệu đầu vào tại thời gian khởi tạo không có gì hoặc ít đƣợc biết đến.

Khởi tạo sử dụng mẫu ban đầu: Sử dụng các mẫu ban đầu đƣợc thực hiện bởi các mẫu ban đầu của bộ dữ liệu đầu vào và có thể đƣợc sử dụng cho khởi tạo vector bảng mã. Điều này có lợi thế mà các điểm tự động đặt trong cùng một phần tử không gian đầu vào với dữ liệu.

Khởi tạo tuyến tính: Phƣơng pháp khởi tạo sử dụng phân tích các thành phần chính của dữ liệu đầu vào. Vector bảng mã đƣợc khởi tạo nằm trong cùng một không gian đầu vào đƣợc kéo dài bởi 2 vector đặc trƣng tƣơng ứng với những giá trị riêng lớn nhất của dữ liệu đầu vào. Điều này có tác dụng kéo SOM cùng hƣớng dữ liệu có năng lƣợng quan trọng nhất. Phƣơng pháp khởi tạo tuyến tính đƣợc sử dụng thành công. Tuyến tính là phƣơng pháp tốt cho khởi tạo bản đồ đa chiều.

2.4.4 Huấn luyện SOM

Bƣớc 1: Lựa chọn ngẫu nhiên vector mẫu x từ tập dữ liệu đầu vào và sử dụng các biện pháp đo khoảng cách giữa vector mẫu và các vector trọng số của bản đồ. Thông thƣờng sử dụng biện pháp đo khoảng cách Euclide. Chọn phần tử trùng khớp nhất BMU kí hiệu c là đơn vị của vector trọng số có sự tƣơng đồng lớn nhất với mẫu đầu vào x. BMU đƣợc xác định bằng công thức

Một phần của tài liệu TÌM HIỂU MÔ HÌNH SOM VÀ ỨNG DỤNG TRONG TƯ VẤN THI ĐẠI HỌC. (Trang 35 -76 )

×