PENGENALAN GENUS DIATOM MENGGUNAKAN PRINCIPAL COMPONENT ANALYSIS DAN JARINGAN SYARAF TIRUAN BACKPROPAGATION SEBAGAI CLASSIFIER
SILVIA RAHMI
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2012
PENGENALAN GENUS DIATOM MENGGUNAKAN PRINCIPAL COMPONENT ANALYSIS DAN JARINGAN SYARAF TIRUAN BACKPROPAGATION SEBAGAI CLASSIFIER
SILVIA RAHMI G64104036
Skripsi Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Departemen Ilmu Komputer
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2012
ABSTRACT SILVIA RAHMI. Identification of the Diatoms Genus Using Principal Component Analysis and Backpropagation Neural Network as Classifier. Supervised by TOTO HARYANTO and NIKEN T.M PRATIWI. Diatoms are unicellular algae which have a size between 2 μm and 4 mm. Their importance resides in the fact that they can be used in several research and scientific fields. For instance, they can be used to measure sediment pH, medicinal, as water quality indicators, etc. The recognition and identification of diatoms is a tedious work. This classification process is complicated even for the experts, because there are hundreds of different taxa with many variations in shapes and biological characteristics. This research apply Principal Component Analysis (PCA) for data reduction and Artificial Neural Network (ANN) to identify some kind of diatoms. The proportion of PCA are used in this research is 80% and 90%. This proportion is considered to replace the original data without much loss of information. Backpropagation ANN that used is a single hidden layer. The data used in this study is a JPG image of diatom sampling using electric microscope taken from Biomikro Laboratory, The productivity and Water Environment, Department of Water Resources Management, Faculty of Fisheries and Marine Science, Bogor Agricultural University. All images are divide using two scenarios percentage. The first scenario divide 60% for training data and 40% for testing data, while the second percentage is 80% for training data and 20% of testing data. As result, ANN can be used to identify diatoms. The results showed that the best generalization rate of 90% was obtained in an experiment using 90% PCA proportion with 80% of training data and 20% of testing data. Keywords : artificial neural network, backpropagation, diatom, principal component analysis
Judul : Pengenalan Genus Diatom Menggunakan Principal Component Analysis dan Jaringan Syaraf Tiruan Backpropagation sebagai Classifier Nama : Silvia Rahmi NRP : G64104036
Menyetujui:
Pembimbing I
Pembimbing II
Toto Haryanto, S.Kom., M.Si.
Dr. Ir. Niken T.M. Pratiwi, M.Si. NIP 19680111 1992 3 2 002
Mengetahui : Ketua Departemen Ilmu Komputer
Dr. Ir. Agus Buono, M.Si., M. Kom. NIP 19660702 1993 2 1 001
Tanggal Lulus :
PRAKATA Alhamdulillahi Rabbil „alamin, puji syukur penulis panjatkan kepada Allah Subhanahu wa Ta’ala atas berkat taufiq, hidayah, serta innayyah-Nya sehingga tugas akhir dengan judul Pengenalan Genus Diatom (Bacillariophyceae) Menggunakan Principal Component Analysis dan Jaringan Syaraf Tiruan Backpropagation sebagai Classifier dapat diselesaikan. Penelitian ini dilaksanakan mulai Agustus 2012 hingga Desember 2012, bertempat di Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam dan Laboratorium Biomikro, Bagian Produktivitas dan Lingkungan Perairan, Departemen Manajemen Sumber Daya Perairan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor. . Penulis juga menyampaikan ucapan terima kasih kepada: 1. 2. 3.
4. 5.
Orang tua tercinta, Bapak Masri, S.Pd dan Ibu Nurjanis, S.Pd.I yang telah memberikan do‟a, kasih sayang, dan dukungan baik moril maupun materil kepada penulis, Suami tercinta Asep Mugia Raharjo, S.Pi yang senantiasa memberikan semangat kepada penulis. Toto Haryanto, S.Kom., M.Si. dan Dr. Ir. Niken T.M. Pratiwi, M.Si. selaku dosen pembimbing yang telah memberikan arahan dan bimbingan dengan sabar kepada penulis dalam menyelesaikan penelitian ini, Aziz Kustiyo, S.Si., M.Kom. dan Muhammad Ashyar Agmalaro, S.Si., M.Kom. selaku dosen penguji, Seluruh pihak yang turut membantu dalam penyelesaian penelitian ini.
Penulis menyadari bahwa masih terdapat kekurangan dalam penulisan skripsi ini. Semoga skripsi ini bermanfaat. Bogor, Desember 2012
Silvia Rahmi
RIWAYAT HIDUP Penulis dilahirkan pada tanggal 27 September 1989 di Padang Bukit, Pariaman. Penulis merupakan anak kedua dari lima bersaudara dari pasangan Masri, S.Pd dan Nurjanis, S.Pd.I. Pada tahun 2007 Penulis lulus dari SMAN 1 Lubuk Alung, Pariaman. Pada tahun yang sama, Penulis lulus seleksi masuk IPB melalui Undangan Seleksi Masuk IPB. Pada tahun 2010, Penulis lulus dari Program Diploma Manajemen Informatika, Institut Pertanian Bogor. Pada tahun yang sama, Penulis melanjutkan program studi sarjana di Departemen Ilmu Komputer, Institut Pertanian Bogor pada Program Studi Ilmu Komputer. Penulis bekerja sebagai staf pengajar pada bimbingan pelajar Bintang Pelajar sejak Maret 2011 hingga November 2012. Tahun 2012 penulis diterima sebagai CPNS pada Badan Pusat Statistik di Kabupaten Cirebon.
DAFTAR ISI DAFTAR TABEL ......................................................................................................................vi DAFTAR GAMBAR ..................................................................................................................vi DAFTAR LAMPIRAN ............................................................................................................. vii Latar Belakang ........................................................................................................................1 Tujuan ....................................................................................................................................1 Ruang Lingkup .......................................................................................................................1 Manfaat ..................................................................................................................................1 Diatom ....................................................................................................................................1 Citra Digital ............................................................................................................................2 Principal Component Analysis (PCA)......................................................................................3 Jaringan Syaraf Tiruan Backpropagation .................................................................................4 Data Penelitian ........................................................................................................................5 Proses Pengenalan Diatom ......................................................................................................6 Struktur JST Backpropagation.................................................................................................7 Parameter Pengenalan Diatom menggunakan JST Backpropagation .........................................7 Lingkungan Pengembangan .....................................................................................................8 Percobaan 1 : PCA proporsi 80% dengan pembagian data latih 60% dan data uji 40% ..............8 Percobaan 2 : PCA proporsi 90% dengan pembagian data latih 60% dan data uji 40% ..............9 Percobaan 3 : PCA proporsi 80% dengan pembagian data latih 80% dan data uji 20% ............ 11 Percobaan 4 : PCA proporsi 90% dengan pembagian data latih 80% dan data uji 20% ............ 12 Perbandingan Empat Percobaan ............................................................................................. 13 Analisis Error ....................................................................................................................... 14 Kesimpulan ........................................................................................................................... 16 Saran .................................................................................................................................... 16 DAFTAR PUSTAKA ................................................................................................................ 16 LAMPIRAN .............................................................................................................................. 18
DAFTAR TABEL 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Rincian genus diatom yang digunakan dalam penelitian. ........................................................ 5 Struktur JST Backpropagation. .............................................................................................. 7 Kelas target JST Backpropagation......................................................................................... 7 Akurasi maksimum Percobaan 1............................................................................................ 9 Akurasi maksimum Percobaan 2 ......................................................................................... 10 Akurasi maksimum ketiga toleransi kesalahan pada Percobaan 3. ........................................ 12 Akurasi maksimum ketiga toleransi kesalahan pada Percobaan 4. ........................................ 13 Akurasi maksimum empat percobaan. ................................................................................. 14 Waktu pelatihan untuk akurasi maksimum empat percobaan. ............................................... 14 Jumlah epoch untuk akurasi maksimum empat percobaan. ................................................... 14 Kelas citra dengan akurasi rendah........................................................................................ 16
DAFTAR GAMBAR 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
Citra diatom pennales (kiri) dan centrales (kanan) (Botes 2003). ............................................ 2 Arsitektur JST Backpropagation ............................................................................................ 4 Contoh citra diatom asli berukuran 2560 x 1920 piksel. ......................................................... 6 Contoh citra hasil kroping berukuran 1127 x 1097 piksel. ...................................................... 6 Contoh citra hasil resize (60 x 60 piksel). .............................................................................. 6 Tahapan Proses Pengenalan Diatom dengan JST Backpropagation. ....................................... 7 Generalisasi Percobaan 1 dengan toleransi galat 10-2.............................................................. 8 Generalisasi Percobaan 1 dengan toleransi galat 10-3.............................................................. 8 Generalisasi percobaan 1 untuk toleransi galat 10-4. ............................................................... 9 Waktu pelatihan untuk akurasi maksimum Percobaan 1. ........................................................ 9 Jumlah epoch pelatihan untuk akurasi maksimum Percobaan 1. ............................................. 9 Generalisasi Percobaan 2 dengan toleransi galat 10-2............................................................ 10 Generalisasi Percobaan 2 dengan toleransi galat 10-3............................................................ 10 Generalisasi Percobaan 2 dengan toleransi galat 10-4 . .......................................................... 10 Waktu pelatihan untuk akurasi maksimum Percobaan 2. ...................................................... 10 Jumlah epoch untuk akurasi maksimum Percobaan 2. .......................................................... 11 Generalisasi percobaan 3 untuk toleransi galat 10-2. ............................................................. 11 Generalisasi Percobaan 3 dengan toleransi galat 10-3............................................................ 11 Generalisasi Percobaan 3 dengan toleransi galat 10-4............................................................ 11 Waktu pelatihan untuk akurasi maksimum Percobaan 3. ...................................................... 12 Jumlah epoch untuk akurasi maksimum Percobaan 3. .......................................................... 12 Generalisasi Percobaan 4 untuk toleransi galat 10-2. ............................................................. 12 Generalisasi Percobaan 4 dengan toleransi galat 10-3............................................................ 13 Generalisasi Percobaan 4 dengan toleransi galat 10-4............................................................ 13 Waktu pelatihan untuk akurasi maksimum Percobaan 4. ...................................................... 13 Jumlah epoch untuk akurasi maksimum Percobaan 4. .......................................................... 13 Perbandingan akurasi per genus diatom (a) Percobaan 1, (b) Percobaan 2, (c) Percobaan 3, (4) Percobaan 4. ....................................................................................................................... 15 28. Kelas citra dengan akurasi tinggi ......................................................................................... 15 29. Citra dengan akurasi rendah (a) Kelas 1, (b) Kelas 3, (c) Kelas 5, (d) Kelas 8, (e) Kelas 10. . 15
DAFTAR LAMPIRAN Lampiran 1 Algoritma pelatihan laju pemahaman variabel Jaringan Syaraf Tiruan Backpropagation (traingdx) .................................................................................................. 19 Lampiran 2 Hasil pelatihan dan pengujian percobaan 1........................................................... 21 Lampiran 3 Hasil pelatihan dan pengujian percobaan 2 .......................................................... 22 Lampiran 4 Hasil pelatihan dan pengujian percobaan 3 .......................................................... 23 Lampiran 5 Hasil pelatihan dan pengujian percobaan 4 .......................................................... 24 Lampiran 6 Confusion Matrix Akurasi Terendah Empat Percobaan ........................................ 26
PENDAHULUAN Latar Belakang Diatom (Bacillariophyceae) merupakan suatu mikroalgae uniselular (kadang berkoloni) dengan ukuran berkisar antara 2 μ-m sampai 4 mm. Diatom dapat ditemukan di ekosistem perairan tawar maupun ekosistem laut dan secara umum hidup pada tempat yang lembab. Diatom mempunyai peranan penting dalam dunia riset dan penelitian. Peranan tersebut di antaranya sebagai indikator kualitas air, untuk pembuatan kapsul obat dan penentuan umur fosil (Cristobal et al. 2004). Diatom merupakan tumbuhan mikroskopis yang merupakan tumpuan hidup (langsung atau tak langsung) bagi sebagian besar biota laut. Distribusi plankton diatom bervariasi secara temporal (bergantung waktu) dan spasial (menurut ruang), yang banyak ditentukan oleh faktor-faktor lingkungan yang mempengaruhinya. Sebaran horizontal, misalnya, banyak ditentukan oleh suhu, salinitas, dan arus (Nontji 2008). Struktur sel diatom berbeda dari algae lainnya karena diatom memiliki cangkang yang terbuat dari silika yang disebut frustul, yang terdiri dari dua bagian. Karakteristiknya dijadikan sebagai kunci identifikasi diatom. Identifikasi diatom biasanya dilakukan secara manual dengan membandingkan pengamatan melalui mikroskop dengan gambar diatom yang terdapat pada buku identifikasi (Tomas 1997). Hal ini cukup rumit dan membutuhkan waktu. Diatom memiliki ratusan taxa (nama yang diberikan kepada sekelompok taksonom dalam sistem nomenklatur) dengan banyak variasi bentuk dan karakteristik biologis yang menyebabkan proses identifikasinya tidak mudah bahkan bagi seorang pakar (Cristobal et al. 2004). Oleh karena itu pada penelitian ini dikembangkan pemodelan identifikasi diatom berbasiskan citra digital untuk memudahkan dan mengidentifikasi diatom secara otomatis dan cepat. Penelitian sebelumnya dengan objek yang berbeda (Budiman 2008) menggunakan Jaringan Syaraf Tiruan (JST) Backpropagation sebagai teknik identifikasi spesies Nematoda Puru Akar melalui karakteristik morfologi ekor, dengan Analisis Komponen Utama (Principal Component Analysis) /PCA sebagai metode ekstraksi ciri
menghasilkan akurasi sebesar 88,3 %. Berdasarkan hasil akurasi yang baik pada penelitian sebelumnya, penelitian ini dilakukan menggunakan metode penelitian yang sama, yaitu JST Backpropagation dan ekstraksi ciri PCA untuk identifikasi genus diatom. Tujuan Tujuan penelitian ini adalah menerapkan teknik ekstraksi ciri Principal Component Analysis (PCA) dan metode klasifikasi (classifier) Jaringan Syaraf Tiruan (JST) Backpropagation untuk identifikasi beberapa genus diatom. Ruang Lingkup 1.
2.
Data citra diatom yang digunakan pada penelitian ini adalah citra digital berformat JPG, hasil sampling menggunakan mikroskop elektrik yang diambil dari Laboratorium Biomikro, Bagian Produktivitas dan Lingkungan Perairan, Departemen Manajemen Sumber Daya Perairan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor. Citra yang dipakai merupakan citra diatom ordo Centrales yang terdiri dari 2 subordo dan ordo Pennales yang terdiri dari 2 subordo.
Manfaat Diharapkan terbangun suatu model pengenalan diatom yang dapat membantu dan mempermudah dalam proses identifikasi beberapa genus dari enam famili diatom.
TINJAUAN PUSTAKA Diatom Diatom merupakan fitoplankton yang termasuk dalam kelas Bacillariophyceae. Kelompok ini merupakan komponen fitoplankton yang paling umum dijumpai di laut. Diatom diberi julukan sebagai “jewel of the sea” atau permata dari laut, karena selain kehadirannya yang sangat umum, kerangka dinding selnya mengandung silika, bahan bagaikan kaca, yang kaya dengan berbagai variasi bentuk yang menawan dengan simetri yang indah.
2
Jumlah jenis diatom lebih kurang 100.000 (Tomas 1997). Diatom terbagi atas dua ordo, yaitu ordo Centrales (lebih popular disebut centric diatom) dan Pennales (pennate diatom). Diatom sentrik (centric) bercirikan bentuk sel yang mempunyai simetri radial atau konsentrik tanpa kutub, satu kutub, dan dua kutub. Selnya bisa berbentuk bulat, lonjong, silindris, dengan penampang bulat, segitiga atau segi empat. Sebaliknya diatom penat (pennate) mempunyai simetri bilateral yang bentuk umumnya memanjang, atau berbentuk sigmoid seperti huruf “S”. Pada sebagian sel diatom penat terdapat jalur tengah yang disebut raphe (raphid); sebagian yang lain tidak memiliki struktur ini (araphid). Sel kerangka silika diatom disebut frustul (frustule). Di dalam frustul terdapat sitoplasma yang mengandung inti sel dan vakuola yang besar. Diatom dapat hidup sebagai individu sel tunggal yang soliter, atau terhubung dengan sel lainnya membentuk koloni bagaikan rantai, dengan rangkaian antarsel yang bervariasi menurut jenis (Nontji 2008). Tomas (1997) membagi Diatom Centrales dan Pennales ke dalam beberapa subordo sebagai berikut. 1. Diatom Centrales (Ordo Biddulphiales)
Famili Cymatosiraceae Famili Chaetocerotaceae Famili Lithodesmiaceae Famili Eupodiscaceae
2.
Diatom Pennales (Ordo Bacillares) Ornamental frustul tersusun menuju sebuah garis. Diatom pennales terdiri dari 2 subordo. a. Subordo Fragillariineae Merupakan diatom pennales araphid. Sel berkumpul mmbentuk seperti bintang, rantai spiral, pita, atau zigzag. Famili Fragillariaceae Famili Rhaphoneidaceae Famili Taxoriaceae Famili Thalassionemataceae b.
Subordo Bacillariineae Merupakan diatom pennales raphid. Semua jenis diatom ini diidentifikasi hanya berdasarkan rafe yang dimilikinya. Famili Achnanthaceae Famili Phaeodactylaceae Famili Naviculaceae Famili Bacillariaceae Famili Surirelaceae
Contoh citra diatom centrales pennales ditunjukkan pada Gambar 1.
dan
Ornamental frustul tersusun menuju satu titik, sebuah annulus atau areola pusat. Terdiri dari 3 subordo berdasarkan keberadaan pusat ornamentasi. a.
Subordo Coscinodisceae Cangkang umumnya memiliki tonjolan cincin marjinal dan simetri tanpa pusat (apolar). Famili Thalassiosiraceae Famili Melosiraceae Famili Leptocylindraceae Famili Coscinodisceae Famili Stellarimaceae Famili Hemidiscaceae Famili Asterolampraceae
b.
Subordo Rhizosoleniineae Cangkang unipolar tanpa tonjolan cincin marjinal. Subordo ini terdiri dari famili Rhizosoleniaceae.
c.
Subordo Biddulphianeae Cangkang bipolar tanpa tonjolan cincin marjinal. Famili Hemiaulaceae
Gambar 1 Contoh citra diatom pennales (kiri) dan centrales (kanan) Citra Digital Pengenalan genus diatom dapat dilakukan salah satunya dengan pengolahan citra digital. Citra digital adalah citra yang tersimpan dalam media digital. Citra digital merupakan fungsi intensitas cahaya dua dimensi f(x,y), x dan y menunjukkan koordinat spasial, dan nilai f pada setiap titik (x,y) adalah kecerahan citra pada titik tersebut. Reperesentasinya ditunjukkan pada Persamaan 1 (Gonzales dan Woods 2002). f (0,0) f (1,0) f ( x, y ) f ( M 1,0)
f (0,1) f (1,1)
f ( M 1,1)
f (0, N 1) f (1, N 1) f ( M 1, N 1)
[1]
3
Representasi citra digital dapat berupa citra dalam skala keabuan (grayscale) dengan format 8-bit dan citra berwarna dengan format 24-bit. Citra dalam skala keabuan memiliki 256 tingkat keabuan atau intensitas warna. Nilai tersebut berkisar antara 0 sampai dengan 255. Nilai 0 menunjukkan tingkat yang paling gelap sedangkan nilai 255 menunjukkan tingkat warna yang paling putih (Budiman 2008).
dengan k adalah banyaknya kolom, dan x adalah nilai rataan dari citra vektor x. Selanjutnya dari data rataan berikut dicari nilai kovariannya dengan menggunakan Pesamaan 5 dan matriks kovarian yang ditunjukkan pada Persamaan 6. S
Principal Component Analysis (PCA) Teknik ekstraksi ciri yang digunakan pada penelitian ini adalah Principal Component Analysis (PCA). PCA merupakan teknik multivariate yang paling banyak digunakan pada hampir semua bidang (Abdi dan Williams 2010). PCA mentransformasikan sejumlah peubah yang saling berkorelasi menjadi sekumpulan peubah yang tidak berkorelasi (Jackson 1991). Teknik ini mereduksi dimensi himpunan peubah yang biasanya terdiri dari peubah yang banyak dan saling berkorelasi menjadi peubah baru yang tidak berkorelasi. Teknik ini mempertahankan sebanyak mungkin keragaman dalam himpunan data tersebut serta menghilangkan peubah-peubah asal yang mempunya sumbangan informasi yang relatif kecil (Budiman 2008). PCA memanfaatkan nilai Eigen (akar ciri) dengan menggunakan data citra digital. Persamaan 2 menunjukkan representasi citra digital dalam matrik berukuran m x n (Buono et al. 2002). f ( x1 , y1 ) ... f ( x, y ) ... f (x , y ) m 1
f ( x1 , y n ) ... [2] ... f ( xm , y n )
... ... ... ... ... ... ... ...
Kumpulan data citra dapat diubah dalam suatu vektor citra berdimensi q dan vektor ini dapat dituliskan sebagaimana Persamaan 3.
f ( x , y ),..., f ( x , y ),..., f ( x , y ),..., f ( x , y )[3] 1
1
q
1
1
k
q
k
Kemudian nilai rataan dari vektor tersebut dapat dihitung dengan rumus pada Persamaan 4.
x =
1 k xg ................................ [4] k g 1
S
1 k
k
(x
g
g )( x g g )T …………..[5]
g 1
a11 a12 a21 a22 . . aq1 aq 2
... aq ... a2 q ………….. [6] ... . ... aqq
Matriks S pada persamaan 6 merupakan matrik kovarian dari vektor x. Dari nilai kovarian tersebut dapat ditentukan vektor ciri (v) dan nilai ciri (b) dengan akar ciri yang sudah terurut dari yang terbesar. Vektor ciri dan nilai ciri dicari dengan menggunakan Persamaan 7. | S – bI | = 0 Sv = bv
………….……[7]
Penentuan proporsi dari nilai yang diambil dapat dihitung dengan cara menggunakan m vektor Eigen yang bersesuaian dengan m nilai Eigen terbaik sesuai dengan Persamaan 8.
m bi proporsi i p1 ....................................[8] bi i 1 Proporsi ini berguna untuk menentukan besarnya komponen utama yang digunakan. Komponen utama ini nantinya akan digunakan sebagai masukan ke dalam metode Jaringan Syaraf Tiruan. Hasil penelitian Buono et al. (2002) yang menggunakan proporsi PCA sebesar 80% dan 90% dan merujuk pada penelitian Johnson dan Winchern (1998) mengenai penerapan analisis statistik multivariate yang menunjukkan bahwa proporsi 80% dan 90% dapat menggantikan data asli tanpa banyak kehilangan informasi. Normalisasi merupakan salah satu pendekatan yang dilakukan dalam penetapan
4
xi
zi
yi
zp
xm
stdev =
1 n ( pikseli rataan) ².................[10] n i 1
Berdasarkan hasil rataan dan standar deviasi diperoleh piksel hasil normalisasi dengan rumus seperti pada Persamaan 11 (Budiman 2008). piksel_normal = ( pikseli - rataan) / stdev[11] Jaringan Syaraf Tiruan Backpropagation Jaringan Syaraf Tiruan (JST) adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi. JST ditentukan oleh tiga hal yaitu pola hubungan antar neuron (arsitektur jaringan), metode untuk menetukan bobot penghubung (metode training atau algoritma), dan fungsi aktivasi. Salah satu model JST adalah Backpropagation. Backpropagation melatih jaringan untuk mendapatkan keseimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan dengan kemampuan jaringan untuk memberikan respon yang benar terhadap pola masukan serupa (Siang 2009). Arsitektur Metode Backpropagation. Arsitektur jaringan syaraf tiruan metode backpropagation memiliki beberapa unit yang ada dalam satu atau lebih hidden layer (Siang 2009).
yn
Gambar 2 Arsitektur JST Backpropagation 2.
Fungsi Aktivasi Fungsi aktivasi yang dipakai dalam metode backpropagation, harus memenuhi beberapa syarat, yaitu kontinu, terdiferensial dengan mudah, dan merupakan fungsi yang tidak turun. Fungsi tersebut diantaranya adalah Sigmoid Biner (Log-Sigmoid), Sigmoid Bipolar (Tan-Sigmoid) dan Identitas (purelin). a. Fungsi Sigmoid biner dengan range (0,1). f ( x)
1 1 e ………………….[12]
Dengan turunan : f ' ( x) f ( x)[1 f ( x)] ………………[13]
b.
Fungsi Sigmoid bipolar dengan range (-1,1) f ( x)
1 e 1 e ……………………..[14]
Dengan turunan :
1.
Penelitian Budiman (2008), menggunakan satu hidden layer dengan 10 neuron, yaitu 10, 20, 30, 40, 50, 60,70 80, 90 dan 100. Akurasi maksimal sebesar 83.3% yang dihasilkan pada hidden neuron 60. Gambar 2 menunjukkan arsitektur JST Backpropagation dengan satu hidden layer.
… …
i
y1
… …
i 1
z1
… …
( piksel ) ...................................[9]
x1
… …
1 n
1
… …
rataan =
n
1
… …
skala input dan target dalam suatu jaringan syaraf tiruan. Rataan dan standar deviasi dari data pelatihan dinormalisasi dengan cara mengurangi nilai setiap piksel dengan rataan, kemudian dibagi dengan standar deviasinya (Budiman 2008). Rataan dan standar deviasi dihitung menggunakan rumus pada Persamaan 9 dan Persamaan 10.
f ' ( x) c.
(1 f ( x))(1 f ( x)) 2 ……….[15]
Fungsi Identitas : f ( x ) = x………………………………..[16] Dengan turunan : f‟( x ) = 1 ……………………………[17]
3.
Pemilihan Bobot dan Bias Awal Bobot awal akan mempengaruhi apakah jaringan mencapai titik minimum lokal atau global, dan seberapa cepat konvergensinya. Inisialisasi bobot dan bias awal dapat dilakukan dengan inisialisasi Nguyen-
5
Widrow. Inisialisasi ini lebih mempercepat proses iterasi (Siang 2009). Inisialisasi Nguyen-Widrow didefinisikan sebagai berikut: vij (baru)
vij (lama) v j (lama)
vij (lama) p
v i 1
2 ij
pemahaman diturunkan. Fungsi pelatihan pada Matlab yang mengkombinasikan learning rate dengan faktor momentum adalah traingdx. Fungsi pelatihan ini mempunya kecepatan pelatihan yang tinggi. Algoritma JST Backpropagation dengan fungsi pelatihan Laju Pemahaman Variabel (traingdx) disajikan pada Lampiran 1.
(lama)
METODE PENELITIAN
n = jumlah neuron input
Komponen yang perlu diperhatikan untuk mencapai tujuan dari penelitian ini antara lain pengumpulan data citra digital, alur proses pengenalan citra diatom menggunakan Jaringan Syaraf Tiruan (JST). Hal lain terkait metode penelitian adalah arsitekur JST yang digunakan dan parameter keberhasilan pengenalan diatom menggunakan JST.
p = jumlah neuron hidden
Data Penelitian
vij(lama) adalah nilai acak antara -0.5 dan 0.5 sedangkan bobot pada bias bernilai antara –β dan β.
0.7n p
β = faktor pengali
4.
Algoritma Backpropagation Secara umum, pelatihan sebuah jaringan metode perambatan balik terdiri dari tiga langkah sebagai berikut. a.
Pelatihan pola masukan secara umpan maju. Sinyal masukan dipropagasikan ke hidden layer menggunakan fungsi aktivasi yang telah ditentukan.
b.
Perhitungan dan propagasi balik dari kumpulan kesalahan (galat/error).
c.
Penyesuaian bobot pada semua layer, sampai kondisi berhenti sudah dipenuhi yaitu jika nilai kesalahan lebih kecil dari nilai kesalahan referensi atau epoch maksimal telah tercapai.
5.
Fungsi Pelatihan Laju Pemahaman Variabel (traingdx). Laju pemahaman (learning rate) merupakan suatu konstanta yang nilainya dapat berubah-ubah selama iterasi dan sangat berpengaruh terhadap kinerja algoritma. Sulit untuk menentukan besarnya learning rate yang paling optimal, karena laju pemahaman yang terlalu besar maupun terlalu kecil akan menyebabkan pelatihan menjadi lambat (Siang 2009). Pelatihan akan lebih cepat apabila laju pemahaman berubah nilainya selama proses pelatihan. Jika error sekarang lebih besar disbanding error sebelumnya, maka laju
Data citra diatom yang digunakan pada penelitian ini adalah citra digital berformat JPG yang merupakan hasil sampling menggunakan mikroskop elektrik berukuran 14 mega pixel, menghasilkan resolusi citra 2560 x 1920 piksel. Pengambilan citra dilakukan pada Laboratorium Biomikro, Bagian Produktivitas dan Lingkungan Perairan, Departemen Manajemen Sumber Daya Perairan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor. Citra yang dipakai merupakan citra diatom ordo Centrales yang terdiri dari 2 subordo dan ordo Pennales yang terdiri dari 2 subordo. Tabel 1 menunjukkan subordo , famili dan genus diatom yang digunakan pada penelitian . Tabel 1 Rincian genus diatom yang digunakan dalam penelitian Subordo
Famili
Melosiraceae*
Genus Thalassiosira, Cyclotella, Lauderia Skeletonema Melosira
Coscinodisceae
Thalassiosiraceae *
Coscinodisceae*
Coscinodiscus
Biddulphianeae
Hemiaulaceace*
Fragillariineae
Fragillariaceae*
Eucampia, Fragillaria, Asterionela
Surirelaceae**
Surirela
Keterangan : * Tomas C.R. 2004. ** Presscott G.W. 1970.
Jumlah keseluruhan famili diatom yang digunakan dalam penelitian berjumlah enam famili yang terdiri dari sepuluh genus.
6
Masing-masing genus dikumpulkan 10 citra sehingga total seluruh citra menjadi 100 citra. Proses Pengenalan Diatom Proses pengenalan diatom menggunakan metode klasifikasi JST Backpropagation dan ektraksi ciri PCA terdiri dari tahapan sebagai berikut : a. Fase pengumpulan data Fase ini merupakan tahap pengambilan data citra menggunakan mikroskop. Citra diatom awal berukuran 2560 x 1920 piksel dilakukan proses kroping sehingga pada satu citra hanya akan terdapat satu jenis dari genus diatom yang telah ditentukan. Gambar 3 dan Gambar 4 menunjukkan contoh citra diatom awal dan hasil kropingnya.
Gambar 3 Contoh citra diatom asli berukuran 2560 x 1920 piksel
Gambar 4 Contoh citra hasil kroping berukuran 1127 x 1097 piksel Langkah selanjutnya yaitu melakukan resize citra menjadi ukuran 60 x 60 piksel. Proses resize ini bertujuan untuk mempercepat proses pelatihan dan pengujian JST (Buono et al. 2002). Gambar 5 menunjukkan contoh citra hasil resize berukuran 60 x 60 piksel.
Gambar 5 Contoh citra hasil resize berukuran 60 x 60 piksel b. Fase pembagian data Fase ini merupakan tahap membagi data citra menjadi dua bagian yaitu data latih dan data uji. Persentase yang digunakan terdiri dari dua skenario percobaan. Skenario pertama membagi data menjadi 60% data latih dan 40% data uji dan pada skenario kedua data dibagi menjadi 80% data latih dan 20% data uji. Pada skenario pertama, masing-masing genus yang terdiri dari sepuluh citra akan dibagi menjadi enam citra latih dan empat citra uji, sehingga total data latih adalah 60 citra dan data uji adalah 40 citra. Selanjutnya pada skenario kedua masing-masing genus akan dibagi menjadi delapan data latih dan dua data uji, sehingga total data latih menjadi sebanyak 80 citra dan total data uji 20 citra. c. Fase praproses Fase praproses terdiri dari tahapan mengubah citra RGB (Red–Green–Blue) hasil proses pemasukan data citra menjadi citra grayscale. Proses ini dilakukan untuk mengubah 3 layer matriks warna RGB menjadi 1 layer matriks citra keabuan. Hal ini berguna untuk mempercepat pengolahan citra pada fase ekstraksi ciri menggunakan PCA. Pada tahap praproses ini juga dilakukan normalisasi data untuk menetapkan skala masukan dan target sehingga berada dalam rentang tertentu. d. Tahap ekstraksi ciri PCA. Setelah dilakukan praproses, data latih direduksi dimensinya menggunakan proporsi PCA 80% dan 90%. Matriks kovarian berukuran 3600 x 3600 akan menghasilkan komponen utama dan nilai Eigen. Hasil dari komponen utama berupa vektor ciri yang akan diproyeksikan terhadap data latih dan data uji. Proporsi PCA 80% berarti mengambil nilai kolom matriks yang merepresentasikan komponen utama sebesar 80%. Inputan matriks yang akan masuk pada tahap pelatihan JST Backpropagation merupakan hasil proyeksi vektor ciri terhadap citra latih. Untuk proses pengenalan, suatu citra uji (citra yang disajikan ke sistem untuk proses
7
pengenalan) memiliki dimensi yang sama dengan citra latih telah disajikan ke sistem. Citra uji tersebut kemudian di ekstraksi ciri dengan cara dikalikan dengan vektor ciri citra latih, dan akan menghasilkan vektor ciri berisikan komponen utama yang memiliki dimensi yang sama dengan komponen utama data latih yang masuk pada pelatihan JST. e. Fase klasifikasi menggunakan JST Backpropagation. Hasil pelatihan akan menghasilkan model klasifikasi dan dilakukan pengujian menggunakan data uji yang juga mengalami proses grayscale dan normalisasi. Pada tahap ini dilakukan beberapa percobaan dengan mengkombinasikan persentase pembagian data latih dan data uji, parameter proporsi PCA, hidden neuron dan toleransi kesalahan yang digunakan. Kombinasi parameter optimal adalah yang menghasilkan akurasi terbaik. Langkah selanjutnya yaitu melakukan analisis akurasi. Skema proses pengenalan diatom dapat dilihat pada Gambar 6.
Tabel 2 Struktur JST Backpropagation Karakteristik Arsitektur Input neuron Hidden neuron
Spesifikasi 1 hidden layer Dimensi PCA 80% dan 90% 10,20,30,40,50,60,70,80,90, dan 100
Output neuron
Banyaknya kelas target
Inisialisasi bobot dan bias Fungsi aktivasi Toleransi galat Algoritma training Jumlah iterasi Laju pembelajaran
Nguyen-Widrow Sigmoid bipolar, Sigmoid biner 10-2, 10-3, dan 10-4 Variable laju pemahaman (traingdx) 5000 epoch 10-1
Kelas target pada penelitian ini berjumlah sepuluh target, dan setiap target mewakili satu genus dari diatom yang direpresentasikan dengan nilai 0 dan 1. Target sistem ditunjukkan pada Tabel 3. Tabel 3 Kelas target JST Backpropagation Kelas
Target
Coscinodiscus Asterionella Fragillaria Eucampia Melosira
1000000000 0100000000 0010000000 0001000000 0000100000
Skeletonema
0000010000
Surirella Cyclotella
0000001000 0000000100
Lauderia
0000000010
Thalassiosira
00000000001
Parameter Pengenalan Diatom menggunakan JST Backpropagation
Gambar 6 Tahapan Proses Pengenalan Diatom dengan JST Backpropagation Struktur JST Backpropagation Identifikasi diatom dilakukan dengan menggunakan JST metode pelatihan Backpropagation. Struktur JST menggunakan satu hidden layer dengan sepuluh neuron dapat dilihat pada Tabel 2.
Parameter yang digunakan untuk mengetahui tingkat keberhasilan proses identifikasi diatom menggunakan JST Backpropagation adalah kovergensi dan generalisasi. Konvergensi adalah tingkat kecepatan jaringan mempelajari pola masukan yang dinyatakan dengan satuan waktu atau satuan epoch. Satu epoch adalah lamanya jaringan mempelajari satu kali seluruh pola pelatihan. Pada penelitian ini, maksimum epoch dibatasi sebanyak 5000 epoch. Generalisasi adalah tingkat pengenalan jaringan dalam mengenali
8
sejumlah pola yang diberikan. Secara matematis generalisasi dapat dituliskan seperti pada Persamaan 18 (Buono et al. 2002). Generalisasi=
jumlah _ pengenalan_ benar jumlah _ seluruhnya
x100% [18]
akurasi minimum 70% pada hidden neuron 20, 30, 40, 60, dan 80, sementara akurasi maksimum sebesar 80% dihasilkan pada hidden neuron 50. Gambar 7 menunjukkan akurasi percobaan proporsi PCA 80% dengan toleransi kesalahan 10-2.
Lingkungan Pengembangan Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk penelitian ini adalah sebagai berikut : a. Perangkat keras : Processor Intel® CoreTM 2 Duo Memory 1 GB Hardisk 250 GB b.
Perangkat lunak :
Sistem operasi Microsoft Windows 7 Matlab 7.7 (R2008b) HASIL DAN PEMBAHASAN Penelitian ini terdiri dari empat percobaan yaitu kombinasi dua buah pembagian data latih dengan dua proporsi PCA. Pada setiap percobaan menggunakan kombinasi parameter Jaringan Syaraf Tiruan (JST) dengan toleransi kesalahan 10-2, 10-3, dan 10-4 serta hidden neuron 10, 20, 30, 40, 50, 60, 70, 80, 90, dan 100.
Gambar 7 Generalisasi Percobaan 1 dengan toleransi galat 10-2 Percobaan selanjutnya menggunakan toleransi kesalahan 10-3. . Hasil akurasinya tidak jauh berbeda bahkan cenderung menurun jika dibandingkan dengan toleransi kesalahan 10-2. Akurasi minimum terdapat pada hidden neuron 10 yaitu sebesar 67.5% , sementara akurasi maksimumnya sebesar 75% yang terdapat pada lima hidden neuron sekaligus yaitu hidden neuron 50, 60, 70, 80, dan 90. Gambar 8 menunjukkan akurasi Percobaan 1 dengan toleransi kesalahan 10-3.
Percobaan 1 : PCA proporsi 80% dengan pembagian data latih 60% dan data uji 40% Matriks kovarian berukuran 3600 x 3600 yang berasal dari citra hasil normalisasi (60 x 3600) mengahasilkan nilai Eigen yang mewakili 3600 kolom. Proporsi 80% menghasilkan komponen utama berdimensi 27, yang berarti data sebanyak 27 kolom mewakili sebesar 80% data citra. Komponen utama dari proporsi 80% berupa matriks berukuran 3600 x 27. Matriks PCA yang menjadi inputan pada JST merupakan hasil proyeksi dari matriks citra latih hasil normalisasi dengan komponen utama, sehingga dimensi matriks inputan JST pada Percobaan 1 adalah 60 x 27. a.
Generalisasi Toleransi kesalahan 10-2, 10-3, dan 10-4 masing-masing akan dikombinasikan dengan semua hidden neuron sehingga akan didapatkan parameter optimal. Percobaan menggunakan toleransi 10-2 menghasilkan
Gambar 8 Generalisasi Percobaan 1 dengan toleransi galat 10-3 Percobaan selanjutnya menggunakan toleransi kesalahan 10-4 mendapatkan hasil akurasi pada semua hidden neuron lebih besar dari 70%. Akurasi terbaik sebesar 80% diperoleh pada hidden neuron 30. Akurasi minimum terdapat pada hidden neuron 40 yaitu sebesar 70%. Gambar 9 menunjukkan akurasi Percobaan 1 dengan toleransi kesalahan 10-4 .
9
kesalahan 10-2 yaitu sebesar 3.41 detik. Toleransi kesalahan 10-3 menghasilkan akurasi maksimum dengan lama waktu latih 7.6 detik. Kenaikan waktu latih yang signifikan adalah ketika mengunakan toleransi galat 10-4 yaitu dengan waktu latih 21.3 detik. Dengan demikian bahwa penurunan toleransi galat berbanding terbalik dengan waktu pelatihan.
Gambar 9 Generalisasi Percobaan 1 untuk toleransi galat 10-4 Dari ketiga toleransi kesalahan pada percobaan dengan proporsi PCA 80% ini didapat akurasi terbaik sebesar 80% yaitu pada percobaan menggunakan toleransi kesalahan 10-2 (hidden neuron 50) dan pada percobaan menggunakan toleransi kesalahan 10-4 (hidden neuron 30). Terlihat bahwa pada setiap toleransi galat, akurasi cenderung stabil untuk setiap hidden neuron. Tabel 4 menunjukkan akurasi maksimum pada setiap toleransi galat beserta hidden neuron nya. Tabel 4 Akurasi maksimum Percobaan 1 Galat
Akurasi maksimum
Hidden neuron
10-2
80%
30
10-3
75%
80
10-4
80%
40, 50, dan 100
b. Konvergensi Perbandingan waktu pelatihan untuk akurasi maksimum masing-masing toleransi galat pada Percobaan 1 disajikan pada Gambar 10.
Jumlah epoch pelatihan untuk akurasi maksimum pada Percobaan 1 disajikan pada Gambar 11.
Gambar 11 Jumlah epoch pelatihan untuk akurasi maksimum Percobaan 1 Pada Gambar 11 terlihat bahwa jumlah epoch minimum adalah 298 epoch ketika menggunakan toleransi kesalahan 10-2. Toleransi kesalahan 10-3 menghasilkan akurasi maksimum dengan jumlah epoch pelatihan sebanyak 786, sedangkan toleransi galat 10-4 yaitu pada percobaan ini epoch pelatihannya berjumlah 2210. Percobaan 2 : PCA proporsi 90% dengan pembagian data latih 60% dan data uji 40% Percobaan menggunakan proporsi PCA 90% menghasilkan komponen matriks berdimensi 60 x 38. Matriks hasil ekstraksi inilah yang akan menjadi inputan untuk klasifikasi diatom menggunakan JST Backpropagation. a.
Gambar 10 Waktu pelatihan untuk akurasi maksimum Percobaan 1 Pada Gambar 10 terlihat bahwa waktu pelatihan terkecil adalah dengan toleransi
Generalisasi Seperti pada Percobaan 1, pada Percobaan 2 akan dilakukan kombinasi toleransi kesalahan 10-2, 10-3, dan 10-4 untuk mendapatkan parameter optimal yang menghasilkan akurasi terbaik. Percobaan pertama menggunakan toleransi kesalahan 10-2 menghasilkan akurasi maksimum pada hidden neuron 50 yaitu sebesar 80%. Sedangkan akurasi minimum sebesar 72.5%
10
diperoleh pada hidden neuron 10. Generalisasi Percobaan 2 dengan toleransi kesalahan 10-2 dapat dilihat pada Gambar 12.
Gambar 14 Generalisasi Percobaan 2 dengan toleransi galat 10-4
Gambar 12 Generalisasi Percobaan 2 dengan toleransi galat 10-2 Percobaan berikutnya menggunakan toleransi kesalahan 10-3, menghasilkan akurasi terbaik sebesar 80% pada hidden neuron 30 dan 40. Terlihat bahwa dengan menggunakan parameter-parameter ini akurasi cenderung naik dengan stabil, dengan akurasi minimum sebesar 72.5% yang terdapat pada hidden neuron 10. Gambar 13 menunjukkan generalisasi Percobaan 2 dengan toleransi galat 10-3.
Pada Percobaan 2 terlihat bahwa akurasinya cenderung naik jika dibandingkan dengan percobaan 1. Akurasi terbaik didapatkan dengan toleransi galat 10-4 sebesar 82.5 %. Tabel 5 menunjukkan akurasi maksimum pada setiap toleransi galat beserta hidden neuron. Tabel 5 Akurasi maksimum Percobaan 2 Akurasi maksimum
Hidden neuron
10-2
80%
50
10-3
80%
30 dan 40
10-4
82.5%
30, 50, 70 dan 80
Galat
b.
Konvergensi Gambar 15 menunjukkan waktu latih percobaan menggunakan tiga buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 2.
Gambar 13 Generalisasi Percobaan 2 dengan toleransi galat 10-3 Percobaan 2 dengan toleransi galat 10-4 menunjukkan akurasi yang meningkat di seluruh hidden neuron. Akurasi minimum pada kombinasi parameter ini adalah 75% pada hidden neuron 10 dan 20, sementara akurasi maksimum hidden neuron 30, 50, 80 sebesar 82.5%. Gambar 14 menunjukkan generalisasi Percobaan 2 dengan toleransi galat 10-4.
Gambar 15 Waktu pelatihan untuk akurasi maksimum Percobaan 2
11
Pada Gambar 15 terlihat bahwa waktu pelatihan terkecil adalah 3.1 detik menggunakan toleransi kesalahan 10-2. Toleransi kesalahan 10-3 menghasilkan akurasi maksimum dengan lama waktu latih 5.1 detik, sedangkan pada toleransi kesalahan 10-4 waktu latih tercatat sebesar 9.3 detik. Seperti pada Percobaan 1, pada percobaan 2 penurunan toleransi galat juga berbanding terbalik dengan waktu pelatihan. Jumlah epoch pelatihan terkecil didapat pada toleransi kesalahan 10-2 yaitu 298 epoch. Pada toleransi kesalahan 10-3 dan 10-4 jumlah epoch pelatihannya masing-masing 501 dan 780 epoch. Gambar 16 menunjukkan jumlah epoch untuk percobaan menggunakan tiga buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 2.
Gambar 17 Generalisasi percobaan 3 untuk toleransi galat 10-2 Akurasi maksimum sebesar 85% juga diperoleh ketika toleransi galat diturunkan menjadi 10-3, yang terdapat pada hidden neuron 100. Akurasi minimum sebesar 70% diperoleh pada hidden neuron 80. Hasil generalisasi Percobaan 3 dengan toleransi galat 10-3 ditunjukkan pada Gambar 18.
Gambar 16 Jumlah epoch untuk akurasi maksimum Percobaan 2 Percobaan 3 : PCA proporsi 80% dengan pembagian data latih 80% dan data uji 20% Untuk Percobaan 3 menghasilkan komponen utama berdimensi 80 x 29. Hasil pengukuran parameter kinerja untuk percobaan ini adalah sebagai berikut : a. Generalisasi Akurasi maksimum pada Percobaan 3 dengan toleransi galat 10-2 adalah 85% yang di dapat pada hidden neuron 80. Akurasi minimum terdapat pada hidden neuron 20 dan 90 yaitu sebesar 70%. Gambar 17 menunjukkan generalisasi pada Percobaan 3 dengan toleransi galat 10-2.
Gambar 18 Generalisasi Percobaan 3 dengan toleransi galat 10-3 Percobaan 3 dengan toleransi galat 10-4 menghasilkan akurasi maksimum 85% pada hidden neuron 20 dan akurasi minimum sebesar 70% diperoleh pada hidden neuron 10, 30 dan 60. Gambar 19 menujukkan generalisasi percobaan 3 dengan toleransi galat 10-4.
Gambar 19 Generalisasi Percobaan 3 dengan toleransi galat 10-4
12
Tabel 6 menunjukkan akurasi maksimum untuk 3 buah toleransi kesalahan pada Percobaan 3. Tabel 6 Akurasi maksimum ketiga toleransi kesalahan pada Percobaan 3 Galat
Akurasi maksimum
Hidden neuron
10-2
85%
80
10-3
85%
100
10-4
85%
20
b.
Konvergensi Waktu latih terkecil sebesar 1.7 detik diperoleh pada percobaan dengan menggunakan toleransi galat 10-2. Sementara percobaan menggunakan toleransi galat 10-3 dan 10-4 membutuhkan waktu latih masingmasing sebesar 6.9 dan 29.3 detik. Gambar 20 menunjukkan waktu latih percobaan menggunakan 3 buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 3.
Gambar 21 Jumlah epoch untuk akurasi maksimum Percobaan 3 Percobaan 4 : PCA proporsi 90% dengan pembagian data latih 80% dan data uji 20% Percobaan 4 menghasilkan komponen utama berdimensi 80 x 42. Hasil pengukuran parameter kinerja untuk percobaan ini adalah sebagai berikut : a. Generalisasi Akurasi maksimum pada Percobaan 4 dengan toleransi galat 10-2 adalah 90% yang di dapat pada hidden neuron 100. Akurasi minimum terdapat pada hidden neuron 70 yaitu sebesar 70%. Gambar 23 menunjukkan generalisasi pada Percobaan 4 dengan toleransi galat 10-2.
Gambar 20 Waktu pelatihan untuk akurasi maksimum Percobaan 3 Jumlah epoch pelatihan terkecil didapat pada toleransi kesalahan 10-2 yaitu sebanyak 119 epoch. Pada toleransi kesalahan 10-3 dan 10-4 jumlah epoch pelatihannya masingmasing 590 dan 2880 epoch. Gambar 15 menunjukkan jumlah epoch untuk percobaan menggunakan 3 buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 3.
Gambar 22 Generalisasi Percobaan 4 untuk toleransi galat 10-2 Akurasi maksimum sebesar 80% diperoleh pada hidden neuron 30, 40, 50, 60, 70, 80 dan 90 ketika toleransi galat diturunkan menjadi 10-3. Akurasi minimum sebesar 75% diperoleh pada hidden neuron 10, 20, dan 100. Hasil generalisasi Percobaan 4 dengan toleransi galat 10-3 ditunjukkan pada Gambar 23.
13
menggunakan toleransi galat 10-2. Sementara percobaan menggunakan toleransi galat 10-3 dan 10-4 membutuhkan waktu latih masingmasing sebesar 5.8 dan 21.5 detik. Gambar 25 menunjukkan waktu latih percobaan menggunakan 3 buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 4.
Gambar 23 Generalisasi Percobaan 4 dengan toleransi galat 10-3 Percobaan 4 dengan toleransi galat 10-4 menghasilkan akurasi maksimum 80% pada hidden neuron 20, 30, 90 dan 100. Enam hidden neuron lainnya menghasilkan akurasi sebesar 75%. Gambar 24 menujukkan generalisasi percobaan 4 dengan toleransi galat 10-4.
Gambar 25 Waktu pelatihan untuk akurasi maksimum Percobaan 4 Jumlah epoch pelatihan terkecil didapat pada toleransi kesalahan 10-2 yaitu sebanyak 232 epoch. Pada toleransi kesalahan 10-3 dan 10-4 jumlah epoch pelatihannya masingmasing 564 dan 2181 epoch. Gambar 26 menunjukkan jumlah epoch untuk percobaan menggunakan 3 buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 4.
Gambar 24 Generalisasi Percobaan 4 dengan toleransi galat 10-4 Tabel 7 menunjukkan akurasi maksimum untuk 3 buah toleransi kesalahan pada Percobaan 4. Akurasi tertinggi sebesar 90% diperoleh pada percobaan dengan toleransi kesalahan 10-2. Tabel 7 Akurasi maksimum ketiga toleransi kesalahan pada Percobaan 4
b.
Galat
Akurasi maksimum
Hidden neuron
10-2
90%
100
10-3
80%
30, 40, 50, 60, 70, 80, 90
10-4
85%
20, 30, 90, 100
Gambar 26 Jumlah epoch untuk akurasi maksimum Percobaan 4 Perbandingan Empat Percobaan
Konvergensi Waktu latih terkecil sebesar 3.03 detik diperoleh pada percobaan dengan
a.
Generalisasi Setelah dilakukan empat buah percobaan yang merupakan kombinasi dari dua buah persentase pembagian data dan dua buah proporsi PCA, didapatkan akurasi maksimum pada Percobaan 4 yaitu sebesar 90%. Hal ini menunjukkan bahwa semakin besar komponen utama yang dipakai untuk
14
pelatihan JST Backpropagation akan memudahkan JST dalam melakukan pengenalan. Tabel 8 menunjukkan perbandingan akurasi maksimum empat percobaan dengan ketiga toleransi galat.
Tabel 10 Jumlah epoch untuk akurasi maksimum empat percobaan Banyaknya Epoch Toleransi Galat
P1
P2
P3
P4
10-2
298
298
118
232
10-3
786
501
590
564
10-4
2210
780
2888
2181
Tabel 8 Akurasi maksimum empat percobaan Toleransi Galat
Generalisasi (%) P1
P2
P3
P4
80%
80%
85%
90%
-3
75%
80%
85%
80%
-4
80%
82.50%
85%
85%
10-2 10 10
Keterangan : P1 = Percobaan 1 Analisis Error
Keterangan : P1 = Percobaan 1 b.
Konvergensi Dalam hal konvergensi terlihat bahwa perbedaan persentase pembagian data latih dan uji serta meningkatnya proporsi PCA tidak mempengaruhi lamanya waktu pelatihan dan jumlah epoch. Tabel 9 menunjukkan waktu pelatihan untuk akurasi maksimum masing-masing percobaan pada tiga toleransi galat.
Analisis error dilakukan untuk mengetahui bagaimana akurasi setiap genus pada masing-masing percobaan. Pada Percobaan 1 dan Percobaan 2 genus Coscinodiscus, Cyclotella dan Thalassiosira mempunyai akurasi yang rendah yaitu dibawah 50%. Pada Percobaan 3, ada lima genus yang memiliki akurasi rendah, diantaranya Coscinodiscus, Fragillaria, Melosira, Cyclotella dan Thalassiosira. Kelima genus ini tetap mempunyai akurasi rendah pada Percobaan 4.
P1
P2
P3
P4
10-2
3.41
3.10
1.7
3.03
10-3
7.6
5.10
6.9
5.8
Pada keempat percobaan, genus Asterionella dan Eucampia mencapai akurasi 100%, artinya semua citra uji pada semua percobaan berhasil dikenali benar. Setiap genus diatom dikategorikan menjadi satu kelas, sehingga ada sepuluh kelas yang mewakili sepuluh genus diatom. Keterangan kelas klasifikasi diatom ditunjukkan pada Tabel 11 dan grafik akurasi per genus ditunjukkan pada Gambar 27.
10-4
21.3
9.30
29.3
21.5
Tabel 11 Keterangan kelas klasifikasi diatom
Tabel 9 Waktu pelatihan untuk akurasi maksimum empat percobaan Waktu Latih (detik) Toleransi Galat
Berdasarkan data pada Tabel 9, terlihat bahwa waktu pelatihan terkecil dari keempat percobaan terdapat pada Percobaan 3 dengan proporsi PCA 80% dan toleransi kesalahan 10-2 yaitu sebesar 1.7 detik. Jumlah epoch terkecil juga terdapat pada Percobaan 3 menggunakan toleransi kesalahan 10-2. Tabel 10 menunjukkan banyaknya epoch untuk akurasi maksimum masing-masing percobaan pada ketiga toleransi galat.
Kelas
Genus
1
Coscinodiscus
2 3
Asterionella Fragillaria
4 5
Eucampia Melosira
6 7
Skeletonema Surirella
8 9 10
Cyclotella Lauderia Thalassiosira
15
Kelas yang cenderung memiliki akurasi tinggi pada keempat percobaan di atas adalah kelas 2, 4, 6, 7 dan 9. Kelas-kelas ini cenderung memiliki tingkat kemiripan yang rendah dengan kelas-kelas lainnya. Gambar 28 menunjukkan citra dengan akurasi tinggi.
(a) (a)
(b)
(c)
(d) (e) Gambar 28 Kelas citra dengan akurasi tinggi (a) Kelas 2, (b) Kelas 4, (c) Kelas 6, (d) Kelas 7, (e) Kelas 9 (b)
(c)
Kelas yang cenderung memiliki akurasi rendah adalah kelas 1, 3, 5, 8 dan 10. Hal ini disebabkan karena kelas-kelas ini memiliki kemiripan tinggi dengan beberapa kelas lainnya. Gambar 29 menunjukkan citra dengan akurasi rendah yang sering teridentifikasi ke kelas lain.
(a)
(c)
(b)
(d)
(e)
Gambar 29 Citra dengan akurasi rendah (a) Kelas 1, (b) Kelas 3, (c) Kelas 5, (d) Kelas 8, (e) Kelas 10 (d) Gambar 27 Perbandingan akurasi per genus diatom (a) Percobaan 1, (b) Percobaan 2, (c) Percobaan 3, (4) Percobaan 4
Tabel 12 menunjukkan kelas citra dengan akurasi rendah dan kelas-kelas dimana citra tersebut salah teridentifikasi.
16
Tabel 12 Kelas citra dengan akurasi rendah
Kelas Awal 1 3 5
Kelas Hasil Identifikasi 8 6 7, 8, 10
8 10
1 6, 8
Rendahnya akurasi juga disebabkan karena pengambilan citra diatom yang hanya dari sisi atas. Beberapa sel diatom cenderung sangat mirip dari sisi atas, akan tetapi ketika dilihat dari sisi lateral (samping) bisa sangat jauh berbeda. Pengambilan posisi sel citra diatom yang berbeda-beda untuk masingmasing genus juga berpengaruh pada besarnya akurasi.
KESIMPULAN DAN SARAN Kesimpulan Berdasarkan penelitian yang dilakukan dapat disimpulkan bahwa :
Adapun saran untuk penelitian lebih lanjut antara lain : 1. 2.
3.
4.
Data penelitian sebaiknya ditambahkan untuk lebih banyak variasi genus. Mencoba metode lain seperti ekstraksi fitur yang diharapkan dapat lebih meningkatkan akurasi. Metode 2DPCA yang tidak memerlukan konversi matriks citra menjadi bentuk vektor dapat digunakan sebagai pengganti metode PCA untuk mengurangi waktu komputasi karena matriks citra pada metode PCA harus dikonversi menjadi bentuk vektor, yang dengan dimensi besar akan memakan waktu yang relatif lama. Pengambilan posisi sel citra diatom bukan hanya dari permukaan cangkang, melainkan juga dari sisi lateral. DAFTAR PUSTAKA
Abdi H, Williams LJ. 2010. Principal Component Analysis. Wiley Interdisciplinary Reviews: Computational Statistics 2, 2: 433–459.
1. Model Jaringan Syaraf Tiruan Backpropagation dapat digunakan untuk pengenalan beberapa genus diatom (Bacillariophyceae).
Budiman R. 2008. Pengenalan spesies nematoda puru akar melalui karakteristik morfologi ekor menggunakan Jaringan Syaraf Tiruan [skripsi]. Bogor: Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor.
2. Proses pengenalan beberapa genus diatom (Bacillariophyceae) dengan menggunakan persentase data latih sebesar 80% memberikan hasil akurasi yang lebih baik dibandingkan menggunakan persentase data latih 60%.
Buono A, Rachmaniah M, Sarbini. 2002. Perbandingan Metode Eigen pada Pengenalan Wajah. Bogor : Institut Pertanian Bogor.
3. PCA dengan proporsi 90% pada toleransi kesalahan 10-2 menggunakan persentase pembagian data latih 80% menghasilkan kinerja JST optimal dengan akurasi 90% pada hidden neuron 100.
Cristobal G, Ridondo R, Flusser J, Sroubek F, Forero MG. 2004. Automatic screening and multifocus fusion methods for diatom identification. CSIC-Academy of Sciences of the Czech Republic Bilateral Project 2003CZ0009.
4. Dalam hal konvergensi terlihat bahwa perbedaan persentase pembagian data latih dan uji serta meningkatnya proporsi PCA tidak mempengaruhi lamanya waktu pelatihan dan jumlah epoch.
Gonzales RC, Woods RE. 2002. Digital Image Processing. 2nd Edition. New Jersey: Prentice-Hall.
Saran Penelitian ini merupakan penelitian awal mengenai identifikasi genus diatom, sehingga masih dapat dikembangkan lebih lanjut untuk mendapatkan hasil yang lebih optimal.
Jackson RA. 1991. A User’s Guide to Principal Components. John Wiley and Son‟s, Inc. Nontji A. 2008. Plankton Laut. Jakarta: LIPI Press.
17
Presscott GW. 1970. The Freshwater Algae. USA: Brown Company Publishers. Siang JJ. 2009. Jaringan Syaraf Tiruan dan Pemrogramannya Menggunakan MATLAB . Yogyakarta: Andi Offset. Tomas CR. 1997. Identifying Marine Phytoplankton.. Florida : Florida Marine Research Institute.
LAMPIRAN
19
Lampiran 1 Algoritma pelatihan laju pemahaman variabel Jaringan Syaraf Tiruan Backpropagation (traingdx)
Algoritma backpropagation :
Inisialisasi bobot.
Kerjakan langkah-langkah berikut selama kondisi berhenti bernilai FALSE :
1. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran, kerjakan : Feedforward : a.
Tiap-tiap unit input (Xi, i=1,2,3,...,n) menerima sinyal xi dan meneruskan sinyal tersebut ke semua unit pada lapisan yang ada diatasnya (lapisan tersembunyi).
b.
Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan sinyal-sinyal input terbobot: n
z _ in j v0 j xi vij i 1
Gunakan fungsi aktivasi untuk menghitung sinyal outputnya : Zj = f(z_inj) Dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit output). c.
Tiap-tiap unit output (Yk, k=1,2,3,...,m) menjumlahkan sinyal-sinyal input terbobot. p
y _ in j w0 k z i w jk i 1
Gunakan fungsi aktivasi untuk menghitung sinyal outputnya : yk=f(y_ink) Dan kirimkan sinyal tersebut ke semua unit dilapisan atasnya (unit-unit output). Backpropagation d.
Tiap-tiap unit output (Yk, k=1,2,3,...,m) menerima target pola yang berhubungan dengan pola input pembelajaran, hitung informasi error nya :
k (t k y k ) f ( y _ in k ) Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai wjk) :
W jk k z j Hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai w0k ):
w0 k k Kirimkan k ini ke unit-unit yang ada dilapisan bawahnya. e.
Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan delta inputnya (dari unitunit yang berada pada lapisan diatasnya) : m
_ in j k w jk i 1
20
Lampiran 1 Algoritma Pelatihan Jaringan Syaraf Tiruan Propagasi Balik (lanjutan) Kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error :
j _ in j f ( z _ in j ) Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai vij):
v jk j xi Kemudian hitung koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai v0j):
v0 j j f.
Dengan Penambahan momentum, bobot baru pada waktu ke (t+1) didasarkan atas bobot pada waktu t dan (t-1). Disini harus ditambahkan dua variabel baru yang mencatat besarnya momentum untuk dua iterasi terakhir. Jika adalah konstanta (0 ≤ ≤ 1) yang menyatakan parameter momentum maka bobot baru dihitung berdasarkan persamaan :
wkj (t 1) wkj (t ) k z j wkj (t ) wkj (t 1) dan
v ji (t 1) v jij (t ) j xi v jij (t ) v jij (t 1) 2. Jika perbandingan antara error pelatihan yang baru dengan error pelatihan lama melebihi maksimum kenaikan kinerja (max_perf_inc), maka bobot-bobot baru tersebut akan diabaikan, sekaligus nilai learning rate akan dikurangi dengan cara mengalikannya dengan lr_dec. Jika perbandingan antara error pelatihan baru dengan error pelatihan lama kurang dari maksimum kenaikan kinerja, maka nilai bobot-bobot akan dipertahankan, sekaligus nilai learning rate akan dinaikkan dengan cara mengalikannya dengan lr_inc 3. Tes Kondisi berhenti
21
Lampiran 2 Hasil pelatihan dan pengujian percobaan 1
a.
Generalisasi Toleransi Galat
b.
10
20
30
40
50
60
70
80
90
100
10-2
72.50%
70.00%
70.00%
70.00%
80.00%
70.00%
72.50%
70.00%
77.50%
77.50%
10-3 10-4
67.50% 72.50%
72.50% 72.50%
70.00% 80.00%
72.50% 70.00%
75.00% 72.50%
75.00% 77.50%
75.00% 75.00%
75.00% 77.50%
75.00% 75.00%
72.50% 75.00%
Waktu Latih Toleransi Galat -2
10 10-3 10-4 c.
Hidden neuron
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
31.4 46.4 46.3
12.9 14.2 39.2
4.1 6.4 21.3
6.4 5.6 17.9
3.41 7.6 8.2
3.4 5.1 6.1
1.7 7.3 6.3
2.4 8.4 7.7
1.6 4 5.9
1.7 8.3 11.7
Jumlah Epoch Toleransi Galat -2
10 10-3 10-4
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
2965 5000 5000
720 1557 4225
381 683 2210
372 577 1584
298 786 818
294 496 617
127 733 620
183 819 740
107 373 541
121 729 1104
d.
21
22
Lampiran 3 Hasil Pelatihan dan pengujian Percobaan 2 a.
Generalisasi Toleransi Galat
10
20
30
40
50
60
70
80
90
100
-2
72.50%
75.00%
75.00%
77.50%
80.00%
75.00%
75.00%
75.00%
77.50%
75.00%
-3
72.50% 75.00%
77.50% 75.00%
80.00% 82.50%
80.00% 80.00%
75.00% 82.50%
77.50% 77.50%
77.50% 82.50%
77.50% 82.50%
77.50% 80.00%
77.50% 80.00%
10
10 10-4 b.
Waktu Latih Toleransi Galat
c.
Hidden neuron
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
-2
10 10-3
44.7 44.9
8.97 34.3
6.5 8.97
6.4 5.06
3.1 3.9
6.9 6.6
2.96 6.1
1.3 6.1
4 5.2
3.06 3
10-4
46.1
23.6
21.3
17.9
9.3
7.6
7.7
6.5
9
3.9
Jumlah epoch Toleransi Galat 10-2 10-3 10-4
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
4897 5000 5000
972 3793 2469
699 917 2210
372 501 1584
298 332 780
340 581 677
324 550 708
90 543 688
352 460 971
255 232 306
22
23
Lampiran 4 Hasil Pelatihan dan pengujian Percobaan 3 a.
Generalisasi Toleransi Galat -2
10 10-3 10-4 b.
10
20
30
40
50
60
70
80
90
100
75.00% 75.00% 70.00%
70.00% 75.00% 85.00%
80.00% 75.00% 70.00%
80.00% 80.00% 75.00%
75.00% 80.00% 75.00%
75.00% 75.00% 70.00%
80.00% 75.00% 80.00%
85.00% 70.00% 80.00%
70.00% 75.00% 80.00%
75.00% 85.00% 80.00%
Waktu Latih Toleransi Galat -2
10 10-3 10-4
c.
Hidden Neuron
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
22.2 49.21 47.4
6.01 17.57 29.3
4.16 9.91 19.7
4.14 4.1 17.6
2.6 4.1 7.2
3.98 3.13 16.13
4.3 7.2 21.5
1.7 8.3 7.4
1.7 3.4 7.52
1.7 6.9 5
Jumlah epoch Toleransi Galat
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
10-2 10-3
2954 5000
453 1752
358 1030
330 387
211 371
312 279
353 612
118 759
111 278
121 590
10-4
4572
2888
1901
1659
789
1382
1943
694
765
412
23
24
Lampiran 5 Hasil Pelatihan dan pengujian Percobaan 4 a.
Generalisasi Toleransi Galat -2
10 10-3 10-4 b.
10
20
30
40
50
60
70
80
90
100
75.00% 75.00% 75.00%
75.00% 75.00% 80.00%
85.00% 80.00% 80.00%
75.00% 80.00% 75.00%
85.00% 80.00% 75.00%
80.00% 80.00% 75.00%
70.00% 80.00% 75.00%
80.00% 80.00% 75.00%
75.00% 80.00% 80.00%
90.00% 75.00% 80.00%
Waktu Latih Toleransi Galat -2
10 10-3 10-4
c.
Hidden Neuron
Hidden Neuron 10
20
30
40
50
60
70
80
90
100
34.70 45.4 50.57
4.64 10.32 21.50
3.40 5.80 10.42
3.12 3.80 5.21
1.09 8.35 7.48
1.57 6.30 7.90
2.93 2.70 3.80
1.15 3.07 4.70
3.02 2.62 3.86
3.03 4.40 13.00
Jumlah epoch Hidden Neuron
Toleransi Galat
10
20
30
40
50
60
70
80
90
100
10-2 10-3
3599 5000
375 1074
292 564
280 350
68 784
116 569
244 205
73 251
240 195
232 347
10-4
5000
2181
1042
581
696
727
440
380
305
562
24
25
Lampiran 6 Confusion Matrix Akurasi Terendah Empat Percobaan a. Percobaan 1 (Hidden Neuron 20, Toleransi galat 10-3) Kelas 1 2 3 4 5 6 7 8 9 10
1 11
2
3 1
4
5
6
7
8 1
9
10
1111 1
111 1111
1
111
1
111 1
111
1
1 1 1
1 111
11
1 1
b. Percobaan 2 (Hidden Neuron 10,Toleransi Galat 10-2) Kelas 1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
11
8 1
9
10 1
1111 1
111 1111
1
111 1111 1111 11
11 1
111 11
11
25
26
Lampiran 6 Confusion Matrix Akurasi Terendah Empat Percobaan (lanjutan) c. Percobaan 3 (Hidden Neuron 20, Toleransi galat 10-2) Kelas 1 2 3 4 5 6 7 8 9 10
1 1
2
3
4
5
6
7
8 1
9
10
11 1
1 11 1
1 11 11 1
1 11 1
1
d. Percobaan 4 ( Hidden Neuron 70 , Toleransi galat 10-2) Kelas 1 2 3 4 5 6 7 8 9 10
1 1
2
3
4
5
6
7
8 1
9
10
11 1
1 11
1
1 11 11 11 11 1
1
26