Xét một tập dữ liệu là các véc tơ trong không gian n chiều
V = [V1, V2,...,Vn] Khởi tạo tham số thời gian t: t = 0.
Bước 1: Khởi tạo vector trọng số Wij cho mỗi nơron i trong mạng Kohonen.
Bước 2: Lấy một mẫu huấn luyện x từ tập huấn luyện.
Bước 3: Tìm mẫu khớp tốt nhất (BMU) - phần tử nơron chiến thắng:
Hình 2.5. Phần tử nơron chiến thắng BMU
Duyệt tất cả các nút và tính khoảng cách Euclide giữa vector trọng số của mỗi nút và vector nhập hiện hành. Công thức để tính khoảng cách Euclide đƣợc
cho nhƣ sau: 2 0 is ( W ) n i i i D t V (2.3)
V: vector nhập hiện hành; W: vector trọng số của phần tử đƣợc chọn.Nút có vector trọng số gần nhất với giá trị của vector nhập sẽ đƣợc chọn là BMỤ
Bước 4: Xây dựng các phần tử lân cận
Các nơron lân cận tùy thuộc vào bán kính, đƣợc sắp xếp trong lƣới theo hình chữ nhật hoặc hình lục giác. Số các lân cận xác định trọng tâm của ma trận kết quả, có ảnh hƣởng đến độ chính xác và khả năng sinh ma trận của SOM.
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnụedụvn/
Hình 2.6. Các vùng lân cận
- Đặc tính duy nhất của thuật toán học Kohonen là vùng lân cận của BMU đƣợc xây dựng trên vector khoảng cách sẽ đƣợc co lại sau một số lần lặp nhất định. Điều này đƣợc thực hiện bằng cách co lại bán kính của vùng lân cận theo số lần lặp.
- Phép co sẽ đƣợc thực hiện theo hàm mũ nội suy sau:
0exp t ( 1, 2,3...)
t t (2.4)
σ: bán kính lân cận của BMU tại thời điểm t. σ0: bán kính lân cận của BMU tại thời điểm t0. λ: hằng số thời gian . t: là bƣớc lặp hiện tại .
- Giá trị của hằng số λ phụ thuộc vào σ và số lần lặp để chạy giải thuật. Nó đƣợc tính theo công thức sau:
λ = N/log(σ0) (2.5)
N: số lần lặp để chạy giải thuật (số lần học của mạng).
λ và σ sẽ đƣợc dùng để tính bán kính lân cận trong mỗi lần lặp của giải thuật. - Khi bán kính lân cận đã đƣợc xác định, việc xác định các phần tử lân cận của BMU sẽ đƣợc thực hiện đơn giản bằng cách duyệt tất cả các phần tử trong mạng để xem nó có nằm trong bán kính lân cận hay không.
Bƣớc 5: Hiệu chỉnh trọng số của các phần tử lân cận - quá trình học của giải thuật SOM
Trọng số của các phần tử lân cận đƣợc xác định ở bƣớc trên bao gồm cả BMU sẽ đƣợc điều chỉnh để chúng có giá trị gần giống với giá trị của vector
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnụedụvn/
nhập hơn. Phần tử càng gần với BMU, thì trọng số của nó sẽ càng dễ bị thay đổi nhiều hơn. Các vector trọng số sẽ đƣợc hiệu chỉnh theo công thức sau:
( 1) W( ) ( ) ( )( ( ) W( ))
W t t a t L t V t t (2.6)
Hàm nội suy theo thời gian học thể hiện sự tác động của khoảng cách đối với quá trình học và đƣợc tính theo công thức sau:
2 2 is ( ) exp ( 1, 2,3...) 2 ( ) d t a t t t (2.7)
dist : là khoảng cách từ một nơron đến nơron chiến thắng. t : bƣớc lặp hiện tạị;
L: tốc độ học (sẽ giảm dần theo số lần lặp).
- Biểu thức trên cho thấy trọng số của một nút sau khi hiệu chỉnh chính là giá trị trọng số cũ W của nó cộng thêm phần giá trị khác biệt giữa trọng số W và vector nhập V theo hệ số tốc độ học.
- Hàm nội suy tốc độ học L(t) cho mỗi bƣớc lặp đựơc tính theo công thức sau:
( ) exp t ( 1, 2,3...)
L t t (2.8)
L0: Giá trị khởi tạo ban đầu của tốc độ học; λ: hằng số thời gian .
- Càng tiến dần về điểm giữa thì tốc độ học sẽ càng giống với hàm mũ nội suy của phép cọ Tốc độ học sẽ đƣợc nội suy dần theo tốc độ học và giá trị của hàm sẽ tiến dần về không khi số lần lặp đạt đến những bƣớc cuối cùng.
Bước 6: Vòng lặp: Tăng t, lấy mẫu học tiếp theọ Lặp lại bƣớc 2 cho đến khi
giải thuật tối ƣu hoặc đạt đến số lần lặp xác định N cho trƣớc.
Chú ý: Số lƣợng vector của tập huấn luyện là có giới hạn. Để cho việc
huấn luyện mang lại kết quả tốt nhất đòi hỏi số bƣớc huấn luyện phải lớn và nếu kích thƣớc của tập huấn luyện là nhỏ thì những mẫu huấn luyện có thể đƣợc sử dụng lặp lại, những mẫu có thể đƣợc áp dụng đều đặn theo chu kỳ hoặc theo một trật tự hoán vị ngẫu nhiên [8].
Thuật toán SOM với những ƣu điểm của nó, đã trở thành công cụ có ích trong phân cụm và rút gọn kích thƣớc dữ liệụ Đó là tạo ra hàm phân bố xác suất
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnụedụvn/
cho tập dữ liệu bao lớp, dễ giải thích và quan trọng nhất là trực quan mạng tốt. Tùy theo vấn đề cần giải quyết, các chuyên gia phân cụm dữ liệu có thể chọn phƣơng pháp khác nhau để phân tích dữ liệu đƣa rạ
Trong phân cụm dữ liệu, có rất nhiều phƣơng pháp ứng dụng nó. Độ đo khoảng cách có thể căn cứ vào liên kết đơn hoặc liên kết đầy đủ. Hạn chế trong liên kết đó là các cụm dễ trở thành chuỗi dài do đó không điển hình cho dữ liệụ Mặt khác, liên kết đầy đủ đôi khi vƣợt quá giới hạn cho phép. Việc kết hợp liên kết giữa liên kết đơn và liên kết đầy đủ đƣợc thực hiện bằng cách gắn độ đo các điểm trong cụm với trọng số phù hợp. Nhƣ vậy, độ đo vừa gắn đƣợc giá trị cho tất cả các điểm giống nhau nhƣ khoảng cách vừa giữ đƣợc hình thái của cụm dữ liệụ Phƣơng pháp SOM có thể hoàn toàn đƣợc dùng nhƣ một phép đọ
SOM là phƣơng pháp phân cụm theo cách tiếp cận mạng nơron. Véc tơ trọng số của ma trận SOM chính là trọng tâm cụm, việc phân cụm có thể cho ra kết quả tốt hơn bằng cách kết hợp các đơn vị trong ma trận để tạo thành các cụm lớn hơn [7].
Dùng SOM nhƣ một bƣớc trung gian để phân cụm, đó là cách tiếp cận gồm hai mức: lớp đầu tiên phân cụm dữ liệu và sau đó phân cụm SOM. Với mỗi véctơ dữ liệu của tập dữ liệu bao lớp thuộc cùng một cụm có mẫu gần nó nhất. Một ƣu điểm của cách tiếp cận này là giảm thời gian tính toán, điều này dễ dàng phân biệt đƣợc với các thuật toán phân cụm khác mà điển hình là cây phân cấp thậm chí với một lƣợng nhỏ các ví dụ bao lớp cũng trở lên nặng nề. Chính vì vậy cách tiếp cận này là hoàn toàn phù hợp cho việc phân cụm một tập các mẫu hơn là làm trực tiếp trên tập dữ liệụ