SISTEM IDENTIFIKASI PENYAKIT TANAMAN KACANG KEDELAI
MENGGUNAKAN METODE NAIVE BAYES
Nopiyanti1, Eneng Tita Tosida2 dan Aries Maesya3
Program Studi Ilmu Komputer-FMIPA Universitas Pakuan Jl. Pakuan PO BOX 452, Bogor
Telp/Fax (0251) 8375 547
Email : [email protected] , [email protected] , [email protected]
ABSTRAK
Kedelai merupakan tanaman pangan berupa semak yang tumbuh tegak. Seiring waktu, pertumbuhan kacang kedelai tidak lepas dari penyakit yang mengganggu perkembangannya. Untuk mengetahui penyakit yang menyerang tanaman kacang kedelai, maka perlu dilakukan suatu identifikasi untuk mengetahui penyakit kacang kedelai melalui sebuah sistem pakar menggunakan metode Naive Bayes.
Sumber data yang digunakan berasal dari UCI Learning yang berjumlah 264 data dengan 15 jenis penyakit dan 35 atribut. Namun pada proses pembuatannya dilakukan seleksi atribut terlebih dahulu untuk meminimalisir atribut-atribut yang tidak diperlukan. Setelah seleksi dilakukan, didapat 10 atribut hasil seleksi yang dimasukan kedalam sistem. Untuk mengetahui akurasi sistem, maka dilakukan pembagian data menggunakan metode k-fold
cross validation. Setelah dilakukan pengujian, didapat nilai akurasi terbesar sebesar 76%
dengan jumlah 10 atribut dan nilai akurasi sebesar 82% dengan jumlah 35 atribut. Hal ini menunjukan bahwa sistem yang dibangun dapat melakukan klasifikasi atau identifikasi dengan cukup baik apabila menggunakan 35 atribut.
Kata Kunci : UCI Learning, Naive Bayes, K-fold Cross Validation. ABSTRACT
Soybean is a kind of crops that grows as straight bushes. As the time goes by, the growth of soybean is never fall apart from its diseases. To know the diseases that attack soybean, it is needed to do an identification of soybean diseases through a system using Naïve Bayes method.
264 data sources come from UCI Learning with 15 diseases and 35 attributives were used. However, during the process, there is a selection toward the data to minimize the presence of unused attributives. After selection, it was chosen 10 attributives included to the system. To know the accuracy of the system, data distribution using k-fold cross validation is done. After testing, degree of accuracy shown is 76 % if the number of attributives is 10, while degree accuracy shown is 82 % if the number of attributives is 35. It shows that built system is able to do classification and identification in sufficient enough way if it uses 35 attributives.
Keywords : UCI Learning, Naive Bayes, K-fold Cross Validation. I. PENDAHULUAN
Kedelai merupakan tanaman pangan berupa semak yang tumbuh tegak (AAK, 1989). Seiring waktu, pertumbuhan kacang
kedelai tidak lepas dari penyakit yang mengganggu perkembangannya. Untuk mengidentifikasi penyakit kacang kedelai maka harus diamati beberapa hal yang menjadi karakteristik berbagai jenis penyakit
tersebut, diantaranya waktu tanam tanaman, kondisi daun, temperatur lingkungan, luas area tanaman yang diserang penyakit, kondisi akar, kondisi buah dan lain-lain.
Salah satu cara yang dapat dilakukan untuk mengidentifikasi penyakit tanaman kacang kedelai yaitu dengan memanfaatkan teknologi komputer melalui sebuah sistem pakar. Salah satu sistem pakar yang digunakan pada bidang pertanian adalah sistem pakar untuk mendiagnosa hama dan penyakit kedelai edamame berdasarkan gejala kerusakannya [1]. Sistem pakar ini digunakan untuk mendiagnosis 12 jenis hama dan 4 jenis penyakit kedelai edamame berdasarkan gejala kerusakannya dengan metode inference tree dan forward chaining. Hasil pengujiannya menunjukan bahwa tingkat ketepatannya sesuai dengan data jenis hama dan penyakit kedelai edamame. Ketepatan dari aplikasi program sistem pakar ditunjukan dengan nilai 100 yang didapatkan dari perhitungan jumlah jawaban dibagi dengan jumlah gejala dikalikan dengan 100%.
Berdasarkan hasil penelitian sebelumnya dan identifikasi permasalahan maka pada penelitian ini dibangun sebuah sistem pakar untuk mengklasifikasi penyakit tanaman kacang kedelai menggunakan metode Naive Bayes. Data penyakit kacang kedelai diperoleh dari UCI Learning Repository (http://archive.ics.uci.edu/ml /datasets)
[2]. Manfaat dari penelitian ini, diharapkan dapat digunakan sebagai alat bantu yang mempermudah seorang pakar atau orang yang meneliti contohnya dari Balai Penelitian (LIPI) dalam melakukan identifikasi penyakit kacang kedelai yang berbasis web. Selain itu, tidak menutup kemungkinan sistem pakar ini digunakan oleh petani dan penyuluh pertanian yang bukan dibidang penyakit tanaman sehingga dapat menggantikan peran dari seorang pakar penyakit tanaman khususnya penyakit kacang kedelai.
II. TINJAUAN PUSTAKA Sistem Pakar
Sistem pakar adalah sistem berbasis
komputer yang menggunakan ilmu
pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah yang biasanya hanya dapat diselesaikan oleh tenaga ahli atau seorang pakar dalam bidang yang bersangkutan [3].
Naive Bayes
Algoritma Naive Bayes merupakan salah satu algoritma yang terdapat pada teknik klasifikasi. Naive Bayes merupakan pengklasifikasian dengan metode probabilitas dan statistik yang dikemukan oleh ilmuwan Inggris Thomas Bayes, yaitu memprediksi peluang di masa depan berdasarkan pengalaman dimasa sebelumnya sehingga dikenal sebagai Teorema Bayes. Teorema tersebut dikombinasikan dengan Naive dimana diasumsikan kondisi antar atribut saling bebas. Klasifikasi Naive Bayes diasumsikan bahwa ada atau tidak ciri tertentu dari sebuah kelas tidak ada hubungannya dengan ciri dari kelas lainnya [4].
Untuk klasifikasi dengan data kontinyu digunakan rumus Densitas Gauss :
P(Xi = xi|Y = yj) = √ (1) Keterangan : P : Peluang Xi : Atribut ke i xi : Nilai atribut ke i
Y : Kelas yang dicari Yj : Sub kelas Y yang dicari
µ : Mean, menyatakan rata-rata dari seluruh atribut
σ : Deviasi standar, menyatakan varian dari seluruh atribut
Adapun alur dari metode Naive Bayes adalah sebagai berikut :
1. Baca data training
2. Hitung Jumlah dan probabilitas, namun apabila data numerik maka:
a. Cari nilai mean dan standar deviasi dari masing masing parameter yang merupakan data numerik.
b. Cari nilai probabilistik dengan cara menghitung jumlah data yang sesuai dari kategori yang sama dibagi dengan jumlah data pada kategori tersebut.
3. Mendapatkan nilai dalam tabel mean, standar deviasi dan probabilitas.
Gambar 4. Skema Bayes
III. METODE PENELITIAN
Dalam metode penelitian ini, akan dijelaskan proses pembuatan sistem serta langkah-langkah yang sesuai dengan tahapan sistem pakar termasuk pengumpulan data. Tahapan-tahapan tersebut dijelaskan dalam skema seperti pada gambar 1:
Gambar 1. Tahapan Penelitian
a. Identifikasi Masalah
Sudah banyak sistem yang
dikembangkan untuk mengidentifikasi penyakit kacang kedelai dengan berbagai metode. Namun masih banyak sistem yang belum maksimal melakukan identifikasi, salah satu solusi yaitu dengan dibuatnya sistem pakar mengenai identifikasi penyakit kacang kedelai menggunakan metode naive bayes.
b. Mencari Sumber dan Akuisisi
Pengetahuan
Dalam pembuatan sistem diperlukan beberapa data dan informasi mengenai penyakit dan gejala serta faktor-faktor penyebab adanya penyakit yang menyerang tanaman kacang kedelai. Sumber data yang digunakan dalam penelitian berasal dari UCI Learning yaitu terdiri dari 15 (lima belas) penyakit seperti diaporthe stem canker,
charcoal rot dan lain-lain. Setiap penyakit
terdiri dari 35 atribut atau gejala serta faktor-faktor penyebab adanya penyakit yang menyerang tanaman kacang kedelai seperti
Date, Precip, Temp dan lain-lain. Namun
setelah dilakukan seleksi atribut dengan menghilangkan atribut yang banyak memiliki nilai 0, atribut tersebut tidak dimasukan kedalam sistem, maka dari itu atribut yang pada awalnya berjumlah 35 atribut, setelah dilakukan seleksi menjadi 10 atribut.
Data set kacang kedelai yang diperoleh sebanyak 264 data, berikut adalah rincian data kacang kedelai dari UCI Learning dan selengkapnya dapat dilihat pada lampiran.
Tabel 1. Data Set Kacang Kedelai (Soybean)
No P enya kit Da te P re cip Te mp Crop Hist Ar ea Da mage d S eve rit y ... Le af spot S ize 1 Dsc 6 2 1 1 1 1 ... 2 2 Cr 6 0 2 1 3 1 ... 2 3 Rrr 1 2 0 2 1 2 ... 2 4 Pr 0 2 1 1 1 1 ... 2 5 Bsr 4 0 1 1 3 1 ... 2
6 Pm 5 0 1 3 3 1 ... 2 7 Dm 6 2 0 2 1 0 ... 1 8 Bs 1 2 2 3 3 1 ... 1 9 Bb 5 2 1 3 3 1 ... 0 10 Bp 2 1 2 2 2 0 ... 0 11 Pss 6 2 0 2 2 0 ... 2 12 Ant 5 2 1 3 3 1 ... 2 13 Pls 3 1 1 0 2 0 ... 1 14 As 4 2 1 1 1 1 ... 1 15 Fels 5 2 1 1 2 0 ... 1 *Sumber : http://archive.ics.uci.edu/ml/datasets.
Tabel 2. Atribut atau Gejala serta Faktor-faktor yang Mempengaruhi
*Sumber : http://archive.ics.uci.edu/ml/datasets.
c. Perancangan Flowchart Sistem.
Flowchart yaitu untuk representasi grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang diawali dengan penerimaan input, pemrosesan input, dan diakhiri dengan penampilan output.
Gambar 2. Perancangan Flowchart Sistem.
d. Implementasi
Dalam sistem ini, software yang digunakan untuk implementasi sistem adalah XAMPP sebagai server dan Notepad++ untuk pengkodeannya. Algoritma yang digunakan didasari perhitungan dari model klasifikasi Naive Bayes dengan langkah-langkah sebagai berikut:
Gambar 3. Perancangan Flowchart
Processing.
e. Pengujian Sistem
Pengujian validitas dilakukan dengan menguji data yang telah dibagi ke dalam matriks data uji menggunakan metode k-fold
cross validation. Data uji tersebut kemudian
diuji dengan menghitung nilai probabilitas menggunakan naive bayes.
K-fold Cross Validation merupakan
metode untuk memperkirakan generalisasi galat berdasarkan “resampling”. Hasil diperkirakan dari generalisasi galat biasanya digunakan untuk pemilihan di antara model yang bervariasi. Dalam K-fold Cross Validation, data dibagi secara acak menjadi k
himpunan bagian yang ukurannya hampir sama satu sama lain. Himpunan bagian yang dihasilkan yaitu S1, S2, S3, ... , Sk digunakan sebagai pelatihan dan pengujian yang masing-masing diulang sebanyak k kali. Pada percobaan ke-i, himpunan bagian Si digunakan sebagai data pengujian dan himpunan bagian lainnya digunakan sebagai data pelatihan dan seterusnya
Setelah pengujian dilakukan, kemudian dilakukan perhitungan akurasi untuk mengetahui akurasi yang dicapai algoritma naive bayes. Tingkat akurasi dihitung dengan cara :
Tingkat Akurasi = ∑ ∑ %...(2)
Tingkat akurasi menunjukan tingkat kebenaran pengklasifikasian data terhadap kelas sebenarnya. Semakin rendah nilai akurasi maka semakin tinggi kesalahan klasifikasi. Tingkat akurasi yang baik adalah tingkat akurasi yang mendekati nilai 100%.
HASIL DAN PEMBAHASAN Hasil
Hasil yang didapat dari pembuatan Sistem Identifikasi Penyakit Tanaman Kacang Kedelai Menggunakan Metode Naive
Bayes akan dijelaskan seperti berikut ini:
Misalkan diketahui data yang diinputkan sebagai berikut :
Gambar 4. Form proses identifikasi
Maka akan menghasilkan nilai probabilitas pada penyakit ant = 0.775 atau 77,43% dan menempati nilai tertinggi dibanding kelas penyakit kacang kedelai yang lain.
Gambar 5. Tampilan output hasil
identifikasi
Pembahasan
Pada percobaan pertama
menggunakan algoritma Naive Bayes terlebih dahulu tanpa menggunakan seleksi atribut. Percobaan tersebut menggunakan 264 data dan 35 atribut serta digunakan juga 8-fold Cross Validation untuk validasi. Berikut tabel pembagian data latih dan data uji:
Tabel 10. Tabel Pembagian data latih dan uji
Fold Pelatihan Pengujian
Fold 1 S2,S3,S4,S5,S6,S7,S8 S1 Fold 2 S1,S3,S4,S5,S6,S7,S8 S2 Fold 3 S1,S2,S4,S5,S6,S7,S8 S3 Fold 4 S1,S2,S3,S5,S6,S7,S8 S4 Fold 5 S1,S2,S3,S4,S6,S7,S8 S5 Fold 6 S1,S2,S3,S4,S5,S7,S8 S6 Fold 7 S1,S2,S3,S4,S5,S6,S8 S7 Fold 8 S1,S2,S3,S4,S5,S6,S7 S8
Pada percobaan pertama (fold 1) menggunakan S2,S3,S4,S5,S6,S7 dan S8 sebagai data latih dan S1 sebagai data uji yang berisi 33 record.
Tabel 11. Tabel Percobaan Pertama
No Date Precip Temp Crop Hist Area Damaged ...
Leafspot Size Penyak
it Prediks i 1 6 2 1 1 1 ... 2 dsc ant 2 6 2 1 3 0 ... 2 dsc dsc 3 6 0 2 0 2 ... 2 cr cr 4 0 2 0 1 1 ... 2 rrr rrr 5 0 1 1 1 1 ... 2 pr pr 6 0 2 1 3 1 ... 2 pr pr 7 3 0 0 3 0 ... 2 bsr bsr 8 4 1 0 2 3 ... 2 bsr pm 9 4 0 1 1 2 ... 2 bsr bsr 10 2 1 0 2 2 ... 2 pm pm
… … … ... … … …
33 5 2 2 3 3 ... 1 fels As
Percobaan pertama menghasilkan akurasi sebesar:
Akurasi = ∑ ∑ =
x 100% = 64%
Pada percobaan kedua (fold 2) menggunakan S1,S3,S4,S5,S6,S7 dan S8 sebagai data latih dan S2 sebagai data uji yang berisi 33 record.
Tabel 12. Tabel Percobaan Kedua
No Date Precip Temp Crop Hist Area Damaged ... Leafspot Size Penyak it Prediks i 34 4 2 1 2 0 ... 2 dsc dsc 35 4 2 1 2 0 ... 2 dsc dsc 36 4 0 1 2 2 ... 2 cr bsr 37 1 2 0 3 1 ... 2 rrr rrr 38 3 2 0 2 1 ... 2 pr pr 39 1 2 1 0 1 ... 2 pr pr 40 5 0 2 1 3 ... 2 bsr bsr 41 4 0 0 3 2 ... 1 bsr bsr 42 3 0 1 3 2 ... 2 bsr bsr 43 6 0 1 1 1 ... 2 pm bsr … … … ... … … … 66 4 2 1 0 1 ... 1 fels bb
Percobaan kedua menghasilkan akurasi sebesar:
Akurasi = ∑ ∑ =
x 100% = 67%
Percobaan tersebut dilakukan selama 8 kali karena setiap percobaan mendapatkan nilai akurasi yang berbeda yang disebabkan oleh data yang diambil secara acak pada setiap percobaan walaupun tetap dibagi kedalam 8 bagian yang hampir sama jumlahnya dan diambil nilai akurasi yang tertinggi. Nilai akurasi dapat dihitung berdasarkan rumus pada persamaan 2.
Berikut adalah grafik perbandingan akurasi dari seluruh percobaan yang sudah dilakukan menggunakan 35 atribut dan 10 atribut:
Gambar 6. Grafik Perbandingan Akurasi
Dari seluruh percobaan yang telah dilakukan, percobaan dengan menggunakan 10 atribut menghasilkan nilai akurasi yang paling tinggi yaitu 76%, sementara percobaan dengan 35 atribut menghasilkan akurasi paling tinggi sebesar 82%. Hal ini menunjukan bahwa model yang dibangun dengan 35 atribut dapat melakukan klasifikasi dengan cukup baik. Adapun kelemahan dari naive bayes itu sendiri adalah satu probabilitas tidak bisa mengukur seberapa dalam tingkat keakuratannya, selain itu apabila probabilitas kondisionalnya adalah nol maka probabilitas prediksi juga akan bernilai nol.
KESIMPULAN
Sistem Identifikasi Penyakit Tanaman Kacang Kedelai secara umum menampilkan suatu sistem untuk mengidentifikasi penyakit yang menyerang tanaman kacang kedelai menggunakan metode Naive Bayes.
Sumber data yang digunakan berasal dari UCI Learning yang berjumlah 264 data dengan 15 jenis penyakit dan 35 atribut. Namun pada proses pembuatannya dilakukan seleksi atribut terlebih dahulu untuk meminimalisir atribut-atribut yang tidak diperlukan. Setelah seleksi dilakukan, didapat 10 atribut hasil seleksi yang dimasukan kedalam sistem. Untuk mengetahui akurasi sistem, maka dilakukan pembagian data menggunakan metode k-fold
cross validation. Setelah dilakukan pengujian, didapat nilai akurasi terbesar
0% 20% 40% 60% 80% 100% 1 2 3 4 5 6 7 8 10 Atribut 35 Atribut
sebesar 76% dengan jumlah 10 atribut dan nilai akurasi sebesar 82% dengan jumlah 35 atribut. Hal ini menunjukan bahwa sistem yang dibangun dapat melakukan klasifikasi atau identifikasi dengan cukup baik apabila menggunakan 35 atribut.
SARAN
1. Diharapkan sistem dapat dikembangkan dengan menambah parameter input dan dapat menangani data dalam jumlah besar sehingga akurasi dapat mencapai 100%. 2. Dalam tahap pengembangan selanjutnya,
sistem identifikasi ini dapat dikembangkan menjadi lebih praktis dalam bentuk mobile programming atau berbasis android.
DAFTAR PUSTAKA
[1] Destarianto Prawidya, 2013.
Penerapan Metode Inference Tree dan Forward Chaining dalam Sistem Pakar Diagnosis Hama dan Penyakit Kedelai Edamame Berdasarkan Gejala Kerusakannya: Universitas Brawijaya
Malang.
[2] C. J. Merz, P. Merphy, “UCI
Repository of Machine Learning Database”,(http://www.ics.uci.edu/~mle
arn/MLRRepository.html) 1996.
[3] Kusrini, 2008. Aplikasi Sistem Pakar
Menentukan Faktor Kepastian Pengguna dengan Metode Kuantifikasi Pertanyaan : Andi, Yogyakarta.
[4] Bustami, 2013. Penerapan Algoritma
Naive Bayes Untuk Mengklasifikasi Data Nasabah Asuransi: Universitas Malikussaleh.