Perangkat lunak yang dibangun harus memiliki message error pesan kesalahan jika pengguna tidak lengkap memasukkan masukan ataupun jika masukan yang
dimasukkan salah.
3.1.3 Analisis Proses
Secara umum ada empat proses yang terjadi pada sistem ini, yaitu: pengolahan citra, ekstraksi fitur, pelatihan serta pengujian. Tapi yang akan dianalisis adalah proses
pelatihan dan pengujian. Berikut ini adalah langkah-langkah dalam pelatihan dan pengujian dalam contoh sederhana:
1. Inisialisasi vektor masukan x_a
1
= [1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1] x_a
2
= [-1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1] x_ka
1
= [-1 -1 -1 1 1 -1 -1 -1 -1 -1 -1 -1] x_ka
2
= [-1 -1 -1 -1 1 1 -1 -1 -1 -1 -1 -1] x_ba
1
= [-1 -1 -1 -1 -1 -1 -1 1 1 -1 -1 -1] x_ba
2
= [-1 -1 -1 -1 -1 -1 -1 -1 1 1 -1 -1] 2. Inisialisasi vektor keluaran
y_a = [-1 -1 1] y_ka = [-1 1 -1]
y_ba = [1 -1 -1] 3. Lakukan proses pelatihan dan hitung bobot
w_a = x_a
1 T
.y_a+ x_a
2 T
.y_a w_ka = x_ka
1 T
.y_ka+ x_ka
2 T
.y_ka w_ba = x_ba
1 T
.y_ba+ x_ba
2 T
.y_ba
∑
=
⋅ =
P p
p T
p
y x
w
1
Universitas Sumatera Utara
x_a
1 T
.y_a = w_a
1
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 1
−1 −1
−1 −1
−1 −1
−1 −1
−1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
. [ −1 −1 1] =
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 −1 1
−1 −1 1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
x_a
2 T
.y_a = w_a
2
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 1
1 −1
−1 −1
−1 −1
−1 −1
−1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
. [ −1 −1 1] =
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 1
−1 −1 −1
1 −1 −1
1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
w_a = x_a
1 T
.y_a+ x_a
2 T
.y_a
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 −1 1
−1 −1 1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
+
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 1
−1 −1 −1
1 −1 −1
1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
=
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−2 −2 2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
Universitas Sumatera Utara
x_ka
1 T
.y_ka = w_ka
1
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 −1
−1 1
1 −1
−1 −1
−1 −1
−1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
. [ −1 1 −1] =
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 −1
1 1
−1 1
1 −1
1 −1
1 −1
−1 1
−1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
x_ka
2 T
.y_ka = w_ka
2
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 −1
−1 −1
1 1
−1 −1
−1 −1
−1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
. [ −1 1 −1] =
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 −1
1 1
−1 1
1 −1
1 1
−1 1
−1 1
−1 −1
1 −1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
w_ka = x_ka
1 T
.y_ka+ x_ka
2 T
.y_ka
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 −1
1 1
−1 1
1 −1
1 −1
1 −1
−1 1
−1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
+
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
1 −1
1 1
−1 1
1 −1
1 1
−1 1
−1 1
−1 −1
1 −1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
=
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
2 −2
2 2
−2 2
2 −2
2 −2
2 −2
−2 2
−2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
Universitas Sumatera Utara
x_ba
1 T
.y_ba = w_ba
1
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 −1
−1 −1
−1 −1
−1 1
1 −1
−1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
. [1 −1 −1] =
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 1
−1 −1
1 −1
−1 1
−1 −1
1 −1
−1 1
−1 −1
1 −1
−1 1
−1 1
−1 1
1 −1
1 −1
1 −1
−1 1
−1 −1
1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
x_ba
2 T
.y_ba = w_ba
2
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 −1
−1 −1
−1 −1
−1 −1
1 1
−1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
. [1 −1 −1] =
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
1 −1 −1
1 −1 −1
−1 1
1 −1
1 1 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
w_ba = x_ba
1 T
.y_ba+ x_ba
2 T
.y_ba
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 1
−1 −1
1 −1
−1 1
−1 −1
1 −1
−1 1
−1 −1
1 −1
−1 1
−1 1
−1 1
1 −1
1 −1
1 −1
−1 1
−1 −1
1 −1⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
+
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
−1 1
1 −1
1 1
1 −1 −1
1 −1 −1
−1 1
1 −1
1 1 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
=
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 2
−2 −2 2
−2 −2 −2
2 2
−2 2
2 −2
2 2 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
Universitas Sumatera Utara
wtotal = w_a+w_ka+w_ba
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−2 −2 2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
+
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
2 −2
2 2
−2 2
2 −2
2 −2
2 −2
−2 2
−2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
+
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 −2
2 2
−2 2
2 2
−2 −2 2
−2 −2 −2
2 2
−2 2
2 −2
2 2 ⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎤
=
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
4. Lakukan proses pengujian citra dengan bobot yang telah didapatkan Fungsi aktivasi pada sistem ini berbeda dengan fungsi aktivasi pada umumnya.
Nilai diubah jadi “1” apabila elemen pada vektor hasilnya adalah yang paling positif, sedangkan nilai yang diubah jadi “-1” adalah sisanya.
x_a
1
.w = y_a
[1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1] .
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
= [-20 -20 4]
Universitas Sumatera Utara
[-20 -20 4] berarti akan berubah menjadi [-1 -1 1] yang merupakan y_a. Berarti x_a
1
berhasil dikenali
x_a
2
.w = y_a
[-1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1] .
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
= [-20 -20 4]
[-20 -20 4] berarti akan berubah menjadi [-1 -1 1] yang merupakan y_a. Berarti x_a
2
berhasil dikenali
x_ka
1
.w = y_ka
[-1 -1 -1 1 1 -1 -1 -1 -1 -1 -1 -1] .
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
= [-24 8 -24]
[-24 8 -24] berarti akan berubah menjadi [-1 1 -1] yang merupakan y_ka. Berarti x_ka
1
berhasil dikenali
x_ka
2
.w = y_ka
[-1 -1 -1 -1 1 1 -1 -1 -1 -1 -1 -1] .
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
= [-16 0 -16]
Universitas Sumatera Utara
[-16 0 -16] berarti akan berubah menjadi [-1 1 -1] yang merupakan y_ka. Berarti x_ka
2
berhasil dikenali
x_ba
1
.w = y_ba
[-1 -1 -1 -1 -1 -1 -1 1 1 -1 -1 -1] .
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
= [8 -24 -24]
[8 -24 -24] berarti akan berubah menjadi [1 -1 -1] yang merupakan y_ba. Berarti x_ba
1
berhasil dikenali
x_a
1
.w = y_a
[-1 -1 -1 -1 -1 -1 -1 -1 1 1 -1 -1] .
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎡
4 −2 −2
6 4
−2 6
−2 −2
6 −2
2 2
2 2
2 2
6 −2 −2
6 −2 −2
2 2
2 2
2 2
2 2
2 ⎦ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
= [0 -16 16]
[0 -16 -16] berarti akan berubah menjadi [1 -1 -1] yang merupakan y_ba. Berarti x_ba
2
berhasil dikenali
Dalam penelitian ini, dilakukan modifikasi pada fungsi aktivasinya. Fungsi aktivasi yang umum digunakan pada hetero-association yaitu:
Ini dikarenakan tipe hetero-associative memiliki kapasitas memori yang sangat sedikit sehingga menyebabkan hetero-associative sangat sulit dalam
mempelajari dan mengenali pola dalam jumlah yang banyakRojas,1996. Pada
≤
− =
1 1
j j
j
y if
y if
y S
Universitas Sumatera Utara
penelitian ini digunakan 620 sampel untuk pelatihan. Melihat kondisi tersebut, maka perlu penyesuaian dalam fungsi aktivasinya. Bila diamati, semua nilai hasil perkalian
vektor input dan bobot bernilai -10.000 ,sehingga dengan fungsi aktivasi biasa, semua nilai itu akan diubah menjadi “-1” dan menyebabkan gagal dalam pengenalan.
Namun dari semua nilai itu terdapat satu nilai yang paling positif. Oleh karena itu, fungsi aktivasi diubah menjadi: apabila terdapat nilai yang paling positif atau paling
maksimal di antara elemen lainnya maka nilai itu akan diubah menjadi “+1” dan sisanya nilai dibawah nilai maksimum tersebut diubah menjadi “-1”. Ini membuat
kapasitas memori menjadi meningkat dikarenakan proses aktivasi hanya berfokus pada 1 elemen saja pada vektor output.. Fungsi aktivasi yang telah dimodifikasi
tersebut adalah sebagai berikut :
3.2 Pemodelan