1
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.
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
5
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. 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,
2. Suami tercinta Asep Mugia Raharjo, S.Pi yang senantiasa memberikan semangat kepada penulis.
3. 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,
4. Aziz Kustiyo, S.Si., M.Kom. dan Muhammad Ashyar Agmalaro, S.Si., M.Kom. selaku dosen penguji,
5. 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
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.
i v 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
DAFTAR TABEL
1. Rincian genus diatom yang digunakan dalam penelitian. ... 5
2. Struktur JST Backpropagation. ... 7
3. Kelas target JST Backpropagation... 7
4. Akurasi maksimum Percobaan 1... 9
5. Akurasi maksimum Percobaan 2 ... 10
6. Akurasi maksimum ketiga toleransi kesalahan pada Percobaan 3. ... 12
7. Akurasi maksimum ketiga toleransi kesalahan pada Percobaan 4. ... 13
8. Akurasi maksimum empat percobaan. ... 14
9. Waktu pelatihan untuk akurasi maksimum empat percobaan. ... 14
10. Jumlah epoch untuk akurasi maksimum empat percobaan. ... 14
11. Kelas citra dengan akurasi rendah... 16
DAFTAR GAMBAR 1. Citra diatom pennales (kiri) dan centrales (kanan) (Botes 2003). ... 2
2. Arsitektur JST Backpropagation ... 4
3. Contoh citra diatom asli berukuran 2560 x 1920 piksel. ... 6
4. Contoh citra hasil kroping berukuran 1127 x 1097 piksel. ... 6
5. Contoh citra hasil resize (60 x 60 piksel). ... 6
6. Tahapan Proses Pengenalan Diatom dengan JST Backpropagation. ... 7
7. Generalisasi Percobaan 1 dengan toleransi galat 10-2. ... 8
8. Generalisasi Percobaan 1 dengan toleransi galat 10-3. ... 8
9. Generalisasi percobaan 1 untuk toleransi galat 10-4. ... 9
10. Waktu pelatihan untuk akurasi maksimum Percobaan 1. ... 9
11. Jumlah epoch pelatihan untuk akurasi maksimum Percobaan 1. ... 9
12. Generalisasi Percobaan 2 dengan toleransi galat 10-2. ... 10
13. Generalisasi Percobaan 2 dengan toleransi galat 10-3. ... 10
14. Generalisasi Percobaan 2 dengan toleransi galat 10-4 . ... 10
15. Waktu pelatihan untuk akurasi maksimum Percobaan 2. ... 10
16. Jumlah epoch untuk akurasi maksimum Percobaan 2. ... 11
17. Generalisasi percobaan 3 untuk toleransi galat 10-2. ... 11
18. Generalisasi Percobaan 3 dengan toleransi galat 10-3. ... 11
19. Generalisasi Percobaan 3 dengan toleransi galat 10-4. ... 11
20. Waktu pelatihan untuk akurasi maksimum Percobaan 3. ... 12
21. Jumlah epoch untuk akurasi maksimum Percobaan 3. ... 12
22. Generalisasi Percobaan 4 untuk toleransi galat 10-2. ... 12
23. Generalisasi Percobaan 4 dengan toleransi galat 10-3. ... 13
24. Generalisasi Percobaan 4 dengan toleransi galat 10-4. ... 13
25. Waktu pelatihan untuk akurasi maksimum Percobaan 4. ... 13
26. Jumlah epoch untuk akurasi maksimum Percobaan 4. ... 13
27. 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
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
1
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 biologisyang 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 genusdiatom.
Ruang Lingkup
1. 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.
2. 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) 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 FamiliMelosiraceae 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 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 dan pennales ditunjukkan pada Gambar 1.
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).
) 1 , 1 ( ) 1 , 1 ( ) 0 , 1 ( ) 1 , 1 ( ) 1 , 1 ( ) 0 , 1 ( ) 1 , 0 ( ) 1 , 0 ( ) 0 , 0 ( ) , ( N M f M f M f N f f f N f f f y x f [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).
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). ) , ( ... ... ) , ( ... ... ... ... ... ... ... ... ) , ( ... ... ) , ( ) , ( 1 1 1 1 n m m n y x f y x f y x f y x f y x f [2]
Kumpulan data citra dapat diubah dalam suatu vektor citra berdimensi q dan vektor ini dapat dituliskan sebagaimana Persamaan 3.
f(x1,y1),...,f(xq,y1),...,f(x1,yk),...,f(xq,yk)
[3] Kemudian nilai rataan dari vektor tersebut dapat dihitung dengan rumus pada Persamaan 4. x
=
k g gx
k
11
...
[4]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.T g g g k g g x x k S 1 ( )( ) 1
…………..[5] S
qq q q q qa
a
a
a
a
a
a
a
a
...
.
...
.
.
...
...
2 1 2 22 21 12 11 ………….. [6]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.
p i i m i i b b proporsi 1 1 ...[8]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
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.
rataan =
n i i piksel n 1 ) ( 1 ...[9] stdev = n i rataan pikseli n 1( ) 1 ²...[10]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). 1. Arsitektur Metode Backpropagation.
Arsitektur jaringan syaraf tiruan metode
backpropagation memiliki beberapa unit yang ada dalam satu atau lebih hidden layer
(Siang 2009).
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.
1 x1 xi … … … … xm z1 zi zp y1 yi yn 1 … … … … … … … …
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). e x f 1 1 ) ( ……….[12] Dengan turunan : )] ( 1 )[ ( ) ( ' x f x f x f ………[13]
b. Fungsi Sigmoid bipolar dengan range (-1,1) e e x f 1 1 ) ( ………..[14] Dengan turunan : 2 )) ( 1 ))( ( 1 ( ) ( ' x f x f x f ……….[15] c. 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:
p i ij ij j ij ij lama v lama v lama v lama v baru v 1 2 ) ( ) ( ) ( ) ( ) ( vij(lama) adalah nilai acak antara -0.5 dan 0.5 sedangkan bobot pada bias bernilai antara –β dan β. n p 7 . 0
n = jumlah neuron input
p = jumlah neuronhidden
β = 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
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.
METODE PENELITIAN
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. Data Penelitian
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 Genus
Coscinodisceae Thalassiosiraceae * Thalassiosira, Cyclotella, Lauderia Skeletonema Melosiraceae* Melosira Coscinodisceae* Coscinodiscus
Biddulphianeae Hemiaulaceace* Eucampia,
Fragillariineae Fragillariaceae* 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
berukuran60 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.
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.
Tabel 2 Struktur JST Backpropagation
Karakteristik Spesifikasi
Arsitektur 1 hidden layer Input neuron Dimensi PCA 80% dan 90% Hidden neuron 10,20,30,40,50,60,70,80,90,
dan 100 Output neuron Banyaknya kelas target
Inisialisasi
bobot dan bias Nguyen-Widrow
Fungsi aktivasi
Sigmoid bipolar, Sigmoid biner
Toleransi galat 10-2
, 10-3, dan 10-4
Algoritma training
Variable laju pemahaman (traingdx)
Jumlah iterasi 5000 epoch
Laju
pembelajaran 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 1000000000 Asterionella 0100000000 Fragillaria 0010000000 Eucampia 0001000000 Melosira 0000100000 Skeletonema 0000010000 Surirella 0000001000 Cyclotella 0000000100 Lauderia 0000000010 Thalassiosira 00000000001
Parameter Pengenalan Diatom
menggunakan JST Backpropagation
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= seluruhnya jumlah benar pengenalan jumlah _ _ _ x100% [18] 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.
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
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.
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.
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
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.
Gambar 10 Waktu pelatihan untuk akurasi maksimum Percobaan 1
Pada Gambar 10 terlihat bahwa waktu pelatihan terkecil adalah dengan toleransi
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.
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. 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 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.
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 14 Generalisasi Percobaan 2 dengan toleransi galat 10-4
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
Galat
Akurasi
maksimum Hidden neuron
10-2 80% 50
10-3 80% 30 dan 40
10-4 82.5% 30, 50, 70 dan 80
b. Konvergensi
Gambar 15 menunjukkan waktu latih percobaan menggunakan tiga buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 2.
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 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 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 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 masing-masing 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 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 masing-masing 590 dan 2880 epoch. Gambar 15 menunjukkan jumlah epoch untuk 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 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
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 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
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 b. Konvergensi
Waktu latih terkecil sebesar 3.03 detik diperoleh pada percobaan dengan
menggunakan toleransi galat 10-2. Sementara percobaan menggunakan toleransi galat 10-3 dan 10-4 membutuhkan waktu latih masing-masing 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 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 masing-masing 564 dan 2181 epoch. Gambar 26 menunjukkan jumlah epoch untuk percobaan menggunakan 3 buah toleransi galat yang menghasilkan akurasi maksimum pada Percobaan 4.
Gambar 26 Jumlah epoch untuk akurasi maksimum Percobaan 4 Perbandingan Empat Percobaan 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 8 Akurasi maksimum empat percobaan
Toleransi Galat Generalisasi (%) P1 P2 P3 P4 10-2 80% 80% 85% 90% 10-3 75% 80% 85% 80% 10-4 80% 82.50% 85% 85% 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.
Tabel 9 Waktu pelatihan untuk akurasi maksimum empat percobaan
Toleransi Galat
Waktu Latih (detik)
P1 P2 P3 P4
10-2 3.41 3.10 1.7 3.03
10-3 7.6 5.10 6.9 5.8
10-4 21.3 9.30 29.3 21.5
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.
Tabel 10 Jumlah epoch untuk akurasi maksimum empat percobaan
Toleransi Galat Banyaknya Epoch P1 P2 P3 P4 10-2 298 298 118 232 10-3 786 501 590 564 10-4 2210 780 2888 2181 Keterangan : P1 = Percobaan 1 Analisis Error
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.
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.
Tabel 11 Keterangan kelas klasifikasi diatom
Kelas Genus 1 Coscinodiscus 2 Asterionella 3 Fragillaria 4 Eucampia 5 Melosira 6 Skeletonema 7 Surirella 8 Cyclotella 9 Lauderia 10 Thalassiosira
15
(a)
(b)
(c)
(d)
Gambar 27 Perbandingan akurasi per genus diatom (a) Percobaan 1, (b) Percobaan 2, (c) Percobaan 3, (4) Percobaan 4
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) (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 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) (b)
(c) (d) (e) Gambar 29 Citra dengan akurasi rendah (a) Kelas 1, (b) Kelas 3, (c) Kelas 5, (d) Kelas 8, (e) Kelas 10
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 Kelas Hasil Identifikasi 1 8 3 6 5 7, 8, 10 8 1 10 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 masing-masing genus juga berpengaruh pada besarnya akurasi.
KESIMPULAN DAN SARAN Kesimpulan
Berdasarkan penelitian yang dilakukan dapat disimpulkan bahwa :
1. Model Jaringan Syaraf Tiruan
Backpropagation dapat digunakan untuk pengenalan beberapa genus diatom (Bacillariophyceae).
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%.
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.
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.
Saran
Penelitian ini merupakan penelitian awal mengenai identifikasi genus diatom, sehingga masih dapat dikembangkan lebih lanjut untuk mendapatkan hasil yang lebih optimal.
Adapun saran untuk penelitian lebih lanjut antara lain :
1. Data penelitian sebaiknya ditambahkan untuk lebih banyak variasi genus. 2. Mencoba metode lain seperti ekstraksi
fitur yang diharapkan dapat lebih meningkatkan akurasi.
3. 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.
4. 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. 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.
Buono A, Rachmaniah M, Sarbini. 2002. Perbandingan Metode Eigen pada Pengenalan Wajah. Bogor : Institut Pertanian Bogor.
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.
Gonzales RC, Woods RE. 2002. Digital Image Processing. 2nd Edition. New Jersey: Prentice-Hall.
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.
1 8
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 i ij i j jv
x
v
in
z
1 0_
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 i jk i k jw
z
w
in
y
1 0_
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 k k k
t
y
f
y
in
Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai wjk) : j k jk
z
W
Hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai w0k ):
k k
w
0Kirimkan k ini ke unit-unit yang ada dilapisan bawahnya.
e. Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan delta inputnya (dari unit-unit yang berada pada lapisan diatasnya) :
m i jk k jw
in
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 j j
in
f
z
in
Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai vij): i j jk
x
v
Kemudian hitung koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai v0j):
j j
v
0f. 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 :
(
)
(
1
)
)
(
)
1
(
t
w
t
z
w
t
w
t
w
kj kj
k j
kj kj dan
(
)
(
1
)
)
(
)
1
(
t
v
t
x
v
t
v
t
v
ji jij
j i
jij jij2. 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 Hidden neuron
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 67.50% 72.50% 70.00% 72.50% 75.00% 75.00% 75.00% 75.00% 75.00% 72.50% 10-4 72.50% 72.50% 80.00% 70.00% 72.50% 77.50% 75.00% 77.50% 75.00% 75.00%
b. Waktu Latih
Toleransi Galat Hidden Neuron
10 20 30 40 50 60 70 80 90 100
10-2 31.4 12.9 4.1 6.4 3.41 3.4 1.7 2.4 1.6 1.7
10-3 46.4 14.2 6.4 5.6 7.6 5.1 7.3 8.4 4 8.3
10-4 46.3 39.2 21.3 17.9 8.2 6.1 6.3 7.7 5.9 11.7
c. Jumlah Epoch
Toleransi Galat Hidden Neuron
10 20 30 40 50 60 70 80 90 100 10-2 2965 720 381 372 298 294 127 183 107 121 10-3 5000 1557 683 577 786 496 733 819 373 729 10-4 5000 4225 2210 1584 818 617 620 740 541 1104 d. 21
22
Lampiran 3 Hasil Pelatihan dan pengujian Percobaan 2 a. Generalisasi
Toleransi Galat Hidden neuron
10 20 30 40 50 60 70 80 90 100 10-2 72.50% 75.00% 75.00% 77.50% 80.00% 75.00% 75.00% 75.00% 77.50% 75.00% 10-3 72.50% 77.50% 80.00% 80.00% 75.00% 77.50% 77.50% 77.50% 77.50% 77.50% 10-4 75.00% 75.00% 82.50% 80.00% 82.50% 77.50% 82.50% 82.50% 80.00% 80.00% b. Waktu Latih Toleransi Galat Hidden Neuron 10 20 30 40 50 60 70 80 90 100 10-2 44.7 8.97 6.5 6.4 3.1 6.9 2.96 1.3 4 3.06 10-3 44.9 34.3 8.97 5.06 3.9 6.6 6.1 6.1 5.2 3 10-4 46.1 23.6 21.3 17.9 9.3 7.6 7.7 6.5 9 3.9 c. Jumlah epoch Toleransi Galat Hidden Neuron 10 20 30 40 50 60 70 80 90 100 10-2 4897 972 699 372 298 340 324 90 352 255 10-3 5000 3793 917 501 332 581 550 543 460 232 10-4 5000 2469 2210 1584 780 677 708 688 971 306 22
23
Lampiran 4 Hasil Pelatihan dan pengujian Percobaan 3 a. Generalisasi
Toleransi Galat Hidden Neuron
10 20 30 40 50 60 70 80 90 100
10-2 75.00% 70.00% 80.00% 80.00% 75.00% 75.00% 80.00% 85.00% 70.00% 75.00% 10-3 75.00% 75.00% 75.00% 80.00% 80.00% 75.00% 75.00% 70.00% 75.00% 85.00% 10-4 70.00% 85.00% 70.00% 75.00% 75.00% 70.00% 80.00% 80.00% 80.00% 80.00% b. Waktu Latih
Toleransi Galat Hidden Neuron
10 20 30 40 50 60 70 80 90 100
10-2 22.2 6.01 4.16 4.14 2.6 3.98 4.3 1.7 1.7 1.7
10-3 49.21 17.57 9.91 4.1 4.1 3.13 7.2 8.3 3.4 6.9
10-4 47.4 29.3 19.7 17.6 7.2 16.13 21.5 7.4 7.52 5
c. Jumlah epoch
Toleransi Galat Hidden Neuron
10 20 30 40 50 60 70 80 90 100
10-2 2954 453 358 330 211 312 353 118 111 121
10-3 5000 1752 1030 387 371 279 612 759 278 590
10-4 4572 2888 1901 1659 789 1382 1943 694 765 412
24
Lampiran 5 Hasil Pelatihan dan pengujian Percobaan 4 a. Generalisasi Toleransi Galat Hidden Neuron 10 20 30 40 50 60 70 80 90 100 10-2 75.00% 75.00% 85.00% 75.00% 85.00% 80.00% 70.00% 80.00% 75.00% 90.00% 10-3 75.00% 75.00% 80.00% 80.00% 80.00% 80.00% 80.00% 80.00% 80.00% 75.00% 10-4 75.00% 80.00% 80.00% 75.00% 75.00% 75.00% 75.00% 75.00% 80.00% 80.00% b. Waktu Latih Toleransi Galat Hidden Neuron 10 20 30 40 50 60 70 80 90 100 10-2 34.70 4.64 3.40 3.12 1.09 1.57 2.93 1.15 3.02 3.03 10-3 45.4 10.32 5.80 3.80 8.35 6.30 2.70 3.07 2.62 4.40 10-4 50.57 21.50 10.42 5.21 7.48 7.90 3.80 4.70 3.86 13.00 c. Jumlah epoch Toleransi Galat Hidden Neuron 10 20 30 40 50 60 70 80 90 100 10-2 3599 375 292 280 68 116 244 73 240 232 10-3 5000 1074 564 350 784 569 205 251 195 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)
b.Percobaan 2 (Hidden Neuron 10,Toleransi Galat 10-2)
Kelas 1 2 3 4 5 6 7 8 9 10 1 11 1 1 2 1111 3 111 1 4 1111 5 111 1 6 1111 7 1111 8 11 11 9 1 111 10 11 11 Kelas 1 2 3 4 5 6 7 8 9 10 1 11 1 1 2 1111 3 111 1 4 1111 5 111 1 6 111 1 7 1 111 8 1 1 1 1 9 1 111 10 1 11 1 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 1 2 11 3 1 1 4 11 5 1 1 6 11 7 11 8 1 1 9 11 10 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 1 2 11 3 1 1 4 11 5 1 1 6 11 7 11 8 11 9 11 10 1 1 26