## IDENTIFIKASI POLA IRIS MENGGUNAKAN METODE BACKPROPAGATION
Yoan Elviralita 1 , Asrul Hidayat 2
1 Program Studi Teknik Mekatronika-Politeknik Bosowa
2 Program Studi Perawatan dan Perbaikan Mesin-Politeknik Bosowa Jalan Kapasa Raya No. 23 Kawasan Industri Makassar, Makassar 90241 Tel. 0411-472 0012 Faks. 0411-472 0013, yoan.elviralita@bosowa.co.id

## Abstract
In  recent  years,  there  has  been  a  lot  of  research  related  to  pattern  recognition  is  conducted  to identify  various  forms  of  patterns  and  controlling  system.  Utilizing  backpropagation  neural  network  in pattern identifying is very useful to solve problems with unknown parameter and difficult to determined. And then the data of the pattern are trained and tested.  The results obtained from the recognition rate indicates a backpropagation neural network, provide excellent performance, which is an average of 98%. This neural network is expected to be developed by other researchers for the advancement of knowledge in all fields.
Keywords: Neural Networks, backpropagation.

## Abstrak
Dalam beberapa tahun ini, telah banyak penelitian yang berhubungan dengan pengenalan pola dilakukan untuk mengidentifikasi berbagai bentuk pola dan pengendalian sistem. Pemanfaatan jaringan saraf    Backpropagation  dalam  mengindentifikasikan  pola  sangat  berguna  untuk  mengatasi  masalah- masalah  yang  parameternya  tidak  diketahui  dan  sulit  untuk  ditentukan.  Kemudian  dilakukan  training dan  testing  terhadap  data-data  pola  tersebut.  Hasil  yang  dicapai  dari  recognition  rate  menunjukkan jaringan  saraf  backpropagation  ,  memberikan  performa  yang  baik,  yaitu  rata-rata  sebesar  98  %, Jaringan  saraf  ini  diharapkan  dapat  dikembangkan  oleh  peneliti-peneliti  yang  lain  untuk  kemajuan keilmuan dalam segala bidang.
Kata kunci: Jaringan saraf tiruan, backpropagation.

## 1. PENDAHULUAN
Jaringan  saraf  tiruan  telah  banyak  digunakan  pada  berbagai  riset  di  berbagai  bidang.  Salah satunya dalam bidang pengendalian sistem. Jaringan saraf tiruan merupakan sebuah pendekatan dalam pengendalian  sistem  yang  parameter-parameternya  tidak  diketahui  atau  sulit  untuk  ditentukan. Backpropagation merupakan  salah  satu  jenis  jaringan  saraf  tiruan  yang  dapat  digunakan  sebagai komponen pengendali parameter-parameternya yang tidak diketahui atau sulit untuk ditentukan tanpa ada  proses  identifikasi  terlebih  dahulu  serta  untuk  menggantikan  pemakaian  model  matematika  yang rumit dalam pengendalian system.
Untuk  menanggulangi  permasalahan  pengendalian  sistem  tersebut,  dilakukan  dengan  cara mengaplikasikan  metode backpropagation dalam  jaringan  saraf  tiruan  yang  proses  pembelajarannya sangat  unik  untuk  mendapatkan  hasil  pengenalan  yang  akurasinya  tinggi.  Metode  ini  dilakukan  untuk diterapkan dalam mengindentifikasi tiga jenis tanaman Iris terlebih dulu yang didasarkan pada fitur yang dimiliki  oleh  bunga  masing‐masing  tanaman  tersebut.  Hal  ini  dilakukan  sebagai  langkah  awal  untuk melihat  kemungkinan  pengembangan  jaringan  saraf  tiruan  untuk  diterapkan  pada  penelitian  untuk identifikasi dan prediksi pengendalian sistem.
Tanaman  Iris  sengaja  dipakai  karena  data  sudah  tersedia  secara  digital  di  Internet  dan  banyak digunakan sebagai bahan untuk menguji pengklasifikasian objek. Data yang ada berdasarkan penelitian
Sir Ronald Aylmer Fisher pada tahun 1936. Berisi 50 sampel data untuk masing‐masing tiga jenis Iris [1]. Adapun  fitur  yang  dipakai  dalam  pengklasifikasian  berupa  1)  lebar  kelopak(sepal  width),  2)  panjang kelopak (sepallength),  3) lebar mahkota (petal  width), dan 4) panjang mahkota (petal length)[1]. Pada proses pelatihan digunakan 70% dari 150 data  Iris dan proses pengujian digunakan 30% dari 150 data tersebut.
Pengujian dilakukan terhadap unjuk kerja jaringan saraf tiruan backpropagation pada pengenalan pola bunga Iris.

## 2.   METODE PENELITIAN

## 2.1   Skema Penelitian Jaringan Saraf Backpropagation
Sistem pengenalan pola iris yang dikerjakan terbagi menjadi 3 tahapan, yang dijabarkan seperti gambar 1 berikut
Gambar 5 Skema penelitian
2.1.1. Data Percobaan
Uji  coba  dilakukan  pada  komputer  dengan  prosesor  Pentium  1.66  Ghz  dan  Memory  2  GB. Percobaan  dilakukan  terhadap  data  bunga  Iris  yang  mengandung  informasi  dari  tiga  jenis  atau  kelas Bunga  Iris  yaitu Setosa , Versicolour dan Virginica [1].  Setiap  Iris  dicirikan  oleh  empat  atribut,  yaitu: panjang  sepal  dalam  cm,  lebar  sepal  dalam  cm,  panjang  petal  dalam  cm,  dan  lebar  petal  dalam  cm. Perangkat  lunak  yang  digunakan  dalam  percobaan  ini  adalah  bahasa  pemrograman  MATLAB  dan dijalankan pada sebuah komputer.

## 2.1.2. Pelatihan atau Training
Setelah  data  percobaan  didapatkan,  tahap  selanjutnya  yang  merupakan  bagian  utama  sistem pengenalan pola adalah pelatihan pola atau training. Sistem dilatih untuk mengenali pola masukan agar menghasilkan keluaran yang sesuai dengan target tertentu. Pola dilatih dengan menggunakan pelatihan dengan  arahan  untuk  mengeneralisasi  nilai  masukan.  Jaringan  ini  hanya  mempunyai  satu  lapisan tersembunyi. Nilai bobot akan dimodifikasi terus menerus sampai sistem ini menemukan nilai akhir yang konvergen [2].

## 2.1.3. Pengujian atau Testing
Tahap pengujian ini berupa verifikasi suatu pola akan ditempatkan dalam kelas yang mana. Pada penelitian, tahap pengujian ini dilakukan dengan menggunakan pola Iris juga namun tidak sama dengan pola Iris yang digunakan pada pelatihan. Dalam proses pengujian, setiap pola dijalankan dalam jaringan backpropagation tetapi hanya sampai pada tahap propagasi maju saja dengan menggunakan nilai bobot akhir yang disimpan sebelumnya. Untuk satu kali pengujian, persentase kesesuaian terhadap target yang disebut recognition rate pun dihitung [2].
2.2.  Parameter yang Digunakan sebagai Variabel pada Jaringan Saraf Backpropagation
Parameter yang digunakan dalam penelitian jaringan saraf backpropagatio dan sekaligus menjadi variable bebas, antara lain:
1. Inisialisasi bobot
Dalam  penelitian  ini  ada  2  macam  inisialisasi  bobot,  inisialisasi  bobot  antara  lapisan  masukan dengan  lapisan  tersembunyi  dan  inisialisasi  antara  lapisan  tersembunyi  dengan  lapisan  keluaran. Kedua-duanya  pada  jaringan  saraf  propagasi  balik  ( backpropagation )  ditentukan  secara  random dan metode Nguyen-Widrow.
2. Besarnya epoch yang digunakan
Peneliti  mencoba  membandingkan  hasil  yang  diperoleh  ketika  epoch  yang  ditentukan  antara lain 100, 1000 dan 10000.
Data Percobaan Training Testing
3. Besarnya laju pembelajaran (α)
Laju pembelajaran untuk algoritma propagasi balik sebesar 0.2. Sementara itu, variable terikat yang  digunakan  pada  penelitian  ini  adalah  nilai recognition  rate pada  tahap  pengujian dan  grafik error  terhadap  epoch.  Berdasarkan  hasil  tersebut,  akan  ditentukan  parameter-parameter  yang dapat mengoptimalkan performa jaringan, yang selanjutnya disebut parameter optimalisasi.
4. Momentum (μ) Pada penelitian ini menggunakan momentum sebesar 0.3
3.   HASIL DAN PEMBAHASAN
3.1.  Proses Pelatihan (training) dan Pengujian (testing) Data[2] Langkah 0:
 Pemberian inisialisasi penimbang (diberi nilai kecil secara acak)
Langkah 1:
 ulangi langkah 2 hingga 9 sampai kondisi akhir iterasi dipenuhi
Langkah 2:
 Untuk  masing-masing  pasangan  data  pelatihan  lakukan  langkah  3  hingga    8  Propagasi maju (Feedforward)
Langkah 3:
 Masing-masing  unit  masukan  (Xi  ,  i  =  1,....n)  menerima  sinyal  masukan  Xi  dan  sinyal tersebut disebarkan ke unit-unit bagian berikutnya (unit-unit lapisan tersembunyi)
Langkah 4:
 Masing-masing  unit  dilapisan  tersembunyi  dikalikan  dengan  factor  penimbang  dan dijumlahkan serta ditambah dengan biasnya:
𝑧_𝑖𝑛 𝑗 = `𝑣 0𝑗 +  ∑ 𝑥 𝑖 𝑣 𝑖𝑗 𝑛 𝑖=1 (2.1)
Kemudian menghitung sesuai dengan fungsi aktifasi yang digunakan:
𝑧 𝑗 = 𝑓(𝑧_𝑖𝑛 𝑗 ) (2.2)
bila yang digunakan adalah fungsi sigmoid maka bentuk fungsi tersebut adalah
𝑧 𝑗 = 1 1+ 𝑒 −𝑧_𝑖𝑛𝑗 (2.3)
Kemudian mengirim sinyal tersebut ke semua unit keluaran (unit keluaran ).
Langkah 5:
 Masing-masing  unit  keluaran  (yk.,  k=l,2,3...m)  dikalikan  dengan  factor  penimbang  dan dijumlahkan:
𝑦_𝑖𝑛 𝑘 =   𝑤 0𝑘 +  ∑ 𝑧 𝑗 𝑤 𝑗𝑘 𝑝 𝑗=1 (2.4)
Menghitung kembali sesuai dengan fungsi aktifasi
𝑦 𝑘 = 𝑓(𝑦_𝑖𝑛 𝑘 ) (2.5)
Propagasi balik dan Galatnya
Langkah 6:
 Masing-masing  unit  keluaran  (Yk,  k=l,...,m)  menerima  pola  target  sesuai  dengan  pola masukan saat pelatihan/training dan dihitung galatnya:
𝛿 𝑘 = (𝑡 𝑘 −  𝑦 𝑘 )𝑓 ′ (𝑦_𝑖𝑛 𝑘 ) (2.6)
karena f ’(y_ink)= yk menggunakan fungsi sigmoid , maka :
𝑓 ′ (𝑦 𝑖𝑛𝑘 ) =  𝑓(𝑦 𝑖𝑛𝑘 )(1 −  𝑓(𝑦 𝑖𝑛𝑘 ))
=   𝑦 𝑘 (1 −  𝑦 𝑘 ) (2.7)
Menghitung perbaikan faktor penimbang (kemudian untuk memperbaiki wjk).
∆𝑤 𝑘𝑗 =  𝛼. 𝛿 𝑘 . 𝑧 𝑗 (2.8)
Menghitung perbaikan w0k koreksi:
∆𝑤 0𝑘 =  𝛼. 𝛿 𝑘 (2.9)
dan menggunakan nilai δ k pada semua unit lapisan sebelumnya.
Langkah 7:
 Masing-masing penimbang yang menghubungkan unit-unit lapisan keluaran dengan unit- unit  pada  lapisan  tersembunyi  (Zj  ,j=1..,p)  dikalikan  delta  dan    dijumlahkan  sebagai masukan ke unit-unit lapisan berikutnya.
𝛿_𝑖𝑛 𝑗 =   ∑ 𝛿 𝑘 𝑤 𝑗𝑘 𝑚 𝑘=1 (2.10)
Selanjutnya dikalikan dengan turunan dari fungsi aktifasinya menghitung galat.
𝛿 𝑗 =   𝛿 𝑖𝑛𝑗 . 𝑓 ′ (𝑦_𝑖𝑛 𝑗 ) (2.11)
Kemudian menghitung perbaikan penimbang (digunakan untuk memperbaiki Vij).
∆𝑣 𝑖𝑗 =  𝛼. 𝛿 𝑗 . 𝑥 𝑖 (2.13)
Kemudian menghitung perbaikan bias (untuk memperbaiki v0j),
∆𝑣 0𝑗 =  𝛼. 𝛿 𝑗 (2.14) Memperbaiki bobot dan bias
Langkah 8:
 Masing-masing keluaran unit (yk, k=1,..,m) diperbaiki bias dan penimbangnya  (j=0,...,p),
𝑤𝑏𝑎𝑟𝑢 𝑗𝑘 =   𝑤𝑙𝑎𝑚𝑎 𝑗𝑘 +  ∆𝑤 𝑘𝑗 (2.15)
masing-masing unit tersembunyi (Zj, j: 1,....,p) diperbaiki bias dan penimbangnya (j=0,...,n).
𝑣𝑏𝑎𝑟𝑢 𝑖𝑗 =   𝑣𝑙𝑎𝑚𝑎 𝑖𝑗 +    ∆𝑣 𝑖𝑗 (2.16)
Langkah 9:
 Jika  jumlah  iterasi  belum  terpenuhi  atau  Mean  Square  Error  (MSE)  belum  tercapai, kembali ke langkah 2.

## 3.2.  Pengujian dan Analisa
Setelah  melakukan  pelatihan,  dilakukan  pengenalan  pola  dengan  menggunakan  30  %  dari  150 data Iris yaitu sebesar 45 data, agar seragam diambil pola dengan jumlah yang sama untuk setiap target, yaitu 15. Pada proses pengenalan pola ini, sistem akan memberi jawaban terhadap setiap pola, masuk ke cluster yang mana dari tiga cluster yang ada.
Apabila  jawaban  yang  diberikan  sesuai  target,  maka  jaringan  dianggap  telah  mengenali  pola dengan  benar.  Namun  bila  jawaban  yang  diberikan  tidak  sesuai  dengan  target,  maka  jaringan  dinilai salah dalam mengenali pola. Sistem tidak dapat menghasilkan jawaban bahwa suatu pola berada di luar target  yang  ditentukan.  Dengan  demikian,  hanya  ada  dua  pilihan,  yaitu  benar  dan  salah.  Persentase jawaban yang benar terhadap seluruh pertanyaan mengacu kepada recognition rate.
Tabel 1 Recognition Rate Backpropagation dengan 100 epoch Percobaan ke Recognition Rate(%) waktu 1 31,11 0,489628 2 33,33 0,278615 3 0 0,268422 4 0 0,276628 5 33,33 0,275926 6 31,11 0,264753 7 33,33 0,276625 8 91,11 0,260866 9 71,11 0,274653 10 91,11 0,265671 Tabel 2 Recognition Rate Backpropagation dengan 1000 epoch Percobaan ke Recognition Rate(%) waktu 1 100 2,215419 2 0 2,019720 3 100 1,991609 4 33,33 1,989431 5 100 1,998401 6 100 1,984258 7 80 1,979207 8 33,33 1,976149 9 33,33 1,985664 10 91,11 1,993404 Tabel 3 Recognition Rate Backpropagation dengan 10000 epoch Percobaan ke Recognition Rate(%) waktu 1 100 19,318658 2 0 19,103485 3 100 19,089379 4 100 19,099255 5 97,78 19,061151 6 33,33 19,125143 7 100 19,108755 8 100 19,123158 9 97,78 19,103436 10 97,78 19,063683
Recognition  rate yang  lebih  baik  dihasilkan  pada  percobaan  untuk  1000  dan  10000  epoch sedangkan  pada  percobaan  100  epoch,  recognition  rate  pada  100  epoch  yang  dihasilkan  tidak  sebaik pada  1000  dan  10000  epoch,  ini  disebabkan  iterasi  yang  dilakukan  masih  terlalu  sedikit.  Dapat disimpulkan, jika banyaknya iterasi yang ditetapkan sebagai syarat henti telah melampaui epoch dengan batas toleransi error, sistem dapat mempelajari pola dan mengenali pola dengan baik.

## 4. SIMPULAN
Sistem  pengenalan  pola  menggunakan  metode Backpropagation telah  dilakukan  dan  dapat bekerja dengan efektf. Hasil-hasil eksperimen dari pengujian sistem menggunakan data uji menunjukkan tingkat akurasi yang cukup baik.
Pada  penelitian  selanjutnya,  sistem  yang  telah  dibuat  ini  masih  sangat  dimungkinkan  untuk dikembangkan lagi.

## DAFTAR PUSTAKA
[1] http://en.wikipedia.org/wiki/iris_flower_data_set
[2] Benyamin Kusumoputro, “Jaringan Neural Network”, (Depok: Universitas Indonesia), hal 3 -4.