Thuật toán SOM:

Một phần của tài liệu Mạng Kohonen Som và ứng dụng phân cụm điểm học sinh THPT (Trang 36 - 39)

Hình 2.10:. Không gian ban đầu và SOM

Thuật toán SOM (Self–Organizing Map) đƣợc giáo sƣ Teuvo Kohonen phát triển [6,8,10,11] và là một công cụ rất thích hợp trong KPDL. SOM thực hiện một ánh xạ làm giảm kích thƣớc của tập huấn luyện. Ánh xạ sinh ra hàm phân bố xác suất của dữ liệu và linh hoạt với dữ liệu còn thiếu. Nó đƣợc giải thích dễ dàng, đơn giản và quan trọng nhất là dễ hình dung. Mô phỏng dữ liệu đa chiều là một lĩnh vực áp dụng chính của SOM.

29

SOM là một kỹ thuật mạng neural truyền thẳng sử dụng thuật toán học không giám sát (học ganh đua) và qua quá trình ”tự tổ chức”, sắp xếp đầu ra cho một thể hiện hình học của dữ liệu ban đầu.

Cấu trúc:

Mạng neural SOM gồm 2 lớp: lớp tín hiệu vào và lớp ra Kohonen. Lớp Kohonen thƣờng đƣợc tổ chức dƣới dạng một ma trận 2 chiều các neural. Mỗi đơn vị i (neural) trọng lớp Kohonen đƣợc gắn một vector trọng số

1 2

w =[w , w ,..., w ]i i i in , với n là kích thƣớc vector đầu vào; wij đƣợc hiểu là trọng số của neural i

ứng với đầu vào j).

Thuật toán:

Quá trình huấn luyện mạng đƣợc lặp nhiều lần, tại lần lặp thứ t thực hiện: Chọn ngẫu nhiên một đầu vào v từ tập dữ liệu, tính khoảng cách dist giữa v

và vector trọng số w tất cả các neural. Neural bdist nhỏ nhất đƣợc chọn làm neural chiến thắng (BMU). Có thể sử dụng các hàm khoảng cách nhƣ Euclidian (thƣờng dùng), Manhattan, hay Vector Dot Product.

{ }

is || w ||b min || i ||

i

d t= v- = v- m (1)

Xác đinh bán kính lân cận của BMU: ( )s t s0exp t

l é ù ê ú = - ê ú ë û là hàm nội suy bán kính (giảm dần theo số lần lặp), với 0là bán kính tại thời điểm t0; hằng số thời gian ( )0 log K l s = , với K là tổng số lần lặp.

30

Hình 2.11: BMU

Cập nhật lại trọng số cho các neural lân cận của BMU theo hƣớng gần hơn với vector đầu vào v

( ) ( ) ( ) ( ) ( ) wi t+1 = wi t +a t hbi t vêé- wi t ùú ë û (2) Trong đó: a( )t a0exp t l é ù ê ú

= êë- úûlà hàm nội suy tốc độ học, với 0là giá trị khởi tạo của tốc độ học; h tbi( ) là 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, đƣợc tính theo công thức

( ) ( ) 2 2 || || exp 2 b i bi r r h t t s é - ù ê ú = ê- ú ê ú ë û

trong đó rbri là vị trí của neural b và neural i trong ma

trận Kohonen.

Hàm lỗi của SOM xét trong trƣờng hợp tập dữ liệu rời rạc

2 1 1 || w || N M bj i j i j E h v = =

= å å - trong đó, N là số mẫu đầu vào, M số neural trong lớp Kohonen.

Thuật toán học SOM đƣợc tóm lƣợc trong 5 bƣớc cơ bản nhƣ sau: Bƣớc 1: Xác định cấu hình mạng, và các tham số.

Bƣớc 2: Khởi tạo ngẫu nhiên trọng số của các neural lớp Kohonen

Lặp lại

Bƣớc 3: Đọc mẫu học v, đƣa vào lớp vào. Bƣớc 4: Tìm neural chiến thắng (BMU)

Bƣớc 5: Duyệt mỗi neural trong bán kính lân cận của BMU: - Cập nhật lại trọng số theo công thức (2)

31

độ cân bằng của mạng).

Do giải thuật SOM chuẩn chỉ tạo ra “bản đồ” đặc trƣng của tập dữ liệu vào, nên khi áp dụng giải bài toán phân cụm dữ liệu, bƣớc tiếp theo của quá trình tính toán là xây dựng ma trận trực quan U-Matrix kích thƣớc (2m-1, 2n-1) từ “bản đồ” đăc trƣng Kohonen kích thƣớc (m, n) và xác định cụm của mỗi phần tử trong U- Matrix bằng thuật toán tích tụ (agglomerative algorithm). Tuy nhiên, độ phức tạp thuật toán tích tụ là O(n4), và đƣợc khuyến cáo không nên sử dụng cho tập có trên 1000 phần tử. Ví dụ, kích thƣớc phổ biến của ma trận Kohonen là (20,40) thì U- Matrix có kích thƣớc (39,79), tƣơng đƣơng 3081 phần tử. Nhƣ vậy, khối lƣợng tính toán của thuật toán tích tụ là một vấn đề cần xem xét. Ngoài ra, thuật toán tích tụ yêu cầu chỉ định trƣớc số cụm cần hình thành, điều này không phù hợp trong một số bài toán nhƣ: phân đoạn ảnh, tìm tập đặc trƣng của dữ liệu,…

Việc huấn luyện thƣờng đƣợc tiến hành trong hai giai đoạn. Giai đoạn đầu, có liên quan đến việc sử dụng giá trị ban đầu α đủ lớn và các bán kính lân cận. Trong giai đoạn sau giá trị α và bán kính lân cận đủ nhỏ ngay từ khi bắt đầu. Thủ tục này phù hợp với việc điều chỉnh xấp xỉ ban đầu của SOM trong cùng một không gian giống nhƣ dữ liệu đầu vào và sau đó điều chỉnh tốt trên ma trận.

Một phần của tài liệu Mạng Kohonen Som và ứng dụng phân cụm điểm học sinh THPT (Trang 36 - 39)