BAB 2 LANDASAN TEORI
2.1
Kecerdasan Buatan (Artificial Intelligence)
Kecerdasan buatan (Artificial Intelligence) adalah bagian dari ilmu komputer yang mempelajari bagaimana membuat mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia bahkan bisa lebih baik daripada yang dilakukan manusia. 1. Menurut T. Sutejo, Edi Mulyanto, dan Vincent Suhartono, 2010, Kecerdasan buatan merujuk pada mesin yang mampu berpikir, menimbang tindakan yang akan diambil dan mampu mengambil keputusan seperti yang dilakukan oleh manusia. 2. Menurut Anita Desiani dan Muhammad Arhami, 2005, Kecerdasan buatan merupakan cabang dari ilmu komputer yang konsern dengan pengautomatisasi tingkah laku cerdas. 3. Menurut Suyanto, 2014, Kecerdasan buatan adalah acting rationally dengan pendekatan rational agent. Hal ini berdasarkan pemikiran bahwa komputer bisa melakukan penalaran secara logis dan juga bias melakukan aksi secara rasional berdasarkan hasil penalaran tersebut. Cerdas adalah memiliki pengetahuan dan pengalaman, penalaran yaitu bagaimana membuat keputusan dan mengambil tindakan, serta moral yang baik. Agar mesin bisa cerdas atau bertindak seperti dan sebaik manusia, maka harus diberi bekal pengetahuan dan mempunyai kemampuan untuk menalar. Penerapan kecerdasan buatan digambarkan pada Gambar 2.1. Dua bagian utama yg dibutuhkan untuk aplikasi kecerdasan buatan adalah : a. Basis pengetahuan (knowledgebase): berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan lainnya. b. Motor
inferensi
(inferenceengine):
kemampuan
menarik
kesimpulan
berdasarkan pengetahuan.
Universitas Sumatera Utara
6
Gambar 2.1 Penerapan Kecerdasan Buatan (Puspitaningrum, 2006).
2.2
Jaringan Syaraf Biologi
Otak manusia memiliki struktur yang sangat kompleks dan memiliki kemampuan yang luar biasa. Otak terdiri dari neuron-neuron dan penghubung yang disebut sinapsis. Neuron bekerja berdasarkan impuls/sinyal yang diberikan pada neuron. Neuron meneruskannya pada neuron lain. Diperkirakan manusia memiliki 10 12 neuron dan 6x1018 sinapsis. Dengan jumlah yang begitu banyak, otak mampu mengenali pola, melakukan perhitungan, dan mengontrol organ-organ tubuh dengan kecepatan yang lebih tinggi dibandingkan komputer digital (Puspitaningrum, 2006). Jumlah dan kemampuan neuron berkembang seiring dengan pertumbuhan fisik manusia, terutama pada umur 0-2 tahun. Pada 2 tahun pertama umur manusia, terbentuk 1 juta sinapsis per detiknya.
Gambar 2.2 Susunan Neuron Biologis (Puspitaningrum, 2006)
Universitas Sumatera Utara
7
Berikut ini adalah perbedaan terminologis antara jaringan syaraf biologis dan tiruan seperti terlihat pada Tabel 2.1.
Tabel 2.1 Perbedaan Jaringan Syaraf Biologis dengan Jaringan Syaraf Tiruan (Puspitaningrum, 2006)
Neuron memiliki 3 komponen penting yaitu dendrit, soma dan axon. Dendrit menerima sinyal dari neuron lain. Sinyal/tersebut berupa impuls elektrik yang dikirim melalui celah sinaptik melalui
proses kimiawi. Sinyal
tersebut
dimodifikasi
(diperkuat/diperlemah) di celah sinaptik. Berikutnya, soma menjumlahkan semua sinyalsinyal yang masuk. Kalau jumlahan tersebut cukup kuat dan melebihi batas ambang (threshold), maka sinyal tersebut akan diteruskan ke sel lain melalui axon. Frekuensi penerusan sinyal berbeda-bedaantara satu sel dengan yang lain. Neuron biologi merupakan sistem yang "fault tolerant" dalam 2 hal. Pertama, manusia dapat mengenali sinyal input yang agak berbeda dari yang pernah kita terima sebelumnya. Sebagai contoh, manusia sering dapat mengenali seseorang yang wajahnya pernah dilihat dari foto, atau dapat mengenali seseorang yang wajahnya agak berbeda karena sudah lama tidak dijumpainya. Kedua, otak manusia tetap mampu bekerja meskipun beberapa neuronnya tidak mampu bekerja dengan baik.Jika sebuah neuron rusak, neuron lain kadang-kadang dapat dilatih untuk menggantikan fungsi sel yang rusak tersebut.
Universitas Sumatera Utara
8
2.3
Jaringan Syaraf Tiruan (JST)
Jaringan Syaraf Tiruan (JST) adalah suatu metode pembelajaran yang diinspirasi dari jaringan sistem pembelajaran biologis yang terjadi dari jaringan sel syaraf (neuron) yang terhubung satu dengan yang lainnya (Siang, 2005). Berikut adalah beberapa definisi JST : 1. JST
adalah
suatu
teknik
pemrosesan
informasi
berbasis
komputer
yang
mensimulasikan dan memodelkan sistem syaraf biologis. 2. Suatu model matematika yang mengandung sejumlah besar elemen pemroses yang diorganisasikan dalam lapisan-lapisan. 3. Suatu sistem komputasi yang dibuat dari sejumlah elemen pemroses yang sederhana dan saling diinterkoneksikan untuk memproses informasi melalui masukan dari luar dan mampu inresponsi keadaan yang dinamis. 4. JST adalah suatu teknologi komputasi yang berbasis hanya pada model syaraf biologis dan mencoba mensimulasikan tingkah laku dan kerja model syaraf. 5. JST adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi. JST dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi, dengan asumsi bahwa : a. Pemrosesan informasi terjadi pada banyak elemen sederhana (neuron). b. Sinyal dikirirnkan diantara neuron-neuron melalui penghubung-penghubung. c. Penghubung antar neuron memiliki
bobot yang akan memperkuat atau
memperlemah sinyal. d. Untuk menentukan output, setiap neuron menggunakan fungsi aktivasi (biasanyabukan fungsi linier) yang dikenakan pada jumlahan input yang diterima. Besarnya output ini selanjutnya dibandingkan dengan suatu batas ambang. Model struktur neuron jaringan syaraf tiruan dapat dilihat pada Gambar 2.3 dan Gambar 2.4 dibawah ini.
Universitas Sumatera Utara
9
Gambar 2.3 Model Struktur Neuron Jaringan Syaraf Tiruan (Siang, 2005)
Gambar 2.4 Model Struktur Jaringan Syaraf Tiruan (Siang, 2005)
2.3.1 Fungsi aktivasi Fungsi aktivasi adalah salah satu parameter yang terpenting dalam jaringan syaraf tiruan. fungsi ini tidak hanya menentukan keputusan garis, disamping nilai fungsi aktivasi juga menunjukkan total signal dari node. Oleh karena pemilihan fungsi aktivasi tidak dapat secara sembarangan dipilih sebab sangat besar berdampak pada performan jaringan syaraf tiruan (Kusumadewi, 2004). Ada beberapa fungsi aktivasi yang sering digunakan dalam syaraf tiruan, antara lain : a) Fungsi Linear Fungsi linear (ditunjukkan oleh gambar 2.5) menyiapkan output tang seimbang untuk total bobot output.
Universitas Sumatera Utara
10
y = f(x) = x
(2.1)
Y 1 -
1
0
X
1 1 Gambar 2.5 Fungsi Linear (Kusumadewi, 2004) b) Fungsi Threshold Fungsi threshold memetakan bobot input dengan nilai biner [0,1] seperti yang ditunjukkan dengan gambar 2.6 dimana : y fx
{
𝑥 𝑥
(2.2) Y 1
0
X
Gambar 2.6 Fungsi Theshold (Kusumadewi, 2004)
c) Fungsi Piecewise Linear Fungsi piecewise linear dapat juga ruang lingkup biner atau bipolar untuk batas saturasi output. fungsi output dapat ditulis sebagai berikut :
Universitas Sumatera Utara
11
𝑦
(𝑥 )
{ 𝑥
𝑥 𝑥 𝑥
(2.3)
0,5
0,5
Gambar 2.7 Fungsi Piecewise Linear (Kusumadewi, 2004)
d) Fungsi Sigmoid Ini type fungsi aktivasi yang mempunyai Garis S-shaped dan bentuk distribusi perubahan sigmois input dimana mempunyai nilai interval [-∞, ∞]
𝑦
(𝑥 )
(2.4)
0,5
0,5
Gambar 2.8 Fungsi Sigmoid (Kusumadewi, 2004) 2.3.2 Single layer perceptron Single layer perceptron hanya memiliki 1 lapisan dengan bobot-bobot terhubung dimana jaringan ini hanya menerima masukan kemudian secara langsung akan mengolahnya
Universitas Sumatera Utara
12
menjadi keluaran tanpa harus melalui lapisan tersembunyi (Siang, 2005). Pada gambar berikut neuron-neuron pada kedua lapisan saling berhubungan. Seberapa besar hubungan antara 2 neuron ditentukan oleh bobot yang bersesuaian. Semua unit masukan akan dihubungkan dengan setiap unit keluaran seperti terlihat pada Gambar 2.9.
Gambar 2.9 Single Layer Perceptron (Siang, 2005)
2.3.3 Multilayer perceptron MLP juga dikenal setara Multilayer Feedforward Neural Network (MLFNN) adalah salah satu yang paling terkenal dan banyak digunakan sebagai type model ANN oleh karena arsitektur dan perbandingan algoritma yang sederhana (Popescu et al., 2009). Dapat juga digunakan sebagai fungsi pembangkit secara menyeluruh, bahkan cocok digunakan untuk jenis aplikasi yang besar.
Universitas Sumatera Utara
13
Gambar 2.10 Multilayer Perceptron (Popescu et al., 2009)
Multilayer perceptron tersusun oleh seperangkat sensor moder yang dikelompokkan dalam tiga tingkatan lapisan yang terdiri dari lapisan modul masukan, satu atau lebih perantara atau lapisan tersembunyi dari modul perhitungan dan lapisan keluaran modul yang mengkalkulasikan keluaran dari jaringan. semua lapisan berurutan terhubung secara lengkap. hubungan antara modul berbatasan lapisan relay sinyal keluaran dari satu lapisan ke berikutnya. Sebagai contoh, gambar diatas mempunyai 4 vektor dimensi, diikuti oleh 3 lapisan tersembunyi dan yang terakhir lapisan keluaran dimana terdiri dari 1 modul. jaringan ANN disebut dengan sebagai jaringan 4-3-1. Jaringan saraf tiruan juga memiliki sejumlah besar kelebihan dibandingkan dengan metode perhitungan lainnya (sistem pakar, statistik, dll), yaitu : 1.
Kemampuan mengakuisisi pengetahuan walaupun dalam kondisi adanya gangguan dan ketidakpastian. Hal ini dikarenakan JST mampu melakukan generalisasi, abstraksi, dan ekstrasi terhadap properti statistik dari data.
Universitas Sumatera Utara
14
2.
Kemampuan
merepresentasikan
pengetahuan
secara
fleksibel.
JST
dapat
menciptakan sendiri representasi melalui pengaturan diri sendiri atau kemampuan belajar (self organizing). 3.
Kemampuan mentolerir suatu distorsi (error/fault ). Dimana gangguan kecil pada data dapat dianggap hanya noise (guncangan) belaka.
4.
Kemampuan memproses pengetahuan secara efisien karena memakai sistem paralel, maka waktu yang diperlukan untuk mengoperasikannya menjadi lebih singkat.
5.
Kemampuan
untuk
memperoleh
pengetahuan
melalui
pembelajaran
dari
pengalaman.
Walaupun dengan segudang kelebihan yang dimiliki, jaringan saraf tiruan tetap mempunyai sejumlah keterbatasan. Misal : Kekurangmampuannya dalam melakukan operasi-operasi numerik dengan presisi tinggi, operasi algoritma aritmatik, operasi logika, dan operasi simbolis serta lamanya proses pelatihan yang kadang-kadang membutuhkan waktu berhari-hari untuk jumlah data yang besar. Hal itu terjadi karena sulitnya mengukur performansi sebenarnya dari jaringan saraf tiruan itu sendiri. Saat ini implementasi jaringan saraf tiruan sudah cukup luas digunakan mulai dari teknologi militer, satelit ruang angkasa, bisnis dan kesehatan.
2.4
Backpropagation
Algoritma pelatihan Backpropagation Neural Network (BPNN) pertama kali dirumuskan oleh Werbos dan dipopulerkan oleh Rumelhart & Mc.Clelland (Kusumadewi, 2004). Pada supervised learning terdapat pasangan data input dan output yang dipakai untuk melatih JST hingga diperoleh bobot penimbang (weight) yang diinginkan. Pelatihan Backpropagation meliputi 3 fase:
Universitas Sumatera Utara
15
i)
fase propagasi maju (feedforward) pola pelatihan masukan. Pola masukan dihitung maju mulai dari layer masukan hingga layer keluaran dengan fungsi aktivasi yang ditentukan;
ii)
fase propagasi mundur (backpropagation) dari error yang terkait. Selisih antara keluaran dan target merupakan kesalahan yang terjadi. Kesalahan tersebut dipropagasi mundur, dimulai dari garis yang berhubungan langsung dengan unit-unit dilayar keluaran;
iii)
fase modifikasi bobot.
Ketiga tahapan tersebut diulangi terus-menerus sampai mendapatkan nilai error yang diinginkan. Setelah training selesai dilakukan, hanya tahap pertama yang diperlukan untuk memanfaatkan jaringan syaraf tiruan tersebut. Kemudian, dilakukan pengujian terhadap jaringan yang telah dilatih. Pembelajaran algoritma jaringan syaraf membutuhkan perambatan maju dan diikuti dengan perambatan mundur.
2.4.1 Fase propagasi maju Selama propagasi maju, sinyal masukan (x 1) dipropagasikan ke layer tersembunyi menggunakan fungsi aktivasi yang ditentukan. Keluaran dari unit tersembuyi (Z 1) tersebut selanjutnya dipropagasi maju lagi ke layer tersembunyi berikutnya dengan fungsi aktivasi yang telah ditentukan. Dan seterusnya hingga menghasilkan keluaran jaringan (yk). Berikutnya, keluaran jaringan (yk) dibandingkan dengan target yang harus dicapai (tk). Selisih (tk-yk) adalah kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari batas toleransi yang ditentukan, maka iterasi dihentikan. Jika kesalahan masih lebih besar dari batas toleransi, maka bobot setiap garis dari jaringan akan dimodifikasi untuk mengurangi kesalahan.
Universitas Sumatera Utara
16
2.4.2 Fase propagasi mundur Berdasarkan kesalahan t – y dihitung faktor δ (k= 1, ..., m) yang dipakai untuk k
k
k
mendistribusikan kesalahan di unit Y ke semua unit tersembunyi yang terhubung k
langsung dengan Y . δ juga dipakai untuk mengubah bobot garis yang berhubungan k
k
langsung dengan unit keluaran. Dengan cara yang sama, dihitung faktor δ di setiap layer j
tersembunyi sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi di layer di bawahnya. Dan seterusnya hingga semua faktor δ di unit tersembunyi yang terhubung langsung dengan unit masukan dihitung.
2.4.3 Fase modifikasi bobot Setelah semua faktor δ dihitung, bobot semua garis dimodifikasi bersamaan. Perubahan bobot suatu garis didasarkan atas faktor δ neuron di layer atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke layer keluaran didasarkan atas yang ada di unit keluaran. Ketiga fase tersebut diulang-ulang hingga kondisi penghentian dipenuhi. Umumnya kondisi penghentian yang sering dipakai adalah jumlah interasi atau kesalahan. Iterasi akan dihentikan jika jumlah iterasi yang dilakukan sudah melebihi jumlah maksimum iterasi yang ditetapkan, atau jika kesalahan yang terjadi sudah lebih kecil dari batas toleransi yang ditetapkan.
2.4.4 Prosedur pelatihan Seperti halnya jaringan syaraf yang lain, pada jaringan feedfoward (umpan maju) pelatihan dilakukan dalam rangka perhitungan bobot sehingga pada akhir pelatihan akan diperoleh bobot-bobot yang baik. Selama proses pelatihan, bobot-bobot diatur secara iteratif untuk meminimumkan error (kesalahan) yang terjadi. Error (kesalahan) dihitung berdasarkan rata-rata kuadrat kesalahan (MSE). Rata-rata kuadrat kesalahan juga dijadikan dasar perhitungan unjuk kerja fungsi aktivasi. Sebagian besar pelatihan untuk jaringan
Universitas Sumatera Utara
17
feedfoward (umpan maju) menggunakan gradien dari fungsi aktivasi untuk menentukan bagaimana mengatur bobot-bobot dalam rangka meminimumkan kinerja. Gradien ini ditentukan dengan menggunakan suatu teknik yang disebut backpropagation. Pada dasarnya, algoritma pelatihan standar backpropagation akan menggerakkan bobot dengan arah gradien negatif. Prinsip dasar dari algoritma backpropagation adalah memperbaiki bobot-bobot jaringan dengan arah yang membuat fungsi aktivasi menjadi turun dengan cepat. Langkah-langkah yang dilakukan pada prosedur pelatihan adalah:
Langkah 0
: Inisialisasi bobot keterhubungan antara neuron dengan menggunakan bilangan acak kecil misalnya (-0.4 sampai +0.4, -0.5 sampai +0.5 dan 1sampai +1). (Puspitaningrum D. 2006).
Langkah 1
:
Kerjakan langkah 2 sampai langkah 9 selama kondisi berhenti yang ditentukan tidak dipenuhi.
Langkah 2
: Kerjakan langkah 3 sampai langkah 8 untuk setiap pasangan pelatihan.
Propagasi Maju Langkah 3
: Setiap unit masukan (xi, i
1,…., n) menerima sinyal masukan xi, dan
menyebarkannya ke seluruh unit pada lapisan tersembunyi Langkah 4
:
Setiap unit tersembunyi xi, I
1,…….,p jumlahkan bobot sinyal
masukannya : (2.5)
n
z _ in j vo j xi vij i 1
voj = bias pada unit tersembunyi j aplikasikan fungsi aktivasinya untuk menghilangkan sinyal keluarannya, zj = f (z_inj), dan kirimkan sinyal ini keseluruh unit pada lapisan diatasnya (unit keluaran) Langkah 5
: tiap unit keluaran
yk, k
1,…….m
jumlahkan
bobot sinyal
masukannya :
Universitas Sumatera Utara
18
p
y _ ink wok z j w jk
(2.6)
j 1
wok = bias pada unit keluaran k dan aplikasikan fungsi aktivasinya untuk menghitung sinyal keluarannya, yk = f(y_ink)
Propagasi Balik Langkah 6
: tiap unit keluaran yk, k berhubungan
pada
1,…..,m menerima pola target yang saling
masukan
pola
pelatihan,
hitung
informasinya, k (tk yk ) f ' ( y _ ink ) hitung koreksi bobotnya
kesalahan
(2.7) (digunakan untuk mempengaruhi wjk
nantinya), (2.8)
w jk k z j
hitung koreksi biasnya (digunakan untuk mempengaruhi wok nantinya)
wok k
(2.9)
dan kirimkan δk ke unit-unit pada lapisan dibawahnya, Langkah 7
: Setiap unit lapisan tersembunyi zj, j
1,…..p jumlah hasil perubahan
masukannya (dari unit-unit lapisan diatasnya), m
_ in j k w jk
(2.10)
k 1
kalikan dengan turunan fungsi aktivasinya untuk menghitung informasi kesalahannya,
j _ in j f ' ( z _ in j ) vij j xi
(2.11) (2.12)
hitung koreksi bias
vo j j
(2.13)
Universitas Sumatera Utara
19
Langkah 8
: Update bobot dan bias pada hubungan antar lapisan
Langkah 9
w jk (baru) w jk (lama) w jk
(2.14)
vij (baru) vij (lama) vij
(2.15)
: Tes kondisi terhenti
Backpropagation secara garis besar terdiri dari dua fase, fase maju dan fase mundur. Selama fase maju algoritma ini memetakan nilai masukan untuk mendapatkan keluaran yang diharapkan. untuk menghasilkan keluaran pola maka didapatkan dari rekapitulasi bobot masukan dan dipetakan untuk fungsi aktivasi jaringan. keluaran dapat dihitung sebagai berikut : 𝑜
(2.16)
di mana, (∑
𝑎𝑛 𝑡
𝑤
)
(2.17)
dimana, oj
: input dari j unit
wij
: bobot yang dihubungkan dari unit i ke unit j
a net,j
: jaringan keluaran untuk j unit
θj
: bias untuk j unit
Di dalam fase mundur, pola keluaran (aktual output) kemudian dibandingkan dengan keluaran yang dikehendaki dan sinyal error dihitung untuk masing – masing output. Sinyal-sinyal kemudian merambat mundur dari lapisan output ke masing-masing unit dalam lapisan lapisan transisi memberikan kontribusi langsung ke output, dan bobot disesuaikan iterasi selama proses pembelajaran, kemudian error diperkecil selama descent direction. fungsi error pada output neuron digambarkan sebagai berikut : ∑
(𝑡
𝑜 )
(2.18)
Universitas Sumatera Utara
20
dimana, n
: angka pada modul keluaran didalam lapisan output
tk
: keluaran yang dikendaki dari keluaran unit k
ok
: keluaran jaringan dari keluaran unit k
Parameter
α merupakan laju pemahaman yang menentukan kecepatan iterasi. Nilai α
terletak antara 0 dan 1 0 ≤ a ≤ 1 . Semakin besar harga α, semakin sedikit iterasi yang dipakai. Akan tetapi jika harga α terlalu besar, maka akan merusak pola yang sudah benar sehingga pemahaman menjadi lambat. Satu siklus pelatihan yang melibatkan semua pola disebut epoch. Pemilihan bobot awal sangat mempengaruhi jaringan syaraf tiruan dalam mencapai minimum global (atau mungkin lokal saja) terhadap nilai error (kesalahan) dan cepat tidaknya proses pelatihan menuju kekonvergenan. Apabila bobot awal terlalu besar maka input (masukan) ke setiap lapisan tersembunyi atau lapisan output (keluaran) akan jatuh pada daerah dimana turunan fungsi sigmoidnya akan sangat kecil. Apabila bobot awal terlalu kecil, maka input (masukan) ke setiap lapisan tersembunyi atau lapisan output (keluaran) akan sangat kecil. Hal ini akan menyebabkan proses pelatihan berjalan sangat lambat. Biasanya bobot awal diinisialisasi secara random dengan nilai antara -0.5 sampai 0.5. Setelah pelatihan selesai dilakukan, jaringan dapat dipakai untuk pengenalan pola. Keuntungan dari metode backpropagation yaitu : 1. Backpropagation sangat luas digunakan dalam paradigma jaringan saraf, dan berhasil diaplikasikan dalam berbagai bidang. Misalnya : pengenalan pola militer, diagnosa kedokteran, klasifikasi gambar, menerjemahkan kode, dan dalam deteksi jenis penyakit paru. 2. Backpropagation dapat digunakan untuk dua atau lebih lapisan dengan bobot dan menggunakan aturan pengalaman belajar. 3. Pembelajaran dan penyesuaian prosedur didasari konsep yang relatif sederhana. 4. Dapat memisahkan pola yang terpisah secara linear maupun pola yang terpisah tidak linear. Terpisah linear adalah dipisahkan 1 garis linear 2 pola tersebut.
Universitas Sumatera Utara
21
Adapun kelemahannya yaitu : Waktunya Konvergen, karena pelatihan memerlukan ratusan atau ribuan contoh dalam kumpulan pelatihan, dan mungkin membutuhkan waktu komputasi sepanjang hari (atau lebih) untuk menyelesaikan pelatihan.
2.5
Learning Vector Quantization (LVQ)
LVQ adalah jaringan single layer yang terdiri dari dua lapisan yaitu lapisan input dan output (Nurkhozin, dkk, 2011). Menurut Kusumadewi (2003:258), 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. Dengan kata lain, LVQ merupakan jaringan syaraf dengan tipe arsitektur jaringan lapis-tunggal umpan maju (Single Layer Feedforward) yang terdiri atas unit masukan dan unit keluaran. Suatu lapisan kompetitif akan
secara otomatis belajar untuk
mengklasifikasikan vektor-vektor masukan. Kelas-kelas yang didapatkan sebagai hasil dari lapisan kompetitif ini hanya tergantung pada jarak antara vektor-vektor masukan. Jika 2 vektor masukan mendekati sama maka lapisan kompetitif akan meletakkan kedua vektor masukan tersebut ke dalam kelas yang sama. Arsitektur LVQ sama halnya dengan SOM (Self Organizing Map), LVQ juga terdiri dari 2 lapisan, input (𝑋 ) dan output (𝑌 ), dimana antara lapisannya dihubungkan oleh bobot tertentu yang sering disebut sebagai vektor pewakil (𝑊). Informasi yang diberikan ke jaringan pada saat pembelajaran bukan hanya vektor data saja melainkan informasi kelas dari data juga ikut dimasukkan. Arsitektur jaringan Learning Vector Quantization (LVQ) seperti terlihat pada Gambar 2.11.
Universitas Sumatera Utara
22
Gambar 2.11 Learning Vector Quantization (Kusumadewi, 2003)
Keterangan : X = vektor masukan (X1…, Xn…, Xn) W = vektor bobot atau vektor pewakil |X-W| = selisih nilai jarak Euclidian antara vektor input dengan vektor bobot F = lapisan kompetitif Y = keluaran (output) Ketika hasil pemrosesan jaringan memberikan hasil klasifikasi yang sama dengan informasi kelas yang diberikan di awal, maka vektor pewakil akan disesuaikan agar lebih dekat dengan vektor masukan. Sebaliknya ketika hasil klasifikasi tidak sama dengan informasi kelas yang diberikan di awal, maka vektor pewakil akan disesuaikan agar menjauhi vektor masukan. Algoritma LVQ adalah sebagai berikut: Langkah 1 : Tetapkan: bobot (𝑊), maksimum epoch (𝑚𝑎𝑥. 𝑝𝑜𝑐h),error minimum yang diharapkan ( 𝑝𝑠), learning rate(𝛼). Langkah 2 : Masukkan : a. input : 𝑋(𝑚, 𝑛); b. target : 𝑇(1, 𝑛).
Universitas Sumatera Utara
23
Langkah 3 :Tetapkan kondisi awal : a.
𝑝𝑜𝑐h = 0;
b.
𝑟𝑟𝑜𝑟 = 1.
Langkah 4 :Kerjakan jika ( 𝑝𝑜𝑐 < 𝑚𝑎𝑥. 𝑝𝑜𝑐 ) atau (𝛼 > 𝑝𝑠): a.
𝑝𝑜𝑐h = 𝑝𝑜𝑐h + 1;
b. kerjakan untuk
= 1 sampai 𝑛 .
Langkah 5 : Tentukan 𝐽 sedimikian hingga || X – Wj || minimum (sebut sebagai Cj). Langkah 6 : Perbaiki Wj dengan ketentuan: a. jika 𝑇 = 𝐶 maka: 𝑊 (𝑏𝑎𝑟𝑢) = 𝑊 (𝑙𝑎𝑚𝑎) + 𝛼(𝑥 - 𝑊 (𝑙𝑎𝑚𝑎)); b. jika 𝑇≠𝐶 maka: 𝑊 (𝑏𝑎𝑟𝑢) = 𝑊 (𝑙𝑎𝑚𝑎) - 𝛼(𝑥 - 𝑊 (𝑙𝑎𝑚𝑎)).
2.6
Perbandingan Algoritma Backpropagation Dengan LVQ
Perbandingan pembelajaran dan pengenalan pada algoritma Backpropagation dan Learning Vector Quantization (LVQ) dapat dilihat seperti pada Tabel 2.2. (Kusumadewi S, & Hartati S. 2010)
Universitas Sumatera Utara
24
Tabel 2.2 Perbandingan Algoritma Backpropagation Dengan LVQ Parameter
Backpropagation
LVQ
Alur Pembelajaran
Menggunakan 2 alur, yaitu alur maju (forward propagation) dan alur mundur (backpropagation) Menggunakan maksimal perulangan, rasio pembelajaran dan minimal error.
Menggunakan 1 alur yaitu alur maju
Parameter Pembelajaran
Bobot Pembelajaran
Memiliki 2 nilai bobot yaitu bobot pada hidden layer (z) dan bobot pada output layer (w). Nilai awal setiap bobot diambil dari nilai random yang cukup kecil. Perubahan bobot dihitung dengan alur mundur (backpropagation), yaitu dengan mengubah nilai bobot pada layer output (w), kemudian mengubah nilai bobot pada hidden layer (z).
Menggunakan maksimal perulangan, rasio pembelajaran, pengurang rasio dan minimal error. Memiliki 1 nilai bobot yaitu bobot pada keluaran (w). Nilai awal bobot diambil dari salah satu data masukan untuk setiap kelas. Perubahan bobot dihitung berdasarkan nilai kelas hasil perhitungan. Jika kelas hasil perhitungan sama dengan kelas target maka menggunakan rumus tambah, dan sebaliknya menggunakan rumus kurang.
Perulangan Dilakukan selama perulangan belum Pembelajaran mencapai maksimal perulangan dan nilai Mean Square Error (MSE) masih lebih kecil dari minimal eror.
Dilakukan selama perulangan belum mencapai maksimal perulangan atau nilai perubahan rasio pembelajaran masih lebih kecil dari minimal error.
Kompleksitas Algoritma
Perhitungan sederhana karena hanya menggunakan 3 rumus dalam perhitungan pembelajaran dan 1 rumus dalam perhitungan pengenalan. Berupa nilai bobot (w).
Hasil Pembelajaran Hasil Pengenalan
Perhitungan lebih rumit karena menggunakan 11 rumus dalam perhitungan pembelajaran, dan 4 rumus dalam perhitungan pengenalan. Berupa nilai bobot pada hidden layer (z) dan bobot pada output layer (w). Berupa angka biner dari nilai kelas yang dikenali.
Berupa nilai kelas yang dikenali.
Universitas Sumatera Utara