BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Spesifikasi Sistem Piranti yang digunakan untuk pelatihan maupun pengujian sistem terdiri dari perangkat keras dan perangkat lunak. 4.1.1 Perangkat Keras Perangkat keras yang digunakan untuk pelatihan maupun pengujian sistem: 1. Beagle board dengan spesifikasi: - Prosesor ARM Cortex A8 600MHz - C64X+ DSP Core - Memory RAM 128MB LPDDR - Micro SD V-Gen 4GB 2. Laptop A Note Centurion dengan spesifikasi: - Prosesor Intel Dual Core 1.6GHz - VGA Intel GMA945 128MB - Memory RAM Kingston 2GB DDR2 - HDD Seagate 80GB 3. Kamera Webcam Logitech QuickCam Connect dengan spesifikasi: - Quality VGA (640x480) CMOS webcam - Video capture: 640x480 pixels - Still image capture: 1.3 MP 75
76 4. Monitor LCD TV Advance 20 Pelatihan dan pengujian sistem dilakukan pada beagle board dan laptop. Dengan spesifikasi beagle board yang terbatas, waktu pelatihan sistem menjadi lebih lama. Karena itu penggunaan laptop bermanfaat untuk mempersingkat waktu pelatihan dan untuk melihat sejauh mana kemampuan Beagle Board melakukan pelatihan dan pengujian dibandingkan dengan komputer biasa. 4.1.2 Perangkat Lunak Perangkat keras yang digunakan untuk pelatihan maupun pengujian sistem: - Sistem Operasi yang digunakan pada Beagle Board maupun laptop adalah Linux Ubuntu 9.10 Karmic Distribution (Kernel 2.6.31). - Bahasa pemrograman yang digunakan pada Beagle Board maupun laptop adalah C++, dengan menggunakan library OpenCV. - Kompilasi program pada Beagle Board maupun laptop menggunakan g++. 4.2 Prosedur Operasional Prosedur operasional meliputi persiapan perangkat keras dan persiapan perangkat lunak yang meliputi pelatihan dan pengujian. 4.2.1 Perangkat Keras Prosedur operasional perangkat keras agar sistem dapat berjalan dengan baik:
77 - Memastikan micro SD card terpasang pada beagle board. - Menghubungkan kabel HDMI dari monitor LCD ke beagle board. - Menghubungkan USB hub 2.0 dengan beagle board. - Menghubungkan kamera webcam, keyboard, dan mouse dengan USB hub 2.0 pada beagle board. - Menghubungkan beagle board dengan adaptor 5V dan kabel power monitor LCD ke sumber listrik PLN. 4.2.2 Perangkat Lunak Prosedur operasional perangkat lunak sistem untuk pengambilan gambar input, pelatihan, dan pengujian: - Menjalankan program guvcview untuk pengambilan gambar. - Memastikan direktori penyimpanan gambar pada guvcview sama dengan direktori program konversi.jpg ke.bmp. - Pastikan objek berada dalam area jangkauan kamera pada layar, sehingga gambar yang didapat valid. - Menjalankan terminal pada direktori dimana program berada untuk menjalankan program. - Menjalankan program melalui terminal dengan perintah. atauconvert untuk mengkonversi gambar agar siap diolah oleh sistem,. atautrain untuk melakukan pelatihan, dan ". ataurecognize untuk pengujian.
78 4.3 Rencana Implementasi 4.3.1 Struktur Jaringan Saraf Tiruan Jaringan saraf tiruan pada sistem dirancang agar memiliki struktur yang optimal. Struktur jaringan yang optimpal harus memiliki komponen - komponen jaringan yang optimal pula, optimal disini berarti yang paling sesuai dengan sistem, komponen komponen tersebut meliputi input layer, hidden layer, output layer, training set, learning rate, momentum, dan jumlah node pada setiap layer-nya. Agar mendapatkan struktur jaringan saraf yang optimal untuk sistem, dilakukan percobaan untuk mencari jumlah hidden layer, jumlah node hidden layer, nilai learning rate dan nilai momentum yang optimum. Jumlah hidden layer, dengan jumlah node atau neuron pada input layer sebanyak 2500 node atau neuron dan jumlah node atau neuron pada output layer sebanyak 2 node atau neuron. Jumlah node pada input layer sebanyak 2500 disesuaikan dengan jumlah input yang masuk, untuk setiap gambar akan menghasilkan input berupa matriks 50 x 50 sehingga dibutuhkan node pada input sebanyak 2500 node untuk menampung input dari gambar tersebut. Jumlah node pada output layer sebanyak 2 node dikarenakan bentuk yang hendak dikenali oleh sistem tidak lebih dari 2 2, pada layer output ini digunakan binary encode untuk menentukan hasilnya. Struktur jaringan saraf yang didapat dari hasil percobaan akan digunakan untuk pelatihan dan pengujian sistem.
79 4.3.2 Pelatihan Sistem Pelatihan dilakukan dengan menggunakan struktur jaringan yang optimum yang didapat dari percobaan. Sistem melatih 2 bentuk objek (kotak dan segitiga) dengan posisi kotak horizontal seperti pada gambar 4.1 dan posisi segitiga tegak seperti gambar 4.2. Gambar 4.1 Gambar Posisi Kotak yang Dilatih Gambar 4.2 Gambar Posisi Segitiga yang Dilatih Pelatihan dilakukan dengan mengatur parameter parameter seperti MSE minimum dan jumlah iterasi atauepoh maksimum, serta menentukan gambar yang akan dilatih. Pengaturan nilai MSE minimum ditujukan untuk membuat pelatihan berhenti saat MSE telah mencapai nilai MSE minimum yang telah kita atur tersebut meskipun iterasi masih lebih kecil dari batas iterasi maksimum. Pengaturan jumlah iterasi maksimum ditujukan untuk membuat pelatihan berhenti saat jumlah iterasi sistem telah mencapai jumlah iterasi
80 maksimum yang telah kita tentukan, meskipun MSE masih lebih besar dari MSE minimum yang kita tentukan. Misal ditentukan MSE minimum sebesar 0,00001 dan jumlah iterasi maksimum adalah 2000 iterasi, maka pada saat MSE yang di dapat lebih kecil dari 0,00001 dan iterasi yang dijalan kan masih lebih kecil dari 2000 iterasi pelatihan akan berhenti. Atau saat iterasi telah mencapai 2000 iterasi dan MSE masih lebih besar dari 0.00001 maka pelatihan akan berhenti. Hasil dari pelatihan adalah sekumpulan bobot terakhir yang disimpan dalam file bobot.xml. bobot ini adalah bobot terakhir saat pelatihan selesai, yang akan dipakai untuk pengenalan bentuk objek. 4.3.3 Pengujian Pada Sistem Dengan menggunakan struktur jaringan yang sama dengan pelatihan sistem dan dengan menggunakan bobot dari hasil pelatihan, dilakukan pengujian sistem dengan menggunakan bobot tersebut untuk mengetahui tingkat akurasi pengenalan sistem. Pengujian dilakukan dengan menggunakan 30 gambar yang terdiri dari 10 gambar yang sama persis dengan yang telah dilatih (5 kotak dan 5 segitiga), 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga) dengan letak bergeser, dan 10 gambar dengan objek yang berbeda yang belum pernah dilatih. Pada percobaan dengan menggunakan jumlah input gambar yang berbeda beda pengujian gambar yang sama persis juga bervariatif sesuai dengan banyaknya gambar
81 yang dilatih, untuk 10 gambar objek yang sama yang belum pernah dilatih dan 10 gambar objek yang berbeda tetap sama. Gambar 4.3 Gambar Posisi Kotak dan Segitiga yang Dikenali 4.4 Analisa Hasil Percobaan 4.4.1 Penentuan Struktur Jaringan Saraf Tiruan Struktur jaringan saraf tiruan pada sistem menggunakan jumlah hidden layer, jumlah node tiap hidden layer, nilai learning rate dan nilai momentum yang optimum agar keakuratan sistem maksimal. Jumlah hidden layer, jumlah node, nilai learning rate dan nilai momentum yang optimum ditentukan dengan melakukan percobaan pada laptop. Pertama-tama dilakukan percobaan dengan jumlah node hidden layer dengan menggunakan satu hidden layer, nilai learning rate 0.5, nilai momentum 1, MSE minimum 0.01 serta banyak node input 2500. Dilakukan 3 kali pengambilan data pada masingmasing percobaan dengan nilai bobot random (penggunaan nilai bobot random disini ditujukan agar sistem pada awalnya lebih cepat mencapai MSE yang
82 diharapkan daripada memakai bobot yang mempunyai nilai yang sama semua.) pada awalnya. Dari hasil percobaan didapat bahwa makin banyak jumlah node hidden layer yang digunakan maka MSE 0.01 akan dicapai dalam iterasi yang makin singkat. Pada suatu jumlah tertentu, perubahan jumlah node hanya mengakibatkan sedikit perubahan pada jumlah iterasi. Dari percobaan didapat jumlah node hidden layer yang optimal bagi sistem adalah 200 buah. Penambahan jumlah node lebih dari 200 buah tidak menghasilkan penurunan jumlah iterasi yang berarti. Makin banyak jumlah node yang digunakan akan memakai memori makin besar, karena penambahan jumlah node akan menambah juga jumlah bobot koneksi antar layer, sehingga jika jumlah node lebih besar dari 200 buah akan mengorbankan memori tanpa ada perubahan jumlah iterasi yang berarti. J u m l a h I t e r a s i 250 200 150 100 50 0 Percobaan 1 Percobaan 2 Percobaan 3 50 100 150 200 250 300 Jumlah Node Gambar 4.4 Diagram Perubahan Jumlah Node Hidden Layer terhadap Jumlah Iterasi
83 Grafik diatas menunjukkan bahwa untuk sistem yang kami rancang dengan 1 hidden layer jumlah node diatas 200 tidak membuat perubahan jumlah iterasi yang berarti. Dengan jumlah node hidden layer yang kecil maka jumlah bobot koneksi antar layer juga akan sedikit pula, hal ini menyebabkan pembebanan pada tiap bobot menjadi cukup besar sehingga diperlukan iterasi yang lebih banyak untuk mencapai nilai bobot yang diinginkan. Sedangkan dengan jumlah node hidden layer yang cukup banyak maka pembebanan pada tiap bobot akan lebih berkurang, sehingga update bobot untuk mencapai nilai bobot yang diinginkan akan lebih sedikit. Setelah diketahui jumlah node hidden layer yang optimum bagi sistem, percobaan dilanjutkan untuk menentukan nilai learning rate yang optimum bagi sistem. Jaringan saraf tiruan diuji dengan menggunakan 1 hidden layer dengan 200 node, jumlah iterasi 3000, momentum 1 serta nilai learning rate yang diubah-ubah dari 0.9, 0.75, 0.5, 0.25 dan 0.1. Dari hasil percobaan dapat disimpulkan bahwa makin besar nilai learning rate, maka MSE yang dicapai dalam 3000 iterasi makin kecil. Penggunaan nilai learning rate yang terlalu besar akan memperbesar kemungkinan MSE yang diperoleh sehingga nilai learning rate yang baik adalah nilai yang tidak terlalu besar ataupun terlalu kecil. Dari percobaan, nilai learning rate yang terbaik bagi sistem adalah 0.5.
84 M S E 1.20E 04 1.00E 04 8.00E 05 6.00E 05 4.00E 05 2.00E 05 0.00E+00 learning Rate 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Learning rate learning Rate Gambar 4.5 Grafik Perubahan Nilai Learning Rate terhadap MSE Untuk mendapatkan nilai momentum yang optimum, jaringan saraf tiruan diuji dengan menggunakan 1 hidden layer dengan 200 node, learning rate 0.5, MSE minimum 0.01 serta nilai momentum yang diubah-ubah dari 0.9, 0.75, 0.5, 0.25 dan 0.1. Dari percobaan yang dilakukan didapat bahwa makin kecil nilai momentum maka makin banyak iterasi yang dibutuhkan untuk mencapai MSE 0.01.
85 Momentum J u m l a h I t e r a s i 100 80 60 40 20 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Momentum Momentum Gambar 4.6 Grafik Perubahan Nilai Momentum terhadap Jumlah Iterasi Grafik diatas memperlihatkan bahwa saat momentum kecil (mulai 0.1) untuk mencapai MSE 0.01 diperlukan lebih dari 80 kali iterasi, dan semakin menurun sampai di momentum 0.9 dengan jumlah iterasi dibawah 20. Momentum diatas 0.9 bagi sistem menghasilkan jumlah iterasi yang cenderung makin menaik untuk mencapai MSE sebesar 0.01. Maka nilai momentum optimum yang didapat adalah 0.9. Dengan menggunakan momentum 0.9 akan diperoleh MSE yang kecil dengan jumlah iterasi yang tidak terlalu banyak ataupun terlalu sedikit. Setelah menentukan jumlah node, learning rate, dan momentum untuk satu hidden layer, maka percobaan dilakukan untuk menguji respon sistem jika menggunakan hidden layer lebih dari satu, dengan menggunakan nilai learning rate dan momentum yang didapat dari pengujian di atas yaitu 0.5
86 dan 0.9, MSE minimum 0.01 serta banyak node input 2500. Dari percobaan ini didapat bahwa sistem akan optimal jika memakai struktur tiga hidden layer dengan konfigurasi 200, 60 dan 40. Dengan struktur tersebut dapat dicapai MSE yang kecil dalam iterasi yang singkat. Jumlah Node Hidden Layer ke- 1 2 3 4 5 Jumlah Iterasi 50 215 100 130 150 86 200 38 250 41 300 44 Tabel 4.1 Percobaan Menentukan Struktur Jaringan Saraf Tiruan Dengan 1 Hidden Layer
87 Jumlah Node Hidden Layer ke- 1 2 3 4 5 Jumlah Iterasi 200 20 43 200 30 42 200 40 35 200 50 23 200 60 18 200 70 21 Tabel 4.2 Percobaan Menentukan Struktur Jaringan Saraf Tiruan Dengan 2 Hidden Layer Jumlah Node Hidden Layer ke- 1 2 3 4 5 Jumlah Iterasi 200 60 20 41 200 60 30 37 200 60 40 35 200 60 50 34 200 60 60 36 Tabel 4.3 Percobaan Menentukan Struktur Jaringan Saraf Tiruan Dengan 3 Hidden Layer
88 Jumlah Node Hidden Layer ke- 1 2 3 4 5 Jumlah Iterasi 200 60 40 20 43 200 60 40 30 36 200 60 40 40 32 200 60 40 50 33 Tabel 4.4 Percobaan Menentukan Struktur Jaringan Saraf Tiruan Dengan 4 Hidden Layer Jumlah Node Hidden Layer ke- 1 2 3 4 5 Jumlah Iterasi 200 60 40 40 20 37 200 60 40 40 30 35 200 60 40 40 40 34 200 60 40 40 50 38 Tabel 4.5 Percobaan Menentukan Struktur Jaringan Saraf Tiruan Dengan 5 Hidden Layer Dari semua percobaan yang dilakukan, didapat struktur jaringan saraf tiruan yang optimal untuk sistem pengenalan bentuk objek adalah menggunakan 3 hidden layer dengan jumlah node 200, 60, dan 40 serta nilai
89 learning rate yang digunakan 0.5 dan momentum 0.9 dengan jumlah node pada input layer dan output layer secara berturut turut adalah 2500 node dan 2 node. 4.4.2 Pengaruh Perubahan Jumlah Iterasi Terhadap Akurasi Sistem Pada percobaan ini dilakukan pelatihan sistem dengan mengubah ubah batas iterasi maksimum mulai dari 100 hingga 100.000 iterasi. Nilai MSE minimum yang dipakai saat pelatihan adalah 0.0000001, penetapan nilai MSE ini ditujukan agar sistem berhenti hanya karena pengaruh jumlah iterasi saja. Penetapan nilai MSE minimum yang sangat kecil akan membuat sistem lebih lama mencapai MSE tersebut, sehingga sistem akan berhenti pada iterasi maksimum yang sudah ditetapkan. Jumlah gambar yang dilatih pada percobaan ini sebanyak 10 gambar (5 kotak dan 5 segitiga). Bobot yang dihasilkan pada setiap pelatihan tersebut selanjutnya digunakan untuk pengujian. Pengujian pertama dilakukan pada 10 gambar yang dilatih ( 5 gambar kotak dan 5 gambar segitiga yang digunakan untuk pelatihan). Dari data yang diperoleh dapat dilihat bahwa pada pelatihan dengan jumlah iterasi 100 sistem belum dapat mengenali gambar yang dilatih, tapi pada pelatihan dengan jumlah iterasi >= 500 sistem dapat mengenali semua gambar yang telah dilatih. Jadi untuk dapat mengenali gambar yang dilatih dibutuhkan jumlah iterasi yang cukup (tidak terlalu sedikit), karena jika jumlah iterasi yang masih sedikit (disini dicontohkan 100 iterasi) masih diperoleh MSE yang cukup besar,
90 dengan kata lain error yang dihasilkan masih cukup besar karena bobot belum benar benar sesuai untuk setiap input gambar yang dilatih. Dengan iterasi yang makin banyak maka MSE yang dihasilkan akan semakin kecil dimana menggambarkan error sistem yang semakin kecil, sehingga gambar yang dilatih dapat dikenali sempurna semuanya. Dengan iterasi yang semakin banyak maka kesempatan bobot untuk ter-update mendekati bobot yang ideal bagi semua gambar yang dilatih akan lebih banyak, sehingga bobot yang dihasilkan dengan jumlah iterasi yang semakin banyak akan membuat sistem lebih akurat mengenali gambar yang dilatih.
91 Iterasi MSE Dikenali Tidak Dikenali Kotak Segitiga 100 1.584E-3 0 0 10 500 4.350E-4 5 5 0 1000 1.848E-4 5 5 0 2000 7.470E-5 5 5 0 5000 3.527E-5 5 5 0 10000 1.222E-5 5 5 0 15000 1.014E-5 5 5 0 30000 4.578E-6 5 5 0 50000 3.219E-6 5 5 0 100000 1.344E-6 5 5 0 Tabel 4.6 Percobaan terhadap 10 gambar yang dilatih (5 gambar kotak dan 5 gambar segitiga yang digunakan untuk pelatihan)
92 Gambar 4.7 Grafik Pengujian 10 Gambar yang Sama Persis dengan yang Telah Dilatih Pengujian kedua menggunakan input 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga) dengan letak bergeser. Dari hasil percobaan pada Tabel 4.2 didapat bahwa semakin besar jumlah iterasi, maka semakin kecil MSE dan sistem semakin banyak mengenali objek yang sudah dilatih. Pada saat pengujian dengan bobot yang dihasilkan pada pelatihan dengan 100 iterasi, sistem tidak dapat mengenali satupun dari objek yang telah dilatih. Pada saat pengujian dengan bobot yang dihasilkan pada pelatihan dengan 500 iterasi, sistem dapat mengenali 7 objek yang telah dilatih yang terdiri dari 3 kotak dan 4 segitiga. Sistem dapat mengenali semua objek yang telah dilatih pada saat iterasi sebanyak 1000 atau lebih iterasi.
93 Iterasi MSE Dikenali Tidak Dikenali Kotak Segitiga 100 1.584E-3 0 0 10 500 4.350E-4 3 4 3 1000 1.848E-4 3 4 3 2000 7.470E-5 5 5 0 5000 3.527E-5 5 5 0 10000 1.222E-5 5 5 0 15000 1.014E-5 5 5 0 30000 4.578E-6 5 5 0 50000 3.219E-6 5 5 0 100000 1.344E-6 5 5 0 Tabel 4.7 Percobaan terhadap 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga) dengan letak bergeser
94 Gambar 4.8 Grafik Pengujian 10 Gambar dengan Objek yang Sama yang Belum Pernah Dilatih (letak bergeser) Pengujian ketiga menggunakan input 10 gambar dengan objek yang berbeda yang belum pernah dilatih. Dari hasil percobaan pada Tabel 4.3 didapat bahwa semakin besar jumlah iterasi, maka MSE akan semakin kecil dan untuk iterasi berapapun objek yang tidak pernah dilatih sistem tidak dapat mengenali satupun dari objek dan sistem juga tidak salah mengenali objek yang tidak pernah dilatih tersebut sebagai salah satu objek yang dilatihkan. Objek yang tidak pernah dilatihkan akan menghasilkan output yang sama sekali acak dan cenderung jauh dari target output untuk objek yang dilatihkan, karena bobot tidak diset untuk mengenali objek tersebut. Hal ini sesuai dengan prinsip kerja JST yang hanya akan mengenali objek yang pernah dilatih saja.
95 Iterasi MSE Dikenali Tidak Dikenali Kotak Segitiga 100 1.584E-3 0 0 10 500 4.350E-4 0 0 10 1000 1.848E-4 0 0 10 2000 7.470E-5 0 0 10 5000 3.527E-5 0 0 10 10000 1.222E-5 0 0 10 15000 1.014E-5 0 0 10 30000 4.578E-6 0 0 10 50000 3.219E-6 0 0 10 100000 1.344E-6 0 0 10 Tabel 4.8 Percobaan terhadap 10 gambar dengan objek yang berbeda yang belum pernah dilatih
96 Gambar 4.9 Grafik Pengujian 10 Gambar dengan Objek yang Berbeda yang Belum Pernah Dilatih Gambar 4.10 menunjukkan bagaimana pengaruh jumlah iterasi pada MSE. Dari grafik tersebut dapat dilihat bahwa semakin banyak jumlah iterasi maka akan menghasilkan MSE yang semakin kecil. Hal ini dikarenakan dengan iterasi yang semakin banyak maka bobot akan memiliki kesempatan yang lebih untuk ter-update mendekati bobot ideal untuk setiap input training, sehingga error yang dihasilkan sistem akan semakin kecil dan sistem akan menjadi lebih akurat. Saat MSE sudah cukup kecil maka perubahannya untuk setiap iterasi akan semakin kecil pula (dapat dilihat dengan grafik yang semakin melandai mulai dari jumlah iterasi 5000), hal ini disebabkan karena bobot sudah semakin mendekati nilai bobot ideal.
97 Gambar 4.10 Grafik Pengaruh Perubahan Jumlah Iterasi terhadap MSE 4.4.3 Pengaruh Perubahan MSE Terhadap Akurasi Sistem Pada percobaan ini dilakukan pelatihan sistem dengan mengubah ubah nilai MSE minimum mulai dari 0.1 sampai 0.000005. Batas iterasi maksimum yang dipakai saat pelatihan adalah 10000000, Penetapan batas iterasi yang sangat besar ditujukan supaya sistem hanya dipengaruhi oleh besarnya nilai MSE minimum untuk berhenti. Penetapan batas iterasi maksimum yang besar akan mengakibatkan pelatihan akan sangat lama untuk mencapai jumlah iterasi seperti itu, sehingga pelatihan akan lebih dahulu mencapai MSE sesuai dengan nilai MSE minimum yang diberikan. Jumlah gambar yang dilatih pada percobaan ini sebanyak 10 gambar (5 kotak dan 5 segitiga). Bobot yang dihasilkan pada setiap pelatihan tersebut selanjutnya digunakan untuk pengujian.
98 Pengujian pertama kali dilakukan pada 10 gambar yang dilatih (5 gambar kotak dan 5 gambar segitiga). Dari hasil percobaan pada Tabel 4.4, didapat bahwa semakin kecil MSE, maka semakin besar jumlah iterasi dan sistem semakin banyak mengenali objek yang sudah dilatih. Sistem dapat mengenali semua objek yang telah dilatih pada saat MSE 0.0005 dengan jumlah iterasi untuk mencapai MSE itu 400 iterasi. Dari data percobaaan dapat dilihat bahwa untuk dapat mengenali dengan tepat dibutuhkan sistem dengan nilai MSE yang cukup kecil (dalam percobaan ini 0.0005), hal ini dikarenakan saat pelatihan berhenti pada MSE yang cukup besar maka itu berarti error yang dihasilkan juga masih cukup besar sehingga sistem belum dapat mengenali bentuk objek dengan baik. Untuk pelatihan yang berhenti dengan MSE yang cukup kecil maka itu berarti error yang dihasilkan juga cukup kecil sehingga sistem akan dikatakan semakin baik saat MSE yang dihasilkan semakin kecil. Untuk mendapatkan nilai yang semakin kecil dibutuhkan pula jumlah iterasi yang semakin banyak hal tersebut dikarenakan untuk mengupdate bobot sehingga dapat mencapai nilai MSE yang kecil dibutuhkan perulangan iterasi yang cukup banyak.
99 MSE Jumlah Iterasi Dikenali Tidak Dikenali Kotak Segitiga 0.1 18 0 0 10 0.05 20 0 0 10 0.01 43 0 0 10 0.005 50 0 0 10 0.001 210 0 0 10 0.0005 400 5 5 0 0.0001 1950 5 5 0 0.00005 2853 5 5 0 0.00001 18433 5 5 0 0.000005 36643 5 5 0 Tabel 4.9 Percobaan terhadap 10 gambar yang dilatih (5 gambar kotak dan 5 gambar segitiga)
100 Gambar 4.11 Grafik Pengujian 10 Gambar yang Sama Persis dengan yang Telah Dilatih Pengujian kedua menggunakan input 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga) dengan letak bergeser. Dari hasil percobaan pada Tabel 4.5 didapat bahwa semakin kecil MSE, maka semakin besar jumlah iterasi dan sistem semakin banyak mengenali objek yang sudah dilatih. Pada saat MSE dibawah 0.0005, sistem tidak dapat mengenali satupun dari objek yang telah dilatih. Pada saat MSE 0.0005, jumlah iterasi untuk mencapai MSE adalah 400 iterasi. Sistem dapat mengenali 7 objek yang telah dilatih yang terdiri dari 3 kotak dan 4 segitiga. Sistem dapat mengenali semua objek yang telah dilatih pada saat MSE <= 0.0001.
101 MSE Jumlah Iterasi Kotak Dikenali Segitiga Tidak Dikenali 0.1 18 0 0 10 0.05 20 0 0 10 0.01 43 0 0 10 0.005 50 0 0 10 0.001 210 0 0 10 0.0005 400 3 4 3 0.0001 1950 5 5 0 0.00005 2853 5 5 0 0.00001 18433 5 5 0 0.000005 36643 5 5 0 Tabel 4.10 Percobaan terhadap 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga)
102 Gambar 4.12 Grafik Pengujian 10 Gambar dengan Objek yang Sama yang Belum Pernah Dilatih (letak bergeser) Pengujian ketiga menggunakan input 10 gambar dengan objek yang berbeda yang belum pernah dilatih. Dari hasil percobaan pada Tabel 4.6 didapat bahwa semakin kecil MSE, maka semakin besar jumlah iterasi dan sistem semakin banyak mengenali objek yang sudah dilatih. Dari data hasil percobaan didapatkan bahwa sistem sama sekali tidak mengenali bentuk objek yang tidak dilatihkan (atau dikenali sebagai bentuk yang tidak dikenali ). Untuk berapapun nilai dari MSE yang didapat sistem tidak mengenali bentuk objek yang tidak pernah dilatihkan pada sistem.
103 MSE Jumlah Iterasi Dikenali Tidak Dikenali Kotak Segitiga 0.1 18 0 0 10 0.05 20 0 0 10 0.01 43 0 0 10 0.005 50 0 0 10 0.001 210 0 0 10 0.0005 400 0 0 10 0.0001 1950 0 0 10 0.00005 2853 0 0 10 0.00001 18433 0 0 10 0.000005 36643 0 0 10 Tabel 4.11 Percobaan terhadap 10 gambar dengan objek yang berbeda yang belum pernah dilatih
104 Gambar 4.13 Grafik Pengujian 10 Gambar dengan Objek yang Berbeda yang Belum Pernah Dilatih Gambar 4.14 menunjukkan grafik pengaruh besarnya nilai MSE terhadap jumlah iterasi dalam pelatihan sistem. Dari grafik dapat dilihat bahwa untuk mendapatkan nilai MSE yang semakin kecil maka dibutuhkan jumlah iterasi yang semakin banyak. Hal ini dikarenakan untuk mendapatkan MSE yang semakin kecil maka bobot harus di-update semakin mendekati nilai bobot yang ideal bagi sistem, dan untuk mendapatkan nilai bobot yang demikian dibutuhkan perulangan iterasi yang cukup banyak. Jadi untuk mendapatkan nilai MSE yang semakin kecil maka iterasi yang dibutuhkan juga semakin banyak.
105 Gambar 4.14 Grafik Pengaruh Perubahan MSE terhadap Jumlah Iterasi 4.4.4 Pengaruh Banyaknya Gambar Yang Dilatih Terhadap Akurasi Sistem Pada percobaan ini dilakukan pelatihan sistem dengan mengubah ubah jumlah gambar yang dilatih mulai dari 1 gambar untuk setiap bentuk objek hingga 5 gambar untuk setiap bentuk objek. Input gambar untuk pengujian menggunakan input 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga) dengan letak bergeser. Batas iterasi maksimum yang dipakai saat pelatihan adalah 3000 iterasi, dan nilai minimum MSE 0.0000001. Penentuan jumlah iterasi maksimum sebanyak 3000 didasarkan pada perolehan jumlah iterasi pada percobaan sebelumnya untuk pengujian terhadap 10 gambar dengan objek yang sama yang belum pernah dilatih (5 kotak dan 5 segitiga) dengan letak bergeser. Pada percobaan tersebut didapati sistem dapat mengenali semua gambar pada saat jumlah iterasi 2000. Karena itu pada percobaan untuk melihat pengaruh banyaknya gambar yang
106 dilatih terhadap akurasi sistem ditetapkan jumlah iterasi maksimum sebesar 3000 supaya sistem hanya terpengaruh oleh banyaknya jumlah gambar yang dilatih. Penetapan nilai minimum MSE yang sangat kecil ditujukan supaya sistem hanya dipengaruhi oleh banyaknya jumlah iterasi untuk berhenti. Penetapan nilai minimum MSE yang sangat kecil akan mengakibatkan pelatihan akan sangat lama untuk mencapai nilai MSE seperti itu, sehingga pelatihan akan lebih dahulu mencapai jumlah iterasi maksimum sesuai dengan nilai iterasi maksimum yang diberikan. Bobot yang dihasilkan pada setiap pelatihan tersebut selanjutnya digunakan untuk pengujian. Pengujian dilakukan terhadap 10 gambar objek (5 gambar kotak dan 5 gambar segitiga). Table 4.7 menunjukan bahwa dengan jumlah gambar yang detraining semakin banyak maka akan menghasilkan sistem yang lebih akurat. Hal ini dikarenakan sistem memiliki sample yang lebih bervariatif untuk dilatih, sehingga bisa kemampuan untuk mengenali objek dengan kondisi gambar yang berbeda akan lebih baik (dengan objek yang sama). Tapi dengan menambah jumlah gambar yang dilatih maka akan mengahasilkan nilai MSE yang semakin besar seiring dengan bertambahnya jumlah gambar yang dilatih, dengan jumlah iterasi yang tetap. Nilai MSE yang semakin besar ini disebabkan Karena dengan semakin banyaknya jumlah gambar yang dilatih maka update bobot akan dilakukan untuk lebih banyak lagi input sehingga untuk mendapatkan nilai MSE yang kecil akan menjadi semakin lama.
107 Nilai MSE yang semakin besar ini akan mempengaruhi sistem dalam mengenali objek, meskipun dapat mengenali objek lebih banyak akan tetapi dengan iterasi yang sedikit maka target ouput akan sulit untuk tercapai. Untuk merancang sistem dengan jumlah gambar yang dilatih cukup banyak maka sebaiknya iterasi dalam pelatihan juga dibuat semakin banyak sehingga nilai MSE dapat menjadi lebih kecil dan sistem dapat lebih akurat. Jumlah Gambar MSE Dikenali (dari 5 kotak dan 5 segitiga) (gambar) Kotak Segitiga 2 3.58E-5 4 2 4 3.63E-5 5 2 6 3.86E-5 5 5 8 4.80E-5 5 5 10 4.87E-5 5 5 Tabel 4.12 Percobaan terhadap 10 gambar objek (5 gambar kotak dan 5 gambar segitiga)
108 6,00E 05 5,00E 05 4,00E 05 3,00E 05 2,00E 05 1,00E 05 0,00E+00 2 4 6 8 10 MSE Gambar 4.15 Grafik Pengaruh Perubahan Jumlah Gambar yang Dilatih Terhadap MSE 12 10 8 6 4 2 0 2 4 6 8 10 dikenali Gambar 4.16 Grafik Pengaruh Perubahan Jumlah Gambar yang Dilatih Terhadap Akurasi Sistem
109 4.4.5 Pengaruh Translasi dan Rotasi Objek Terhadap Akurasi Sistem Dari hasil percobaan, objek tetap dapat dikenali meski pada tahap pengambilan gambar untuk pengenalan, objek tersebut mengalami translasi. Namun, objek tidak dapat dikenali jika mengalami rotasi. Objek yang sama masih dapat dikenali hanya dengan toleransi rotasi 2 O. Sistem mampu mengenali objek tanpa terpengaruh translasi karena pada proses ekstraksi fitur yang digunakan dilakukan pencarian ROI (Region Of Interest) yang didasarkan pada kontur objek tersebut. Pencarian ROI yang dilakukan mengandalkan kontur objek yang bergantung pada kedudukan objek pada proses pengambilan gambar. Toleransi rotasi yang dimiliki oleh sistem dapat disebabkan oleh gambar objek yang digunakan pada proses pelatihan. Pada proses pengambilan gambar, objek yang mengalami rotasi < 4 O dapat menghasilkan ROI dengan ukuran yang serupa dan jika gambar dari objek tersebut masuk ke proses pelatihan, maka sistem tetap dapat mengenali objek tersebut. Gambar 4.17 Kotak tanpa rotasi dan rotasi 2 O
110 Gambar 4.18 Segitiga tanpa rotasi dan rotasi 4 O 4.4.6 Perbandingan Waktu Pelatihan dan Pengujian Pada Laptop Dengan Beagle Board Pelatihan sistem pada beagle board dilakukan dengan struktur jaringan saraf tiruan yang sama dengan struktur yang dipakai untuk pelatihan pada laptop. Dari hasil percobaan didapat bahwa pelatihan pada beagle board memerlukan waktu yang lebih lama dibandingkan waktu pelatihan pada laptop. Hal ini dikarenakan spesifikasi beagle board yang terbatas terutama pada kapasitas memori RAM yang hanya 128 MB. Meskipun dengan waktu yang lebih lama hasil yang didapatkan tetap sama seperti training pada laptop Karena parameter yang digunakan masih sama seperti yang ada pada pelatihan di laptop. Untuk menggunakan beagle board dengan optimum maka harus dipikirkan algoritma yang efisien dalam penggunaan memori, karena jika menggunakan algoritma seperti yang digunakan di komputer biasa maka akan cukup menghabiskan memori di beagle board. Di komputer mungkin penggunaan memori 10 MB atau lebih tidak begitu berpengaruh, tetapi saat
111 pemakaian memori sebesar itu pada beagle board akan sangat berasa pengaruhnya. Iterasi Waktu Pada Laptop (menit) Waktu Pada Beagle Board (menit) 100 0.083 1 500 0.417 5 1000 0.833 10 2000 1.667 20 5000 3.333 50 Tabel 4.13 Perbandingan Waktu Pelatihan Pada Laptop Dengan Beagle Board Dari total waktu yang diperoleh pada percobaan diatas, dapat dilihat waktu yang dibutuhkan pada tahap pelatihan untuk setiap bagian dari 1 iterasi seperti yang diperlihatkan pada Tabel 4.14.
112 Time Breakdown Bagian Program Laptop Waktu (detik) Beagle Board Initialization Backprop 0.062 0.930 Generate data 0.001 0.015 Generate target 0.001 0.015 Feedforward 0.001 0.015 Run Backprop 0.045 0.675 Check MSE 0.0005 0.008 Check Iteration 0.0005 0.008 Store Matrix 0.483 7.245 Total Waktu 0.594 8.911 Tabel 4.14 Perbandingan Time Breakdown Pelatihan Pada Laptop Dengan Beagle Board Waktu pengujian pada sistem, baik pada Laptop maupun pada Beagle Board, merupakan waktu yang diperlukan untuk melakukan proses feedforward karena pengujian pada sistem menggunakan proses feedforward saja. Waktu yang dibutuhkan untuk melakukan proses feedforward pada pengujian sama dengan proses feedforward pada pelatihan.
113 Time Breakdown Bagian Program Laptop Waktu (detik) Beagle Board Initialization Backprop 0.062 0.930 Load Matrix 0.169 2.535 Generate data 0.001 0.015 Generate target 0.001 0.015 Feedforward 0.001 0.015 Total Waktu 0.234 3.510 Tabel 4.15 Perbandingan Time Breakdown Pengujian Pada Laptop Dengan Beagle Board