Các thuật toán phân cụm dựa trên mô hình (Thuật toán EM)

Một phần của tài liệu Nghiên cứu mạng nơron và ứng dụng trong khảo sát, đánh giá, thống kê kết quả học tập tại trường đại học công nghệ quảng nin (Trang 32 - 37)

Thuật toán 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 được chia thành hai bước và quá trình đó được lặp lại cho đến khi vấn đề được giải quyết: các bước thực hiện của thuật toán EM

Các bước thực hiện của thuật toán EM Bước 1: Khởi tạo tham số

Bước 2:

Bước 3:

Lặp lại bước 2 và 3 cho đến khi đạt được kết quả

Ngoài thuật toán EM ra, phân cụm dựa trên mô hình còn có thêm một thuật toán khác là: Thuật toán COBWEB.

2.3. Thuật toán phân cụm bằng mạng Kohonen 2.3.1. Mạng Kohonen là gì?

Mạng Kohonen (hay còn được gọi là Self Organizing Maps viết tắt là SOMs) là một kỹ thuật trực quan dữ liệu được phát minh bởi giáo sư Teuvo Kohonen, nó giúp giảm số chiều (kích thước) của dữ liệu, qua đó giúp cho chúng ta hiểu được dữ liệu với kích thước lớn đó.

Điểm nổi bật của thuật toán SOM là nó sẽ chuyển các dạng quan hệ phức tạp, thống kê rời rạc giữa các đối tượng dữ liệu đa chiều (n chiều) về các quan hệ hình học trực quan đơn giản với số chiều được rút gọn đi nhiều lần - thường là một hoặc hai chiều. Về bản chất giải thuật được biết đến như là kỹ thuật nén dữ liệu dựa trên véc tơ trọng số.

2.3.2. Cấu trúc mô hình mạng Kohonen

Mạng Kohonen hai chiều gồm có 2 lớp đó là lớp vào và lớp ra Kohonen. Lớp vào (Input layer): dùng để đưa dữ liệu huấn luyện vào mạng Kohonen. Kích thước của lớp vào tương ứng với kích thước của mỗi mẫu học. Trong mạng Kohonen hai chiều, các nơron của lớp ra được sắp xếp trên một mảng 2 chiều, mảng này được gọi là lớp ra Kohonen. Tất cả các nơron của lớp vào đều được nối với các nơron trên lớp ra Kohonen. Mỗi liên kết giữa đầu vào và đầu ra của mạng Kohonen tương ứng với một trọng số. Kích thước của mỗi véctơ trọng số bằng kích thước của lớp vào. Ta có thể hình dung cấu trúc mạng Kohonen theo hình sau:

Hình 2.4. Một dạng mạng nơron Kohonen

2 0

is ( W )

n

i i

i

D t V

=

= ∑ −

2.3.3. Thuật toán phân cụm bằng mạng Kohonen

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.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à BMU.

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.

Hình 2.6. Các vùng lân cận

( ) 0exp t ( 1, 2,3...)

t t

σ σ

λ

 

= −  =

( 1) W( ) ( ) ( )( ( ) W( )) W t+ = t +a t L t V tt

2 2

( ) exp is ( 1, 2,3...) 2 ( )

a t d t t

σ t

 

= −  =

 

- Đặ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:

(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 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:

(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.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ại.;

L: tốc độ học (sẽ giảm dần theo số lần lặp).

( ) exp t ( 1, 2,3...)

L t t

λ

 

= −  =

- 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:

(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 co. 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 theo. 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.

2.4. Một số vấn đề phân cụm bằng mạng Kohonen 2.4.1. 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 [10]: 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.

{ }

c i i

x m− =min x m−

- 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.2. Huấn luyện mạng Kohonen

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:

(2.9) 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 đồ.

Một phần của tài liệu Nghiên cứu mạng nơron và ứng dụng trong khảo sát, đánh giá, thống kê kết quả học tập tại trường đại học công nghệ quảng nin (Trang 32 - 37)

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

(71 trang)
w