45
I.JUDUL Pengenalan Pola Citra Retina Menggunakan Jaringan Syaraf Tiruan Backpropagation Untuk Mendeteksi Retinopati Diabetes (Retina Image Pattern Recognition Using Artificial Neural Network for Retinopathy Diabetes Detection) II.PENDAHULUAN II.1 Latar Belakang Pada penderita Diabetes Melitus dapat terjadi kelainan retina yang disebut sebagai Retinopati Diabetes. Retinopati Diabetes merupakan penyakit sistemik yang paling penting pada mata. Retinopai Diabetes akan menyebabkan gangguan pada tajam penglihatan, sehingga penglihatan penderita akan semakin menurun dan dapat menyebabkan kebutaan. Meskipun penyakit Diabetes Melitus ini adalah penyakit turunan, namun penyebab yang paling besar adalah pola makan yang keliru. Hal ini sering membuat para penderita Diabetes Melitus tidak menyadari bahwa dirinya telah mengidap penyakit ini. Sehingga, sering terjadi Retinopati Diabetes sebelum penderita menyadari bahwa dirinya mengidap Diabetes Melitus. Sebagaimana kita ketahui peran dokter sangat penting dalam mendiagnosis suatu penyakit, sehingga sangat mempengaruhi dalam pengambilan keputusan terhadap suatu penyakit. Akan sangat membantu jika ada suatu alat bantu untuk mendeteksi kelainan Retinopati Diabetes pada pasien agar dapat dilakukan penanganan sedini mungkin. Metode Jaringan Syaraf Tiruan (Artificial Neural Network) merupakan salah satu alternatif pemecahan masalah dan

Proposal Skripsi New

Embed Size (px)

DESCRIPTION

tentang deteksi retinopati diabetes menggunakan pemrograman java

Citation preview

Page 1: Proposal Skripsi New

I.JUDUL

Pengenalan Pola Citra Retina Menggunakan Jaringan Syaraf Tiruan

Backpropagation Untuk Mendeteksi Retinopati Diabetes

(Retina Image Pattern Recognition Using Artificial Neural Network for Retinopathy

Diabetes Detection)

II.PENDAHULUAN

II.1 Latar Belakang

Pada penderita Diabetes Melitus dapat terjadi kelainan retina yang disebut

sebagai Retinopati Diabetes. Retinopati Diabetes merupakan penyakit sistemik yang

paling penting pada mata. Retinopai Diabetes akan menyebabkan gangguan pada

tajam penglihatan, sehingga penglihatan penderita akan semakin menurun dan dapat

menyebabkan kebutaan. Meskipun penyakit Diabetes Melitus ini adalah penyakit

turunan, namun penyebab yang paling besar adalah pola makan yang keliru. Hal ini

sering membuat para penderita Diabetes Melitus tidak menyadari bahwa dirinya

telah mengidap penyakit ini. Sehingga, sering terjadi Retinopati Diabetes sebelum

penderita menyadari bahwa dirinya mengidap Diabetes Melitus.

Sebagaimana kita ketahui peran dokter sangat penting dalam mendiagnosis

suatu penyakit, sehingga sangat mempengaruhi dalam pengambilan keputusan

terhadap suatu penyakit. Akan sangat membantu jika ada suatu alat bantu untuk

mendeteksi kelainan Retinopati Diabetes pada pasien agar dapat dilakukan

penanganan sedini mungkin.

Metode Jaringan Syaraf Tiruan (Artificial Neural Network) merupakan salah

satu alternatif pemecahan masalah dan banyak diminati oleh para peneliti pada saat

ini. Hal ini adalah karena keluwesan yang dimiliki oleh Jaringan Syaraf Tiruan, baik

dalam perancangan maupun penggunaannya. Dasar pemikiran metode Jaringan

Syaraf Tiruan ini adalah jaringan syaraf manusia. Metode ini meniru cara kerja otak

manusia dalam berfikir untuk memecahkan beragam permasalahan.

Salah satu penggunaan dari metode Jaringan Syaraf Tiruan seperti yang

dilakukan pada tugas akhir ini yaitu untuk mengidentifikasi pola citra hasil foto

Fundus sehingga dapat mengidentifikasi kelainan mata akibat Diabetes Melitus

yang biasa disebut Retinopati Diabetes.

Jaringan Syaraf Tiruan dapat dikembangkan untuk mempermudah deteksi

Retinopati Diabetes pada citra retina, dimana data citra retina yang diperoleh dari

foto Fundus diolah dengan menggunakan Operator Sobel untuk memperoleh data

Page 2: Proposal Skripsi New

biner. Data biner ini digunakan sebagai data masukan pada proses Jaringan Syaraf

Tiruan. Setelah melalui proses training dan mapping, jaringan dapat mengenali pola

sesuai dengan pola yang telah diajarkan. Dengan demikian jaringan dapat

mengambil keputusan mengenai ada atau tidaknya Retinopati Diabetes pada pasien.

II.2 Rumusan Masalah

Berdasarkan permasalahan yang telah dijelaskan pada bagian latar belakang,

maka rumusan masalah dikhususkan pada :

Penerapan Operator Sobel untuk mengolah citra retina sehingga

didapatkan data digital dari citra tersebut.

Penerapan Algoritma Backpropagation untuk mengenali pola citra retina

dari penderita Retinopati Diabetes dan citra retina normal.

Pengembangan aplikasi pendeteksi diabetes dengan menerapkan

Algoritma Backpropagation menggunakan UML dan Java.

II.3 Batasan Masalah Masalah

Ruang lingkup permasalahan dibatasi oleh :

Citra retina yang digunakan adalah citra Retinopati Diabetik dan citra

retina normal hasil dari foto Fundus.

Data yang digunakan berupa file *.bmp 256 warna..

Aplikasi akan dirancang menggunakan UML dan diimplementasikan

menggunakan Java.

Aplikasi dibuat untuk bekerja pada sistem operasi Windows XP

Profesional.

Menggunakan Learning Rate 0,3 dan Momentum 0,8.

Jeringan Syaraf Tiruan yang dipergunakan adalah metode

Backpropagation dengan Hidden Layer maksimal 5 layer.

Deteksi tepi yang digunakan adalah Operator Sobel

II.4 Tujuan

Tujuan dari penelitian ini adalah mengembangkan Jaringan Syaraf Tiruan

yang dapat mengidentifikasi Retinopati Diabetes melalui citra retina sehingga dapat

dilakukan penanganan secara dini terhadap penderita Retinopati Diabetes.

Page 3: Proposal Skripsi New

II.5 Manfaat

Manfaat dari penelitian ini antara lain :

1. Sebagai upaya untuk menerapkan Jaringan Syaraf Tiruan metode

Backpropagation dalam dunia kedokteran.

2. Didapatkan sebuah aplikasi yang dapat mendeteksi penyakit Retinopati

Diabetes secara cepat dan akurat.

3. Membantu dokter untuk mendiagnosis pasien penderita Renitopati

Diabetes lebih dini.

II.6 Tinjauan Pustaka

II.6.1 Retinopati Diabetes

Pada penderita Diabetes Melitus dapat terjadi kelainan retina yang disebut

sebagai Retinopati Diabetes. Retinopati Diabetes merupakan penyakit sistemik yang

paling penting pada mata. Retinopai Diabetes akan menyebabkan gangguan pada

tajam penglihatan, sehingga penglihatan penderita akan semakin menurun dan dapat

menyebabkan kebutaan.

Kemungkinan terjadinya Retinopati Diabetes cukup tinggi dan mencapai 40-

50% dari penderita Diabetes Melitus.Kemungkinannya bertambah akibat pemakaian

insulin, sehingga mengakibatkan bertambahnya usia penderita Diabetes Melitus.

Pada Diabetes Juvenil jarang ditemukan Retinopati Diabetes pada usia lebih rendah

dari 17 tahun. Pada umumnya Retinopati Diabetes terjadi pada penderita Diabetes

Melitus yang telah terjangkit selama 10 tahun. Rada usia lanjut sering terlihat

Retinopati Diabetes sebelum penderita menyadari adanya Diabetes Melitus. [ILY-

05]

Kelainan pada Retina yang dapat terjadi akibat Retinopati Diabetes adalah :

1. Kelainan Vena, yaitu melebar iregular dan berkelok-kelok. Kelainan vena

terjadi akibat gangguan sirkulasi dan gangguan pada Endotelnya.

2. Microaneurismata, yaitu terjadi penonjolan dinding pembuluh darah kapiler

vena retina.

3. Pendarahan pada retina berbentuk pendarahan bintik dan bercak-bercak di

dalam retina.

4. Obstruksi kapiler, mengakibatkan terganggunya aliran darah kapiler retina.

5. Neovaskularisasi, merupakan awal penyakit yang lebih berat pada

Retinopati Diabetes.

Page 4: Proposal Skripsi New

II.6.2 Pengolahan Citra Digital

Pengolahan citra (image processing) merupakan suatu sistem di mana proses

dilakukan dengan masukan berupa citra (image) dan hasilnya juga berupa citra

(image). Sesuai dengan perkembangan komputer vision itu sendiri, pengolahan citra

mempunyai dua tujuan utama, yakni:

1. Memperbaiki kualitas citra, dimana citra yang dihasilkan dapat menampilkan

informasi secara jelas atau dengan kata lain manusia dapat melihat informasi

secara jelas atau dapat menginterpretasikan citra yang ada.

2. Mengekstraksi informasi ciri yang menonjol pada suatu citra di mana

hasilnya adalah informasi citra di mana manusia mendapatkan informasi ciri

dari citra secara numerik atau dengan kata lain komputer (mesin) melakukan

interpretasi terhadap informasi yang ada pada citra melalui besaran-besaran

data yang dapat dibedakan secara jelas (besaran-besaran ini berupa besaran

numerik). [BAS-05]

Dalam perkembangan lebih lanjut dari ilmu komputasi yang memanfaatkan

pengolahan citra, ternyata untuk mengidentifikasi seseorang bisa menggunakan

sidik jari, pengenalan wajah (face recognition) ataupun pengenalan retina (retina

recognition). Dalam model pengenalan wajah dan pengenalan retina, proses

pengolahan citra yang dilakukan menjadi tidak sederhana, baik dari sisi capture

sampai pada ekstraksi cirinya. Pada pengenalan wajah proses capture ini sangat

menentukan tingkat kesulitan dalam komputasinya, salah satunya bahwa dalam

setiap dalam setiap proses capture ternyata cahaya, warna, posisi, skala dan

kemiringan menjadi suatu masalah yang perlu di perhatikan.

Citra digital adalah citra yang didefinisikan sebagai fungsi f(x,y) dimana x

menyatakan nomor baris, y menyatakan nilai kolom, dan f menyatakan nilai derajat

keabuan pada citra. Dengan demikian (x,y) adalah posisi dari piksel dan f adalah

nilai derajat keabuan pada titik(x,y).Citra yang dimaksudkan dalam keseluruhan

buku ini adalah ”citra diam” (still images). Citra diam adalah citra tunggal yang

tidak bergerak. Untuk selanjutnya citra diam disebut citra saja. [BAS-05]

II.6.2.1 Representasi Citra Digital

Sebuah citra dalam komputer direpresentasikan dalam sebuah matriks yang

berisikan angka-angka. Jika kita menyimpan citra kedalam sebuah file, maka yang

Page 5: Proposal Skripsi New

disimpan kedalam file tersebut adalah angka-angka yang diperoleh dari matriks

kanvas seperti yang ditunjukkan oleh gambar berikut ini ini.

201 188 181 185 180 147 140 149 155 138 144 144 145 199 200 201 188 139 132 147 150 143 123 112 102 117 207 221 222 136 90 111 125 145 140 138 122 104 97 231 219 200 90 65 84 84 107 95 92 92 99 89 227 223 181 74 72 89 92 86 77 63 50 55 65 217 211 166 85 47 75 82 83 75 42 42 39 40 208 195 179 131 54 68 66 72 46 21 15 24 19 198 187 181 141 53 54 55 59 37 21 37 66 90 195 184 170 134 52 38 42 45 35 43 98 152 172 186 175 171 169 100 34 34 27 44 85 139 170 184 167 156 142 144 112 48 32 46 84 133 166 172 186 142 139 131 120 108 67 30 76 102 123 153 171 178 145 134 128 125 117 70 38 91 101 105 125 146 157

Gambar 2.1 Representasi citra kedalam matriks angka

Untuk format Windows Bitmap File (.bmp) terdapat sebuah header yang

berisi informasi jumlah kolam dan baris dalam citra serta informasi palet. Header

langsung diikuti oleh angka-angka dalam matriks yang disusun perbaris, baris

pertama langsung diikuti baris kedua.

Header

Angka-angka

dari matriks

Header Baris 1 ….. Baris terakhir

Gambar 2.2 Susunan Header dan Matriks angka

Page 6: Proposal Skripsi New

Ada bermacam format representasi citra dalam file, seperti bmp, tif, jpg, dan

sebagainya. Dalam format .bmp semua informasi angka dalam baris disimpan.

Misalkan ukuran header adalah H byte, ukuran citra 100x100 byte monokrom, maka

ukuran file bmp tersebut adalah : H + data citra = H + 10000 Byte. Bagian data citra

(10000 byte) sebenarnya bisa dikompresi agar ukuran file tidak terlalu besar. Salah

satu cara kompresi adalah dengan terlebih dahulu mentransformasikan citra ke ruang

yang berbeda (contoh: format file JPEG).

II.6.2.2 Hubungan Dasar Antar Piksel

Dalam pengolahan citra, hubungan dasar antar piksel merupakan hal yang

sangat penting. Sebuah piksel p pada koordinat (x,y) mempunyai 4 tetangga

horisontal dan vertikal yang koordinat-koordinatnya sebagai berikut :

(x+1,y),(x-1,y),(x,y+1), dan (x,y-1) (2.1)

Kumpulan dari píxel-piksel data yang disebut 4-neighbours of p dapat

dinyatakan sebagai N4 (p). Kecuali jika p(x,y) posisinya berada di garis batas

gambar, sehingga jumlah píxel tetangga tidak terdiri dari 4 piksel tetangga. Selain 4

tetangga diatas, p juga mempunyai 4 tetangga diagonal yaitu :

(x+1,y+1),(x+1,y-1),(x-1,y+1), dan (x-1,y-1) (2.2)

píksel-piksel diatas dinyatakan dalam ND (p). Gabungan dari N4 (p) dan ND (p)

didefinisikan sebagai 8-neighbours of p dapat dinyatakan sebagai N8 (p).

Hubungan dasar antar píksel merupakan suatu konsep yang sangat penting

yang digunakan untuk mendefinisikan batas-batas dari suatu objek dan bagian-

bagian daerah kecil dari suatu gambar. Sebagai pertimbangan apakan dua buah

piksel saling berhubungan atau tidak, diperlukan beberapa kriteria. Diantaranya

apakah kedua piksel tersebut mempunyai prinsip kedekatan yang sesuai dengan

konsep yang telah ditentukan, seperti 4-neighbours atau 8-neighbours. Selain itu,

apakah kedua piksel tersebut mempunyai gray level yang sesuai dengan kriteria

yang diinginkan. Sebagai contoh, jika dua piksel masing-masing mempunyai nilai 1

dan 0 dan keduanya merupakan bagian dari 4-neighbours, maka dinyatakan kedua

piksel tersebut tidak ada hubungan, hal ini karena kedua piksel tersebut memiliki

nilai yang berbeda.

Page 7: Proposal Skripsi New

II.6.2.3 Deteksi Tepi

Deteksi tepi (Edge Detection) pada suatu citra adalah suatu proses yang

menghasilkan tepi-tepi dari obyek-obyek citra, tujuannya adalah :

o Untuk menandai bagian yang menjadi detail citra

o Untuk memperbaiki detail dari citra yang kabur, yang terjadi karena

error atau adanya efek dari proses akuisisi citra

Suatu titik (x,y) dikatakan sebagai tepi (edge) dari suatu citra bila titik

tersebut mempunyai perbedaan yang tinggi dengan tetangganya. Gambar 2.3 berikut

ini meng-gambarkan bagaimana tepi suatu gambar diperoleh.

Gambar 2.3. Proses Deteksi Tepi Citra

Perhatikan hasil deteksi dari beberapa citra menggunakan model differensial di atas:

Gambar 2.4. Hasil beberapa deteksi tepi

Page 8: Proposal Skripsi New

Pada gambar 2.4. terlihat bahwa hasil deteksi tepi berupa tepi-tepi dari suatu

gambar. Bila diperhatikan bahwa tepi suatu gambar terletak pada titik-titik yang

memiliki perbedaan tinggi. Berdasarkan prinsip-prinsip filter pada citra maka tepi

suatu gambar dapat diperoleh menggunakan High Pass Filter (HPF), yang

mempunyai karakteristik:

Contoh:

Diketahui fungsi citra f(x,y) sebagai berikut:

1 1 1 1 1

1 1 1 1 0

1 1 1 0 0

1 1 0 0 0

1 0 0 0 0

Dengan menggunakan filter : H (x,y) = [-1 1]

Maka Hasil filter adalah :

0 0 0 0 1

0 0 0 1 0

0 0 1 0 0

0 1 0 0 0

1 0 0 0 0

Bila digambarkan maka proses filter di atas mempunyai masukan dan keluaran

sebagai berikut

Untuk mencoba perhitungan di atas dapat dilakukan dengan cara manual

menggunakan perhitungan konvolusi yang telah dibahas pada bab 5, atau dengan

memanfaatkan program konvolusi.

Macam-macam metode untuk proses deteksi tepi ini, antara lain:

Page 9: Proposal Skripsi New

1. Metode Robert

2. Metode Prewitt

3. Metode Sobel

Metode yang banyak digunakan untuk proses deteksi tepi adalah metode Robert,

Prewitt dan Sobel.

II.6.2.4 Operator Sobel

Operator sobel melakukan perhitungan secara 2D terhadap suatu ruang di

dalam sebuah gambar dengan harapan nantinya akan nampak daerah-daerah bernilai

tinggi pada gambar tersebut yang merupakan deteksi tepi dari suatu gambaran.

Operator ini biasanya digunakan untuk mencari gradient dari masing-masing pixel

gambar input yang telah di grayscale sebelumnya. Secara teori, diperlukan matrik

setidaknya berukuran 3x3 sebagai kernelnya. Seperti gambar dibawah ini

menunjukkan kernel 3x3 dari sobel :

Gambar 2.5 Kernel Konvolusi Sobel

Sumber : Wikipedia

Kernel ini dirancang untuk menyelesaikan permasalahan deteksi tepi baik

secara vertikal maupun horisontal. Penggunaan kernel-kernel ini dapat digunakan

bersamaan ataupun secara terpisah. Apabila digunakan kernel verikal dan kernel

horisontal

secara bersamaan, maka gradient dapat diukur dengan formula sbb:

G = Gx2 + Gy2

Nilai magnitude dari gradient juga dapat dihitung lebih cepat lagi dengan

menggunakan formula sbb:

G = Gx + Gy

Gradient tersebut pasti mempunyai derajat kemiringan tertentu. Untuk dapat

menegtahui sudut dari gradient tersebut dapat dihitung dengan menggunakan rumus

sbb:

ϑ = arctan(Gy / Gx)

Page 10: Proposal Skripsi New

Dalam kasus ini, orientasi 0 untuk menentukan nilai kontras maximum dari

hitam ke putih dihitung dari kiri menuju kanan dan berjalan terus sampai ke bagian

paling atas dari suatu gambaran. Sedangkan sudutnya diukur berlawanan arah jarum

jam.

Yang sering terjadi dalam filter ini adalah nilai absolut dari magnitude hanya

sebatas penglihatan mata kita saja, apabila terdapat dua komponen gradient maka

akan digabungkan menggunakan operator pseudo-convolution sbb:

Gambar 2.6 Kernel pseudo-convolution agar mempercepat komputasi

Sumber : Wikipedia

Dengan menggunakan kernel pseudo-convolution seperti

diatas maka perhitungan yang terjadi adalah:

Pada kenyataannya operator Sobel memerlukan proses perhitungan yang

lebih lama dibandingkan dengan operator Robert Cross. Akan tetapi, bila nantinya

dalam proses digunakan kernel berukuran besar, maka akan memperhalus gambar

input sehingga nantinya akan mereduksi noise. Keunggulan lain dari operator Sobel

dibandingkan dengan Robert Cross adalah nilainilai output dari proses konvolusi

dengan Sobel lebih akurat dan presisi.

Gambar 2.7 Citra Grayscale dan Hasil Operator Sobel

Sumber : Wikipedia

Page 11: Proposal Skripsi New

II.6.3 Jaringan Syaraf Tiruan

II.6.3.1 Definisi Jaringan Syaraf Tiruan

Jaringan Saraf tiruan (artificial neural networks) atau di singkat JST adalah

sistem komputasi dimana arsitektur dan operasi di ilhami dari pengetahuan tentang

sel saraf biologi di dalam otak. JST dapat digambarkan sebagai model matematis

dan komputasi untuk fungsi aproksimasi nonlinear, klasifikasi data, cluster dan

regresi non parametrik atau sebagai sebuah simulasi dari koleksi model saraf

biologi. [KRI-04]

II.6.3.2 KOMPONEN JARINGAN SARAF

Ada beberapa tipe jaringan saraf, namun demikian, hampir semuanya

memiliki komponen-komponen yang sama. Seperti halnya otak manusia, jaringan

saraf juga terdiri dari beberapa neuron, dan ada hubungan antara neuron-neuron

tersebut. Neuron-neuron tersebut akan mentransformasikan informasi yang di terima

melalui sambungan

keluarnya menuju ke neuron-neuron yang lain. Pada jaringan saraf, hubungan ini

dikenal dengan nama bobot. Informasi tersebut disimpan pada suatu nilai tertentu

pada bobot tersebut. Gambar 2.8 menunjukkan struktur neuron pada jaringan saraf.

Gambar 2.8Struktur neuron jaringan saraf

Sumber : Dewi.2003

Jika kita lihat, neuron buatan ini sebenarnya mirip dengan sel neuron

biologis. Neuron-neuron buatan tersebut bekerja dengan cara yang sama pula

dengan sel neuron biologis. Informasi (disebut dengan input) akan dikirim ke neuron

dengan bobot kedatangan tertentu. Input ini akan di proses oleh suatu fungsi

perambatan yang akan menjumlahkan nilai-nilai semua bobot yang datang. Hasil

penjumlahan ini kemudian akan dibandingkan dengan suatu nilai ambang

(threshold) tertentu melalui fungsi aktivasi setiap neuron. Apabila input tersebut

melewati suatu nilai ambang tertentu, maka neuron tersebut diaktifkan, tapi kalau

tidak, maka neuron tersebut tidak akan diaktifkan. Apabila neuron tersebut akan

Page 12: Proposal Skripsi New

diaktifkan, maka neuron tersebut akan mengirimkan output melalui bobot-bobot

outputnya ke semua neuron yang berhubungan dengannya. Demikian seterusnya.

[DEW-03]

II.6.3.3 ARSITEKTUR JARINGAN

JST yang telah dan sedang dikembangkan merupakan pemodelan matematika

dari jaringan syaraf, berdasarkan asumsi :

1. Pemrosesan info terjadi pada banyak elemen pemroses sederhana yang

disebut neuron;

2. Sinyal dilewatkan antar neuron yang membentuk jaringan neuron;

3. Setiap elemen pada jaringan neuron memiliki 1 (satu) pembobot. Sinyal

yang dikirimkan ke lapisan neuron berikutnya adalah info dikalikan dengan

pembobot yang bersesuaian;

4. Tiap-tiap neuron mengerjakan fungsi aktivasi untukmendapatkan nilai output

masing-masing.

Karakteristik dari JST secara umum adalah :

1. Arsitektur (pola koneksi antar neuron)

2. Pelatihan/ pembelajaran

3. Fungsi aktivasi

Suatu neuron sederhana digambarkan sebagai berikut :

Gambar 2.9 Neuron Sederhana

Sumber : Astutik.2005 : 11

Pada gambar 2.9 di atas, neuron Y menerima input dari neuron X1, X2, dan

X3 serta W1, W2, dan W3 merupakan pembobot antar koneksi dari X1, X2, X3

terhadap neuron Y. Jaringan input y_in pada neuron Y merupakan penjumlahan dari

perkalian neuron-neuron input dengan masing-masing pembobot yang bersesuaian,

dimana :

Page 13: Proposal Skripsi New

……………………………..(2.3)

Fungsi aktivasi dari neuron Y (f(y_in)) diberikan sebagai fungsi dari

input jaringannya (y_in) :

...............................................(2.4)

Apabila neuron Y di atas dihubungkan dengan neuron Z1 dan Z2 dengan pembobot

v1 dan v2, maka nilai aktivasi z1 dan z2 dari neuron neuron Z1 dan Z2 akan

tergantung pada input-input dari beberapa atau bahkan banyak neuron , tidak hanya

satu.

Gambar 2.10 Neuron Network Yang Sangat Sederhana

Sumber : Astutik.2005 : 12

Gambar 2.10. merupakan suatu model neural network yang sangat sederhana yang

terdiri dari unit-unit input, output dan satu unit hidden yang terletak pada suatu

lapisan tersembunyi (hidden layer).

Susunan dari neuron-neuron di dalam layer dan bentuk hubungan di dalam

dan diantara layer disebut net architecture (arsitektur jaringan). Neural net pada

umumnya diklasifikasikan berdasarkan pada jumlah layer (input unit tidak dihitung

sebagai layer, karena tidak mengerjakan fungsi aktivasi). Jumlah dari layer pada net

dapat didefinisikan menjadi jumlah layer-layer dari pembobotan interkoneksi (links)

diantara neuron-neuron, karena pembobot pada suatu net berisi info yang amat

penting. Sebuah net yang memiliki satu layer dari hubungan pembobot-

pembobotnya, diantara unit-unit input dengan unitunit output disebut single-layer

neural network (Gambar 2.11).

Page 14: Proposal Skripsi New

Sedangkan, sebuah net dengan satu atau lebih hidden layer diantara unit -unit

input dengan unit-unit output dikenal dengan multilayer neural network (Gambar

2.12). Untuk beberapa kasus, mungkin multilayer lebih menguntungkan, tetapi pada

umumnya dengan satu layer saja sudah memadai untuk menyelesaikan berbagai

masalah.

Gambar 2.11 Singlelayer Neural Network

Sumber : Fausett.1997

Gambar 2.12 Multilayer neural network

Sumber : fausett.1997

Page 15: Proposal Skripsi New

II.6.3.4 JARINGAN SARAF TIRUAN PROPAGASI BALIK

Metode Neural Network atau Jaringan Saraf Tiruan (JST) yang akan

digunakan pada tugas akhir ini menggunakan algoritma Backpropagation. Aturan

belajar algoritma ini adalah menggunakan error atau ketidaksesuaian output dengan

target untuk koreksi bobotnya. Bobot di koreksi sampai error dapat diterima

(memenuhi toleransi yang kita berikan) atau sampai dengan jumlah epoch tertentu.

Prosedur pengajaran atau pembentukan bobot-bobot yang digunakan adalah

sebagaimana yang digunakan dalam pengajaran jaringan yang bersifat supervised

learning (pengajaran yang menggunakan target). Sehingga aturan ini memerlukan

pasangan output untuk tiap input yang akan diajarkan.

Dengan keadaan bobot awal random, tiap input dilewatkan ke bobot tersebut

dan di hasilkan output untuk saat itu. Output tersebut di bandingkan dengan target

yang diinginkan. Besar perbedaan yang terjadi digunakan sebagai faktor pengubah

pembobot yang menghubungkan input dengan output tersebut (Update wight).

Sehingga, dengan bobot yang baru akan mengarahkan output ke target yang

seharusnya. Proses perubahan bobot berdasarkan error ini dilakukan terus sampai

output yang di hasilkan sesuai dengan yang di targetkan, atau mempunyai error yang

dapat diterima. Logika umumnya adalah sebuah metode untuk meminimalisasi error

rata-rata total (gradient descent), yang dihitung oleh net (jaringan neuron).

Gambar 2.13 Gradient descent

Sumber : Astutik.2005 : 14

Tujuannya, yaitu melatih sistem jaringan untuk mencapai suatu

keseimbangan dalam merespon secara benar model input yang telah dilatihkan, dan

kemampuan untuk memberikan respon yang masuk akal bagi input yang mirip tetapi

Page 16: Proposal Skripsi New

tidak identik dengan input pada saat pembelajaran. Pada proses pengajaran,

diperlukan semua pola data input

yang akan diajarkan dan target yang telah di tentukan sebelumnya. Setiap pola yang

diinputkan akan diolah dan diproses melalui bobot yang ada, dan hasilnya

dibandingkan dengan data target yang diinginkan, kemudian dihitung error-nya

(ketidaksamaan hasil saat itu dengan hasil yang diinginkan). Dimana, error tersebut

diumpan-balikkan (backpropagation) kebobot yang menghubungkan layer tersebut

sebagai sinyal koreksi bobot, agar dengan bobot yang baru errornya berkurang

sampai dengan harga yang diterima.

Prinsip algoritma bacpropagation memiliki 3 fase, yaitu:

1. Fase feedforward pada pola input pembelajaran.

2. Fase kalkulasi dan backpropagation error yang didapat.

3. Fase penyesuaian bobot.

Arsitektur yang digunakan adalah jaringan perseptron lapis banyak (multi layer

perseptron), hal ini merupakan generalisasi dari arsitektur jaringan perseptron lapis

tunggal. Secara umum, algoritma jaringan ini memerlukan waktu pembelajaran yang

memang lambat, namun setelah pembelajaran selesai, aplikasinya akan memberikan

output yang sangat cepat dikarenakan faktor pembobot yang lebih baik..Berikut

adalah gambar arsitektur algoritma Backpropagation dengan banyak lapisan :

Gambar 2.14 Arsitektur Backpropagation

Sumber : Freeman.1991: 90

Page 17: Proposal Skripsi New

II.6.3.5 Fungsi Aktivasi

Fungsi aktivasi merupakan fungsi pengolah jumlahan data input menjadi

data output. Karakteristik pada fungsi aktivasi dari Backpropagation adalah

kontinyu, dapat diturunkan, dan tidak menurun secara monoton. Fungsi aktivasi

merupakan lengkung sigmoid, sebagaimana ditunjukkan oleh keterangan berikut.

Ada beberapa jenis fungsi aktivasi untuk algoritma backpropagasi:

1. Bipolar sigmoid

Bipolar sigmoid memiliki range dari (-1,1) dan didefinisikan :

............................................................................(2.5)

dan turunan fungsi adalah :

f '(x) = 0.5 [1 + f(x)][1 – f(x)] ..................................................................(2.6)

Ilustrasi fungsi di atas digambarkan :

Gambar 2.15 Bipolar sigmoid, range (-1,1)

Sumber : Astutik.2005 : 17

Fungsi bipolar sigmoid ini dapat juga dihasilkan dari :

……........…....................(2.7)

dengan turunan fungsi adalah :

h ' (x) = [1 + h(x)][1 – h(x)] ............................................................( 2.8)

2. Binary sigmoid

Binary sigmoid memiliki range dari (0,1) dan didefinisikan :

………………………………..............…(2.9)

Page 18: Proposal Skripsi New

dan fungsi turunannya adalah :

f '(x) = f(x).[1-f(x)] …………………....................……………….(2.10)

Ilustrasi fungsi di atas digambarkan :

Gambar 2.16 Binary sigmoid, range (0,1)

Sumber : Astutik.2005 : 18

Lengkung sigmoid secara relatif mendatar pada kedua ujungnya, dan

meningkat cepat pada pertengahannya. Ketika x kurang dari –3, f(x) mendekati 0,

ketika x lebih besar dari 3, f(x) mendekati 1. Kenyataannya, f(x) mendekati 1 secara

lurus sebagaimana x bertambah dan f(x) mendekati 0 secara lurus sebagaimana x

menjadi lebih besar dari harga negatif. Ada suatu transisi dari 0 ke 1 dimana x

secara perkiraan (-3 < x <3). Fungsi sigmoid menunjukkan semacam threshold yang

dibulatkan (dan

dapat diturunkan} terhadap fungsi step (gambar 2.17).

Gambar 2.17 Fungsi Step

Sumber : Astutik.2005 : 18

Page 19: Proposal Skripsi New

Setelah fungsi sigmoid dihitung, nilai resultan menjadi level pengaktifasi

unit tersebut. Nilai ini, dikirim sepanjang interkoneksi output. Nilai output yang

sama dikirim ke semua interkoneksi output.

Lapisan input unit adalah kasus khusus. Unit-unit ini tidak menunjukkan

jumlah pembobotan pada vektor inputnya. Kita pertimbangkan lapisan input sebagai

sebuah lapisan jaringan meskipun tidak menunjukkan jumlah pembobotan dan

perhitungan sigmoid.

Beberapa jaringan backpropagasi menerapkan sebuah unit bias sebagai

bagian tiap lapisan. Unit ini mempunyai nilai pengaktifan konstan berharga 1,

dimana tiap unit bias dihubungkan ke semua unit pada lapisan selanjutnya yang

lebih tinggi, dan pembobotan padanya diatur selama back-error propagation. Unit

bias memberikan masa konstan dalam jumlah pembobotan dari unitunit dilapisan

selanjutnya. Hasilnya kadangkala merupakan properti konvergensi (menuju target)

dari jaringan. Unit bias juga memberikan efek threshold pada tiap unit pada

targetnya, fungsi sigmoid (1). Ini ekivalen dengan translasi lengkung sigmoid pada

gambar 2.18, ke kiri atau ke kanan.

Gambar 2.18 Lengkung Sigmoid

Sumber : Astutik.2005 : 19

Sebagai contoh, anggap unit bias (v0) pada gambar 2.12

mempunyai nilai output 1 dan bobot :

c=vj0 ..............................................................................................(2.11)

dengan mengambil

. ……………………………......................……(2.12)

Page 20: Proposal Skripsi New

Maka z adalah jumlah masukan dari semua unit pada gambar 2.13 selain unit bias.

Jika unit bias memberi kontribusi konstanta c ke jumlah masukan unit j,

penjumlahan ini menjadi:

z+c ……………………………………………........................….(2.13)

Konstanta c mentranslansikan grafik ke kiri sejumlah c, kemudian menggerakkan

threshold lengkung sigmoid dari 0 ke –c. Dengan cara ini, unit bias memberikan

suatu threshold yang dapat diatur untuk tiap unit target. Threshold untuk unit j

kemudian diambil dari nilai vj0, bobot interkoneksi dari unit bias.

II.6.3.6 Pembelajaran/ Pelatihan

Pada JST, belajar adalah proses pembentukan konfigurasi harga-harga bobot

dari jaringan. Pembentukan ini memiliki tujuan akhir agar input-input yang

diberikan padanya akan direspon melalui bobot-bobot tersebut sehingga

menghasilkan output yang sesuai dengan target atau mendekati, untuk input yang

bersangkutan. Terdapat banyak cara di dalam proses pembelajaran dari JST, secara

umum dapat dikategorikan dalam 2 jenis proses, yaitu :

• Supervised training (Pembelajaran Dengan Pengawasan)

Pada tipe belajar dengan pengawasan, tiap pola input memiliki pola target.

Sehingga pada pembelajaran tipe ini, masing-masing input memiliki pasangan

output yang bersesuaian. Pada proses belajarnya, bobot-bobot dibangun menuju

kesesuaian respon pasangan input-output dari pola yang diajarkan, yaitu tiap

diberikan pola input yang diajarkan, pembobotnya dapat memberikan respon dan

menghasilkan pola output

yang sesuai dengan target dari pola input tersebut. Dalam hal ini, dapat diterapkan

toleransi kesalahan output respon terhadap target yang seharusnya. Error digunakan

untuk mengubah bobot sambungan sehingga kesalahan akan semakin kecil dalam

siklus pelatihan berikutnya. Pada tugas akhir ini akan digunakan tipe pembelajaran

di atas.

• Unsupervised training (Pembelajaran Tanpa Pengawasan)

Algoritma ini tidak membutuhkan vektor target untuk keluarannya, sehingga

tidak ada perbandingan untuk menentukan respon yang ideal. Kumpulan pola

pelatihan hanya terdiri dari vektor masukan dan, algoritma pelatihan berfungsi

sebagai pengubah/update pembobot (weight) jaringan untuk menghasilkan pola

vektor, sehingga penerapan 2 vektor pelatihan suatu vektor lain yang cukup sejenis

Page 21: Proposal Skripsi New

menghasilkan pola keluaran yang sama. Dalam proses pelatihan, jaringan

mengklasifikasikan pola-pola masukan menjadi kelompok yang sejenis. Penerapan

suatu vektor dari suatu kelas tertentu pada masukannya akan menghasilkan vektor

keluaran yang spesifik, namun tak ada cara untuk menentukan terlebih dahulu pada

pelatihannya, yang akan menghasilkan pola keluaran tertentu dengan satu vektor

masukan dari kelas tertentu.

II.6.3.7 Algoritma Pembelajaran

Algoritma pembelajaran backpropagation terdiri dari tiga tahap, yaitu

feedforward dari pola pelatihan input, backpropagation dari errornya, serta

adjustment of the weights. Algoritma Pembelajaran sebagai berikut :

Step 0. Inisialisasi pembobot (set ke nilai-nilai kecil secara acak/random)

Step 1. Saat kondisi pemberhentian false, kerjakan langkah 2-9

Step 2. Untuk tiap-tiap pasangan pelatihan, kerjakan step 3-8

Feedforward:

Step 3. Tiap input unit (Xi , i = 1……n) menerima sinyal input xi dan

mengirimkan sinyal ini ke semua unit-unit pada layer di atasnya

(hidden units).

Step 4. Tiap hidden unit (Zj , j = 1…..p) menjumlahkan sinyal-sinyal input

pembobotnya,

..........................................

..................(2.14)

menerapkan fungsi aktifasi, menghitung sinyal output:

z j = f(z_inj), ........................................................................(2.15)

dan mengirimkan sinyal ini ke semua unit-unit pada layer di atasnya

(output units).

Step 5. Tiap output unit (Yk, k = 1……..m) menjumlahkan sinyal-sinyal input

pembobotnya,

y_in k = wok + zjwjk, .................................................(2.16)

menerapkan fungsi aktivasi, dan menghitung sinyal outputnya :

y k = f(y_ink). ......................................................................(2.17)

Page 22: Proposal Skripsi New

Backpropagation of error :

Step 6. Tiap output unit (Yk, k = 1……..m) menerima suatu pola target yang

bersesuaian dengan pola pelatihan input, menghitung batas informasi

errornya,

δ k = (tk – yk)f ′___ (y_ink), ……...……………………...(2.18)

serta mengkalkulasi batas koreksi pembobotnya(digunakan untuk

update wjk selanjutnya),

∆wjk = αδkzj, …………………………………………….(2.19)

mengkalkulasi batas koreksi biasnya (digunakan untuk meng update

w0k selanjutnya),

∆w0k = αδk, ………………………………………….…..(2.20)

dan mengirimkan δk pada unit-unit layer di bawahnya.

Step 7. Tiap-tiap hidden unit (Zj, j = 1……p) menjumlahkan delta input-

inputnya (dari unit-unit layer diatasnya),

δ_inj = δkwjk,

………………………………………..(2.21)

mengalikan dengan turunan dari fungsi aktivasinya untuk

mengkalkulasi batas informasi errornya,

δj = δ_inj f ′(z_inj), …………………………………………..(2.22)

mengkalkulasi batas koreksi pembobotnya (digunakan untuk meng

update vij kemudian),

∆vij = αδjxi, …..………………………………………………(2.23)

dan mengkalkulasi batas koreksi biasnya (digunakan untuk meng

update v0 j selanjutnya),

∆v0j = αδj, ………………...............................................…….(2.24)

Update weights and biases :

Step 8. Tiap output unit (Yk, k = 1……m) mengupdate bias danpembobot-

pembobotnya (j = 0…..p) :

wjk(new) = wjk(old) + ∆ wjk, ………………………………..(2.25)

Tiap hidden unit (Zj, j=1…..p) meng update bias dan pembobot-

pembobotnya (i = 0……n) :

vij(new) = vij(old) + ∆vij, ……………………………..…….(2.26)

Page 23: Proposal Skripsi New

Step 9. Uji kondisi pemberhentian

II.6.3.8 Faktor-faktor Pembelajaran

Parameter-parameter yang turut menentukan keberhasilan proses belajar

pada algoritma backpropagation adalah :

Inisialisasi pembobot dan bias

Pemilihan nilai awal untuk pembobot merupakan faktor yang mempengaruhi

kecepatan suatu net untuk mencapai kondisi output yang mendekati target

(konvergensi). Nilai pembobot yang terlalu besar menyebabkan nilai output dari

output unit jatuh pada daerah saturasi, sedangkan nilai pembobot yang terlalu kecil

menyebabkan net menjadi sangat lambat untuk belajar.Pembobot bisa diinisialisasi

secara random dengan nilai batasan antara –0.5 sampai 0.5, atau -1 sampai 1.

Adaptasi pembobot

Ada 2 macam jenis adaptasi pembobot,yaitu:

1. Adaptasi kumulatif (comulatif weight adjustment) Pembobot baru diadaptasi

setelah semua pembobot masuk.

2. Adaptasi biasa (incremental updating)Pembobot diadaptasi pada setiap pola

yang masuk.

Learning rate (α)

Parameter kecepatan belajar sangat mempengaruhi intensitas dalam proses

belajar, efektivitas dan konvergensi dari pelatihan. Harga optimum dari α

tergantung dari masalah yang dihadapi. Intinya, dipilih sedemikian rupa agar

tercapai konvergensi yang optimal dalam proses pelatihan. Harga α yang relatif

kecil menjamin penurunan gradien terlaksana dengan baik, namun hal ini berakibat

lamanya jumlah iterasi. Harga batasan untuk α antara 0.001 sampai 10 untuk proses

belajar.

Momentum ( µ )

Tujuan metode ini adalah untuk mempercepat konvergensi dari algoritma

error backpropagation. Prinsip dari metode ini adalah menambahkan sebagian dari

perubahan pembobot sebelumnya. Hal ini dapat dirumuskan dengan :

∆w(t) = α E(t) + µ∆w(t-1)…………………....................................(2.27)

dengan µ adalah harga konstanta momentum yang berupa bilangan positif antara 0.5

sampai dengan 0.9. Penggunaan momentum ini disarankan apabila konvergensi

berlangsung terlalu lama.

Page 24: Proposal Skripsi New

Parameter-parameter yang telah dijelaskan di atas dapat membantu proses

algoritma backpropagasi error agar lebih cepat mencapai keadaan konvergensi.

Maka, JST Backpropagasi dilatih secara terpadu (supervised) dengan menggunakan

algoritma GDR (Generalized Delta Rule) yang menyertakan parameter-parameter di

atas dengan langkah sebagai berikut:

1. Inisialisasi iterasi N=1.

2. Inisialisasi matriks bobot wij dengan bilangan random, ataunilai yang

didapat sebelumnya.

3. Masukkan pola input dan hitung respon JST.

4. Hitung error output, dengan rumus :

………………...…….....................................……(2.28)

dimana:

t = target output.

o = keluaran dari jaringan neural network.

5. Jika E ≤ Et (threshold) atau N ≥ Nmak stop training.

Hitung output neuron, dengan rumus:

δo=(t-o).f ’(x)……………………...................................................…(2.29)

dimana:

f‘(x) = turunan fungsi sigmoid.

X = input neuron, total output dari hidden layeryang terkoneksi.

6. Hitung keluaran hidden layer, dengan rumus:

hj=f ‘(x). ……........................(2.30)

dimana :

n = jumlah neuron pada output layer.

Wnj = bobot koneksi dari neuron j ke neuron n.

n = keluaran dari neuron output

7. Update matrik bobot wij dengan rumus:

∆wij(n+1) = α. j.oj + µ.∆wji(n)…….................…(2.31)

dimana:

α = laju pembelajaran (learning rate)

µ = parameter momentum

oj = output neuron i yang masuk ke neuron j

Page 25: Proposal Skripsi New

= keluaran dari neuron hidden.

8. Naikkan harga N, kembali ke langkah 3 hingga selesai jika langkah 5

terpenuhi.

Training dilakukan sampai error melampaui ambang toleransi atau jumlah

training telah mencapai harga yang telah ditentukan. Setelah training selesai

dilakukan dengan ambang toleransi telah dicapai atau dilampaui, matrik bobot wij

dipakai untuk menentukan jalur yang paling ekonomis. Sedangkan untuk mengecek

hasil dari training

tersebut digunakan data yang digunakan pada saat training terpadu, jika

menghasilkan keluaran yang benar, maka pada proses training berhasil.

Fase Pemakaian

Pada fase pemakaian, pola yang hendak dikenali dimasukkan pada node

layer masukan jaringan. Inisialisasi pembobot sambungan diambil dari nilai

pembobot sambungan terakhir pada tahap belajar yang dianggap terbaik. Pada fase

ini, jaringan (backpropagation neural network) diterapkan hanya dengan

penggunaan fase umpan maju (feedforward) dari algoritma pelatihan. Prosedurnya

sebagai berikut :

Step 0 Inisialisasi pembobot (dari pembobot terakhir saat pelatihan)

Step 1 Untuk tiap-tiap vektor input , kerjakan langkah 2-4

Step 2 For i = 1……n : set aktivasi dari input unit xi .

Step 3 For j = 1…..p :

z_inj = voj + ∑ xivij………………………....................................…(2.32)

z j = f(z_inj)…………………………...………………………..……(2.33)

mengirimkan sinyal ini ke semua unit-unit pada layer di atasnya, output

(units).

Step 4 For k = 1……..m) :

y_in k = wok + zjwjk……...................................................…...(2.34)

menerapkan fungsi aktivasi menghitung sinyal outputnya

y k = f(y_ink)…………………………...........(2.35)

Page 26: Proposal Skripsi New

II.6.3.9 Permasalahan dalam Bacpropagation

Gambar 2.19 Kesalahan pada Local Minimum

Sumber : Freeman.1991 : 106

Pemasalahan yang mungkin terjadi dalam pelatihan bacpropagation dan

beberapa model jaringan saraf tiruan lainnya adalah saat pelatihan, output terjebak

dalam local minimum sehingga proses pelatihan tidak akan mencapai global

minimum, seperti yang ditunjukkan pada gambar 2.16. diatas.

II.7 Metodologi Penelitian

Langkah-langkah yang dilakukan dalam pembuatan aplikasi ini adalah :

1. Studi literatur mengenai retina dan berbagai penyakit mata yang diakibatkan

oleh Diabetes Melitus.

2. Penentuan kebutuhan dan perancangan aplikasi

Menentukan bahan dalam pembuatan aplikasi

Data :

Data yang digunakan adalah citra retina hasil foto Fundus yang diambil dari

Rumah Sakit Dr. Saiful Anwar Malang dengan format .bmp.

Analisa Kebutuhan

Aplikasi ini dikembangkan dengan metode analisis berorientasi objek berupa

UML dengan tool bahasa pemrograman Java.

Dari analisa kebutuhan awal yang telah dilakukan maka diteruskan dengan

pembuatan rancangan awal aplikasi dalam bentuk Use Case Diagram aplikasi

Page 27: Proposal Skripsi New

Gambar 2.20 Contoh Use Case Diagram

Perancangan Perangkat Lunak

Perancangan perangkat lunak dilakukan dengan orientasi terhadap objek

menggunakan UML. Dari diagram use case dibuat diagram activity, yang

menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang,

bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan

bagaimana mereka berakhir.

3. Implementasi Rancangan

Implementasi rancangan dilakukan dengan menggunakan aplikasi Java dan

dibagi menjadi dua tahap, yaitu:

- Pembuatan unit, untuk setiap kelas, objek, dan interface yang telah

dirancang sebelumnya.

- Integrasi unit, yang dilakukan setelah setiap unit telah dibuat sebelumnya.

Tahap implementasi dilakukan berurutan atau secara perulangan dengan

mengacu kepada analisis kebutuhan dan perancangan aplikasi.

Page 28: Proposal Skripsi New

Gambar 2.21 Contoh Activity Diagram

4. Pengujian dan Analisis Aplikasi

Pengujian aplikasi untuk mengetahui apakah aplikasi yang telah dibuat dapat

berjalan sesuai dengan fungsi yang diinginkan sebelumnya. Pengujian aplikasi

dilaksanakan dalam beberapa tahap, yakni :

- Pengujian Kotak Putih (White Box Testing), dengan menggunakan kelas

dummy dari kelas-kelas yang digunakan, untuk mengetahui apakah algoritma

yang digunakan telah bekerja dengan benar.

- Pengujian Kotak Hitam (Black Box Testing), untuk mengetahui apakah

semua kebutuhan telah terpenuhi.

- Pengujian terhadap data, dimana pengujian akan dilaksanakan untuk 20 data,

10 data citra Retinopati Diabetes dan 10 data citra retina normal untuk

mengetahui perbedaan pola diantara keduanya.

- Strategi pengujian meliputi Pengujian Unit, Pengujian Terintegrasi dan

Pengujian Validasi.

Page 29: Proposal Skripsi New

II.8 Sistematika Penulisan

Dalam penulisan tugas akhir ini untuk mendapat hasil yang sesuai dengan

sasaran yang ingin dicapai maka digunakan sistematika penulisan sebagai berikut :

BAB I memuat tentang latar belakang, rumusan masalah, ruang lingkup,

tujuan, dan sistematika penulisan.

BAB II memuat tentang teori dasar dan teori penunjang mengenai

pengolahan citra dan Jaringan Syaraf Tiruan Backpropagation.

BAB III membahas tentang perancangan dan pembuatan aplikasi Jaringan

Syaraf Tiruan untuk identifikasi pola citra retina dengan menggunakan Java.

BAB IV membahas tentang simulasi dan pengujian identifikasi pola citra

retina dengan metode Backpropagation.

BAB V berisi tentang kesimpulan dan saran yang didapatkan selama proses

perencanaan dari sistem serta rencana pengembangan dari proyek akhir

dimasa yang akan datang.

Page 30: Proposal Skripsi New

III. Daftar Pustaka

[AST-06] Astutik, Wahyu Sri. 2006. Proyek Akhir Pengenalan Osteoporosis

Melalui Pola Iris Mata. Surabaya : Jurusan Teknik Elektronika

POLTEK ITS.

[BAS-05] Basuki, Achmad .2005. Pengolahan Citra Digital.

Yogyakarta :Graha Ilmu.

[BOS-96] Bose, N.K., Liang, P. 1996. Neural Network Fundamentals with

Graphs, Algorithms, and Applications. Singapore : McGraw Hill.

[CSU-06] http://www.cs.ui.ac.id/WebKuliah/citra/2005. tanggal akses : 21

Desember 2006.

[DEW-03] Dewi, Sri Kusuma. 2003. Artificial Intelligence (Teknik dan

Aplikasinya). Yogyakarta : Graha Ilmu.

[DEP-07] http://www.depkes.go.id/index.php?option=news&task=viewarticle

&sid=1183&Itemid=2. tanggal akses : 21 Maret 2007

[DJU-07] Djuwantoro, Dy-ri. Deteksi Dini Kebutaan akibat Diabetes Melitus

di Puskesmas. www.kalbefarma.com/files/cdk/files/16Deteksi

DiniKebutaan95.pdf/16DeteksiDiniKebutaan95.html. tanggal akses:

12 Maret 2007.

[FAU-97] Fausett, L. 1997. Artificial Neural Network, McGRAW-HILL INT.

[FIK-05] Fikri, Rijalul, Adam, Ipam Fuadina, Prakoso, Imam. 2005.

Pemrograman Java. Yogyakarta : ANDI.

[FRE-91] Freeman, James A., Skapura, David M. 1991. Neural Networks

Algorithms, Applications, and Programming Techniques. United

States of America : Addison-Wesley Publishing Company, Inc.

[ILY-05] Ilyas, Sidarta. 2005. Kedaruratan Dalam Ilmu Penyakit Mata.

Jakarta : Balai Penerbit Fakultas Kedokteran Universitas Indonesia.

[JAH-97] Jahne, Bernd.1997. Digital Image Processing Concepts, Algorithms,

and Scientific Applications. Berlin, Germany : Springer.

[KRI-04] Kristanto, Andri. 2004. Jaringan Syaaf Tiruan: Konsep Dasar,

Algoritma, dan Apilkasi. Yogyakarta :Gava Media.

[LEC-06] http://lecturer.eepis-its.edu/~riyanto/citra-bab8.pdf. tanggal akses : 21

Desember 2006.

[WIK-06] http://en.wikipedia.org/wiki/Sobel. tanggal akses : 21 Desember 2006.