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.
Severity
...
Dsc Cr Rrr Pr Bsr
6 6 1 0 4
2 0 2 2 0
1 2 0 1 1
1 1 2 1 1
1 3 1 1 3
1 1 2 1 1
... ... ... ... ...
Leafspot Size
Area Damaged
5
Crop Hist
Gambar 1. Tahapan Penelitian
1 2 3 4
Temp
No
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:
Precip
III. METODE PENELITIAN
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 faktorfaktor 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) Date
Gambar 4. Skema Bayes
a.
Penyakit
3. Mendapatkan nilai dalam tabel mean, standar deviasi dan probabilitas.
2 2 2 2 2
6 7
8 9
10 11 12 13 14 15
Pm Dm Bs Bb Bp Pss Ant Pls As Fels
5
6 1 5
2 6 5
3 4 5
0 2 2 2 1 2 2 1 2 2
1 0 2 1 2 0 1 1 1 1
3 2 3 3 2 2 3 0 1 1
3 1 3 3 2 2 3 2 1 2
1 0 1 1 0 0 1 0 1 0
... ... ... ... ... ... ... ... ... ...
2 1 1 0 0 2 2 1 1 1
*Sumber : http://archive.ics.uci.edu/ml/datasets.
Tabel 2. Atribut atau Gejala serta Faktorfaktor yang Mempengaruhi
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 langkahlangkah sebagai berikut:
*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 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.
Prediksi
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.
Penyakit
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 :
Leafspot Size
Hasil
...
HASIL DAN PEMBAHASAN
Area Damaged
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%.
Crop Hist
%.....(2)
Temp
∑
Precip
∑
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 8fold 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 Date
Tingkat Akurasi =
Gambar 5. Tampilan output hasil identifikasi
No
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 :
1 2 3 4 5 6 7 8 9 10
6 6 6 0 0 0 3 4 4 2
2 2 0 2 1 2 0 1 0 1
1 1 2 0 1 1 0 0 1 0
1 3 0 1 1 3 3 2 1 2
1 0 2 1 1 1 0 3 2 2
... ... ... ... ... ... ... ... ... ...
2 2 2 2 2 2 2 2 2 2
dsc dsc cr rrr pr pr bsr bsr bsr pm
ant dsc cr rrr pr pr bsr pm bsr pm
… 33
… 5
… 2
… 2
… 3
… 3
... ...
… 1
… fels
… As
80%
Percobaan pertama menghasilkan akurasi sebesar: Akurasi =
60%
∑
40%
∑
=
20%
x 100% = 64%
No
Date
Precip
Temp
Crop Hist
Area Damaged
...
Leafspot Size
Penyakit
Prediksi
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
34 35 36 37 38 39 40 41 42 43 … 66
4 4 4 1 3 1 5 4 3 6 … 4
2 2 0 2 2 2 0 0 0 0 … 2
1 1 1 0 0 1 2 0 1 1 … 1
2 2 2 3 2 0 1 3 3 1 … 0
0 0 2 1 1 1 3 2 2 1 … 1
... ... ... ... ... ... ... ... ... ... ... ...
2 2 2 2 2 2 2 1 2 2 … 1
dsc dsc cr rrr pr pr bsr bsr bsr pm … fels
dsc dsc bsr rrr pr pr bsr bsr bsr bsr … bb
Percobaan kedua menghasilkan akurasi sebesar: Akurasi = =
100%
∑ ∑
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:
0% 1
2
3
10 Atribut
4
5
6
7
8
35 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
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.