Klasifkasi Citra dengan meggunakan metode pembelajaran dari Fuzzy Neural Network dan Algoritma Backtracking
Oleh : Dr. A Haris Rangkuti M.M, M.Si
1.0 Gambaran Umum
Pada dasarnya Fuzzy Neural Network merupakan suatu model yang dilatih dengan memanfaatkan sistem jaringan syaraf tiruan, namun struktur jaringannya diinterprestasikan dengan sekelompok aturan – aturan fuzzy. Selain itu FNN merupakan arsitektur jaringan yang didesign untuk memproses data – data fuzzy (Park et al., 2004). FNN dengan parameter – parameter yang dimiliki oleh neuron dan bobot penghubung yang disajikan numeris, dapat digantikan dengan memanfaatkan parameter – parameter fuzzy (Lin et al., 1996). Adakalanya Input dan output bernilai fuzzy, sedangkan untuk bobot yang bernilai crisp atau input crisp, sedangkan bobot dan outputnya fuzzy atau baik input, output maupun bobotnya bernilai fuzzy. Dimungkinkan juga algoritma pembelajaran para jaringan syaraf yang di fuzzykan terlebih dahulu dan selanjutnya sudah merupakan jaringan utuh (Lin et al., 1996).
Fuzzy Neural network mengunakan metode pembelajaran jaringan syaraf untuk mendayagunakan pengetahuan pakar yang direpresentasikan dalam bentuk IF-THEN (Wu et al,2004). Pada FNN unsur unsur utama pada jaringan syaraf tidak lagi mengunakan klasik , namun diganti dengan pendekatan logika fuzzy. Pada beberapa kasus yang berbasis aturan (mengunakan anteseden sebgai inputan yang berhubungan dengan konsekuen sebagai target output) sebagai data pelatihan. FNN memungkinkan adanya pemetaan aturan dalam bentuk IF Then kedalam jaringan syaraf (Liu et al, 1995). Secara umum ada 3 komponen utama jaringan syaraf menjadi fokus pada FNN, yaitu neuron (menjadi fuzzy neuron), model jaringan syaraf dan pembelajaran (menjadi algoritma pembelajaran fuzzy). FNN mengunakan input dan atau output yang berupa himpunan bagian fuzzy. Biasanya digunakan bentuk linguistik, bilangan fuzzy atau interval untuk memodelkan FNN tersebut. Pada FNN mungkin ada perubahan karakteristik dasar dari neuron, dimana neuron dirancang untuk representasi operasi dasar dari himpunan fuzzy. Selain itu FNN mengunakan error yang bersifat fuzzy untuk menunjukkan ketidakstabilan jaringan, ukuran kekaburan dan ukuran ketidakpastian digunakan untuk menyatakan error pada sistem jaringan syaraf tiruan (Park et al,2000).
2.0 Jaringan Syaraf Dengan Inputan Fuzzy
Dalam ekspertiment misalkan kita memiliki sebanyak S buah aturan dalam bentuk If – Then sebagai berikut :
IF x1 ia Af and … and xn is Af+1 Then Y is Ty dengan f = 1…; Af adalah bilangan Fuzzy. Aturan fuzzy ini dapat dipandang sebagai pasangan input – output.
Contoh : terdapat 3 aturan fuzzy sebagai berikut :
R1 : IF x1 Rendah and x2 Tinggi then y Banyak
R2 : IF x1 Sedang and x2 Sedang then y Normal
R3 : IF x1 Tinggi and x2 Rendah then y Sedikit
Contoh dari beberapa rule klasifikasi yang terbentuk dari hasil dari proses training adalah sebagai berikut :
Rule 1:
Dengan berdasarkan pengujian terlihat bahwa rule yang paling baik dalam mengklasifikasikan motif citra berdasarkan rule yang merupakan dari hasil pengujian.
Pada Gambar 1.0 terlihat bahwa ada 3 lapisan untuk model fuzzy perceptron. Dimana untuk Inputan (x1.. x7) merupakan bilangan crisp. lapisan ke 1 adalah lapisan input (f1.. f7) (L1). Sedangkan untuk lapisan ke 2 adalah lapisan Fuzzifikasi dan lapisan ke 3 adalah lapisan output (O1..O12). Untuk lapisan ke-2 (L2) digunakan untuk fuzzifikasi dimana nilai fitur input dipetakan ke nilai keanggotaan (membership function) dan lapisan terakhir menjalankan mesin fuzzy inference (Kulkarni et al., 2006)
3.0 Klasifikasi data citra dan Pembentukan rule
Dalam Penelitian yang mengembangkan algoritma fuzzy neural network untuk proses klasifikasi data citra yaitu, dengan membentuk rule dalam mendukung proses penentuan kelas citra query. Proses klasifikasi dilakukan dengan melatih / training data citra yang mengunakan 7 (tujuh) inputan ciri citra yaitu mean, standard deviasi, energi, entropi, konkuren, korelasi dan skewnes. Untuk setiap ciri citra yang ditraining harus dilakukan fuzzifikasi yang objeknya dibagi menjadi 5 kelompok yaitu sangat rendah (SR), Rendah(R), Menengah (M), Tinggi (T) dan Sangat Tinggi (ST). Gambaran Arsitektur dari algoritma fuzzy neural network adalah sebagai berikut (Kulkarni et al, 2006) :
Pada gambar 2.0 menjelaskan arsitektur FNN untuk proses klasifikasi dengan training dari ciri citra sebagai berikut :
- Layer 1 melakukan inputan 7 ciri citra yang bernilai crisp yang berupa Energi (X1), Mean (X2), Standar deviasi (X3), Kontras (X4), Entrophy (X5), Korelasi (X6) dan Skewnes(X7).
- Layer 2 melakukan fuzzifikasi terhadap 7 (tujuh) ciri citra yang bernilai crisp. untuk menghasilkan bilangan fuzzi berdasarkan derajat keanggotaan. Bilangan fuzzy ini akan menjadi inputan pada layer 3 sekaligus menjadi data latih pada jaringan syaraf tiruan (JST) dengan model single layer perceptron. Output dari latihan ini untuk mengklasifikasikan data citra ke dalam 12 kelas.
- Dalam melakukan klasifikasi dengan mengunakan kombinasi nilai biner yang dihasilkan dari ketujuh neuron pada layer 3. Indeks neuron yang menghasilkan nilai 1 akan menunjukkan kelas dari image yang diinputkan. Misalnya output pada layer 3 adalah (0 0 1 0 0 0 0), maka citra dikelompokkan dalam kelas 3 (karena angka 1 ada pada indeks neuron ke-3).
Pada setiap neuron di layer 3, akan dihitung nilai keluarannya berdasarkan rumus:
Selanjutnya, nilai error akan dihitung dari selisih antara nilai keluaran pada masing-masing neuron pada layer 3. Dari error tersebut akan dilakukan proses propagasi balik untuk memperbaiki nilai bobot dalam pelatihan.
- Proses pelatihan ini akan berhenti jika nilai Mean Square Error (MSE) sebesar 10-4. Proses pelatihan akan menghasilkan keluaran berupa bobot optimal dari JST dan dilanjutkan dengan proses backtracking dari layer 3 ke layer 2 untuk membentuk rule klasifikasi.
3.0 Pembentukan Rule Klasifikasi
Gambaran dari proses pembentukan rule melalui pengembangan model kulkarni (2006) sebagaimana yang ditunjukkan pada Gambar 3.0.
Gambar 3.0 menjelaskan proses klasifikasi dengan melatih sejumlah citra dan dilanjutkan dengan pembentukan rule dengan mengunakan algoritma backtraking. Proses dimulai dengan fuzzifikasi 7 ciri citra, dilanjutkan proses pelatihan dengan menggunakan JST terhadap sejumlah data citra hingga didapatkan bobot yang optimal. Proses backtracking dimulai dari layer 3 ke layer 2 untuk membentuk sekumpulan kandidate fuzzi rule /aturan. Tahapan untuk algoritma backtracking dilakukan sebagai berikut:
- Untuk setiap data latih yang berupa bilangan fuzzy dari setiap ciri citra akan di inputkan kedalam JST yang telah dilatih sebelumnya (layer 2 ke layer 3). Kemudian dilakukan proses perhitungan pada layer JST menggunakan persamaan (4.1) dan (4.2). Untuk setiap data latih, didapatkan nilai keluaran JST pada layer 3. Namun untuk nilai keluaran JST tersebut tidak dibulatkan menjadi bilangan 0 atau 1, tetapi tetap dalam nilai desimalnya. Misalnya keluaran pada layer 3 yakni (0.3 | 0.4 | 0.7 | 0.23 | 0.12 | 0. 5 | 0.33), maka tidak dibulatkan menjadi (0 | 0 | 1 | 0 | 0 | 1 | 0).
(3.0) |
- Untuk setiap neuron pada layer 3, dilakukan pengecekan neuron mana saja yang menghasilkan nilai >= 0.5. Sebagai contoh misalnya neuron 3 dan neuron 6 yang menghasilkan nilai >= 0.5, yakni 0.7 dan 0.5, maka proses selanjutnya dilakukan backtracking dari neuron ke-3 (pada layer 3) tersebut ke semua neuron pada layer 2. Caranya pertama, hitung nilai perkalian antara nilai pada neuron di layer 3 dengan masing-masing bobot jaringan yang menghubungkannya, dengan setiap neuron di layer 2 seperti yang ditunjukkan oleh persamaan (3.0).
dimana:
Zij : Nilai hasil kali antara neuron ke-j pada layer 3 dengan bobot yang menghubungkan neuron ke-i pada layer 2 dan neuron ke-j pada layer 3.
Wij : bobot jaringan antara neuron ke-i dan neuron ke-j.
Oj : Nilai keluaran pada neuron ke-j (pada layer 3).
Misalnya, untuk fuzzy input dari ciri Mean, diketahui bahwa neuron yang bernilai >= 0.5 pada layer 3 adalah neuron ke-3 dan neuron ke-6, yakni dengan nilai 0.7 dan 0.5, maka nilai Zij-nya dihitung seperti ini:
Namun sekumpulan kandidat rule itu akan diseleksi kembali, untuk menghilangkan rule redundan dan rule yang bertentangan. Untuk Rule yang bertentangan itu didefinisikan sebagai kumpulan rule yang memiliki kondisi yang sama, tetapi konsekuennya berbeda. Gambaran dari solusi mengatasi redundan dan konflik dimisalkan terdapat dua kandidat rule yang saling bertentangan contoh :
- IF “Mean = H“ AND “STD = H” AND “Energi = VL” THEN “Kelas = 1“
- IF “Mean = H“ AND “STD = H” AND “Energi = VL” THEN “Kelas = 4“
Ketika ada dua atau lebih rule yang memiliki antisendent yang sama, tetapi memiliki konsekwen yang berbeda, maka harus dihitung nilai Degree of Significant (D) dari kedua rule tersebut. Nilai D dihitung menggunkan persamaan 4.0.
(4.0)
dimana:
D : nilai degree of significant
µn : nilai fuzzy input dari ciri ke-n
Oi : nilai keluaran pada neuron ke-i (layer 3
Misalkan pada rule ke-1, nilai Mean (H) = 0.5, STD (H) = 0.7, dan Energi (VL) = 0.6, dan nilai O1 = 0.65, maka nilai D1 = 0.5 * 0.7 * 0.6 * 0.65 = 0.1365.
Kemudian pada rule ke-2, nilai Mean (H) = 0.8, STD (H) = 0.7, dan Energi (VL) = 1, dan nilai O4 = 0.8, maka nilai D2 = 0.8 * 0.7 * 1 * 0.8 = 0.448.
Berdasarkan nilai D1 dan D2, maka rule yang lebih kuat nilai signifikansinya adalah rule ke-2, karena nilai D2 > D1. Sehingga, rule ke-1 dihapus.
Dengan berdasarkan contoh diatas bahwa rule/ aturan yang memiliki nilai D (degree of significant) yang lebih besar, maka rule tersebut yang akan digunakan. Pada dasarnya terdapat kelebihan dari konsep ini, dimana jika citra data yang sudah ditraining berbeda dengan dengan data yang diuji, maka dengan menggunakan rule / aturan yang sudah terbentuk dari model ini, akan diusulkan oleh sistem kelas yang sesuai.
Daftar Pustaka
Kulkarni, A., & Mccaslin, S. (Nov. 2006). Fuzzy neural network models for multispectral image analysis. In Proceedings of the 5th WSEAS International Conference on Circuits, Systems, Electronics, Control & Signal Processing (pp. 66-71). World Scientific and Engineering Academy and Society (WSEAS).
Lin, Chin Teng and Lee George 1996, “Neural Fuzzy System, London: Prentice Hall.
Liu, Zhi Qiang dan Yan Francais 1995 “ Case based Diagnostic System Using Fuzzy Neural Network”, IEEE
Park, S. B., Lee, J. W., & Kim, S. K. (2004). Content-based image classification using a neural network. Pattern Recognition Letters, 25(3), 287-300.
Park, Sungwoo dan Han Taisook, 2000,“Iterative Inversion od fuzzified Neural Network “, IEEE Transaction on fuzzy system vol.8 no.3.
Wu, Peitsang, Yang, Kung Jiuan dah Hung Yung Yao, 2004, “A Study Electromagnetism-like mechanism for training fuzzy neural network”
Comments :