Implementasi Jaringan Saraf Tiruan untuk Mendeteksi Penyakit Tembakau (Nicotiana tabacum L) dengan Metode Backpropagation

(1)

IMPLEMENTASI JARINGAN SARAF TIRUAN UNTUK

MENDETEKSI PENYAKIT TEMBAKAU

(

Nicotiana tabacum

L) DENGAN METODE

BACKPROPAGATION

SKRIPSI

DEBORA NAINGGOLAN 071401038

PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2011


(2)

IMPLEMENTASI JARINGAN SARAF TIRUAN UNTUK

MENDETEKSI PENYAKIT TEMBAKAU

(

Nicotiana tabacum

L) DENGAN METODE

BACKPROPAGATION

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

DEBORA NAINGGOLAN 071401038

PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2011


(3)

PERSETUJUAN

Judul : IMPLEMENTASI JARINGAN SARAF TIRUAN

UNTUK MENDETEKSI PENYAKIT TEMBAKAU

(Nicotiana tabacum L) DENGAN METODE

BACKPROPAGATION. Kategori : SKRIPSI

Nama : DEBORA NAINGGOLAN

Nomor Induk Mahasiswa : 071401038

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, 18 Agustus 2011 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Amer Sharef, S.Si, M.kom Dr. Poltak Sihombing, M.Kom

NIP. - NIP. 196203171991021001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 196203171991021001


(4)

PERNYATAAN

IMPLEMENTASI JARINGAN SARAF TIRUAN UNTUK MENDETEKSI PENYAKIT TEMBAKAU (Nicotiana tabacum L) DENGAN METODE

BACKPROPAGATION

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 18 Agustus 2011

Debora Nainggolan 071401038


(5)

PENGHARGAAN

Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa, karena penulis merasakan kasih karuniaNya yang sungguh selama mengerjakan dan menyelesaikan skripsi ini.

Skripsi ini merupakan salah satu syarat yang wajib diselesaikan guna meraih gelar Sarjana Komputer pada jurusan S1-Ilmu Komputer USU. Pada pengerjaan skripsi dengan judul Implementasi Jaringan Saraf Tiruan untuk Mendeteksi Penyakit Tembakau (Nicotiana tabacum L) dengan Metode Backpropagation dengan Matlab R2010a, penulis menyadari bahwa banyak campur tangan pihak yang turut membantu dan memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:

1. Bapak Amer Sharif, S.Si, M.Kom sebagai pembimbing yang telah memberikan arahan dan motivasi kepada penulis dalam pengerjaan skripsi ini.

2. Bapak Drs. Suyanto, M.Kom dan Bapak Drs. James P Marbun, M.Kom sebagai dosen penguji yang telah memberikan panduan ringkas, padat dan profesional kepada penulis dalam penyempurnaan skripsi ini.

3. Ketua Jurusan S1-Ilmu Komputer sekaligus sebagai pembimbing Bapak Dr. Poltak Sihombing, M.Kom dan Sekretaris Ibu Maya Silvi Lydia, B.Sc, M.Sc, Dekan dan Pembantu Dekan Fakultas MIPA beserta para pegawai S1-Ilmu Komputer.

4. Ayahanda tercinta Parlindungan Nainggolan dan Ibu Minar Ventiara Purba yang telah memberikan kasih sayang penuh, motivasi dan setiap hal yang mendukung penulis sejak lahir bahkan dalam pengerjaan skripsi ini.

5. Ketiga adikku yang senantiasa menjadi inspirasi dan motivasi terbaik Daniel P Nainggolan, Dominggo Nainggolan dan Dony Wenry Nainggolan. Biarlah skripsi ini bisa menjadi motivasi bagi mereka dalam pengerjaan studi mereka.

6. Kepada Abanganda Horas Marbun, SP yang tidak henti memberi dukungan dan memotivasi, serta menjadi penopang doa.

7. Teman-teman seperjuangan mahasiswa S1-Ilmu Komputer stambuk 2007 secara khusus Alam, Dwi, Jelita, Novy, kelompok rohaniku Benhaill, Kakanda mita, Oka, Boris, Niskarto, adik-adikku Resurrexit Dominus Harmanto, Jakup, Bertua, Ales, Santo, Juni yang telah banyak memberikan dukungan dan inspirasi bagi penulis.

8. Teman-teman kos B7, Enita, Tika, Meri, Kakanda Meyta, Kakanda Duma, Kakanda Vivi, Koordinasi 2010 dan 2011 yang menjadi teman dalam suka dan duka, semoga skripsi ini bisa menjadi meotivasi bagi teman-teman yang masih harus berjuang dalam perkuliahan.


(6)

9. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.

Penulis menyadari bahwa dalam penyelesaian skripsi ini masih jauh dari sempurna. Untuk itu penulis sangat mengharapkan kritik dan saran yang membangun guna penyempurnaan dimasa mendatang.

Akhirnya penulis berharap semoga skripsi ini dapat bermanfaat dan menjadi berkat bagi penulis dan pembaca. Semoga Tuhan memberkati kita semua.

Medan, Agustus 2011


(7)

ABSTRAK

Jaringan saraf tiruan merupakan salah satu cabang dari kecerdasan buatan (Artificial Intelligence) yang dirancang dengan menirukan cara kerja otak manusia. Jaringan saraf tiruan mampu memprediksi dan menganalisis suatu masalah dengan proses belajar yang dilakukan melalui pengubahan bobot sinapsisnya. Penelitian ini mengembangkan jaringan saraf tiruan dalam medeteksi penyakit tembakau (Nicotiana tabacum L) yang terjadi di lapangan. Pelatihan yang digunakan menggunakan pelatihan backpropagation yang merupakan pelatihan terawasi. Gejala – gejala penyakit yang terjadi di lapangan merupakan masukan yang menjadi data input pada sistem yang terdiri dari 11 variabel. Target yang dihasilkan oleh sistem ada 2, yaitu tanaman sehat dan tanaman berpenyakit. Jaringan terdiri dari 3 lapisan, 1 lapisan masukan, 1 lapisan tersembunyi dan 1 lapisan keluaran, dimana ada 100 sel lapisan tersembunyi dan 1 sel lapisan keluaran. Dari proses pelatihan didapat hasil maksimal pada iterasi 2408, error 1x105 dan konstanta belajar 0.01.

Kata kunci: Artificial Intelligence, Jaringan Saraf Tiruan, Backpropagation,


(8)

ABSTRACT

Artificial neural network is a branch of artificial intelligence which is designed to imitate the workings of the human brain. Artificial neural networks are able to predict and analyze a problem with the process of learning through changing the weight of its synapses. This study developed a neural network for detecting diseases of tobacco (Nicotiana tabacum L) occurring in the field. Method of training used is backpropagation training, which is a form of supervised training, input data for the system are the symtomps which occur in the field which consist of 11 variables. Targets generated by the system are 2, healthy plants or diseased plants. The network consists of three layers, an input layer, one hidden layer and an output layer. There are 100 neurons in the hidden layer and one neuron in the output layer. The optimal result was obtained with 2408 iterations with an error of 1x105 and a learning rate of 0.01.

Key words: Artificial Intelligence, Neural Networks, Backpropagation, Nicotiana tabacum L, Diseases of Tobacco (Nicotiana tabacum L),


(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel x

Daftar Gambar xi

Bab 1 Pendahuluan

1.1 Latar Belakang 1

1.2 Perumusan Masalah 4

1.3 Batasan Masalah 4

1.4 Tujuan Penelitian 5

1.5 Manfaat Penelitian 5

1.6 Metode Penelitian 5

1.7 Sistematika Penulisan 6

Bab 2 Landasan Teori

2.1 Jaringan Saraf Tiruan (JST) 8

2.1.1 Pengertian Jaringan Saraf Tiruan 9

2.1.2 Manfaat Jaringan Saraf Tiruan 12

2.1.3 Struktur Dasar Jaringan Daraf Tiruan 15

2.1.4 Arsitektur Jaringan 17

2.2 Backpropagation 20

2.2.1 Arsitektur Jaringan Backpropagation 21

2.2.2 Algoritma 22

2.2.3 Fungsi Aktivasi 26

2.2.4 Bobot dan Bias 31

2.2.5 Lapisan Tersembunyi dan Neuron Tersembunyi 33 Bab 3 Analisis dan Perancangan Sistem

3.1 Analisis Jaringan Backpropagation 36

3.1.1 Input dan Output Jaringan 36

3.1.2 Topologi Jaringan 39

3.2 Membangun Jaringan Backpropagation 40

3.2.1 Ilustrasi dari proses backpropagation 42

3.2.2 Struktur Sistem 46

3.2.3 Spesifikasi Sistem 48

3.2.3.1 Data Flow Diagram (DFD) 48

3.2.3.2 Flowchart(Bagan Alir) 50


(10)

Bab 4 Implementasi dan Pengujian

4.1 Implementasi 54

4.1.1 Simulasi Pembelajaran 54

4.1.2 Hasil Pelatihan 60

4.2 Pengujian 63

4.2.1 Hasil Pengujian Sistem 64

4.3 Tampilan Sistem 66

4.3.1 Tampilan Depan Sistem 66

4.3.2 Tampilan Menu Utama 68

4.3.3 Form Hasil Pengujian Sistem 69

Bab 5 Kesimpulan dan Saran

5.1 Kesimpulan 71

5.2 Saran 72

Daftar pustaka 73

LAMPIRAN

LAMPIRAN A : Source Code Sistem


(11)

DAFTAR TABEL

Halaman

3.1 Variabel Inputan 38

3.2 Hasil Pelatihan 39

3.3 Penjelasan Parameter Argumen yang Diperlukan pada Newff 41

3.4 Keterangan DFD level 0 48

3.5 Keterangan DFD level 1 50

4.1 Data Pelatihan Jaringan 55

4.2 EpochPelatihan Jaringan 60

4.3 Hasil pelatihan jaringan 61


(12)

DAFTAR GAMBAR

Halaman

2.1 Jaringan Feedfoward 15

2.2 Topologi Jaringan Lapis Tunggal 18

2.3 Topologi Jaringan Lapis Banyak 19

2.4 Topologi Jaringan Lapis Kompetitif 20 2.5 Topologi Jaringan Lapis Backpropagation 22

2.6 Fungsi Identitas (Linear) 26

2.7 Fungsi Tangga Binary 27

2.8 Fungsi Symetric HardLimit 27

2.9 Fungsi Sigmoid Binary 28

2.10 Fungsi Sigmoid Bipolar 28

2.11 Fungsi Saturating Linear 29

2.12 Fungsi Symetric Saturating Linear 30

2.13 Fungsi Invers Sigmoid Bipolar 30

2.14 Ilustrasi Piramida Geometris 33

3.1 Jaringan Feedfoward 40

3.2 Perhitungan maju node lapisan tersembunyi 42 3.3 Perhitungan maju node lapisan output 43 3.4 Perhitungan balik bobot lapisan tersembunyi 44 3.5 Perhitungan balik bobot lapisan masukan 45

3.6 Struktur Sistem 47

3.7 DFD level 0 48

3.8 DFD level 1 49

3.9 Flowchart Program 51

3.10 FormDepan 52

3.11 FormMenu Utama 53

4.1 Jaringan pada Matlab R2010a 57

4.2 Tampilan Hasil Pelatihan 58

4.3 Grafik Pelatihan 59

4.4 Grafik Regresi Target dan Output 59

4.5 Tampilan Menu Depan 66

4.6 Tampilan Menu Keluar 67

4.7 Tampilan Aplikasi 68

4.8 Tampilan Hasil Pengujian Aplikasi Tanaman Sakit 69 4.9 Tampilan Hasil Pengujian Aplikasi Tanaman Sehat 69


(13)

ABSTRAK

Jaringan saraf tiruan merupakan salah satu cabang dari kecerdasan buatan (Artificial Intelligence) yang dirancang dengan menirukan cara kerja otak manusia. Jaringan saraf tiruan mampu memprediksi dan menganalisis suatu masalah dengan proses belajar yang dilakukan melalui pengubahan bobot sinapsisnya. Penelitian ini mengembangkan jaringan saraf tiruan dalam medeteksi penyakit tembakau (Nicotiana tabacum L) yang terjadi di lapangan. Pelatihan yang digunakan menggunakan pelatihan backpropagation yang merupakan pelatihan terawasi. Gejala – gejala penyakit yang terjadi di lapangan merupakan masukan yang menjadi data input pada sistem yang terdiri dari 11 variabel. Target yang dihasilkan oleh sistem ada 2, yaitu tanaman sehat dan tanaman berpenyakit. Jaringan terdiri dari 3 lapisan, 1 lapisan masukan, 1 lapisan tersembunyi dan 1 lapisan keluaran, dimana ada 100 sel lapisan tersembunyi dan 1 sel lapisan keluaran. Dari proses pelatihan didapat hasil maksimal pada iterasi 2408, error 1x105 dan konstanta belajar 0.01.

Kata kunci: Artificial Intelligence, Jaringan Saraf Tiruan, Backpropagation,


(14)

ABSTRACT

Artificial neural network is a branch of artificial intelligence which is designed to imitate the workings of the human brain. Artificial neural networks are able to predict and analyze a problem with the process of learning through changing the weight of its synapses. This study developed a neural network for detecting diseases of tobacco (Nicotiana tabacum L) occurring in the field. Method of training used is backpropagation training, which is a form of supervised training, input data for the system are the symtomps which occur in the field which consist of 11 variables. Targets generated by the system are 2, healthy plants or diseased plants. The network consists of three layers, an input layer, one hidden layer and an output layer. There are 100 neurons in the hidden layer and one neuron in the output layer. The optimal result was obtained with 2408 iterations with an error of 1x105 and a learning rate of 0.01.

Key words: Artificial Intelligence, Neural Networks, Backpropagation, Nicotiana tabacum L, Diseases of Tobacco (Nicotiana tabacum L),


(15)

BAB 1

PENDAHULUAN

1.1Latar Belakang

Otak manusia memiliki struktur yang sangat kompleks dan memiliki kemampuan yang sangat luar biasa. Otak terdiri dari neuron-neuron dan penghubung yang disebut sinapsis. Setiap neuron bekerja meneruskan sinyal yang diterima ke neuron yang lain dalam jumlah yang sangat besar sehingga dihasilkan sebuah informasi. Dengan sistem kerja neuron tersebut, otak mampu mengerjakan banyak hal seperti mengenali pola, melakukan penghitungan dan mengklasifikasikan data [12].

Pola yang terjadi di otak dipelajari dan disimulasikan cara kerjanya ke dalam bentuk sebuah generalisasi model matematis dari pemahaman manusia (human cognition) disebut jaringan saraf tiruan yang didasarkan pada asumsi:

1. Pemrosesan informasi terjadi pada elemen sederhana yang disebut neuron. 2. Sinyal dikirimkan di antara neuron-neuron melalui penghubung-penghubung. 3. Penghubung antarneuron memiliki bobot yang akan memperkuat atau

memperlemah sinyal.

4. Untuk menentukan output, setiap neuron menggunakan fungsi aktivasi (biasanya bukan fungsi linier) yang dikenakan pada jumlahan input yang diterima. Besarnya output ini selanjutnya dibandingkan dengan suatu batas ambang.

Jaringan saraf tiruan dengan kemampuan melakukan generalisasi atas contoh yang diperoleh dan mengabstraksi karakteristik, banyak digunakan oleh manusia


(16)

dalam menggeneralisasikan dari apa yang sudah ada sebelumnya atau yang diinputkan.

Jaringan saraf tiruan sangat diminati oleh banyak peneliti dengan alasan yang berbeda-beda. Para insinyur elektro menemukan berbagai macam aplikasi pada pemrosesan sinyal. Insinyur komputer tertarik dengan potensi hardware yang diimplementasikan pada jaringan saraf secara efektif dan aplikasinya pada bidang robotika. Sedangkan ahli ilmu komputer menemukan bahwa jaringan saraf menjanjikan solusi bagi masalah yang sulit seperti pada kecerdasan buatan dan pengenalan pola. Pada matematika aplikatif, jaringan saraf tiruan merupakan alat yang baik untuk masalah pemodelan dari hubungan antara variabel-variabel tertentu yang belum diketahui [3].

Tanaman tembakau (Nicotiana tabacum L) termasuk genus Nicotinae, serta familia Solanaceae[16]. Spesies-spesies yang mempunyai nilai ekonomis adalah

Nicotiana tabacum L dan Nicotianae rustica L dengan rincian sebagai berikut:

1. Nicotiana rustica Lmengandung kadar nikotin yang tinggi (max n = 16%) biasanya digunakan untuk membuat abstrak alkoloid (sebagai bahan baku obat dan insektisida), jenis ini banyak berkembang di Rusia dan India.

2. Nicotiana tabacum L mengandung kadar nikotin yang rendah (min n = 0,6%) jenis ini umumnya digunakan sebagai bahan baku pembuatan rokok.

Susunan taksonomi Nicotiana Tabacum Lditunjukkan sebagai berikut:

1. Famili : Solanaceae 2. Subfamili : Nicotianae 3. Genus : Nicotiana 4. Subgenus : Tabacum

Sebagaimana diketahui tanaman tembakau merupakan salah satu komoditi yang strategis dari jenis tanaman semusim perkebunan. Peran tembakau bagi masyarakat cukup besar, hal ini karena aktivitas produksi dan pemasarannya


(17)

melibatkan sejumlah penduduk untuk mendapatkan pekerjaan dan penghasilan. Berbagai jenis tembakau dengan berbagai kegunaannya diusahakan di Indonesia, baik oleh rakyat maupun oleh perusahaan, secara garis besar berdasarkan iklim tembakau yang diproduksi di Indonesia dapat dibagi antara lain:

1. Tembakau musim kemarau/Voor-Oogst (VO), yaitu bahan untuk membuat rokok putih dan rokok kretek.

2. Tembakau musim penghujan/Na-Oogst (NO), yaitu jenis tembakau yang dipakai untuk bahan dasar membuat cerutu maupun cigarillo, di samping itu juga ada jenis tembakau hisap dan kunyah.

Penerimaan negara dari komoditi tembakau sangat besar yaitu dari cukai dan setiap tahun terus meningkat, pada tahun 2007 sebesar 42 trilyun, tahun 2008 sebesar Rp50,2 trilyun dan tahun 2009 ditargetkan mencapai 52 trilyun, demikian juga pada periode 5 tahun terakhir devisa yang dihasilkan dari ekspor tembakau senilai US $100.627 (48.278 ton). Di samping itu komoditi tembakau juga merupakan komoditi yang kontroversial yaitu antara manfaat dan dampaknya terhadap kesehatan, sehingga dalam pengembangannya harus mengacu pada penyeimbangan supply dan demand,

peningkatan produktivitas dan mutu serta peningkatan peran kelembagaan petani.

Pada perkembangan tanaman tembakau ada dua faktor yang mempengaruhi tumbuh kembangnya tanaman tersebut, yaitu hama dan penyakit. Pengaruh kedua faktor tersebut dapat terlihat di lapangan dan dapat mempengaruhi kualitas produksi dari tembakau yang dapat merugikan petani tembakau.

Dengan kemampuan jaringan saraf tiruan untuk mempelajari inputan yang diberikan dan kemampuan untuk mengolah banyak data bahkan data yang belum diketahui sekalipun, dapat membantu mendeteksi penyakit tidak hanya pada manusia secara psikologi[6] namun juga pada tumbuhan seperti tembakau.


(18)

1.2Perumusan Masalah

Permasalahan yang akan dibahas dalam penelitian ini adalah bagaimana cara merancang suatu aplikasi yang berfungsi sebagai alat bantu dalam mendeteksi penyakit tanaman tembakau, yang hasilnya didasarkan pada basis pengetahuan mengenai jaringan saraf tiruan khususnya dengan metode backpropagation dan mengenai tembakau sebagai objek yang diteliti, yang dikumpulkan dan didapatkan dari berbagai sumber di antaranya buku serta pengalaman salah seorang pakar dengan melakukan wawancara dan kemudian disatukan ke dalam sebuah jaringan saraf tiruan untuk diproses dengan metode backpropagation.

1.3Batasan Masalah

Batasan masalah yang menjadi acuan dalam pengerjaan skripsi ini adalah:

1. Perancangan aplikasi untuk mendeteksi penyakit tembakau (Nicotiana tabacum L) dengan menggunakan metode backpropagation.

2. Variabel yang akan diberi bobot terdiri dari 11 variabel meliputi bentuk daun, warna daun, ada tidaknya bau daun, kondisi daun, ada tidaknya bercak pada daun, ada tidaknya bintik pada daun, bentuk batang, kondisi batang, warna batang, warna akar dan kondisi akar.

3. Aplikasi hanya membahas gejala penyakit tembakau yang tampak di lapangan. 4. Output dari aplikasi hanya ada 2 yaitu tanaman sehat dan tanaman berpenyakit. 5. Pelatihan jaringan dilakukan dengan menggunakan metode backpropagation. 6. Perancangan sistem pada penelitian ini menggunakan Matlab R2010a.

7. Perancangan aplikasi menggunakan 3 lapisan, lapisan input, lapisan tersembunyi dan lapisan output.


(19)

1.4Tujuan Penelitian

Tujuan penelitian ini adalah membuat suatu aplikasi yang dapat dipergunakan sebagai alat bantu mendeteksi penyakit tamanan tembakau (Nicotiana tabacum L) yang terjadi di lapangan.

1.5Manfaat Penelitian

Manfaat dari penelitian ini adalah:

1. Membantu praktisi lapangan pengelola perkebunan tembakau dalam hal penegakan pendeteksian penyakit tembakau yang terjadi di lapangan.

2. Membantu petani tembakau untuk mengetahui jenis penyakit tembakau dengan melihat gejala yang dialami tanaman.

1.6Metode Penelitian

Tahapan yang dilakukan dalam penelitian ini adalah:

1. Studi Literatur

Tahapan ini dilakukan dengan mempelajari sumber-sumber atau buku-buku referensi yang berkaitan dengan skripsi ini, baik dari text book atau internet.

2. Pengumpulan Data

Pada tahapan pengumpulan data ini dilakukan wawancara pada pakar untuk mengetahui bagaimana mendeteksi gejala awal penyakit tembakau di lapangan.

3. Analisis data

Tahapan ini dilakukan dengan menganalisis batasan-batasan tiap variabel sebagai indikator penentu penyakit tanaman tembakau yang diterapkan dengan metode


(20)

4. Perancangan Perangkat Lunak

Pada tahapan ini dilakukan gambaran sistem baik berupa diagram alir, masukan, keluaran, DFD (Data Flow Diagram), antarmuka dan struktur data.

5. Implementasi Aplikasi Penentuan jenis penyakit tanaman.

Pada tahapan ini dilakukan penerapan rancangan yang dibuat dalam suatu program.

6. Pengujian Aplikasi

Pada tahapan ini dilakukan pengujian akan perangkat lunak yang telah dibuat untuk mengetahui kesalahan dan memperbaiki kesalahan yang ada serta mengukur ketepatan output dari perangkat lunak terhadap keadaaan sebenarnya.

1.7Sistematika Penulisan

Sistematika penulisan skripsi ini terdiri dari lima bagian utama sebagai berikut:

BAB 1 : PENDAHULUAN

Bab ini menjelaskan mengenai latar belakang pemilihan judul skripsi “ Implementasi Jaringan Saraf Tiruan untuk Mendeteksi Penyakit Tembakau (Nicotiana tabacum L) dengan Metode Backpropagation ”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.

BAB 2 : LANDASAN TEORI

Bab ini membahas mengenai teori-teori yang berkaitan dengan perancangan sistem implementasi jaringan saraf tiruan untuk menentuan penyakit tembakau (Nicotiana tabacum L) dan teori lainnya yang mendukung pembuatan aplikasi.

BAB 3 : ANALISIS DAN PERANCANGAN SISTEM

Bab ini terdiri dari analisis sistem dan perancangan sistem untuk penentuan penyakit tembakau (Nicotiana tabacum L). Pada bagian analisis sistem dimuat uraian tentang


(21)

analisis data sistem dan komponen sistem. Pada bagian perancangan sistem, membahas tentang perancangan variabel yang akan diberi bobot sebagai neuron yang akan diolah dalam jaringan saraf tiruan untuk penegakan penyakit tembakau (Nicotiana tabacum L) dan perancangan form yang akan diimplementasikan pada sistem.

BAB 4 : IMPLEMENTASI DAN PENGUJIAN

Bab ini membahas bagaimana mengimplementasikan aplikasi yang telah dirancang ke dalam bahasa pemprograman dan menguji aplikasi yang telah dibangun.

BAB 5 : KESIMPULAN DAN SARAN

Bab ini memuat kesimpulan dari keseluruhan uraian bab-bab sebelumnya dan saran-saran yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya.


(22)

BAB 2

LANDASAN TEORI

2.1 Jaringan Saraf Tiruan (JST)

Saat ini, komputer modern dengan teknologi canggih merupakan sebuah kekuatan bagi perkembangan zaman. Meskipun demikian banyak hal yang masih tetap belum dapat diselesaikan dengan menggunakan komputer, baik karena algoritmanya yang belum diketahui ataupun walaupun algoritma penyelesaiannya sudah diketahui namun run time nya masih sangat lama. Hal inilah yang menjadi tantangan bagi para ahli untuk mendapatkan metode lain untuk memecahkan masalah ini, sehingga kegiatan manusia bahkan yang paling sederhana dapat dikerjakan secara komputasi. Cara kerja jaringan saraf manusia menjadi inspirasi untuk menyelesaikan masalah tersebut [5].

Minat yang sangat besar pada jaringan saraf tiruan yang terjadi baru-baru ini dapat disebabkan oleh beberapa faktor. Pertama, pola training yang telah dikembangkan menjadi sebuah model jaringan yang lebih pintar yang dapat mengatasi masalah. Kedua, komputer digital dengan kecepatan tinggi membuat simulasi proses jaringan lebih mudah dikerjakan. Ketiga, teknologi zaman sekarang menyediakan hardware yang spesifikuntuk jaringan saraf. Bagaimanapun, pada saat yang bersamaan perkembangan pada komputasi tradisional telah membuat pembelajaran jaringan saraf tiruan lebih mudah, keterbatasan yang dihadapi oleh komputer tradisional telah memotivasi beberapa arah dari penelitian mengenai jaringan saraf tiruan [3].


(23)

2.1.1 Pengertian Jaringan Saraf Tiruan

Jaringan saraf tiruan merupakan implementasi dari teknologi artificial intelligence. Jaringan saraf tiruan adalah salah satu representasi buatan dari otak manusia yang selalu mencoba untuk mensimulasikan proses pembelajaran pada otak manusia tersebut [9]. Istilah buatan digunakan karena jaringan saraf ini diimplementasikan dengan menggunakan program komputer yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran. Jaringan saraf tiruan merupakan sistem pemroses informasi yang memiliki karakteristik mirip dengan jaringan saraf biologi [14]. Menurut Subiyanto [16], jaringan saraf tiruan adalah membuat model sistem komputasi yang dapat menirukan cara kerja jaringan saraf biologi.

Secara umum Haykin [4] mendefinisikan sebuah jaringan saraf tiruan adalah sebuah mesin yang dirancang untuk mempolakan cara bagaimana otak mengerjakan sebuah fungsi tertentu. Jaringan biasanya diimplementasikan dengan menggunakan komponen elektronika atau disimulasikan dalam sebuah perangkat lunak pada komputer digital. Untuk mencapai tampilan yang baik, jaringan saraf tiruan memakai interkoneksi yang sangat besar antara sel-sel komputasi yang disebut “neuron” atau “unit pemroses”. Sebagai mesin yang adaptif, sebuah jaringan saraf tiruan adalah sebuah prosessor besar terdistribusi yang paralel yang tersusun dari unit pemroses sederhana yang mempunyai kecenderungan untuk menyimpan pengalaman dan pengetahuan dan membuatnya siap untuk digunakan. Hal itu menyerupai otak dalam dua aspek:

1. Pengetahuan dibutuhkan oleh jaringan dari lingkungannya melalui proses pembelajaran.

2. Kekuatan koneksi interneuron, dikenal sebagai bobot sinapsis, digunakan untuk menyimpan pengetahuan yang dibutuhkan.

Menurut Fausett [3] sebuah jaringan saraf tiruan adalah sistem pemroses informasi yang mempunyai karakter tampilan tersendiri yang hampir sama dengan jaringan saraf pada biologi. Jaringan saraf tiruan telah dikembangkan sebagai generalisasai model matematika dari jaringan saraf biologi, berdasarkan asumsi:


(24)

1. Pemrosesan informasi terjadi pada elemen sederhana yang disebut neuron. 2. Sinyal dilewatkan antarneuron melalui link penghubung.

3. Setiap link penghubung mempunyai sebuah bobot dimana pada jaringan saraf tertentu bobot digandakan oleh sinyal yang dipancarkan.

4. Setiap neuron menggunakan fungsi aktivasi (biasanya nonlinear) pada jaringan inputnya (penjumlahan bobot sinyal input) untuk menentukan sinyal output.

Jaringan saraf tiruan dikarakteristikkan dengan pola koneksi antarneuron yang disebut arsitektur, metode penentuan bobot pada setiap koneksinya (yang disebut

training atau learning, algoritma) dan fungsi aktivasinya [10].

Jaringan saraf terdiri dari elemen pemroses sederhana yang dinamakan neuron, unit, sel atau node. Setiap neuron terkoneksi dengan neuron yang lain masing-masing dengan bobot terhubung. Bobot merepresentasikan informasi yang digunakan oleh jaringan untuk menyelesaikan masalah. Jaringan saraf dapat diaplikasikan untuk masalah yang sangat luas, seperti penyimpanan dan pemanggilan kembali data atau pola, mengklasifikasian pola, menampilkan pemetaan secara umum dari pola input menjadi pola output, mengelompokkan pola yang sama, atau menemukan solusi untuk mengoptimisasikan masalah [12].

Setiap neuron mempunyai fungsi aktivasi atau level aktivitas, yang merupakan fungsi dari input yang telah diterima. Neuron mengirimkan aktivasinya sebagai sebuah sinyal ke beberapa neuron yang lain. Sebuah neuron hanya dapat mengirimkan sebuah sinyal dalam satu waktu, walaupun sinyalnya disebarkan pada beberapa neuron yang lain.

Ciri utama yang dimiliki oleh jaringan saraf tiruan adalah kemampuannya untuk belajar. Belajar (learning) pada jaringan saraf tiruan dapat diartikan sebagai proses penyesuaian parameter pembobot karena keluaran yang diinginkan tergantung pada harga pembobot interkoneksi yang dimiliki oleh sel. Proses belajar akan dihentikan jika nilai kesalahan atau error sudah dianggap cukup kecil untuk semua


(25)

pasangan data latihan. Jaringan yang sedang melakukan proses belajar disebut berada dalam tahap latihan (training). Pada tahap awal pelatihan ini perlu dilakukan terlebih dahulu sebelum melakukan pengujian suatu objek [21].

Berdasarkan tingkat kemampuannya, jaringan saraf tiruan dapat diterapkan pada beberapa aplikasi yang cocok bila diterapkan pada klasifikasi pola, yakni memilih suatu input data ke dalam suatu kategori tertentu yang diterapkan. Di samping itu jaringan saraf tiruan dapat diterapkan pada prediksi dan self organizing, yakni menggambarkan suatu obyek secara keseluruhan hanya dengan mengetahui bagian dari obyek lain dan memiliki kemampuan untuk mengolah data-data tanpa harus memiliki data sebagai target. Selanjutnya jaringan saraf tiruan juga mampu diterapkan pada masalah optimasi, yakni mencari jawaban atau solusi terbaik dari suatu masalah [1].

Prosedur yang digunakan untuk menampilkan proses pembelajaran disebut algoritma pembelajaran yang fungsinya memodifikasi bobot sinapsis pada jaringan dalam sebuah cara yang teratur untuk mencapai rancangan objek yang diinginkan. Modifikasi bobot sinapsis menyediakan sebuah metode untuk merancang jaringan saraf tiruan. Seperti sebuah pendekatan yang mendekati teori linear adaptif, yang telah didirikan dan sukses diaplikasikan pada bermacam-macam bidang. Bagaimanapun, sangat mungkin bagi jaringan saraf tiruan untuk memodifikasi topologinya sendiri yang dimotivasi dengan fakta bahwa neuron pada otak manusia dapat mati dan koneksi sinapsis baru dapat bertumbuh [4].

Kemampuan JST untuk belajar dan memperbaiki dirinya telah menghasilkan banyak algoritma atau aturan belajar alternatif yang dapat digunakan, dari sekian banyak aturan yang ada, yang paling sering digunakan adalah aturan belajar

backpropagation yang termasuk kategori supervised learning yang dapat digunakan memperbaiki kinerja jaringan saraf tiruan [19].


(26)

2.1.2 Manfaat Jaringan Saraf Tiruan

Sangat jelas jika sebuah jaringan saraf tiruan mendapatkan kekuatan komputasinya melalui stuktur distribusi paralel yang sangat besar dan kemampuannya untuk belajar dan menggeneralisasikan data. Generalisasi merujuk pada jaringan saraf tiruan yang menghasilkan output yang sesuai walaupun input belum pernah ditemukan sebelumnya selama pembelajaran (training). Kemampuan memproses informasi yang seperti inilah yang memungkinkan jaringan saraf tiruan mampu mencari solusi atas masalah dalam skala yang besar dan sulit. Dalam prakteknya, jaringan saraf tiruan tidak dapat menyediakan solusi dengan bekerja sendiri. Jaringan saraf tiruan harus diintegrasikan ke dalam sebuah sistem yang konsisten dengan keahlian teknik, khususnya pada masalah yang kompleks [4]. Jaringan saraf tiruan menawarkan kemampuan sebagai berikut:

1. Nonlinearity. Sebuah neuron buatan bisa saja linear atau tidak linear. Jaringan saraf tiruan yang terdiri dari interkoneksi neuron yang nonlinear yang membuat jaringan saraf tersebut nonlinear. Ketidaklinearan adalah sifat yang sangat penting secara khusus jika mekanisme fisik yang berperan untuk membangkitkan sinyal input bersifat nonlinear.

2. Input-output mapping. Sebuah paradigma populer dari pembelajaran disebut

learning with a teacher (belajar dengan guru) atau supervised learning

(pembelajaran terbimbing) yang melibatkan modifikasi bobot sinapsis jaringan saraf tiruan dengan mengaplikasikan kumpulan sampel training. Setiap contoh terdiri dari sebuah input signal yang sangat unik dan respon yang diinginkan. Jaringan dipresentasikan dengan sebuah contoh yang diambil secara acak, dan bobot sinapsis (parameter bebas) dari jaringan, dimodifikasikan untuk meminimalisasi perbedaan antara hasil yang diinginkan dengan hasil yang sebenarnya yang dihasilkan oleh jaringan dengan sinyal input sesuai dengan kriteria statistika. Pelatihan jaringan diulangi sampai mencapai kondisi dimana tidak ada perubahan yang signifikan pada bobot sinapsis.


(27)

3. Adaptivity. Neural network memiliki kemampuan untuk menyesuaikan bobot sinaptik mereka terhadap perubahan pada lingkunganya. Secara khusus, jaringan saraf dilatih untuk beroperasi pada lingkungan tertentu terlebih dalam menghadapi perubahan kecil yang terjadi dalam kondisi lingkungan operasi. Arsitektur alami jaringan saraf untuk klasifikasi pola, pemrosesan sinyal dan aplikasi kontrol, ditambah dengan kemampuan adaptif jaringan, membuatnya menjadi alat yang berguna dalam klasifikasi pola adaptif, pengolahan kemampuan adaptif dan kontrol adaptif. Secara umum, dapat dikatakan bahwa semakin adaptif kita membuat sebuah sistem memastikan bahwa sistem akan semakin stabil dan semakin kuat daya gunanya ketika sistem diperlukan untuk beroperasi di lingkungan nonstasioner. Harus ditekankan, bagaimanapun adaptivitas tidak selalu menimbulkan kekuatan, sebaliknya dapat berlawanan. Misalnya. sistem adaptif dengan konstanta waktu yang singkat cenderung untuk merespon gangguan palsu, menyebabkan penurunan drastis pada kinerja sistem.

4. Evidential Response. Dalam konteks klasifikasi pola, jaringan saraf dapat dirancang untuk memberikan informasi tidak hanya tentang pola yang khusus, tetapi juga kepercayaan (confidence) tentang keputusan yang dibuat. Informasi yang terakhir ini dapat digunakan untuk menolak pola ambigu, dengan demikian meningkatkan kinerja klasifikasi jaringan.

5. Contextual Information. Pengetahuan direpresentasikan oleh struktur dan aktivasi dari jaringan saraf. Setiap neuron dalam jaringan berpotensi dipengaruhi oleh aktivitas global semua neuron lain dalam jaringan. Akibatnya, informasi kontekstual ditangani dengan secara alami oleh jaringan saraf.

6. Fault Tolerance. Jaringan saraf yang diimplementasikan pada bentuk

hardware, memiliki potensi untuk bersifat fault tolerant (toleran terhadap kesalahan), dalam arti bahwa kinerjanya menurun dalam kondisi operasi buruk. Contohnya, jika neuron atau link penghubung rusak, pemanggilan pola


(28)

yang tersimpan akan terganggu kualitasnya. Berhubungan dengan sifat distribusi informasi yang tersimpan dalam jaringan, kerusakan harus segera diperbaiki sebelum respon keseluruhan jaringan menurun secara drastis. Pada prinsipnya, sebuah jaringan saraf menunjukkan penurunan dalam kinerjanya. Ada beberapa bukti empiris untuk komputasi yang kuat, tetapi biasanya hal ini tidak terkendali. Untuk memastikan bahwa jaringan saraf toleran terhadap kesalahan, mungkin perlu untuk membuat pengukuran korektif dalam merancang algoritma yang digunakan untuk melatih jaringan.

 

7. VLSI Implementability. Sifat dasar dari jaringan saraf tiruan yang paralel membuatnya berpotensi untuk mengkomputasikan tugas-tugas tertentu dengan cepat. Fitur yang sama ini membuat jaringan saraf tiruan tepat pada implementasi penggunaan teknologi VLSI (very large scale integrated). Salah satu manfaat dari VLSI adalah menyediakan sebuah cara untuk mendapatkan sebuah tingkah laku yang kompleks dalam sebuah kebiasaan yang hirarki.

8. Uniformity of Analysis and Design. Pada dasarnya, jaringan saraf tiruan dikenal sebagai pemroses informasi. Dikatakan demikian sama dengan notasi yang digunakan pada semua domain yang melibatkan aplikasi jaringan saraf tiruan. Fitur ini memanifestasikan dirinya dengan cara yang berbeda:

a. Neuron, antara satu dengan yang lain, merepresentasikan sebuah bahan yang sama terhadap semua jaringan saraf tiruan.

b. Keadaan yang sama ini membuat jaringan saraf tiruan mungkin untuk berbagi teori dan algoritma pembelajaran dalam aplikasi yang berbeda. c. Jaringan modular dapat dibangun melalui integrasi tanpa hubungan pada

modul-modul.

9. Neurobiological Analogy. Rancangan jaringan saraf tiruan dianalogikan dengan otak manusia, yang merupakan bukti nyata bahwa toleransi terhadap kesalahan pada pemrosesan paralel tidak hanya mungkin tetapi juga cepat dan kuat.


(29)

2.1.3 Struktur Dasar Jaringan Saraf Tiruan

Out m Out

2 Out

1

Internal processing

In 1 In 1 In n

Gambar 2.1 Jaringan Feedforward

Gambar 2.1 diatas mengilustrasikan struktur jaringan saraf tiruan secara umum. Biasanya terdapat satu atau lebih masukan. Gambar di atas juga menunjukkan bahwa neuron input terkoneksi dengan neuron output melalui sebuah proses dalam “kotak”. Model jaringan yang sebenarnya menentukan sifat dari kotak ini. Susunan ini sangat umum, namun bukanlah satu-satunya. Beberapa model menghilangkan media penghubung dan langsung menghubungkan neuron input dengan neuron output.

Dalam kasus ini, seluruh beban dari jaringan diambil alih oleh proses yang dikerjakan oleh neuron output. Model yang lain memperbolehkan neuron output terkoneksi satu sama lain sabagaimana dengan lapisan sebelumnya. Hanya model lain tidak membedakan secara jelas antara neuron input dan neuron output. Jika neuron masukan telah masuk, jaringan mengolah neuron sampai kepada sebuah kesimpulan dimana neuron input telah menjadi neuron output.

Sebuah jaringan saraf tiruan biasanya dilatih dalam dua metode. Yang paling umum adalah pelatihan terbimbing (supervised training). Setiap contoh pada pelatihan ini secara lengkap menspesifikasikan semua input sebagaimana output yang diinginkan ketika input direpresentasikan. Kemudian kita memilih subset dari


(30)

pelatihan dan merepresentasikan contoh pada subset pada jaringan pada waktu yang sama. Untuk setiap contoh, kita membandingkan output yang dihasilkan jaringan dengan output yang kita harapkan untuk dihasilkan. Setelah semua subset pelatihan telah diproses, kita memperbaharui bobot yang mengkoneksikan neuron dalam jaringan. Pembaharuan ini dilakukan dengan harapan mengurangi error pada hasil jaringan.

Metode pelatihan lain adalah pelatihan tak terbimbing (unsupervised training). Sebagaimana pelatihan terbimbing, kita juga harus memasukkan contoh input. Tetapi tidak menyediakan output target untuk jaringan. Diasumsikan setiap input berasal dari kelas yang berbeda-beda, dan output jaringan adalah identifikasi dari kelas dimana input berasal. Proses dari pelatihan yaitu, menemukan fitur yang menonjol pada pelatihan dan menggunakannya untuk mengelompokkan input dalam kelas-kelas dan menemukan perbedaannya. Pelatihan tak terbimbing biasanya tidak digunakan sepopuler pelatihan terbimbing.

Dan yang ketiga adalah metode pelatihan hibrid. Gabungan antara pelatihan terbimbing dan tak terbimbing. Tak terbimbing dikarenakan output target tidak dispesifikasikan. Disebut terbimbing dikarenakan pada waktu yang bersamaan, jaringan memberikan respon pada pelatihan dimana responnya baik atau buruk.

Sangat sulit melatih sebuah jaringan dan langsung menggunakannya. Kompetensinya harus diuji terlebih dahulu. Proses pengujian sebuah pelatihan disebut validasi. Pelatihan digunakan untuk melatih jaringan sedangkan validasi digunakan untuk menguji jaringan yang telah dilatih. Validasi tidak dapat diangggap remeh. Dalam banyak bidang, validasi yang baik lebih penting daripada pelatihan yang baik.


(31)

2.1.4 Arsitektur Jaringan

Menurut Fausett [3], sering kali sangat tepat memvisualisasikan neuron sebagai lapisan. Umumnya, neuron-neuron pada lapisan yang sama berkelakuan sama. Faktor kunci untuk menentukan perilaku dari sebuah neuron adalah dengan fungsi aktivasinya dan pola koneksi dengan neuron yang lain sehingga neuron dapat mengirim dan menerima sinyal. Lebih spesifik lagi, pada banyak jaringan saraf tiruan, neuron pada sebuah lapisan bisa saja terkoneksi sepenuhnya atau tidak terkoneksi sama sekali. Jika setiap neuron pada sebuah lapisan (misalkan lapisan tersembunyi/hidden layer) terkoneksi dengan neuron pada lapisan yang lain (misalkan lapisan output) maka setiap unit tersembunyi terkoneksi dengan setiap unit output.

Penyusunan neuron pada lapisan-lapisan dan pola koneksinya dalam dan antarlapisan disebut arsitektur jaringan. Banyak jaringan memiliki lapisan input yang aktivasi dari setiap unitnya sama dengan sinyal input external. Jaringan saraf diklasifikasikan sebagai lapisan tunggal dan lapisan banyak. Dalam menentukan jumlah dari lapisan, unit input tidak terhitung sebagai lapisan karena unit tersebut tidak melakukan proses komputasi. Atau bisa dikatakan bahwa jumlah lapisan pada jaringan ditentukan berdasarkan lapisan yang berisikan bobot antar koneksi dari kumpulan neuron-neuron. Hal inilah yang mendasari bahwa bobot pada jaringan saraf berisikan informasi yang sangat penting.

Sebuah lapisan adalah kumpulan dari neuron-neuron yang berbagi input yang sama. Setiap neuron pada sebuah lapisan mempunyai dendrit yang berhubungan dengan axon pada neuron pada lapisan sebelumnya. Lapisan pertama sebagai lapisan input dimana neuron tidak mempunyai dendrit. Neuron tersebut hanya sebagai

placeholder atau penopang sehingga lapisan berikutnya dapat menyadap nilai inputnya sama dengan cara kerja lapisan berikutnya. Lapisan terakhir merupakan lapisan output. Lapisan diantara lapisan input dan lapisan output disebut lapisan tersembunyi atau “hidden layer”. Lapisan pertama hanya memberikan nilai input pada jaringan. Pada lapisan berikutnya, neuron ditugasi untuk mengidentifikasi karakter dari input [8]. Adapun jenis arsitektur jaringan yang sering dipergunakan yaitu:


(32)

1. Jaringan berlapis tunggal

Jaringan berlapis tunggal mempunyai satu lapisan bobot terkoneksi. Pada lapisan ini, unit input dapat dibedakan dengan unit output. Dimana unit input merupakan unit yang menerima sinyal dari dunia luar sedangkan unit output adalah unit dimana respon dari jaringan dapat terlihat. Pada Gambar 2.2 jelas terlihat bahwa unit input sepenuhnya terkoneksi dengan unit output, sedangkan unit input dengan masing-masing unit input tidak terkoneksi demikian juga pada antara unit output dengan unit output yang lain tidak terkoneksi.

Gambar 2.2 Topologi jaringan lapis tunggal

2. Jaringan berlapis banyak

Jaringan berlapis banyak adalah jaringan dengan satu atau lebih lapisan diantara lapisan input dan lapisan output yang biasa disebut lapisan tersembunyi (hidden layer). Jaringan berlapis banyak dapat memecahkan masalah yang lebih kompleks daripada jaringan berlapis tunggal, namun pada pelatihannya akan lebih sulit. Pada beberapa kasus, pelatihan pada jaringan ini lebih baik karena memungkinkan bagi jaringan untuk memecahkan masalah yang tidak dapat

X

Y

X

Yj Xi

Y W1j

Wi1

Wn1

W1j

Wij

Wnj

W1

Wim


(33)

diselesaikan jaringan berlapis tunggal karena jaringan tidak dapat dilatih untuk menampilkan secara benar.

W11

X 1

Y 1

V11

Wj1 Vi1

Z1

Gambar 2.3 Topologi jaringan berlapis banyak

3. Jaringan dengan lapisan kompetitif

Bentuk lapisan kompetitif merupakan jaringan saraf tiruan yang sangat besar. Interkoneksi antarneuron pada lapisan ini tidak ditunjukkan pada arsitektur seperti jaringan yang lain. Prinsip dari prosesnya adalah winner-take-all atau yang menanglah yang mengambil bagiannya.

Y m Z

Zj

Xi Y

k

Wn1 Vn1

V1j W1k

Vij Wjk

Vnj

Wnk V1p

Vip W1m

Wjm

X

Vnp


(34)

1 1

Gambar 2.4 Topologi Jaringan dengan Lapisan Kompetitif

2.2 Backpropagation

Jaringan saraf tiruan backpropagation pertama kali diperkenalkan oleh Rumelhart, Hinton dan William pada tahun 1986, kemudian Rumelhart dan Mc Clelland mengembangkannya pada tahun 1988[14]. Algoritma backpropagation untuk neural network umumnya diterapkan pada perceptron berlapis banyak (multilayer perceptrons). Perceptron paling tidak mempunyai bagian input, bagian output dan beberapa lapis yang berada di antara input dan output. Lapis di tengah ini, yang juga dikenal dengan lapis tersembunyi (hidden layers), bisa satu, dua, tiga dst. Dalam praktek, banyaknya hidden layer paling banyak adalah tiga lapis. Dengan tiga lapis ini hampir semua permasalahan dalam dunia industri telah bisa diselesaikan. Outputlapis terakhir dari hidden layer langsung dipakai sebagai outputdari neural network.

Training pada metode backpropagation melibatkan 3 tahapan: pola training

feedfoward, penghitungan error dan penyesuaian bobot. Setelah training aplikasi jaringan hanya menggunakan komputasi tahapan pertama yaitu feedfoward. Walaupun tahap training sangat lambat, namun jaringan dapat mengasilkan output dengan sangat cepat. Metode backpropagation telah divariasikan dan dikembangkan untuk meningkatkan kecepatan proses training. Walaupun satu lapisan jaringan sangat

A1 - Am

Aj

Ai

- -

-1 1


(35)

-terbatas dalam pembelajarannya, jaringan dengan lapis banyak dapat memperlajari lebih banyak lagi. Lebih dari satu lapisan tersembunyi mungkin bermanfaat untuk beberapa aplikasi, namun satu lapisan tersembunyi adalah cukup.

Metode backpropagation dapat digunakan untuk melakukan pendeteksian suatu jenis penyakit, gangguan, maupun kasus yang memiliki data masa lalu dan dengan metode backpropagation target output yang diinginkan lebih mendekati ketepatan dalam melakukan pengujian karena terjadi penyesuaian nilai bobot dan bias yang semakin baik pada proses pelatihan (Kusumadewi, 2003). Bahkan, jaringan saraf tiruan telah digunakan untuk menganalisa perilaku panas pada kultur jaringan. Pada tahun 1997, prinsip plant speaking digunakan untuk memonitor perkembangan tanaman selada di phytotron dimana jaringan saraf tiruan digunakan sebagai otak untuk mengendalikan pemberian air dan unsur hara untuk pertumbuhannya[15]. Selain itu jaringan saraf tiruan dengan metode backpropagation, juga diterapkan dalam lokalisasi target through-the-wall dengan metode time reversal music dan terbukti sangat efisien secara komputasi [21]

2.2.1 Arsitektur Jaringan Backpropagation

Gambar 2.5 menunjukkan jaringan saraf tiruan banyak lapis dengan satu lapisan tersembunyi (unit Z) , unit output (unit Y) dan unit tersembunyi yang juga mempunyai bias. Bias pada unit output Yk ditandai dengan w0k, bias pada unit tersembunyi Zj ditandai dengan v0j. Bias bertindak sebagaimana halnya bobot dimana outputnya selalu 1. Selama proses pembelajaran backpropagation, sinyal dikirim dalam arah yangberlawanan.


(36)

Y1 Yk Ym

w01 w11 wj1 wp1 w0k w1k wjk wpk w0m w1m wjm wpm

Z1 Zj Zp

X1 Xi Xn

v01 v11 vi1 vn1 v0j v1j vij vnj v0p v1p vip vnp 1

1

Gambar 2.5 Topologi Jaringan Backpropagation

Simbol-simbol yang digunakan ini tidaklah mutlak, bisa saja berganti dengan simbol-simbol yang lainnya asalkan fungsi logika yang dimaksudkannya tetap sama.

2.2.2 Algoritma

Algoritma pelatihan jaringan backpropagation: 1. Langkah 0 : Inisialisasi bobot.

2. Langkah 1 : Selama kondisi berhenti bernilai salah, kerjakan: a. Untuk masing-masing pasangan pelatihan, lakukan:

1) Masing-masing unit input (Xi, i = 1,2,3,…,n) menerima sinyal xi dan meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di atasnya (lapisan tersembunyi).

2) Masing-masing unit tersembunyi (Zj, j = 1,2,3,..p) menjumlahkan sinyal-sinyal input berbobot:


(37)

Gunakan fungsi aktivasi untuk menghitung sinyal outputnya:

Zj = (Z_inj)

Kirimkan sinyal tersebut ke semua unit lapisan atasnya (unit-unit output).

3) Masing-masing unit output (Yk, k=1,2,3,…,m) menjumlah sinyal-sinyal input berbobot:

Y_ink = w0k + Zjwjk w0 = bias ; v = bobot Gunakan fungsi aktivasi untuk menghitung sinyal outputnya:

Yk = (Y_ink)

Dan kirimkan sinyal tersebut ke semua unit di lapisan sisanya (unit-unit output).

b. Untuk masing-masing pasangan pelatihan, lakukan:

Backpropagation (perambatan mundur):

1) Masing-masing unit output (Yk,k = 1,2,3,…,m) menerima target pola yang berhubungan dengan pola input pembelajaran, hitung informasi errornya

δk = (tk – Yk) ’ (Y_ink) t = target output

Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperoleh nilai wjk):

Δwjk = αδkZj α = learning rate

Hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai w0k):

Δw0k = αδk

Kirimkan ini ke unit-unit yang ada di lapisan bawahnya.

2) Masing-masing unit tersembunyi (Zj, j=1,2,3,…,p) menjumlahkan delta inputnya (dari unit-unit yang berada pada lapisan diatasnya):

δ_inj = δkwjk

Kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error:


(38)

δj = δ_inj (Z_inj)

Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai vij):

Δvij = αδkXi

Hitung koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai vij)

Δv0j = αδj c. Perbaharui bobot dan biasnya:

1) Masing-masing unit output (Yk, k=1,2,3,…m) memperbaiki bias dan bobotnya (j = 1,2,3,…p):

wjk(baru) = wjk(lama) + Δwjk (bobot) w0k(baru) = w0k(lama) + Δw0k (bias)

2) Masing-masing unit tersembunyi (Zj, j=1,2,3,…p) memperbaiki bias dan bobotnya (l = 0,1,2,3,…n):

vij(baru) = vij(lama) + Δvij (bobot) v0j(baru) = v0j(lama) + Δv0j (bias) d. Tes kondisi berhenti.

Setelah algoritma pelatihan di atas dilakukan, dan didapat output yang paling mendekati target, maka bobot dan bias akhir dari pelatihan disimpan dan dilakukan proses pengujian. Algoritma pengujian jaringan backpropagation:

1. Langkah 0 : inisialisasi bobot (dari algoritma pelatihan)

2. Langkah 1 : untuk setiap vektor masukan, lakukan langkah 2-4. 3. Langkah 2 : for i=1...n: atur aktivasi unit masukan x

4. Langkah 3 : for j=1...p

Z_inj = v0j + Xivij Zj = (Z_inj) 5. Langkah 4 : for k=1..m:


(39)

Y_ink = w0k + Yk = (Y_ink) 6. Langkah 5 : jika Yk ≥ 0.5 maka Yk = 1, else Yk = 0.

Sekali pelatihan subset dengan pembaharuan bobot jaringan disebut epoch. Banyaknya contoh pada subset disebut epoch size/ukuran epoch. Beberapa peneliti menggunakan sebuah epoch bernilai satu yang berarti bobot diperbaharui setelah setiap kasus pelatihan ditampilkan. Ketika ukuran epoch lebih kecil dari seluruh pelatihan, maka subset dipilih secara acak setiap waktunya atau gangguan bisa saja terjadi. Epoch pelatihan diulang sampai hasil dari jaringan memuaskan atau sampai waktunya berakhir.

Keterangan:

1. x input pelatihan, x = (x1. . .xi. . .xn)

2. t output target, t = (t1. . .tk. . .tm)

3. δk penyesuaian bobot dari koreksi error untuk wjk yang disebabkan oleh error pada unit output Yk yang dipropagasikan kembali terhadap lapisan tersembunyi.

4. δj penyesuaian bobot dari koreksi error untuk vij yang disebabkan oleh propagasi balik dari informasi error dari lapisan output terhadap lapisan tersembunyi Zj.

5. α periode pembelajaran / learning rate.

6. xi input unit i. Untuk unit input, sinyal input dan sinyal output adalah sama, yaitu xi.

7. voj bias pada unit tersembunyi j. 8. Zj unit tersembunyi j.

9. w0k bias pada unit output k. 10. Yk unit output k.


(40)

Fungsi aktivasi pada jaringan backpropagation harus mempunyai beberapa karakteristik penting, berlanjut (continue), dapat dibedakan, dan tidak meningkat secara monoton. Demi keefisiensian komputasi, diharapkan turunan dari fungsi tersebut mudah untuk dikomputasikan. Fungsi diharapkan memenuhi pendekatan nilai maksimum dan nilai minimum.

Fungsi-fungsi aktivasi yang umum di gunakan menurut Fausett[2] adalah:

1. Fungsi Identitas

Fungsi identitas disebut juga sebagai fungsi linear. Fungsi linear memiliki nilai output yang sama dengan nilai inputnya. y = x

Gambar 2.6 Fungsi Identitas (Linear)

 

f xx

untuk semua harga x

Fungsi ini biasanya digunakan pada unit input untuk memberi nilai awal harga setiap unitnya.

2. Fungsi Tangga Binary


(41)

Gambar 2.7 Fungsi Tangga Binary

Neural network berlapis tunggal sering menggunakan fungsi tangga untuk mengkonversi unit input, di mana nilai variabelnya bersifat kontinu yang menghasilkan nilai output bernilai biner (yaitu 1 atau 0) atau bipolar (1 atau -1). Fungsi tangga binary ini juga dikenal sebagai fungsi threshold atau fungsi heaviside.

1 0

jika x y

jika x  

 

 

3. Fungsi Symetric Hard Limit

Berfungsi mengkonversikan input dari suatu variabel yang bernilai kontinyu ke suatu outputberupa nilai 1,0 atau -1.

1 0

1 0

jika x y

jika x

 

 

Gambar 2.8 Fungsi Symetric Hard Limit.

4. Fungsi Sigmoid Binary

Fungsi sigmoid (kurva dengan bentuk S) adalah fungsi aktivasi yang berguna. Fungsi

sigmoid yang umum adalah fungsi logistik dan fungsi tangent hyperbolic. Kedua fungsi ini bermanfaat khususnya untuk penggunaan neural network karena hubungan yang sederhana antara nilai fungsi pada sebuah point dan nilai dari derivatif pada point itu mengurangi hambatan komputasi selama training.


(42)

Gambar 2.9 Fungsi Sigmoid Binary.

Untuk fungsi logistik yang memiliki range 0 sampai 1, sering di gunakan untuk menghasilkan output yang diinginkan bernilai binary atau berada pada interval 0 dan 1. Fungsi dengan range ini juga dikenal dengan binary sigmoid.

 

1

 

1 exp f x x    

 

 

 

' 1

f x  f xf x

5. Fungsi Sigmoid Bipolar

Fungsi sigmoid bipolar adalah fungsi logistik yang memiliki range output dari -1 sampai 1.

Gambar 2.10 Fungsi Sigmoid Bipolar.

 

 

 

 

 

1 2 1 1 exp 1 exp 1 exp

g x f x

x x x    1           

 

 

 

' 1 1

2


(43)

Fungsi bipolar sigmoid erat kaitannya dengan fungsi tangent hyperbolic, yang sering juga di gunakan sebagai fungsi aktivasi ketika range output yang di inginkan bernilai -1 sampai dengan 1.

6. Fungsi Saturating Linear

Fungsi dirumuskan sebagai berikut:

1 0

0.5 0.5 0.5

0 0

jika x

y x jika x

jika x

 

    

 

.5

.5

Gambar 2.11 Fungsi saturating linear.

7. Fungsi Symetric Saturating Linear

Fungsi dirumuskan sebagai berikut:

1 1

1

1 1

jika x

y x jika x

jika x

 

1

  

  


(44)

8. Fungsi Invers Sigmoid Bipolar

Fungsi merupakan invers Sigmoid Bipolar umum dipakai untuk recurrent network

misal model jaringan Hopfield (Haykin,1999).

Gambar 2.13 Fungsi Invers Sigmoid Bipolar

9. Fungsi Tangent Hyperbolic

 

 

 

 

 

 

 

exp exp

exp exp

1 exp 2 1 exp 2

x x

h x

x x

x x

 

 

 

 

 

 

 

' 1 1

h x   h x   h x

2.2.4 Bobot dan Bias

Pemilihan bobot dan bias akan mempengaruhi apakah jaringan mencapai error

minimum global atau error minimum lokal, dan bagaimana mengatasinya dengan cepat. Pembaharuan bobot antara dua unit bergantung pada turunan aktivasi fungsi unit di atasnya dan aktivasi fungsi unit di bawahnya. Dalam hal ini, sangat penting menghindari pemilihan bobot dan bias yang membuat fungsi aktivasi atau turunannya mendekati nol. Nilai inisialisasi bobot tidak dapat terlalu besar atau sinyal input terhadap unit tersembunyi atau unit output akan jatuh di wilayah dimana turunan fungsi sigmoid mempunyai nilai yang sangat kecil. Dengan kata lain, jika inisialisasi


(45)

bobot terlalu kecil, input jaringan terhadap unit tersembunyi dan unit output akan mendekati nol dan menyebabkan proses pembelajaran yang sangat lambat.

Prosedur yang umum untuk menginisialisasi bobot dan bias adalah dengan membuat nilai acak dengan range -0,5 dan 0,5 atau -1 dan 1 atau interval lain yang sesuai. Nilai bobot mungkin saja positif atau negatif karena nilai akhirnya setelah pelatihan dapat berubah tanda. Modifikasi sederhana untuk inisialisasi acak dikembangkan oleh Nguyen dan Widrow.

Pada inisialisasasi Nguyen dan Widrow, modifikasi inisialisasi bobot secara acak biasanya menghasilkan pelatihan yang lebih cepat. Pendekatannya berdasarkan analisi geometris respon neuron tersembunyi terhadapt sebuah input, analisis dilanjutkan pada kasus untuk beberapa input dengan menggunakan tranfromasi fourier. Bobot dari unit tersembunyi terhadap unit output (dan bias pada unit output) diinisialisasikan dengan acak antara nilai -0.5 dan 0.5.

Inisialisasi bobor dari unit input ke unit tersembunyi dirancang untuk meningkatkan kemampuan unit tersembunyi untuk belajar diselesaikan dengan mendistribusikan bobot dan bias sehingga untuk setiap pola input berada dalam rentang dimana neuron tersembunyi akan belajar dengan cepat. Definisi yang digunakan adalah:

n jumlah unit input

p jumlah unit tersembunyi

faktor skala

= 0.7 (p)1/n = 0.7 n

Prosedur terdiri dari langkah berikut:


(46)

Inisialisasikan vektor bobot dari unit input:

vij(lama) = jumlah acak antara -0.5 dan 0.5 (atau antara – dan )

vij(lama) =

inisialisasi ulang bobot:

Set bias:

v0j = nilai acak antara – dan .

Analisis Nguyen dan Widrow didasarkan pada fungsi aktivasi

2.2.5 Lapisan Tersembunyi dan Neuron Tersembunyi

Tidak ada alasan yang teoritis yang menyatakan untuk menggunakan lebih dari dua lapisan tersembunyi. Masalah penggunaan lebih dari dua lapisan tersembunyi dapat kita temukan pada konsisi kehidupan nyata. Masalah yang sering terjadi adalah pelatihan seringkali berjalan sangat lambat ketika menggunakan lebih lapisan tersembunyi, hal ini disebabkan oleh dua efek:

1. Lapisan tambahan dimana error harus dipropagasikan kembali membuat gradient semakin tidak stabil. Keberhasilan dari algoritma optimisasi gradient terarah tergantung pada tingkat dimana gradient tidak berubah sebagaimana bobot pada jaringan saraf tiruan.

2. Periode iterasi yang sangat besar akan membuat proses terhenti pada minimum lokal dan berulang-ulang.


(47)

Satu lapisan tersembunyi harus menjadi pilihan pertama dalam merancang jaringan saraf tiruan. Jika dengan neuron tersembunyi yang sangat banyak tidak memuaskan dalam memecahkan masalah, kemudian menggunakan lapisan tersembunyi yang kedua dan mengurangi neuron tersembunyi menjadi solusi bagi permasalahan.

Menentukan banyaknya neuron tersembunyi merupakan hal yang sangat penting. Menggunakan neuron yang sangat sedikit akan membuat jaringan kekurangan sumber daya pada saat memecahkan masalah. Menggunakan neuron terlalau banyak akan membuat waktu pelatihan menjadi sangat lama dan akan mengakibatkan masalah yang disebut overfitting.

Salah satu cara untuk menentukan jumlah neuron tersembunyi adalah dengan aturan piramida geometris. Dimana jumlah neuron mengikuti bentuk piramida dengan menurunnya jumlah input terhadap output. Diilustrasikan pada Gambar 2.14.

Output = m

Hidden =

Input = n

Gambar 2.14 Ilustrasi Paramida Geometris

Pendekatan yang terbaik untuk menentukan jumlah optimal neuron yang akan dipergunakan dalam jaringan adalah komsumsi waktu. Mulai dengan jumlah neuron


(48)

yang sangat kecil. Latih dan uji jaringan sesuai dengan tampilannya. Kemudian tingkatkan jumlahnya, latih dan uji kembali. Ulangi sampai error yang dihasilkan sangat kecil. Jika validasi mudah diperoleh, kita mungkin akan mencoba menaikkan jumlah neuron, dengan perhitungan pada validasi akan mengingatkan akan terjadinya

overfitting.

Jaringan juga bisa saja mengalami overtraining, dimana terjadi kelebihan pelatihan pada jaringan. Ada beberapa alasan mengapa kita harus membatasi pelatihan pada jaringan:

1. Hal itu memperbaiki gejala bukan penyakitnya. Mengurangi jumlah neuron pada titik dimana jaringan tidak mempunyai kapasitas untuk memperlajari hal aneh yang terjadi, atau meningkatkan ukuran dan jenis pelatihan dan penyakitnya disembuhkan.

2. Jangan melupakan bahwa pelatihan dimulai dengan inisialisasi bobot secara acak. Kita dapat menghentikan pelatihan sebelum waktunya, kita mungkin telah memperoleh apa yang ingin kita ketahui, atau mungkin saja belum.

Untuk setiap pelatihan neuron tersembunyi, membangkitkan inisialisasi bobot acak dapat diabaikan. Kemudian membangkitkan lebih banyak lagi bobot acak dan latih. Ketika pengulangan ini telah cukup dikerjakan namun gagal meningkatkan daya guna jaringan lagi, kita dapat dengan yakin bahwa jaringan telah dilatih dengan sangat baik. Kemudian periksa dengan proses validasi. Jika setelah semua pelatihan daya guna pada saat validasi lebih buruk daripada saat pelatihan atau ada terlalu banyak neuron tersembunyi, maka jaringan tidak overtrained.


(49)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Jaringan Backpropagation

Jaringan backpropagation melatih jaringan untuk mendapatkan keseimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan selama pelatihan serta kemampuan jaringan untuk memberikan respon yang benar terhadap pola masukan yang serupa (tapi tidak sama) dengan pola yang dipakai selama pelatihan. Kata

backpropagation merujuk pada cara bagaimana gradien perubahan bobot dihitung. Sifat generalisasi yang dimiliki oleh jaringan backpropagation membuat pelatihan menjadi lebih efisien karena tidak perlu dilakukan pada semua data.

3.1.1 Input dan Output Jaringan

Menurut Semangun [15], ciri-ciri kondisi tembakau yang sehat adalah tembakau dengan kondisi daun yang tidak busuk, dengan warna hijau, tidak berbau, bentuk daun lonjong, tidak mempunyai bercak berwarna kuning kecoklatan dan tidak berbintik hitam. Sedangkan pada batang, berwarna hijau, tidak busuk dan bentuk batang tegak. Pada akar, akar harus berwarna coklat dan tidak busuk. Kondisi tersebut hanya merupakan kondisi tanaman tembakau yang terlihat dari luar, tidak termasuk kondisi


(50)

bagian dalam seperti empulur dan yang lainnya. Jika lebih 3 dari kondisi itu tidak terpenuhi maka, tembakau sudah tergolong berpenyakit.

Pada jaringan saraf tiruan, diberikan contoh pola untuk belajar, sehingga jaringan dapat mengenali pola tanpa perancang yang nyata yang mengkalkulasikan bobot yang seharusnya. Pembelajaran diulang beberapa kali untuk mendapatkan bobot yang ideal yang menjamin jaringan memberikan target yang diinginkan [8].

Kesebelas variabel tersebutlah yang akan diberi bobot pada jaringan saraf tiruan yang dibentuk dengan metode backpropagation dengan ketentuan jika kondisi peyakit sesuai dengan kondisi sehat di atas maka akan diberi target 0 dan jika diluar dari kondisi sehat diatas akan diberi target 1. Pada jaringan yang dibuat pada penelitian ini, kesebelas jaringan tersebut merupakan neuron pada lapisan pertama jaringan yang menjadi pola yang akan dilatih untuk mendapat pola yang menghasilkan bobot yang ideal.

Target jaringan adalah tanaman sehat dan tanaman berpenyakit, jika tanaman tembakau memenuhi semua kriteria pada kondisi tanaman sehat, maka neuron pada lapisan pertama mempunyai bobot 0 0 0 0 0 0 0 0 0 0 0 dengan target 0. Sedangkan jika tidak satupun kondisi tanaman sehat terpenuhi maka neuron mempunyai bobot 1 1 1 1 1 1 1 1 1 1 1 dengan target 1. Sehingga jaringan mempunyai dua target yaitu tanaman sehat (0) dan tanaman berpenyakit (1).

Varibel input diberi nilai dengan range [0,1] pemberian nilai berdasarkan tingkat pengaruh gejala terhadap penyakit, jika gejala yang terlihat sangat berpengaruh terhadap penyakit maka nilai yang diberi semakin tinggi. Pada lapisan output, ada 2 variabel yang menjadi unit keluaran yaitu: tanaman sehat dan tanaman berpenyakit.

Gejala penyakit tanaman yang dijadikan unit input pada jaringan dan hasil penyakit yang didapat dari pelatihan dan pengujian dengan mengolah unit input yang masing-masing telah diberi bobot disajikan pada Tabel 3.1 dan Tabel 3.2.


(51)

Tabel 3.1 Variabel inputan

No Variabel-variabel Nilai dari variabel

1 Bentuk daun Lonjong = 0 Melengkung = 1 2 Warna daun Hijau = 0

Coklat = 1 3 Bau daun Tidak berbau = 0

Berbau = 1 4 Kondisi daun Tidak layu = 0

Layu = 1 5 Bercak Tidak ada = 0

Ada = 1 6 Bintik Tidak ada = 0

Ada = 1 7 Bentuk batang Tegak = 0

Berlekuk = 1 8 Kondisi batang Tidak busuk = 0

Busuk = 1 9 Warna batang Hijau = 0

Coklat = 1 10 Warna akar Coklat = 0 Hitam = 1 11 Keadaan akar Tidak busuk = 0

Busuk = 1


(52)

Target penyakit

Hasil pelatihan

0 Tanaman sehat

1 Tanaman berpenyakit

3.1.2 Topologi Jaringan

Topologi jaringan yang digunakan pada penulisan ini adalah jaringan feedforward

yang memiliki satu atau lebih lapisan tersembunyi dari sigmoid neurons yang diikuti oleh lapisan output. Lapisan ganda dari neuron dengan fungsi transfer yang tidak linear membuatkan jaringan dapat mempelajari hubungan nonlinear dan linear antara vektor input dan output. Lapisan output yang linear mengijinkan jaringan untuk menghasilkan nilai diluar antara -1 dan +1.

Jika ingin membatasi output jaringan seperti misalnya hanya nilai antara 0 dan 1, termasuk nilai pecahan 0.1; 0.25 dan seterusnya, maka fungsi transfer akan menggunakan sigmoid transfer function (seperti misalnya logsig). Pada penelitian ini

output di set antara 0 dan 1 maka fungsi aktivasi yang digunakan adalah fungsi tansig.

Untuk jaringan dengan multilayer atau banyak lapisan seperti yang digunakan pada penulisan ini, jumlah lapisan menentukan jumlah matriks bobot. Notasi yang sesuai digunakan dengan dua lapisan tansig/purelin ditunjukkan pada Gambar 3.1.


(53)

Gambar 3.1 Jaringan feedforward

Jaringan ini dapat digunakan sebagai fungsi penduga secara umum. Jaringan ini dapat menduga fungsi lain dengan angka yang terbatas dari sebuah kondisi yang belum diketahui dan tidak kontinu dengan baik, yang diberikan oleh neuron pada lapisan tersembunyi.

3.2 Membangun Jaringan Backpropagation

Langkah pertama pada pembelajaran suatu jaringan alur maju adalah membuat obyek jaringan. Fungsi newff merupakan suatu objek jaringan alur maju. Fungsi Newff

memerlukan empat input dan kembalian dari objek jaringan. Input pertama adalah R dengan 2 matriks nilai minimum dan maksimum untuk setiap elemen R dari vektor input. Input kedua adalah sebuah array yang mengandung ukuran (size) dari setiap lapisan. Input ketiga adalah sebuah sel array yang mengandung nama dari fungsi transfer yang digunakan pada setiap lapisan. Input terakhir adalah input yang mengandung nama dari fungsi training yang digunakan.

Pada penulisan ini, fungsi transfer yang digunakan untuk lapisan tersembunyi adalah fungsi transfer tansig sedangkan untuk lapisan output menggunakan fungsi transfer purelin dengan jaringan yang terdiri dari 3 lapisan, dengan 1 lapisaan tersembunyi dengan 5 neuron yang dibuat diawal dan lapisan output dengan 1 neuron.


(54)

Perintah yang dipakai untuk membentuk sebuah jaringan backpropagation

adalah newff dengan format:

net = newff(PR[S1 S2...SN],{TF1 TF2...TFN}, BTF,BLF,PF)

Tabel 3.3 Penjelasan Parameter Argumen yang Diperlukan pada Newff

No Fungsi Keterangan

1 PR Matriks berukuran R x 2 yang berisi nilai maksimum dan minimum, dengan R adalah jumlah variabel input.

2 Si Jumlah neuron pada lapisan ke-i dengan i = 1,2,...N1. 3 TFi Fungsi aktivasi pada lapisan ke-i dengan i = 1,2,...N1

dengan fungsi default yang dipakai adalah tansig

4 BTF Fungsi pelatihan jaringan dengan fungsi default adalah trainm

5 BLF Fungsi pelatihan untuk bobot dalam jaringan dengan fungsi default adalah learngdm

7 PF Fungsi Performance, jika tidak diisi maka default = 'mse'.

Fungsi aktivasi TF harus merupakan fungsi yang dapat dideferensialkan, seperti tansig, logsig atau purelin. Fungsi pelatihan BTP dapat digunakan fungsi-fungsi pelatihan untuk backpropagation seperti trainlm, trainbfg, trainrp atau traingd. Fungsi kinerja yang digunakan merupakan fungsi kinerja yang dapat dideferensialkan seperti mse atau msereg.

Pelatihan yang digunakan pada backpropagation pada umumnya dilakukan secara berkelompok atau disebut bacth training. Semua pola dimasukkan ke dalam jaringan kemudian bobot diubah. Dalam pelatihan secara kelompok ini, semua pola


(55)

dimasukkan dalam bentuk matriks.

3.2.1 Ilustrasi dari proses backpropagation

Pada penelitian ini, jaringan backpropagation yang terbentuk terdiri dari sebelas neuron masukan yaitu x1 sampai dengan x11. Setiap neuron terkoneksi dengan neuron pada lapisan di atas nya atau lapisan tersembunyi ditandai dengan adanya bobot koneksi yaitu v11 sampai dengan v111, pada gambar dibawah ditandai dengan warna kuning. Untuk menghitung sinyal output untuk node pertama z1 diadakan penghitungan maju dari lapisan masukan ke lapisan tersembunyi dan lapisan keluaran, dengan menjumlahkan bobot dengan bias dengan f merupakan fungsi aktivasi yang dipakai dengan perhitungan matematis sebagai berikut:

Z_in1 = v0 + Xivij v0 = bias ; v = bobot Zj = (Z_inj)

W12 W11 W101 W51 W52 W102 V55 V11 j V11 V15 V111 V51 V11 V1110 V510 X 1 Z 1 Y2 Z1 0 Z5 X 5 Y 1 X1 1


(56)

Gambar 3.2 Perhitungan maju node lapisan tersembunyi

Demikian selanjutnya diadakan perhitungan yang sama untuk node berikutnya yaitu Z2 sampai dengan Z10 sehingga didapat sinyal output dari setiap neuron pada lapisan tersembunyi yang akan dikirim pada lapisan berikutnya atau lapisan output.

Jika setiap node telah mempunyai sinyal output dengan bobot yang didapat dari perhitungan sebelumnya, pada gambar dibawah ditandai dengan warna merah, maka akan diadakan penjumlahan bobot untuk menentukan output Y1 dari jaringan dengan perhitungan:

Gambar 3.3 Perhitungan maju node lapisan output

Y_ink = w0k + Zjwjk w0 = bias ; v = bobot

W12 W11 W101 W51 W52 W102 V55 V11 j V11 V15 V111 V51 V11 V1110 V510 X 1 Z 1 Y2 Z1 0 Z5 X 5 Y 1 X1 1 b2 b1


(57)

Yk = (Y_ink)

Dari perhitungan tersebut didapatlah Y1 yang menjadi keluaran dari jaringan. Untuk menghitung hasil output dari Y2 maka akan dikerjakan algoritma yang sama dengan penghitungan keluaran Y1. Hasil keluaran dari jaringan dibandingkan dengan target yang telah ditentukan ditandai dengan tk, untuk menghitung error yang ditandai dengan δk dari jaringan, dilakukan perhitungan sebagai berikut:

δk = (tk – Yk) ’ (Y_ink)

Jika ternyata hasil error jaringan tidak sama dengan error yang telah ditentukan, kemudian dilakukan penghitungan koreksi bobot dengan melibatkan

learning rate atau konstanta pembelajaran dimana akan digunakan untuk memperoleh nilai wjk dengan perhitungan:

Δwjk = αδkZj α = learning rate

Koreksi bias juga dihitung yang nantinya akan digunakan untuk memperbaiki nilai w0k:

Δw0k = αδk

Kemudian hasil ini dikirimkan ke unit-unit yang ada di lapisan bawahnya, disinilah terjadi propagasi balik dengan proses yang terjadi sebagai berikut:

W12 W11 W101 W51 W52 W102 V55 V11 j V11 V15 V111 V51 V11 V1110 V510 X 1 Z1 Y2 Z1 0 Z5 X 5 Y 1 X1 1 b2


(58)

Gambar 3.4 Perhitungan balik bobot lapisan tersembunyi

Masing-masing unit output Y1 dan Y2 memperbaiki bias dan bobotnya dengan perhitungan matematisnya adalah:

wjk(baru) = wjk(lama) + Δwjk (bobot) w0k(baru) = w0k(lama) + Δw0k (bias)

Kemudian hitung koreksi bobot untuk lapisan masukan yang nantinya akan digunakan untuk memperbaiki nilai vij:

Δvij = αδkXi

Hitung koreksi bias yang akan digunakan untuk memperbaiki nilai vij:

Δv0j = αδj

Gambar 3.5 Perhitungan balik bobot lapisan input W12 W11 W101 W51 W52 W102 V55 V11 j V11 V15 V111 V51 V11 V1110 V510 X 1 Z1 Y2 Z1 0 Z5 X 5 Y 1 X1 1 b2 b1


(59)

Masing-masing unit tersembunyi Z1 sampai dengan Z10 memperbaiki bias dan bobotnya dengan perhitungan:

vij(baru) = vij(lama) + Δvij (bobot) v0j(baru) = v0j(lama) + Δv0j (bias)

Dari hasil penghitungan bobot baru yang telah didapat dari propagasi balik, maka kembali diulang algoritma perhitungan maju sehingga didapat target yang diharapkan atau error yang lebih kecil dari yang telah ditentukan.

3.2.2 Struktur sistem

Sebelum diadakan pelatihan terhadap jaringan dan perancangan aplikasi dalam GUI, perlu dianalisis gambaran struktur dari sistem secara keseluruhan terlebih dahulu. Analisis ini diperlukan untuk memudahkan pengembangan proses perancangan yang mendetail dari aplikasi yang dibuat. Struktur yang dibuat menjadi acuan dalam menghubungkan setiap komponen yang ada dalam sistem yang sedang dibangun.

Analisis setiap struktur menu yang akan dibangun dalam aplikasi ini adalah :

1. Halaman depan

Merupakan halaman awal aplikasi yang tampil pertama kali ketika user mulai menggunakan aplikasi.

2. Mulai Aplikasi

Menu yang terdapat pada halaman depan yang mengizinkan user untuk mulai menggunakan aplikasi untuk medeteksi penyakit tanaman.

3. Keluar

Menu untuk keluar dari aplikasi jika tidak ingin menggunakan lebih lanjut.

4. Test


(60)

sehingga menghasilkan informasi yang dibutuhkan oleh user.

5. Reset

Button yang digunakan jika user ingin mendeteksi penyakit yang terjadi pada tanaman berikutnya. Aplikasi hanya dapat mendeteksi penyakit satu batang tanaman, untuk mendeteksi penyakit tanaman berikutnya perlu mereset aplikasi.

6. Selesai

Button yang digunakan untuk keluar dari aplikasi jika user telah selesai menggunakan aplikasi.

Gambaran struktur sistem yang dirancang, ditunjukkan pada gambar berikut ini:

Software Mendeteksi Penyakit Tembakau (Nicotiana tabacumL)

Halaman depan

Mulai Aplikasi Keluar

Test Reset Selesai

Gambar 3.6 Struktur sistem

3.2.3 Spesifikasi Sistem

Berikut ini ditunjukkan desain dan spesifikasi sistem jaringan saraf tiruan untuk mendeteksi penyakit tembakau (Nicotiana tabacum L) dengan metode


(61)

backpropagation, yang dibuat dalam bentuk Data Flow Diagram (DFD), flowchart

dan perancangan form tampilan aplikasi.

3.2.3.1 Data Flow Diagram (DFD)

Gambar 3.7 DFD level 0

Diagram diatas merupakan gambaran seluruh proses dari sistem secara garis besar yang terdiri dari entitas, masukan, proses dan keluaran. Penjelasan dari proses yang dilakukan dalam diagram tersebut, dijelaskan menggunakan spesifikasi proses sebagai berikut:

Tabel 3.4 Keterangan DFD level 0

No / Nama Proses Masukan Keterangan Proses Keluaran P0 / Deteksi penyakit

tembakau dengan

backpropagation dataInput

Melatih setiap varibel inputan yang diterima oleh jaringan dengan metode

backpropagation, mencari iterasi terbaik dari setiap latihan, mendapat

bobot dan bias terbaik, dan menguji data baru pada jaringan.

dataHasil

Lebih spesifiknya lagi, proses P0 pada diagram di atas, akan diuraikan menjadi beberapa proses kecil yang ditunjukkan oleh diagram dibawah ini:

dataInput

Deteksi penyakit tembakau

dengan

backpropagation

dataHasil Gejala

penyakit tanaman

Kondisi tanaman


(62)

Gambar 3.8 DFD level 1 Kondisi

tanaman

dataHasil

Databobot Bias

dataerror dataOutput

Sementara dataInput

Membandingkan hasil dari pelatihan dengan

target yang diinginkan

Menjumlahka n bobot yang

diterima setiap lapisan Gejala

penyakit

tanaman P2.0

P1.0

Menguji data baru pada

jaringan

Mengulang pelatihan sampai error terkecil dan epoch terbaik

dicapai P4.0


(63)

Proses yang terjadi pada diagram aliran level 1 di atas, disajikan dalam Tabel 3.5 dengan spesifikasi proses sebagai berikut:

Tabel 3.5 Keterangan DFD level 1

No / Nama Proses Masukan Keterangan Proses Keluaran P1 / Menjumlahkan bobot

yang diterima setiap lapisan

dataInput

Menerima inputan berupa variabel dari setiap gejala penyakit yang tampak pada

tanaman

dataOutput Sementara P2 / Membandingkan hasil

dari pelatihan dengan target yang diinginkan

dataOutput Sementara

Melihat perbandingan antara

target dengan hasil pelatihan Dataerror P3 / Mengulang pelatihan

sampai error terkecil dan epoch terbaik dicapai

Dataerror

Melakukan pelatihan kembali dengan mengubah

learning rate dan jumlah lapisan tersembunyi

Databobot bias

P4 / Menguji data baru pada jaringan

Databobot bias

Menguji data baru pada jaringan dengan bobot dan

bias yang telah diperoleh dari jaringan

dataHasil

3.2.3.2 Flowchart (Bagan Alir)

Berikut ini adalah flowchart dari metode backpropagation untuk mendeteksi penyakit tanaman tembankau (Nicotiana tabacum L):


(64)

Mulai

Epoch maximum, target error, learning rate dan lapisan tersembunyi

Inisialisasi bobot acak

Epoch = 0

tidak

Ya

tidak

Epoch = epoch+1

Feedforward

Hitung error

Hitung perubahan bobot

Perhitungan MSE

MSE < target error? Epoch<= epoch


(65)

Gambar 3.9 Flowchart program

3.2.3.3 Perancangan Form

Rancangan program yang akan diimplementasikan dengan menggunakan GUI Matlab R2010a dibuat untuk mempermudah prancangan sistem yang akan dikerjakan. Gambaran form yang akan dibuat yaitu:

1. Form depan

Form inilah yang tampak pada saat sistem pertama kali dipergunakan. Dengan memilih menu lanjut maka user akan membuka dialog selanjutnya dan jika memilih menu keluar maka user akan keluar dari aplikasi.

lanjut keluar

DETEKSI PENYAKIT TEMBAKAU (Nicotiana tabacum L)


(1)

Gambar 4.8 Tampilan Hasil Pengujian Aplikasi Tanaman Sakit

Sistem menunjukkan kondisi tanaman bahwa tanaman berpenyakit dan memberikan cara pengendalian dan cara pencegahan terhadap penyakit tersebut. Jika

user tidak memasukkan angka sesuai dengan petunjuk, maka sistem akan menganggap nilainya 0.

Jika kondisi tanaman terpenuhi dengan semua kondisi sehat atau dengan satu atau dua kondisi tidak baik, maka sistem akan menampilakn form sebagai berikut:


(2)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan pembahasan yang telah dilakukan pada bab-bab yang terdahulu, maka dapat ditarik kesimpulan sebagai berikut ini:

1. Aplikasi sistem ini dibuat sebagai alat bantu untuk mendeteksi penyakit tanaman tembakau (Nicotiana tabacum L) dalam jaringan saraf tiruan dengan metode

backpropagation dengan melihat gejala penyakit yang terlihat dilapangan.

2. Jaringan saraf tiruan dengan metode backpropagation dapat digunakan untuk mendeteksi penyakit tembakau (Nicotiana tabacum L) dengan syarat gejala


(3)

penyakit yang dialami oleh tanaman dapat terlihat dengan jelas. Pola yang dilatih pada jaringan dapat dikenali dengan baik.

3. Dari hasil pelatihan didapat kombinasi terbaik untuk mendeteksi penyakit tanaman tembakau (Nicotiana tabacum L) adalah dengan 3 lapisan jaringan (1 lapisan input, 1 lapisan tersembunyi, 1 lapisan output), learning rate sebesar 0.01, lapisan tersembunyi sebanyak 10 sel neuron, fungsi aktivasi lapisan tersembunyi tansig dan fungsi aktivasi lapisan ouput purelin.

4. Semakin banyak jumlah sel pada lapisan tersembunyi, maka semakin baik jaringan mengenal pola yang dimasukkan, namun terlalu banyak sel neuron akan mengakibatkan out of memory atau overtraining.

5. Pada penelitian ini, jaringan mengenal pola data sebesar 100% dengan 50 data dari pelatihan dan 25 data baru.

5.2 Saran

Untuk pengembangan lebih lanjut terhadap sistem yang telah dibuat, penulis menyarankan beberapa pengembangan berikut ini:

1. Data yang diujikan pada jaringan lebih dikembangkan dan ditambah dalam jumlah, sehingga jaringan mengenal data lebih baik lagi.

2. Aplikasi ini dapat dikembangkan lagi tidak hanya untuk mendeteksi penyakit tembakau, namun penyakit tanaman lain atau penyakit manusia.

3. Aplikasi ini dapat dikembangkan tidak hanya medeteksi kondisi tanaman tembakau, namun juga untuk medeteksi penyakit tembakau secara detail.


(4)

Daftar Pustaka

[1] Anugerah. 2007.Perbandingan Jaringan Saraf Tiruan Backpropagatiom dan Metode Deret Berkala Box-Jenkins (Arima) sebagai Metode Peramalan Curah Hujan. Skripsi. Universitas Negeri Semarang.

[2] Bong, D.A., Joseph,A., Mat.2009. Application of Neural Network in User Authenticaiton for Smart Home System.World Academy of Science, Engingeering and Technology 53.

[3] Fausett, L.1994. Fundamentals of Neural Network: Architectures, Algorithms, and Applications.New Jersey: Prentice-Hall,Inc.

[4] Haykin, S.1999. Neural Networks A Comprehensive Foundation.Canada: Pearson Education,Inc.


(5)

[5] Hermawan, Arief. 2006. Jaringan Saraf Tiruan Teori dan Aplikasi. Yogyakarta: Penerbit Andi.

[6] Hunt, Brian.A Guide to Matlab for Beginners and Experienced Esers.2001.Cambridge: Cambridge University Press.

[7] Kiki, 2003. Analisis Jaringan Saraf Tiruan dengan Metode Backpropagation untuk Mendeteksi Gangguan Psikologi. Skripsi. Universitas Islam Indonesia.

[8] Kumar, A.,Gayatri,M.,Janghu,M.,Kaur,M.,Prasad,T.V. 2010. Implementation of Epileptic EEG Using Recurrent Neural Network. International Journal of Computer Science and Network Security 10(3): hal.290-294

[9] Kusumadewi, Sri.2004.Membangun jaringan syaraf tiruan menggunakan matlab dan excelink.Yogyakarta : graha ilmu.

[10] Masters, T.1993. Practical Neural Network Recipes in C++.New York: Academy Press,Inc.

[11] Matnawi, Hudi. 1997. Budi Daya Tembakau bawah Naungan.Yogyakarta: Kanisius.

[12] Puspitaningrum, Diyah. 2006. Jaringan Saraf Tiruan. Yogyakarta: Penerbit Andi.

[13] Santosa budi.2007.Data Mining Terapan dengan Matlab. Yogyakarta: Graha Ilmu.

[14] Siang, Jong Jek. 2009. Jaringan Saraf Tiruan dan Pemrogramannya. Yogyakarta: Penerbit Andi.

[15] Semangun, Haryono . 2000. Penyakit-Penyakit Tanaman Perkebunan di Indonesia. Yogyakarta: Gadjah Mada University Press.


(6)

[16] Subiyanto. 2000, Aplikasi Jaringan Saraf Tiruan Sebagai Metode Alternatif Prakiraan Beban Jangka Pendek, Elektro Indonesia Nomor 29 Tahun VI Januari 2000.

[17] Subrata, D.2001.Penerapan Teknologi Image Processing dan Artificial Neural Network untuk Menduga Ketersediaan Air dan Nutrisi pada Pertumbuhan Tanaman Cabai Merah.Buletin Keteknikan Pertanian [15]: hal. 81.

[18] Sudarmo, Subiyakto .1987. Tembakau Pengendalian Hama dan Penyakit. Yogyakarta: Kanisius.

[19] Wisnu, Broto. 2007. Perbandingan Aplikasi Jaringan Saraf Tiruan Backpropagation dengan Metode Optimal Brain Damage dan Arch-Garch untuk Memprediksi Indeks Harga Saham Gabungan (IHSG). Skripsi Universitas Diponegoro.

[20] Wahab, W.2004. Analisis dan identifikasi sistem proses kiln semen dengan jaringan saraf tiruan.Jurnal Teknologi 1: hal. 18-28.

[21] Yuwono, Bambang.2007.Perancangan dan Implementasi Jaringan Syaraf Tiruan untuk Mendiagnosa Jenis Penyakit Kandungan.Skripsi UPN.

[22]Zhang, W.2010. Through-the-wall Target Localization with Time Reversal Music Method.Progress In Elektormagnetics Research 106: hal. 1.