Learning Vector Quantization (LVQ)

Learning Vector Quantization (LVQ) adalah suatu metode untuk melakukan pembelajaran pada lapisan kompetitif yang terawasi. Suatu lapisan kompetitif akan secara otomatis belajar untuk mengklasifikasikan vektor-vektor input. Kelas-kelas yang didapatkan sebagai hasil dari lapisan kompetitif ini hanya tergantung pada jarak antara vektor-vektor input. Jika 2 vektor input mendekati sama, maka lapisan kompetitif akan meletakkan kedua vektor input tersebut ke dalam kelas yang sama.

Algoritma
1.   Tetapkan: W, MaxIter, Eps, a.
2.   Masukkan:
    input x(m,n);
    m = jumlah input,
    n = jumlah data
    target(1,n).
3.   Tetapkan kondisi awal:
    epoh=0;
    err=1.
4.   Kerjakan jika: (epoch<MaxIter) atau (a > eps)
a.   epoh = epoh+1;
b.   Kerjakan untuk i=1 sampai n
i.     Tentukan J sedemikian hingga x-wj minimum
ii.   Perbaiki wj dengan ketentuan:
    Jika T = Cj maka:
wj(baru)=wj(lama)+ a (x-wj(lama))
    Jika T ¹ Cj maka:
wj(baru)=wj(lama)- a (x-wj(lama))
c.    Kurangi nilai a.
Contoh 8.8:
Misalkan diketahui 10 input vektor dalam 2 kelas sebagai berikut:

1.
(1,
0,
0,
0,
1,
0)
1
2.
(0,
1,
1,
1,
1,
0)
2
3.
(0,
0,
1,
0,
0,
1)
1
4.
(0,
0,
1,
0,
1,
0)
1
5.
(0,
1,
0,
0,
0,
1)
1
6.
(1,
0,
1,
0,
1,
1)
1
7.
(0,
0,
1,
1,
0,
0)
2
8.
(0,
1,
0,
1,
0,
0)
2
9.
(1,
0,
0,
1,
0,
1)
2
10.
(0,
1,
1,
1,
1,
1)
2

Dua input pertama akan dijadikan sebagai inisialisasi bobot:
Vektor (w)        Kelas 1. (1, 0, 0, 0, 1, 0)                      1
2. (0, 1, 1, 1, 1, 0)      2

Sedangkan 4 input sisanya:

Vektor (x)        Kelas

1.
(0,
0,
1,
0,
0,
1)
1
2.
(0,
0,
1,
0,
1,
0)
1
3.
(0,
1,
0,
0,
0,
1)
1
4.
(1,
0,
1,
0,
1,
1)
1
5.
(0,
0,
1,
1,
0,
0)
2
6.
(0,
1,
0,
1,
0,
0)
2
7.
(1,
0,
0,
1,
0,
1)
2
8.
(0,
1,
1,
1,
1,
1)
2

akan digunakan sebagai data yang akan dilatih. Arsitektur jaringan syaraf pada contoh 8.8 ini seperti terlihat pada Gambar 8.29.




Share this article :
+
Previous
Next Post »
0 Komentar untuk "Learning Vector Quantization (LVQ)"