Unsupervised Learning (Jaringan Kohonen)


Jaringan kohonen ini pertama kali diperkenalkan oleh Prof. Teuvo Kohonen pada tahun 1982. Pada jaringan ini, suatu lapisan yang berisi neuron-neuron akan menyusun dirinya sendiri berdasarkan input nilai tertentu dalam suatu kelompok yang dikenal dengan istilah cluster. Selama proses penyusunan diri, cluster yang memiliki vektor bobot paling cocok dengan pola input (memiliki jarak yang paling dekat) akan terpilih sebagai pemenang. Neuron yang menjadi pemenang beserta neuron-neuron tetangganya akan memperbaiki bobot-bobotnya.

Algoritma

1.  Inisialisasi bobot: wij.
Set parameter-parameter tetangga. Set parameter learning rate.

2.   Kerjakan jika kondisi berhenti bernilai FALSE:

a.   Untuk setiap vektor input x, kerjakan:
® Untuk setiap j, hitung:

D(J) = å(wij - xi)2
i

® Tentukan J, sedemikian hingga D(J) minimum.
® Untuk setiap unit j dengan spesifikasi tetangga tertentu, dan untuk setiap i:

wij(baru) = wij(lama) + a(xi  wij(lama))

b.   Perbaiki learning rate.
c.   Kurangi radius ke-tetangga-an pada waktu-waktu tertentu.
d.   Tes kondisi berhenti. 
Contoh 8.11:
Misalkan kita ingin mengcluster data-data berikut: X1       X2
0,10   0,10
0,20   0,20
0,30   0,10
0,50   0,30
0,40   0,40
0,20   0,40
menjadi 2 cluster. Bobot awal yang akan kita gunakan adalah matriks berukuran 2x2 dengan tiap-tiap elemen bernilai 0,5. Learning rate (a=0,6) dengan tiap kenaikan epoh akan diset 0,5x(a). Maksimum epoh ditetapkan sebesar 10.

alfa (a)= 0,60
MaxEpoh = 10
Pengurangan alfa = 0,50
Matriks yang akan dicluster, X: 0,10      0,10
0,20   0,20
0,30   0,10
0,50   0,30
0,40   0,40
0,20   0,40
Bobot awal: 0,50 0,50
0,50  0,50

Epoh ke-  1
--------------------
Data ke-  1 Jarak pada:
* bobot ke-1 = (0,5 0,1)2 + (0,5 0,1)2 = 0,32
* bobot ke-2 = (0,5 0,1)2 + (0,5 0,1)2 = 0,32
Jarak terkecil pada bobot ke-1 Bobot ke- 1 baru:
w11 = 0,5 + 0,6(0,1 0,5) = 0,26
w12 = 0,5 + 0,6(0,1 0,5) = 0,26

Data ke-  2 Jarak pada:
* bobot ke-1 = (0,26 0,2)2 + (0,26 0,2)2 = 0,0072

* bobot ke-2 = (0,50 0,2)2 + (0,50 0,2)2 = 0,1800
Jarak terkecil pada bobot ke-1 Bobot ke- 1 baru:
w11 = 0,26 + 0,6(0,2 0,26) = 0,224
w12 = 0,26 + 0,6(0,2 0,26) = 0,224

Data ke-  3 Jarak pada:
* bobot ke-1 = (0,224 0,3)2 + (0,224 0,1)2 = 0,0212
* bobot ke-2 = (0,5 0,3)2 + (0,5 0,1)2 = 0,2000
Jarak terkecil pada bobot ke-1 Bobot ke- 1 baru:
w11 = 0,224 + 0,6(0,3 0,224) = 0,2696
w12 = 0,224 + 0,6(0,1 0,224) = 0,1496

Data ke-  4 Jarak pada:
* bobot ke-1 = (0,2696 0,5)2 + (0,1496 0,3)2 = 0,0757
* bobot ke-2 = (0,5 0,5)2 + (0,5 0,3)2 = 0,0400
Jarak terkecil pada bobot ke-2 Bobot ke- 2 baru:
w21 = 0,5 + 0,6(0,5 0,5) = 0,5000
w22 = 0,5 + 0,6(0,3 0,5) = 0,3800

Data ke-  5 Jarak pada:
* bobot ke-1 = (0,2696 0,4)2 + (0,1496 0,4)2 = 0,0797
* bobot ke-2 = (0,5 0,4)2 + (0,38 0,4)2 = 0,0104
Jarak terkecil pada bobot ke-2 Bobot ke- 2 baru:
w21 = 0,5 + 0,6(0,4 0,5) = 0,4400
w22 = 0,38 + 0,6(0,4 0,38) = 0,3920

Data ke-  6 Jarak pada:
* bobot ke-1 = (0,2696 0,2)2 + (0,1496 0,4)2 = 0,0675
* bobot ke-2 = (0,44 0,2)2 + (0,392 0,4)2 = 0,0577
Jarak terkecil pada bobot ke-2 Bobot ke- 2 baru:
w21 = 0,44 + 0,6(0,2 0,44) = 0,2960
w22 = 0,392 + 0,6(0,4 0,392) = 0,3968

a  = 0,5*0,6 = 0,3
Nilai bobot akhir setelah epoh ke-10 adalah: w =
0,2190   0,3424
0,1351   0,3754
Misalkan kita akan melakukan testing terhadap data ketiga: [0,3 0,1] termasuk dalam cluster mana, maka kita cari terlebih dahulu jarak data tersebut pada bobot setiap cluster:

Jarak pada:
* bobot ke-1 = (0,2190 0,3)2 + (0,1351 0,1)2 = 0,0078
* bobot ke-2 = (0,3424 0,3)2 + (0,3754 0,1)2 = 0,0776

Ternyata jarak yang lebih pendek adalah jarak terhadap bobot ke-1, maka data tersebut termasuk dalam cluster pertama.

Kita juga bisa melakukan testing terhadap data yang tidak ikut dilatih, misalkan: [0,4 0,5] termasuk dalam cluster mana, maka seperti biasa kita cari terlebih dahulu jarak data tersebut pada bobot setiap cluster:

Jarak pada:
* bobot ke-1 = (0,2190 0,4)2 + (0,1351 0,5)2 = 0,1997
* bobot ke-2 = (0,3424 0,4)2 + (0,3754 0,5)2 = 0,0404

Ternyata jarak yang lebih pendek adalah jarak terhadap bobot ke-2, maka data tersebut termasuk dalam cluster kedua.

Share this article :
+
Previous
Next Post »
0 Komentar untuk "Unsupervised Learning (Jaringan Kohonen)"