Anda di halaman 1dari 11

Wood Parket Classification based on GDLM texture Analysis With

Backpropagation Method

Muhammad Arief Rahman Hakim

Undergraduate Program, Faculty of Industrial Engineering, 2010


Gunadarma University
http://www.gunadarma.ac.id

Keywords: Classification, Wood Parquet, Neural Network, Backpropagation

ABSTRACT

Tectona Grandis Teak or included in the first grade because of the strength, durability and
beauty. In the timber industry now, teak are also processed pieces of parquet (parquet) floor
coverings. Parquet wood also has a variety of patterns. In this writing wood parquet pattern is
classified into 3 (three) kinds of patterns. The patterns it is a striped pattern, a curved pattern
that resembles the letter U and also the pattern somewhat disabled (handicap not exceeding 20
per cent). The patterns of parquet teak in this paper entered for classification in automation.
Classification automation conducted in this study based on texture analysis GLDM. Input data
analysis texture is then used to classify using Neural Networks backpropagation method.
KLASIFIKASI PARKET KAYU JATI BERDASARKAN
ANALISA TEKSTUR GLDM MENGGUNAKAN METODE
BACKPROPAGATION

Muhammad Arief Rahman Hakim


Jurusan Teknik Informatika, Fakultas Teknologi Industri, Universitas Gunadarma
Email: blackandredbrigade@student.gunadarma.ac.id

ABSTRAK

Kayu jati atau Tectona Grandis termasuk dalam kelas satu karena kekuatan, keawetan
dan keindahannya. Dalam industri kayu sekarang, jati juga diolah keping-keping parket
(parquet) penutup lantai. Parket kayu juga memiliki pola yang bermacam-macam. Pada
penulisan ini pola parket kayu diklasifikasikan menjadi 3(tiga) macam pola. Pola-pola
tersebut adalah pola bergaris, pola melengkung yang menyerupai huruf U dan juga pola yang
agak cacat (cacatnya tidak melebihi 20 persen). Pola-pola parket kayu jati dalam skripsi ini
dimasukkan untuk pengklasifikasian secara otomatisasi. Klasifikasi otomatisasi yang
dilakukan dalam penelitian ini berdasarkan analisa tekstur GLDM. Data input hasil analisa
tekstur ini kemudian digunakan untuk mengklasifikasi menggunakan Jaringan Saraf Tiruan
menggunakan metode backpropagation.

Kata Kunci : Klasifikasi, Parket Kayu Jati, Jaringan Saraf Tiruan, Backpropagation.

PENDAHULUAN

Kayu jati Indonesia memiliki beberapa kelebihan yang mungkin tidak dimiliki oleh kayu-kayu
jenis lain baik dari sisi kekuatan ataupun teksturnya. Dalam industri kayu sekarang, jati juga
diolah keping-keping parket (parquet) penutup lantai.

Parket kayu juga memiliki pola yang bermacam-macam. Pada penulisan ini pola parket kayu
diklasifikasikan menjadi 3(tiga) macam pola. Pola-pola tersebut adalah pola bergaris, pola
melengkung yang menyerupai huruf U dan juga pola yang agak cacat (cacatnya tidak
melebihi 20 persen). Pengenalan pola untuk klasifikasi ini menggunakan otomatisasi.

Dalam menentukan klasifikasi otomatisasi maka harus ditentukan variabel yang akan
digunakan dengan analisa tekstur. Analisa tekstur bekerja dengan mengamati pola
ketergantungan antar piksel dalam domain spasial. Setelah dilakukan analisa tekstur perlu
dilakukan klasifikasi pada tekstur yang telah dilakukan. Terdapat berbagai macam cara dalam
mengklasifikasikan tekstur ini. Banyak cara ataupun metode yang bisa digunakkan dalam
melakukan klasifikasi. Salah satu metode pangklasifikasian adalah dengan menggunakan
Artificial Neural Network (ANN).

Dalam penulisan ini akan dibuat suatu klasifikasi pada parket kayu jati dengan menggunakan
suatu Artificial Neural Network dengan metode backpropagation. Klasifikasi ini berdasarkan
pada tekstur yang telah dibuat dengan menggunakan metode GLDM (grey level difference
method).

Tujuan dari pengklasifikasian ini adalah untuk membuat aplikasi klasifikasi tekstur guna
mengklasifikasi jenis parket berdasarkan dari hasil analisa tekstur berdasarkan GLDM.
Aplikasi dibuat dengan menggunakan metode Backpropagation.

TINJAUAN PUSTAKA
Metode Backpropagation
Backpropagation merupakan algoritma pembelajaran yang terawasi dan biasanya digunakan
oleh perceptron dengan banyak lapisan untuk mengubah bobot-bobot yang terhubung dengan
neuron-neuron yang ada pada lapisan tersembunyinya. Algoritma backpropagation
menggunakan error output untuk mengubah nilai bobot-bobotnya dalam arah mundur
(backward). Untuk mendapatkan error ini, tahap perambatan maju (forward propagation)
harus dikerjakan terlebih dahulu. Pada saat perambatan maju, neuron-neuron diaktifkan
dengan menggunakan fungsi aktivasi yang dapat didiferensiasikan.

Metode Pelatihan Jaringan Syaraf Backpropagation


Pelatihan jaringan syaraf dilakukan dalam rangka melakukan pengaturan bobot, sehingga
pada akhir pelatihan akandiperoleh bobot-bobot yang baik. Selama proses pelatiha, bobot-
bobot diatur secara iterative untuk meminimalkan fungsi kinerja jaringan syaraf. Fungsi
kinerja yang sering dilakukan untuk backpropagation adalah Mean Square Error (MSE)
fungsi MSE akan mengambil rata-rata kuadrat error yang terjadi antara output jaringan syaraf
dan target.

Algoritma Pelatihan Sederhana


Sebagian besar algoritma pelatihan jaringan syaraf backpropagation menggunakan gradien
fungsi kinerja untuk menentukan bagaimana mengatur bobot-bobot dalam rangka
meminimalkan kinerja. Prinsip dasar dari algoritma backpropagation sederhana adalah
memperbaikin bobot-bobot jaringan syaraf dengan arah yang membuat fungsi kinerja menjadi
turun dengan cepat. Ada dua cara pelatihan standar yang digunakan untuk melatih jaringan
yaitu incremental mode dan batch mode.
Dalam incremental mode, perhitungan gradien dan perbaikan nilai bobot-bobot dilakukan
pada setiap pengoperasian input data. Fungsi ini menggunakan objek jaringan syaraf,
kumpulan data input dan target sebagai input pelatihan, dan akan menghasilkan objek jaringan
syaraf terlatih, error yang terjadi dan bobot-bobot akhir sebagai nilai output. Pada mode ini
harus diatur beberapa parameter yaitu fungsi pembelajaran yang digunakan oleh jaringan
syaraf dan fungsi pembelajaran untuk setiap bobot.
Pada batch mode, perhitungan gradien dan perbaikan nilai bobot yang dilakukan setelah
penginputan semua input data. Pada pelatihan mode ini ada beberapa parameter yang harus
diatur, antara lain :
• Maksimum epoch
Jumlah epoch maksimum yang boleh dilakukan selama proses pelatihan. Iterasi akan
dihentikan apabila nilai epoch melebihi maksimum epoch.
• Kinerja tujuan
Iterasi akan dihentikan apabila nilai fungsi kinerja kurang dari atau sama dengan kinerja
tujuan.
• Laju belajar
Semakin besar nilai laju belajar akan berimplikasi pada semakin besarnya langkah
pembelajaran. Jika laju belajar terlalu besar, maka algoritma akan menjadi tidak stabil.
Sebaliknya algoritma akan konvergen dalam jangka waktu yang sangat lama jika nilai laju
belajar terlalu kecil.
• Jumlah epoch yang akan ditunjukkan kemajuannya
Menunjukkan berapa jumlah epoch berselang yang akan ditunjukkan kemajuannya.
Metode paling sederhana untuk merubah bobot adalah metode penurunan gradient (gradient
descent). Pada fungsi gradient descent standar, selama proses pelatihan laju belajar akan terus
bernilai konstan. Sulit untuk menentukan berapa nilai laju belajar yang optimal sebelum
proses pelatihan berlangsung. Nilai laju belajar yang optimal akan terus berubah selama
proses pelatihan seiring dengan berubahnya nilai fungsi kinerja.

2.3.4.2 Jumlah Unit Tersembunyi

Hasil teoritis yang ada menunjukkan bahwa jaringan dengan sebuah layar tersembunyi sudah
cukup bagi backpropagation untuk mengenali sembarang pasangan antara masukan dan target
dengan tingkat ketelitian yang ditentukan. Akan tetapi penambahan jumlah layar tersembunyi
kadangkala membuat pelatihan lebih mudah.
Jika jaringan memiliki lebih dari satu layar tersembunyi, maka algoritma pelatihan yang
dijabarkan sebelumnya perlu direvisi. Dalam propagasi maju, keluaran harus dihitung untuk
tiap layar, dimulai dari layar tersembunyi paling bawah (terdekat dengan masukan).
Sebaliknya, dalam propagasi mundur, faktor kesalahan (δ) perlu dihitung untuk tiap layar
tersembunyi, dimulai dari layar keluaran.

HASIL DAN PEMBAHASAN


Data Masukan

Data dalam penulisan ini menggunakan data parket kayu jati yang terlebih dahulu dilakukan
analisa tekstur dengan menggunakan GLDM (grey level difference method). Data- data yang
diambil meliputi semua features yang telah ditentukan. Fitur-fitur dalam menentukan data
adalah Contrast, Angular Second Moment (ASM), Entropy, Inverse Difference Moment (IDM)
dan Mean. Nilai dari fitur-fitur ini berdasarkan dari sudut yang diambil yaitu sudut 0˚, sudut
45˚, sudut 90˚ dan sudut 135˚ (lihat lampiran). Pada MATLAB data-data ini akan dijadikan
menjadi matriks-matriks. Matriks-matriks ini akan disusun menjadi matriks 20x13. Data ini
pada program diberi variable “x”. Namun pada penyusunan matriks ini tidak langsung dibuat
menjadi matriks 20x13, melainkan dengan cara membuat baris matriks terlebih dahulu lalu
baru membuat kolom matriksnya.
Pada program ini juga akan diberikan tujuan (goal) dari pelatihan input dari data-data yang
telah dimasukkan. Sama seperti data input, untuk tujuan ini juga akan dibuat matriks. Matriks
yang digunakan adalah matriks 1x3. Matriks tujuan ini akan menjadi tujuan dari setiap kolom
pada matriks inputan.

Model Pelatihan

Pelatihan yang dilakukan terhadap data sesuai dengan contoh jaringan saraf tiruan berikut:

Gambar 1.1 Arsitektur backpropagation pada penelitian


Dari gambar jaringan diatas terdiri dari beberapa lapisan. Jaringan saraf tiruan diatas terdiri
dari 1(satu) lapisan untuk input, 3(tiga) lapisan pelatihan atau hidden layer serta 1(satu)
lapisan output. Variable X1 sampai X20 merupakan data input. Variable Z adalah variable
untuk pelatihan atau pembelajaran bagi jaringan ini. Terakhir variable Y merupakan output
yang akan dihasilkan. Output pada jaringan ini memiliki 3(tiga) buah sel. Pada Y1 output
untuk membuat klasisfikasi tekstur A dengan output (1,0,0). Pada Y2 output untuk membuat
klasisfikasi tekstur B dengan output (0,1,0). Sedangkan pada Y3 output untuk membuat
klasisfikasi tekstur C dengan output (0,0,1). Pada backpropagation jika pelatihan yang
dilakukan belum mencapai tujuan (goal) yang diinginkan maka output akan menjadi inputan
kembali. Dan akan dilakukan terus-menerus sampai mencapai goal yang diinginkan.

Implementasi pada MATLAB

Penelitian ini menggunakan MATLAB sebagai bahasa pemrograman. Pada MATLAB


pelatihan backpropagation dilakukan dengan memanggil sintaks “newff”. Fungsi logaritma
dan sigmoid pada MATLAB dijadikan 1 fungsi dengan memanggil sintaks “logsig”. Untuk
penurunan gradien dengan momentum dan pelatihan yang dapat beradaptasi menggunakan
“traingdx” pada MATLAB. Fungsi untuk perubahan bobot dan bias di MATLAB
menggunakan “learngdm”. Sedangkan untuk pengukuran kesalahan (error) menggunakan
perintah “mse”. Lebih lengkapnya adalah statement berikut :
net = newff(minmax(p), [9 5 3],{'logsig' 'logsig'

'logsig'},'traingdx','learngdm','mse');

Pada program ini juga akan dibuat simulasi dari inputan yang telah dimasukkan. Dengan
simulasi ini besarnya kesalahan (error) mula-mula dapat ditentukan. Perintah untuk
melakukan simulasi yaitu:
[y,Pf,Af,e,perf] = sim (net,p,[],[],t)

Maksud dari sintaks diatas adalah simulasi untuk menghitung keluaran dari jaringan (yang
diberi variable “y”). Selain itu besarnya error dapat ditentukan sebelumnya (variable “e”).
Pada sintaks diatas juga akan dilihat performa dari jaringan yang dilatih.
Setelah program melakukan simulasi lalu dimasukkan parameter-parameter pelatihan sebagai
berikut:
net.trainParam.show = 50;

net.trainParam.epochs = 10000;

net.trainParam.goal = 0.1;

net.trainParam.lr = 0.01;

net.trainParam.lr_inc= 1.05;

net.trainParam.lr_dec = 0.7;

net.trainParam.mc = 0.9;

net.trainParam.min_grad = 1e-10;
net = train (net,p,t)

Paramater yang ada pada program yaitu: show epoch, goal, learning rate, momentum serta
minimum gradient. Epoch adalah banyaknya iterasi atau perulangan yang dilakukan. Epoch
yang dimasukkan sebanyak 10000 epoch. Epoch ini akan diperiksa setiap 50 epoch oleh
program apakah epoch tersebut telah mencapai goal yang diinginkan. Goal adalah error yang
ingin dicapai, pada penelitian ini dipilih nilai goal = 0,1. Learning rate untuk menentukan
laju pemahaman pada simulasi, dalam penelitian ini dipilih laju pemahaman 0,01. Goal dan
Learning Rate ini juga dapat diubah sesuai dengan keinginan user. Minimum gradient untuk
menentukan besarnya nilai gradient terkecil, dalam penelitian ini dipilih minimum gradient
sampai 10-10. Jika perintah net = train (net,p,t) dijalankan, maka bobot akan ditraining
(disimulasi). Perintah ini juga menyebabkan bobot akan dijalankan secara acak.

Hasil Program

Output diatas merupakan bobot awal dan bias dari pelatihan backpropagation sebelum dilatih.
Bobot awal dan bias ini ditentukan secara acak oleh program. Jadi, setiap program dijalankan
bobot awal dan bias akan berbeda. Bobot awal ini nantinya akan dilatih dengan parameter-
parameter training yang ada diatas. Pelatihan bobot awal ini akan dilatih bedasarkan epoch
yang ditentukan.

Sebelum dilakukan training, terlebih dahulu dilakukan simulasi. Output diatas merupakan
hasil keluaran dari simulasi program yang telah dijalankan. Hasil y pada output diatas adalah
target yang ingin dicapai dari data masukan. Selain itu output diatas juga menunjukkan
kesalahan (error) yang dilakukan oleh program serta menampilkan performa dari simulasi
yang telah dijalankan. Setelah melakukan simulasi program akan melakukan training dengan
parameter-parameter yang ditentukan sebelumnya. Output ini bisa berubahsesuai dengan
penempatan perintah yang dilakukan.
TRAINGDX, Epoch 9950/10000, MSE 0.200855/0.1, Gradient 9.54739e-005/1e-010
TRAINGDX, Epoch 10000/10000, MSE 0.200855/0.1, Gradient 4.98762e-006/1e-010
TRAINGDX, Maximum epoch reached, performance goal was not met.
Potongan output diatas menunjukkan perulangan dari epoch. Pada output diatas dapat dilihat
bahwa setiap 50 epoch program akan mencetak dan memberitahu tingkat kesalahan apakah
tingkat kesalahan tersebut sudah memenuhi apa yang diinginkan. Dari output diatas dapat
dilihat bahwa epoch maksimal sudah terlampaui namun, tujuan (goal) belum terpenuhi. Ini
berarti jaringan tidak mengenali pola pelatihan. Selain itu grafik perubahan error juga
ditampilkan pada gambar 1.1.
Sedangkan untuk hasil output diatas adalah bobot akhir dan bias pada setelah simulasi

dilaksanakan. Hasil ini tidak sesuai disebabkan karena data masukkan yang ada terlalu sedikit.
Gambar 1.2 Grafik perubahan Error

Gambar 1.2 adalah simulasi pelatihan dari input yang telah dimasukkan. Output akan tetap
berada pada error 0,2 jauh dari error yang diinginkan.
Pada penelitian ini juga dilakukan beberapa percobaan antara lain dengan menambah data
masukan dengan cara menyalin data yang sudah ada namun, output yang dihasilkan tetap
tidak sesuai dengan yang diharapkan. Selain itu juga dilakukan percobaan dengan
memasukkan bobot awal tetap, dengan cara ini goal yang dihasilkan sempat mencapai 0,1
namun hasilnya tetap tidak konvergen. Learning rate dan goal pun sempat dirubah menjadi
lebih besar namun, hasil yang dicapai juga tidak konvergen

PENUTUP
Kesimpulan
Berdasarkan hasil analisa dan pembahasan yang telah diuraikan pada bab sebelumnya, maka
dapat diambil beberapa kesimpulan sebagai berikut. Penelitian ini tidak menghasilkan output
yang diharapkan. Output ini tidak sesuai yang diharapkan karena kemungkinan data input
yang terlalu sedikit. Data yang terlalu sedikit ini selain mengakibatkan output yang tidak
sesuai dengan harapan dan juga menghasilkan output yang tidak konvergen karena jaringan
ini tidak mengenali pola yang telah dimasukkan.

Saran
Jaringan tidak mengenali pola dan output yang dihasilkan tidak konvergen. Diharapkan agar
pelatihan ini berhasil (jaringan mengenali pola) dan output yang dihasilkan sesuai dibutuhkan
data-data yang banyak, atau pengenalan berdasarkan hasil analisa tekstur menggunakan
metode GDLM.
Klasifikasi parket kayu jati pada penelitian ini dilakukan berdasarkan analisa tekstur. Pada
citra untuk kelas A terdapat 3(tiga) buah pola untuk klasifikasi, untuk citra kelas B terdapat
5(lima) buah pola untuk klasifikasi C terdapat 5(lima) buah pola untuk klasifikasi. Klasifikasi
dilakukan menggunakan metode backpropagation dengan 1 (satu) lapisan input, 3(tiga) buah
lapisan tersembunyi dan 1 (satu) lapisan output. Pelatihan ini menggunakan fungsi aktivasi
Logsig, laju pembelajaran, momentum serta mempunyai kuadrat rata-rata galat. Hasil yang
didapatkan dari penelitian ini tidak sesuai dengan yang diharapkan, dapat dilihat dari output
yang dihasilkan dimana kesalahan (error) yang dihasilkan masih tinggi yaitu 0,2.

DAFTAR PUSTAKA
[1]. Hermawan, Arief., Jaringan Saraf Tiruan Teori dan Aplikasi. Yogyakarta: Penerbit
Andi, 2006.
[2]. Kusumadewi, Sri, Sri Hartati., NEURO-FUZZY Integrasi Sistem Fuzzy dan Jaringan
Saraf. Yogyakarta: Graha Ilmu, 2006.
[3] Mutiara, Ahmad Benny., Catatan Kuliah Jaringan Saraf Tiruan. Universitas
Gunadarma, 2009.
[4]. Nafisah, Sari., Pengklasifikasian Jenis Tanah Menggunakan Jaringan Syaraf Tiruan
Backpropagation. Universitas Gunadarma, 2008.
[5]. Septiana, Diah Ayu., Analisis Tekstur Kayu Parket Dengan Menggunakan Metode
Statistikal Grey Level Run Length Matrix. Universitas Gunadarma, 2009.
[6]. Siang, Jong Jek., Jaringan Saraf Tiruan & Pemrogramannya Menggunakan Matlab.
Yogyakarta: Penerbit Andi, 2004.
[7] Topi Mäenpää, Jaakko Viertola, and Matti Pietikäinen., Optimizing color and texture
features for real-time visual inspection. Machine Vision Group Department of
Electrical and Information Engineering University of Oulu, Finland.
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.97.5610&rep=rep1&type=
pdf, diunduh tanggal 11 Januari 2010
[6]. Zahab, Nicky Muhammad., Analisis Tekstur Parket Kayu Jati Dengan Menggunakan
Metode Statistikal Gray Level Difference Method. Universitas Gunadarma, 2009.

Anda mungkin juga menyukai