Laporan Backpropagation [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

SOFT COMPUTING PROGRAM JST BACKPROPAGATION IDENTIFIKASI POLA WAJAH MANUSIA MENGGUNAKAN MATLAB



Oleh :



Ni Putu Ayu Oka Wiastini



( 1504505008 )



Kadek Novar Setiawan



( 1504505023 )



Raras Ayu Septyastuti Ali Dewi



( 1504505025 )



Jurusan Teknologi Informasi Fakultas Teknik – Universitas Udayana 2017



1.1



Landasan Teori Bagian ini akan membahas teori-teori mengenai Jaringan Saraf Tiruan (JST)



dan Jaringan Backpropagation karena merupakan bagian yang terpenting dalam membantu jalannya sistem. 1.1.1



Jaringan Saraf Tiruan (JST) Jaringan syaraf tiruan (JST) adalah paradigma pemrosesan suatu informasi



yang terinspirasi oleh sistem sel syaraf biologi. JST dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi, dengan asumsi sebagai berikut. 1. 2. 3.



Pemrosesan informasi terjadi pada banyak elemen sederhana (neuron). Sinyal dikirimkan diantara neuron-neuron melalui penghubung-penghubung. Penghubung antar neuron memiliki bobot yang akan memperkuat atau



4.



memperlemah sinyal. Untuk menentukan output, setiap neuron menggunakan fungsi aktivasi (biasanya bukan fungsi linier) yang dikenakan pada jumlahan input yang diterima. Besarnya output ini selanjutnya dibandingkan dengan suatu batas ambang. 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 menjumpainya. Kedua, tetap mampu bekerja dengan baik. Jika sebuah neuron rusak, neuron lain dapat dilatih untuk menggantikan fungsi neuron yang rusak tersebut (Siang, 2004). Hal yang ingin dicapai dengan melatih JST adalah untuk mencapai keseimbangan antara kemampuan memorisasi dan generalisasi. Yang dimaksud kemampuan memorisasi adalah kemampuan JST untuk mengambil kembali secara sempurna sebuah pola yang telah dipelajari. Kemampuan generalisasi adalah kemampuan JST untuk menghasilkan respon yang bisa diterima terhadap polapola yang sebelumnya telah dipelajari. Hal ini sangat bermanfaat bila pada suatu saat ke dalam JST itu di inputkan informasi baru yang belum pernah dipelajari, maka JST itu masih akan tetap dapat memberikan tanggapan



yang baik, memberikan keluaran yang mendekati (Puspaningrum, 2006). Jaringan syaraf tiruan menyerupai otak manusia dalam 2 hal, yaitu sebagai berikut. 1. 2.



Pengetahuan diperoleh jaringan melalui proses belajar. Kekuatan hubungan antar sel syaraf (neuron) yang dikenal sebagai bobotbobot sinaptik digunakan untuk menyimpan pengetahuan. Jaringan syaraf tiruan juga ditentukan oleh 3 hal (Siang, 2004), yaitu sebagai



berikut. 1. 2.



Pola hubungan antar neuron (disebut arsitektur jaringan). Metode untuk menentukan bobot penghubung



3.



training/learning). Fungsi aktivasi, yaitu fungsi yang digunakan untuk menentukan keluaran



(disebut



metode



suatu neuron. 1.1.2



Konsep Dasar Jaringan Saraf Tiruan (JST) Setiap pola-pola informasi input dan output yang diberiakan kedalam jaringan



syaraf tiruan diproses dalam neuron. Neuron-neuron tersebut terkumpul didalam lapisan-lapisan yang disebut neuron layers. Lapisan-lapisan penyusun jaringan syaraf tiruan tersebut dapat dibagi menjadi 3, yaitu sebagai berikut. 1.



Lapisan input. Unit-unit di dalam lapisan input disebut unit-unit input. Unitunit input tersebut menerima pola inputan data dari luar yang menggambarkan



2.



suatu permasalahan. Lapisan tersembunyi. Unit-unit di dalam lapisan tersembunyi disebut unit-unit



3.



tersembunyi. Dimana outputnya tidak dapat secara langsung diamati. Lapisan output. Unit-unit di dalam lapisan output disebut unit-unit output. Output dari lapisan ini merupakan solusi jaringan syaraf tiruan terhadap suatu permasalahan.



1.1.3



Arsitektur Jaringan Saraf Tiruan (JST)



Jaringan syaraf tiruan memiliki beberapa arsitektur jaringan yang sering digunakan dalam berbagai aplikasi. Arsitektur jaringan syaraf tiruan tersebut, antara lain (Kusumadewi, 2003). 1.



Jaringan Layar Tunggal (Single Layer Network). Jaringan dengan lapisan tunggal terdiri dari 1 layer input dan 1 layer output.



Setiap neuron/unit yang terdapat di dalam lapisan / layer input selalu terhubung dengan setiap neural yang terdapat pada layer output. Jaringan ini hanya menerima input kemudian secara langsung akan mengolahnya menjadi output tanpa harus melalui lapisan tersembunyi. Contoh algoritma jaringan syaraf tiruan yang menggunakan metode ini yaitu : ADALINE, Hopfield, Perceptron.



Gambar 1.1 Jaringan Layar Tunggal [Sumber : Tesis Penggunaan Jaringan Syaraf Tiruan Backpropagation untuk Seleksi Penerimaan Mahasiswa Baru pada Jurusan Teknik Komputer di Politeknik Negeri Sriwijaya]



2.



Jaringan layar jamak (multi layer network). Jaringan dengan lapisan jamak memiliki ciri khas tertentu yaitu memiliki 3



jenis layer yakni layer input, layer output, layer tersembunyi. Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan yang kompleks dibandingkan jaringan dengan lapisan tunggal. Namun proses pelatihan sering membutuhkan waktu yang cenderung lama. Contoh algoritma jaringan syaraf tiruan yang menggunakan metode ini yaitu : MADALINE, backpropagation, neocognitron.



Gambar 1.2 Jaringan Layar Jamak [Sumber : Tesis Penggunaan Jaringan Syaraf Tiruan Backpropagation untuk Seleksi Penerimaan Mahasiswa Baru pada Jurusan Teknik Komputer di Politeknik Negeri Sriwijaya]



3.



Jaringan dengan Lapisan Kompetitif Pada jaringan ini sekumpulan neuron bersaing untuk mendapatkan hak



menjadi aktif. Contoh algoritma yang menggunakan metode ini adalah LVQ.



Gambar 1.3 Jaringan dengan Lapisan Kompetitif [Sumber : Tesis Penggunaan Jaringan Syaraf Tiruan Backpropagation untuk Seleksi Penerimaan Mahasiswa Baru pada Jurusan Teknik Komputer di Politeknik Negeri Sriwijaya]



1.1.4



Jaringan Backpropagation



Model jaringan backpropagation merupakan suatu teknik pembelajaran atau pelatihan supervised leaning yang paling banyak digunakan. Metode ini merupakan salah satu metode yang sangat baik dalam menangani masalah pengenalan pola-pola kompleks. Didalam jaringan backpropagation, setiap unit yang berada di lapisan input berhubungan dengan setiap unit yang ada di lapisan tersembunyi. Setiap unit yang ada di lapisan tersembunyi terhubung dengan setiap unit yang ada di lapisan output. Jaringan ini terdiri dari banyak lapisan (multilayer network). Ketika jaringan ini diberikan pola masukan sebagai pola pelatihan, maka pola tersebut menuju unitunit lapisan tersembunyi untuk selanjutnya diteruskan pada unit-unit dilapisan keluaran. Kemudian unit-unit lapisan keluaran akan memberikan respon sebagai keluaran jaringan syaraf tiruan. Saat hasil keluaran tidak sesuai dengan yang diharapkan, maka keluaran akan disebarkan mundur (backward) pada lapisan tersembunyi kemudian dari lapisan tersembunyi menuju lapisan masukan. Tahap pelatihan ini merupakan langkah untuk melatih suatu jaringan syaraf tiruan, yaitu dengan cara melakukan perubahan bobot, sedangkan penyelesaian masalah akan dilakukan jika proses pelatihan tersebut telah selesai, fase ini disebut fase pengujian (Puspaningrum, 2006). 1.1.5



Arsitektur Jaringan Backpropagation Setiap unit dari layer input pada jaringan backpropagation selalu terhubung



dengan setiap unit yang berada pada layer tersembunyi, demikian juga setiap unit layer tersembunyi selalu terhubung dengan unit pada layer output.



Gambar 1.4 Arsitektur Jaringan Backpropagation [Sumber : Makalah Jaringan Saraf Tiruan ]



Jaringan backpropagation terdiri dari banyak lapisan (multilayer network), yaitu sebagai berikut. 1. 2.



Lapisan input (1 buah), yang terdiri dari 1 hingga n unit input. Lapisan tersembunyi (minimal 1 buah), yang terdiri dari 1 hingga p unit



3.



tersembunyi. Lapisan output (1 buah), yang terdiri dari 1 hingga m unit output.



1.1.6



Fungsi Aktivasi Backpropagation Dalam backpropagation, fungsi aktivasi yang dipakai harus memenuhi



beberapa syarat yaitu : kontinu, terdiferensial dengan mudah dan merupakan fungsi yang tidak turun. Salah satu fungsi yang memenuhi ketiga syarat tersebut sehingga sering dipakai adalah fungsi sigmoid biner yang memiliki range (0, 1). dengan turunan



Rumus diatas merupakan persamaan fungsi aktivasi sigmoid biner yang digunakan pada jaringan backpropagation. Grafik dari fungsi aktivasi sigmoid biner dapat dilihat pada Gambar 1.5.



Gambar 1.5 Fungsi Aktivasi Sigmoid Biner [Sumber : Jaringan Saraf Tiruan dan Pemrogramannya menggunakan Matlab]



Fungsi lain yang sering dipakai adalah fungsi sigmoid bipolar yang bentuk fungsinya mirip dengan fungsi sigmoid biner, tapi dengan range (-1, 1). dengan turunan



Rumus diatas merupakan persamaan fungsi aktivasi sigmoid bipolar yang digunakan pada jaringan backpropagation. Grafik dari fungsi aktivasi sigmoid bipolar dapat dilihat pada Gambar 1.6.



Gambar 1.6 Fungsi Aktivasi Sigmoid Bipolar [Sumber : Jaringan Saraf Tiruan dan Pemrogramannya menggunakan Matlab]



Fungsi sigmoid memiliki nilai maksimum = 1. Maka, pola yang targetnya > 1, pola masukan dan keluaran harus terlebih dahulu ditransformasi sehingga semua polanya memiliki range yang sama seperti fungsi sigmoid yang dipakai. Alternatif



lain adalah menggunakan fungsi aktivasi sigmoid hanya pada layar yang bukan layar keluaran. Pada layar keluaran, fungsi aktivasi yang dipakai adalah fungsi identitas : f(x) = x. 1.1.7



Pelatihan Jaringan Backpropagation Aturan pelatihan jaringan backpropagation terdiri dari 2 tahapan, feedforward



dan backward propagation. Pada jaringan diberikan sekumpulan contoh pelatihan yang disebut set pelatihan. Set pelatihan ini digambarkan dengan sebuah vektor feature yang disebut dengan vektor input yang diasosiasikan dengan sebuah output yang menjadi target pelatihannya. Dengan kata lain set pelatihan terdiri dari vektor input dan juga vektor output target. Keluaran dari jaringan berupa sebuah vektor output aktual. Selanjutnya dilakukan perbandingan antara output aktual yang dihasilkan dengan output target dengan cara melakukan pengurangan diantara kedua output tersebut. Hasil dari pengurangan berupa error. Error dijadikan sebagai dasar dalam melakukan perubahan dari setiap bobot dengan mempropagationkannya kembali. Setiap perubahan bobot yang terjadi dapat mengurangi error. Siklus perubahan bobot (epoch) dilakukan pada setiap set pelatihan sehingga kondisi berhenti dicapai, yaitu bila mencapai jumlah epoch yang diinginkan atau hingga sebuah nilai ambang yang ditetapkan terlampaui. Algoritma pelatihan jaringan backpropagation terdiri dari 3 tahapan yaitu sebagai berikut. 1. Tahap umpan maju (feedforward). 2. Tahap umpan mundur (backpropagation). 3. Tahap pengupdatean bobot dan bias. Secara rinci algoritma pelatihan jaringan backpropagation dapat diuraikan sebagai berikut. Langkah 0 Inisialisasi semua bobot dengan bilangan acak kecil. Langkah 1 Jika kondisi penghentian belum terpenuhi, lakukan langkah 2 sampai dengan 8.



Langkah 2 Untuk setiap pasang data pelatihan, lakukan langkah 3 sampai dengan 8. FASE I: PROPAGASI MAJU Langkah 3 Tiap unit masukkan menerima sinyal dan meneruskan ke unit tersembunyi. Langkah 4 Hitung semua keluaran di unit tersembunyi (Zj):



Langkah 5 Hitung semua jaringan di unit keluaran (yk)



FASE II: PROPAGASI MUNDUR Langkah 6 Hitung faktor  unit keluaran berdasarkan kesalahan setiap unit keluaran yk (k=1,2,3….)



k meruapakan unit kesalahan yang akan dipakai dalam perubahan bobot layer dibawahnya (langkah 7) Hitung suku perubahan bobot Wkj dengan laju perubahan α



k = 1,2,3,...,m ; j = 0,1,2,...p Langkah 7 Hitung factor  unit tersembunyi berdasarkan kesalahan di setiap unit tersembunyi zj (j=1,2,3,…,p)



Faktor unit tersembunyi



Hitung suku perubahan bobot vji j = 1,2,3,...,p ; i = 0,1,2,...n FASE III: PERUBAHAN BOBOT Langkah 8 Perubahan bobot garis yang menuju unit keluaran



Perubahan bobot garis yang menuju ke unit tersembunyi



1.2



Implementasi JST Backpropagation dengan Matlab Jaringan Saraf Tiruan (Neural Network) merupakan algoritma yang mampu



melakukan identifikasi suatu kelas berdasarkan ciri masukan yang diberikan. Algoritma ini akan melatihkan ciri masukan yang diberikan pada masing-masing kelas sehingga diperoleh suatu arsitektur jaringan dan bobot-bobot awal yang mampu memetakan ciri masukan ke dalam kelas keluaran. Berikut ini merupakan contoh pemrograman Matlab (menggunakan Matlab R2016a) untuk mengidentifikasi pola wajah manusia berdasarkan ciri mata, hidung,



mulut dan telinga menggunakan algoritma Jaringan Syaraf Tiruan Backpropagation. Pada proses pelatihan jaringan digunakan 60 data latih dan pada proses pengujian digunakan 20 data uji. 1.2.1 Pengumpulan Data Latih dan Data Uji Langkah pertama untuk pembuatan program, yaitu mempersiapkan data yang akan digunakan untuk proses pelatihan dan pengujian. Berikut ini merupakan data pola wajah yang digunakan pada program untuk proses pelatihan dan proses pengujian.



Gambar 1.7 Data Latih dan Data Uji



Gambar 1.7 merupakan tampilan data untuk pelatihan dan juga pengujian, dimana pada proses pelatihan jaringan digunakan 60 data latih yang terdiri dari 15 data pola mata, 15 data pola hidung, 15 data pola mulut dan 15 data pola telinga. Sedangkan pada proses pengujian digunakan 20 data uji yang terdiri dari 5 data pola mata, 5 data pola hidung, 5 data pola mulut dan 5 data pola telinga. Target dari data tersebut, yaitu berupa nama orang, diantaranya Adi dengan kode 1, Budi kode 2, Candra kode 3, Dedi kode 4 dan Erik kode 5. Langkah berikutnya, yaitu menyusun data latih beserta target latih sesuai dengan format pemrograman JST pada pemrograman Matlab. Agar memudahkan pemrograman, data latih disusun sehingga menjadi matriks berukuran 4 x 15 dan target latih disusun menjadi matriks berukuran 1 x 15 seperti pada Gambar 1.8.



Gambar 1.8 Matriks Data Latih dan Target Latih



Target latih yang disusun menjadi matriks 1 x 15, merupakan kode dari setiap target (nama orang) yang telah ditentukan. Dimana, kode 1 adalah Adi, kode 2 adalah Budi, kode 3 adalah Candra, kode 4 adalah Dedi dan kode 5 adalah Erik. Langkah selanjutnya adalah menuliskan kode program ke dalam bentuk bahasa pemrograman pada Matlab. Kode Program penulisan data latih dan target latih adalah sebagai berikut. % Mempersiapkan data latih dan target latih data_latih = [0.35,0.59,0.19,0.36,0.58,0.40,0.61,0.20,0.38,0.57,0.33,0.55,0.18,0. 38,0.56;... 0.47,0.11,0.89,0.90,0.45,0.45,0.11,0.87,0.88,0.46,0.45,0.14,0.87,0.8 9,0.47;... 0.88,0.90,0.54,0.39,0.80,0.80,0.90,0.56,0.35,0.82,0.85,0.90,0.55,0.3 7,0.83;... 0.34,0.56,0.38,0.82,0.91,0.35,0.55,0.41,0.85,0.92,0.37,0.57,0.40,0.8 5,0.91]; target_latih = [1,2,3,4,5,1,2,3,4,5,1,2,3,4,5]; [~,N] = size(data_latih); Kode Program 1.1 Data Latih dan Target Latih



Kode Program 1.1 merupakan penulisan matriks data latih dan target latih pada pemrograman Matlab. Matriks data latih disimpan dalam variabel data_latih, sedangkan target latih disimpan pada variabel target_latih.



1.2.2 Pembentukan JST Backpropagation Proses pembangunan Jaringan Saraf Tiruan (JST) Backpropagation pada Matlab menggunakan fungsi yang telah disediakan, yaitu newff. Berikut ini merupakan rincian kode program yang digunakan untuk membangun jaringan backpropagation. % Pembangunan Jaringan Backpropagation net = newff(minmax(data_latih),[2,1], {logsig','purelin'},'traingdx'); net.IW{1,1} = [-7.62,0.97,-2.60,-9.55;-5.83,-3.41,3.08,-4.44]; net.LW{2,1} = [-2.40,-2.67]; net.b{1,1} = [9.38;-2.7]; net.b{2,1} = 5.93; Kode Program 1.2 Pembentukan JST Backpropagation



Kode Program 1.2 merupakan kode program yang digunakan untuk pembentukan jaringan backpropagation pada Matlab. Fungsi yang digunakan, yaitu newff,



dimana kode program di atas akan membentuk sebuah jaringan



backpropagation 4-2-1, yang artinya terdapat 4 unit masukan, 2 unit layar tersembunyi (hidden layer) dan 1 unit keluaran. Pada pemrograman ini digunakan fungsi aktivasi sigmoid biner pada hidden layer dan fungsi linear (purelin) pada layer keluaran. Sedangkan fungsi pelatihan (traingdx) menggunakan metode gradien descent. Selanjutnya, dilakukan inisialisasi bobot awal secara acak. net.IW{1,1} dan net.b{1,1} merupakan



bobot dan bias dari masukan ke hidden layer atau disebut Vji.



Sedangkan, net.LW{2,1} dan net.b{2,1} merupakan bobot dan bias dari hidden layer ke unit keluaran atau disebut Wkj.



1.2.3 Proses Pelatihan Data Latih Setelah melakukan inisialisasi bobot dan bias secara acak, maka langkah selanjutnya adalah melakukan pelatihan jaringan dengan menggunakan data latih dan target latih. Namun, sebelum melakukan proses training/pelatihan, pengguna dapat memberikan parameter-parameter yang mempengaruhi proses pelatihan JST, seperti



parameter jumlah epoch, toleransi error, learning rate, besar laju pemahaman (alpha) dan juga momentum. % Memberikan nilai untuk mempengaruhi proses pelatihan net.performFcn = 'mse'; net.trainParam.goal = 0.01; %toleransi kesalahan net.trainParam.show = 20; %frekuensi perubahan mse net.trainParam.epochs = 1000; %batas maks epoch net.trainParam.mc = 0.95; %besar momentum net.trainParam.lr = 0.1; %laju pemahaman Kode Program 1.3 Parameter Proses Pelatihan JST



Pada Kode Program 1.3, ditentukan bahwa toleransi kesalahan sebesar 0,01, frekuensi MSE sebesar 20, batas maksimal epoch adalah 1000 epoch, besar momentum sebesar 0,95 dan besar laju pemahaman (alpha) adalah 0,1. Selanjutnya, dapat dilanjutkan ke proses pelatihan jaringan. % Proses training [net_keluaran,tr,Y,E] = train(net,data_latih,target_latih); % Hasil setelah pelatihan bobot_hidden = net_keluaran.IW{1,1} bobot_keluaran = net_keluaran.LW{2,1} bias_hidden = net_keluaran.b{1,1} bias_keluaran = net_keluaran.b{2,1} jumlah_iterasi = tr.num_epochs nilai_keluaran = Y nilai_kesalahan = E kesalahan_MSE = (1/N)*sum(nilai_kesalahan.^2) Kode Program 1.4 Proses Pelatihan JST



Kode Program 1.4 merupakan proses training atau pelatihan JST pada pemrograman Matlab, dimana dengan menggunakan fungsi train disertai dengan parameter net, data_latih dan target_latih. Program akan menampilkan hasil dari proses pelatihan ini, yaitu berupa bobot hidden layer dan bobot keluaran yang baru, bias hidden layer dan keluaran yang baru, jumlah iterasi yang dihasilkan, nilai keluaran, nilai kesalahan (error) dan juga nilai MSE.



Gambar 1.10 Neural Network Training



Gambar 1.10 merupakan tampilan yang menunjukkan bahwa target error (MSE) tercapai pada epoch ke-506. Pada bagian paling atas merupakan gambaran arsitektur jaringan backpropagation yang dibuat, yaitu 4-2-1.



Gambar 1.11 Neural Network Training Perfomance



Gambar 1.11 merupakan tampilan untuk melihat error (mse) yang dihasilkan pada setiap epoch, dimana dengan meng-klik tombol ‘performance’ pada halaman Neural Network Training (Gambar 1.10). Sedangkan koefisien korelasi hasil pelatihan dapat dilihat dengan meng-klik tombol ‘regression’ pada Neural Network Training yang ditunjukan pada Gambar 1.10.



Gambar 1.12 Neural Network Training Regression



Gambar 1.12 menampilkan nilai koefisien korelasi dari pelatihan jaringan adalah sebesar 0.99751 yang menunjukkan bahwa akurasi dari hasil proses pelatihan sangat baik. Sedangkan untuk melihat hasil dari nilai-nilai hasil pelatihan, dapat dilihat pada Gambar 1.13.



Gambar 1.13 Hasil Pelatihan JST Backpropagation



Gambar 1.13 merupakan hasil yang didapatkan dari proses pelatihan JST Backpropagation menggunakan data latih dan target latih yang telah ditentukan, dimana dari hasil tersebut didapatkan iterasi (epoch) sebanyak 506 dan nilai MSE jaringan adalah 0,01. 1.2.4 Proses Pengujian Jaringan Langkah terakhir adalah proses pengujian jaringan, dimana menggunakan data uji yang telah disediakan sebelumnya. Data uji tersebut akan disusun juga menjadi sebuah matriks berukuran 5 x 4 agar memudahkan dalam membuat kode programnya. % Pengujian Jaringan data_uji = [0.38,0.60,0.19,0.35,0.59;... 0.43,0.14,0.88,0.90,0.45;... 0.85,0.87,0.60,0.41,0.78;... 0.34,0.57,0.40,0.83,0.93]; hasil_uji = round(sim(net_keluaran,data_uji)) Kode Program 1.5 Proses Pengujian JST



Kode Program 1.5 merupakan kode program yang digunakan untuk proses pengujian JST Backpropagation yang telah dilatih terlebih dahulu. Data uji yang telah diubah menjadi matriks berukuran 5 x 4 dimasukkan ke dalam variabel data_uji. Kemudian, untuk menghitung hasil pengujian, maka digunakan fungsi sim dengan parameter net_keluaran dan data_uji. Dimana, pada rumus tersebut dilengkapi dengan fungsi round, untuk membulatkan hasil dari pengujian tersebut.



Gambar 1.14 Hasil Pengujian JST Backpropagation



Gambar 1.14 merupakan tampilan nilai hasil pengujian JST Backpropagation yang telah dibuat. Hasil tersebut 100% sesuai dengan target uji yang telah diberikan sebelumnya. Pada contoh ini, ditunjukkan bahwa JST dapat mengidentifikasi/



membedakan pola wajah seseorang berdasarkan ciri mata, hidung, mulut, dan telinga dengan baik. 1.3



Perbedaan Penggunaan Fungsi Aktivasi



1.4



Kesimpulan Implementasi Jaringan Saraf Tiruan Backpropagation untuk Identifikasi Pola



Wajah Manusia dapat dibuat dengan menggunakan program Matlab R2016a. Proses pelatihan jaringan menggunakan 60 data latih yang terdiri dari 15 data pola mata, 15 data pola hidung, 15 data pola mulut dan 15 data pola telinga. Sedangkan pada proses pengujian digunakan 20 data uji yang terdiri dari 5 data pola mata, 5 data pola hidung, 5 data pola mulut dan 5 data pola telinga. Arsitektur dari jaringan backpropagation yang dibuat adalah 4-2-1, yang artinya terdapat 4 unit masukan, 2 unit layar tersembunyi (hidden layer) dan 1 unit keluaran. Pada pemrograman ini digunakan fungsi aktivasi sigmoid biner pada hidden layer dan fungsi linear (purelin) pada layer keluaran. Sedangkan fungsi pelatihan (traingdx) menggunakan metode gradien descent. Hasil dari pelatihan JST Backpropagation yang telah dibuat menunjukkan bahwa target error (MSE) tercapai pada epoch ke-506 dengan hasil pengujian 100% sesuai dengan target uji yang telah diberikan sebelumnya. Sehingga, dapat disimpulkan jaringan ini dapat mengidentifikasi/ membedakan pola wajah seseorang berdasarkan ciri mata, hidung, mulut, dan telinga dengan baik.



DAFTAR PUSTAKA Agustin, Maria. 2012. “Penggunaan Jaringan Syaraf Tiruan Backpropagation untuk Seleksi Penerimaan Mahasiswa Baru pada Jurusan Teknik Komputer di Politeknik Negeri Sriwijaya”. Tesis. Pascasarjana Universitas Diponegoro Jek Siang, Jong. 2005. “Jaringan Saraf Tiruan dan Pemrogramannya menggunakan Matlab”. Yogyakarta : ANDI Ksatria N, Adhitama, dkk. 2011. Makalah Jaringan Saraf Tiruan. Diakses pada tanggal 14 November 2017 dari https://www.scribd.com/doc/59331309/Makalah-JST-Backpropagation Pamungkas, Adi. 24 Agustus 2017. Jaringan Syaraf Tiruan untuk Identifikasi Wajah. Diakses pada tanggal 8 November 2017 dari https://pemrogramanmatlab.com/2015/08/24/jaringan-syaraf-tiruan-untukidentifikasi-wajah/#more-998