CHƯƠNG 2: KOHONEN-SOM VÀ PHÂN CỤM DỮ LIỆU
2.3. Phân cụm với mạng Kohonen - Mạng nơron tự tổ chức – SOM
SOM là một mô hình mạng nơron có khả năng ánh xạ dữ liệu đầu vào (có số chiều lớn) lên một mảng có số chiều thấp hơn, thông thường là hai chiều. Đây là một phép chiếu phi tuyến tính đem lại một “mạng đặc trưng” hai chiều có thể được sử dụng trong việc phát hiện và phân tích những đặc trưng trong không gian đầu vào. Kỹ thuật SOM đã được áp dụng thành công trong một số lĩnh vực như nhận dạng tiếng nói, phân lớp ảnh và gom cụm văn bản.
2.3.1. Tổng quan về SOM
SOM (Self-Organizing Maps – Mạng nơron tự tổ chức) là một trong nhiều loại mạng AI do cố giáo sư, tiến sĩ Teuvo Kohonen đề xướng vào những năm 70 của thế kỷ trước. Vì thế có tên gọi khác cho loại mạng này là “Mạng Kohonen”.
Giải thuật SOM ban đầu được phát triển cho mục đích phân loại tiếng nói, tuy nhiên SOM còn có thể áp dụng được trong nhiều lĩnh vực khác như điều khiển tự động (Control Engineering), hóa - sinh trắc học (Biomedical Sciences and Chemistry), phân tích tài chính (Financial Analysis) và xử lý ngôn ngữ tự nhiên (Natural Language Processing), xử lý ảnh (image processing), phân cụm dữ liệu (clustering data) vv….
Các thuộc tính cơ bản nhằm phân biệt SOM với các mạng nơron khác là nó sử dụng ký số thay cho ký tự, không tham số (non-parametric), và học không hướng dẫn. Phương pháp dùng số tự nhiên cho phép SOM xem xét, xử lý dữ liệu số tự nhiên thống kê được và nhằm để biểu diễn các mối quan hệ đã được chọn lọc.
31 Bởi do SOM không yêu cầu học có giám sát và là một dạng non-parametric nên nó có thể tìm ra cả những cấu trúc không hề mong muốn từ dữ liệu đã cho.
2.3.2. SOM cơ bản
Giải thuật huấn luyện mạng SOM đơn giản được thực hiện qua một số lượng nhất định (thường rất lớn) vòng lặp và tại mỗi vòng lặp thực hiện các bước cơ bản sau:
• Tìm nơron chiến thắng (BMU- Best Matching Unit).
• Cập nhật trọng số và các lân cận của BMU.
• Lặp lại cho đến khi không có sự thay đổi nào trên các trọng số hoặc đạt được số lần lặp xác định.
2.3.3. Khởi tạo mạng Kohonen (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: 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.
- 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
32 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.3.4. Huấn luyện mạng Kohonen - 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:
c i i
xm min xm trong đó là khoảng cách.
Bước 2: Sau khi tìm được BMU, vector trọng số của SOM được cập nhật.
Vector trọng số và topo lân cận được di chuyển gần hơn tới vector đầu vào trong không gian đầu vào. Thủ tục thích nghi kéo dài BMU và các topo lân cận của nó hướng về vector mẫu.
Thông thường quá trình huấn luyện được thực hiện qua hai giai đoạn. Giai đoạn 1: So sánh giá trị ban đầu và bán kính vùng lân cận. Giai đoạn 2 giá trị ban đầu và bán kính vùng lân cận phải nhỏ hơn giai đoạn 1. Giai đoạn này điều chỉnh khoảng cách lần đầu tiên của dữ liệu đầu vào với vector trọng số sau đó tinh chỉnh lại bản đồ [2].
2.3.5. Tỉ lệ học
Tỉ lệ học kí hiệu là α, là một hằng số và luôn luôn nhỏ hơn 1, thông thường ta đặt cho tham số học một giá trị từ 0.4 đến 0.5 hoặc thấp hơn. Tỉ lệ học lớn sẽ làm cho quá trình học nhanh hơn. Tuy nhiên nếu tỉ lệ học quá cao thì hội tụ sẽ không bao giờ xảy ra.
Một số thuộc tính của hàm - 1> α(t) >0
- Giảm dần đều theo thời gian
33 - Khi α(t) =0 dừng học.
- α(t) có thể thay đổi theo nhiều cách:
+ Sụt giảm hằng số
+ Hàm của huấn luyện lặp
+ Đệ quy αi (t+1)= αi (t)/(1+hciαi (t))
Tỉ lệ học là hàm giảm chức năng theo thời gian. Có 2 dạng hàm thường sử dụng là hàm tuyến tính theo thời gian và hàm tỉ lệ nghịch với thời gian. Minh họa ở hình 2.9 hàm α (t) tuyến tính a giảm dần tới 0 trong quá trình học từ giá trị ban đầu trong khi hàm ngược α giảm nhanh chóng từ giá trị ban đầu. Giá trị ban đầu của α(t) phải được xác định. Thường khi sử dụng hàm α(t) tỉ lệ giảm nhanh chóng, giá trị ban đầu có thể lớn hơn giá trị tuyến tính được chọn.
Tỉ lệ học α có thể chấp nhận một số hàm khác nhau:
α(t)=1- α0(t/T) Với kết quả phân cụm tốt nhưng hội tụ chậm hơn.
α(t)=a0ta Hội tụ nhanh hơn và kết quả tốt hơn
α(t)=a0l-at Hội tụ nhanh nhất nhưng kết quả không đúng
Hàm thứ 2 là chấp nhận được với α(t) trong khoảng [0.05-0.9] và luôn chọn giá trị nhỏ hơn gần đến 1.
Hình 2.4: Hàm tỉ lệ học theo thời gian
2.3.6. Cập nhật lại trọng số
Sau khi tìm kiếm các đơn vị phù hợp nhất. Các đơn vị trong SOM sẽ được cập nhật. Trong suốt quá trình cập nhật, đơn vị phù hợp nhất sẽ được cập nhật để được gần hơn các vector mẫu trong không gian đầu vào. Topo lân cận của đơn vị phù hợp nhất cũng được cập nhật. Việc cập nhật sẽ được trải dài BMU và topo lân
34 cận đối với vector mẫu. Có hai phương thức cập nhật trọng số khi huấn luyện SOM. Phương thức thứ nhất là phương pháp cộng: Một phần nhỏ cuả vector đầu vào sẽ được thêm vào vector trọng số sau đó tổng hợp lại đơn vị chiều dài. X là vector huấn luyện mạng, w(t) là vector trọng số của nơron chiến thắng tại thời điểm t, cập nhật vector trọng số w(t+1) có thể tính toán với công thức:
w(t) (t)x w(t 1)
w(t) (t)x α α
Với : w(t): Vector trọng số; w(t+1): Cập nhật vector trọng số x: vector đầu vào; α(t): Tỉ lệ học
Ngoài phương pháp cộng người ta có thể sử dụng phương pháp trừ được mô tả bằng công thức:
w(t 1) w(t)α(t)[x(t)-w(t)]
Với w(t): Vector trọng số; w(t+1): Cập nhật vector trọng số x: vector đầu vào; α(t): Tỉ lệ học
2.3.7. Xác định nơron chiến thắng
SOM gồm có một lớp nơron tự tổ chức, mảng hai chiều hoặc đa chiều. Nơron có nhiều kết nối đầu vào do bởi có một số thuộc tính được sử dụng trong phân loại.
Thủ tục huấn luyện gồm có: Tìm ra nơron với trọng số gần nhất từ vector dữ liệu đầu vào và khai báo nơron như là nơron chiến thắng. Khi trọng số của tất cả các nơron ở lân cận nơron chiến thắng được điều chỉnh bởi số lượng tỉ lệ với khoảng cách. Phạm vi được công nhận bị giảm như là số lần lặp được tăng lên. Quá trình huấn luyện được hoàn thành nếu một số quy định lặp đạt được.
Khoảng cách Euclide được sử dụng SOM xác định nơron chiến thắng. Mỗi đầu vào được gán cho một trọng số bởi một nơron tương ứng với vector trọng số và kết quả được tổng hợp. Điều này đại diện cho đầu vào thực của nơron đặc biệt.
K đại diện cho nơron thứ k và n thuộc tính được sử dụng đại diện cho đầu vào cuối cùng .
k N
i 1
net x(i).w(i, k)
35 Kết quả của vector vô hướng sẽ cho dự báo của một vector khác. Nếu vector đơn vị được mặc định trong xi và wi ta thu được cosin của 1 góc giữa vector x,w.
Vector vô hướng, đầu ra lớn nhất được lựa chọn là chiến thắng.
Khi sử dụng khoảng cách Euclide trong thuật toán SOM, phạm vi của các biến riêng biệt đóng vai trò quyết định trong việc xác định bản đồ tương tự cuối cùng. Nếu phạm vi các giá trị của một biến là lớn hơn nhiều so với các biến khác, khi đó các biến có thể chiếm ưu thế trong tổ chức của SOM. Do đó thành phần dữ liệu thường được chuẩn hóa trước khi thực hiện để mỗi biến có sự thống nhất.