Seminar Nasional Aplikasi Teknologi Informasi 2006 (SNATI 2006) Yogyakarta, 17 Juni 2006
ISSN: 1907-5022
PERBANDINGAN ALGORITMA LEVENBERG-MARQUARDT DENGAN METODA BACKPROPAGATION PADA PROSES LEARNING JARINGAN SARAF TIRUAN UNTUK PENGENALAN POLA SINYAL ELEKTROKARDIOGRAF Rahmat1,2), Rachmad Setiawan1), Mauridhi Hery Purnomo1) 1 Jurusan Teknik Elektro ITS, Surabaya Indonesia 6011 2 Politekinik Negeri Padang, Kampus UNAND Limau Manis Padang, Indonesia E-mail:
[email protected],
[email protected],
[email protected] ABSTRAKSI Pengenalan pola EKG (Elektrokardiograf) merupakan suatu proses yang penting dalam menganalisa keaadan jantung pasien. Makalah ini menjelaskan tentang sebuah system pengenalan pola sinyal EKG menggunakann multi layer perseptron dan dilatih dengan algoritma Levenberg–Marquardt (LM). Algoritma (LM) merupakan pengembangan algoritma Backpropagation (BP) standar. Pada algoritma BP standar proses update bobot dan bias menggunakan negative gradient descent secara langsung sedangkan pada algoritma Levenberg-Marquardt menggunakan pendekatan matrik Hesian. Pada penelitian ini dilakukan pengenalan terhadap lima jenis kelainan sinyal EKG yang berasal dari generator sinyal EKG secara on-line. Pra-proses dimulai dengan mengurangi noise yang menyertai sinyal EKG dengan teknik downsampling Haar wavelet, kemudian diambil spektrum frekuensi hasil downsampling ini untuk masukan Jaringan Saraf Tiruan. Hasil learning jaringan dengan konfigurasi 100-15-5 dan error limit 0.0001 dibutuhkan 35 iterasi untuk mencapai konvergen pada LM, sedangkan dengan BP dibutuhkan 480 iterasi. Pengujian data learning dengan LM menghasilkan error terkecil 1 X 10-6 dan error terbesar terbesar 1 X 10-4, untuk metoda BP error terkecil dicapai 1 X 10-4 dan error terbesar 1 X 10-3. Pengujian dengan data uji dari generator yang sama untuk 100 kali pengujian semua pola yang diuji dapat dikenali 100%. Kata Kunci: Levenberg-Marquardt, Backpropagation, Jaringan Saraf Tiruan, Elektrokardiograf
pemetaan (mapping) dari input ke output sesuai dengan yang diinginkan. Pemetaan ini ditentukan melalui satu set pola uji atau data pelatihan (training data set). Setiap pasangan pola p terdiri dari vektor
1.
Pendahuluan Elektrokardiografi (EKG) merupakan gambaran sinyal potensial jantung yang diperoleh dengan cara menempatkan beberapa elektroda pada tubuh pasien. Penggunaan sinyal EKG sudah sangat umum di dunia kedokteran yaitu sebagai alat bantu untuk mendiagnosis kelainan pada jantung. Pola EKG dari kondisi jantung umumnya memiliki pola yang khusus, tetapi untuk membedakan apakah jantung dalam keadaan sehat atau terdapat suatu kelainan fungsional pada jantung diperlukan keahlian dan pengalaman melakukan klasifikasi dari pola-pola EKG yang sudah ada. Teknik pengenalan pola EKG ini masih merupakan suatu topik yang menarik, dengan mempergunakan suatu sistem intelijensi buatan yang prinsipnya meniru kemampuan dari dokter untuk mengenali pola-pola EKG tersebut. Proses pengenalan diserahkan pada jaringan saraf tiruan (JST), dilakukan pengenalan beberapa pola sinyal jantung tanpa adanya tambahan informasi medis, maksudnya proses klasifikasi sinyal EKG benarbenar dilakukan oleh sistem intelijensia buatan tanpa adanya tambahan informasi dari luar.
input
xin dan vektor target t k . Setelah selesai
xin seharusnya jaringan menghasilkan nilai ouput t k . Besarnya
pelatiha jika diberikan masukan
perbedaan antara nilai vektor target dengan ouput aktual diukur dengan error . p 1 sse = ∑ (t − y ) 2 k k k =12
(1)
dimana k adalah banyaknya unit pada output layer. Tujuan dari training pada dasarnya adalah sama dengan mencari suatu nilai minimum global e 1.2 Algoritma Levenberg–Marquardt Algoritma Levenberg-marquardt merupakan pengem merupakan pengembangan algoritma backpropagation standar. Pada algoritma backpropagation, proses update bobot dan bias menggunakan negative gradient descent secara langsung sedangkan..AlgoritmaLevenbergMarquardt menggunakan pendekatan matrik Hesian (H) yang dapat dihitung dengan,
1.1 Supervised Learning Tujuan pemebelajaran supervise learning adalah untuk menentukan nilai-nilai bobot koneksi didalam jaringan shingga jaringan dapat melakukan
H = JTe F-39
(2)
Seminar Nasional Aplikasi Teknologi Informasi 2006 (SNATI 2006) Yogyakarta, 17 Juni 2006
ini dilakukan sampai tiga kali (level3) sehingga jumlah data sinyal menjadi sebanyak 128. Bagian sinyal yang diambil adalah koefisien approksimasi c(A) karena bagian koefisien detil (cD) merupakn nosie yang menyertai sinyal. Gambar 3 adalah koefisien approksimasi hasil proses downsampling samapi level ke-3.
sedangkan gradient dapat digitung dengan,
g=J J T
ISSN: 1907-5022
(3)
Dalam hal ini J merupakan sebuah matrik jacobian yang berisikan turunanan pertama dari error jaringan terhadap bobot dan bias jaringan. Perubahan pembobot dapat dihitung dengan,
∆X = [ J T J + µI ]− J T e
(4) sehingga perbaikan pembobot dapat ditentukan dengan (5) X = X + ∆X T T − (6) X = ∆X + [ J J + µI ] J e ⎡ ∂e11 ( x ) ⎢ ∂x 1 ⎢ ... ⎢ ⎢ ∂e k 1 ( x ) ⎢ ∂x1 ⎢ ∂e12 ( x ) ⎢ ⎢ ∂x1 ⎢ ... ⎢ ∂e k 2 ( x ) ⎢ ∂x 1 ⎢ ⎢ ⎢ ... ⎢ ⎢ ⎢ ∂ekp ( x ) ⎢ ∂x ⎣ 1
∂e11 ( x ) ∂x 2 ... ∂e k 2 ( x ) ∂x 2 ∂e12 ( x ) ∂x 2 ... ∂e k 2 ( x ) ∂x 2
∂e11 ( x ) ∂x 3 ... ∂e k 1 ( x ) ∂x 2 ∂e12 ( x ) ∂x 3 ... ∂e k 2 ∂x 3
...
...
∂ekp
∂ekp
∂x 2
∂x 3
... ... ... ... ... ...
... ...
START
Inisialisasi jaringan Random bobot v , w
∂e11 ( x ) ⎤ ∂x n ⎥ ⎥ ... ⎥ ∂e k 1 ( x ) ⎥ ∂x n ⎥ ∂e k 2 ( x ) ⎥ ⎥ ∂x n ⎥ (7) ... ⎥ ∂e k 2 ⎥ ∂x n ⎥ ⎥ ... ⎥ ⎥ ⎥ ⎥ ∂ekp ⎥ ∂xn ⎥⎦
Hitung maju pada simpul hidden dan output zj=f(v.in), yk=f(w.zj)
Hitung sse p 1 2 sse = ∑ (t − y ) k k 2 k =1
Hitung Matrik Jacobian J(x) X ⇒ bobot dan bias
X = fungsi bobot-bobot jaringan dan bias X = [ v11, v12, . . . , v ij; v 01, v 02, . . . v0j ; w11, w12 . . . wjk ; w01, w02 . . .w0K]
Hitung Selisih Bobot
∆X = [ J T J + µI ]− J T e
e adalah vector yang menyatakan semua error pada output jaringan
Koreksi Pembobot
X = X + ∆X
e = [t1 − y1t 2 − y 2 ...t p − y p ]
T
µ=
konstanat learning I = matrik identitas Enew<Estep3
2.
Cara Penelitian Data yang digunakan dalam penelitian ini terdiri dari lima macam jenis aritma (Kelainan) sinyal EKG yang bersal dari generator EKG. Sinyal EKG secara rieltime disampling dengan menggunakan peralatan akuisisi sebanyak 1024 data. Jumlah data tersebut dihasilkan lebih kurang 3 gelombang sinyal EKG. Dilakukan proses pengolahan sinyal yaitu dengan teknik downsampling menggunkan transformasi Haar wavelet. Pada proses ini terjadi pemisahan sinyal frekuensi tinggi yang dapat dianggap sebagai noise (dalam trnsformasi wavelet dinamakan koefisien detil (cD) dan frekensi rendah (dalam transformasi wavelet dinamakan koefisien approksimasi (cA)). Satu kali proses downsampling menghasilkan sinyal setengahnya, pada penelitian
Ya Reduce
(µ / β )
Sampai e = error limit
increas
(µ × β )
END
Gambar 1. Flowchart Learning dgn LM Hasil downsampling ini dirubah kedalam bentuk spektrum frekuensi (sehingga menghasilkan data dengan jumlah setengah frekuensi sampling (fs=360Hz) yaitu 180 data. Dari hasil pengamatan, spektrum dari data tersebut dapat diambil mulai F-40
Seminar Nasional Aplikasi Teknologi Informasi 2006 (SNATI 2006) Yogyakarta, 17 Juni 2006
ISSN: 1907-5022
dari data ke-1 sampai 100 karena data ke-101 sampai 180 hampir sama untuk kelima masingmasing sinyal. Data ini dinormalisasi terlebih dahulu dengan range dari 1 sampai 0 normalisasi Sinyal EKG (Generator Sinyal EKG)
Gambar 5. Speltrum Sinyal yang Sudah dinormalisasi
Akuisisi Data (Peralatan Antar Muka)
Untuk pengujian digunakan kembali data generator dimana setiap kali pengambilan data akan didapat data yang random (karena setiap pengambilan sinyal data awalnya tidak selalu sama) dan ini digunakan untuk proses mapping secara realtime. Perangkat lunak yang digunakan dalam penelitian ini adalah Bahasa pemograman Delphi 7.
Sinyal EKG diskrit
Transformasi Wavelet Haar (downsampling)
3.
PC
Hasil dan Pembahasan Untuk melihat unjuk kerja dari pengenalan pola ini dilakukan dua parameter yaitu efesiensi dari proses pelatihan dan keberhasilan pengenlan pola.
Normalisasi Data
Jaringan Saraf Tiruan
Hasil Pengenalan Pola Gambar 2. Sistem Pengenalan Pola Sinyal EKG Gambar 6. Grafik learning Gambar 5 adalah grafik Sum Square Error (SSE) proses learning Jaringan saraf tiruan (JST) yang digunakan pada sistem ini menggunakan jenis multi layer perceptron. Lapisan input terdiri dari 100 unit yang merupakan masukan dari hasil spektrum sinyal ternormalisasi. Lapisan tersembunyi 15 uni dan lapisan output terdiri atas lima unit yang akan mengeluarkan nilai berkisar 1 dan 0. Masing-masing unit akan befungsi untuk mengklasifikasi satu jenis sinyal dengan melakukan pengambialan keputusan salah satu unit akan bernilai paling tinggi ( satu) sedangkan yang lain mendekati nol. ini Pengujian konstanta learning µ bertujuan untuk melihat pengaruh perubahan µ ini terhadap proses learning. Pada pengujian ini nilai awal µ dimulai dari 0.1 sedangkan nilai β dibuat tetap = 2. Pada Gambar 4.7 terlihat pada µ = 0.1 konvergen tercapai pada iterasi disekitar 35. Pada iterasi berikutnya untuk nilai µ = 0.2 jumlah
Gambar 3. Grafik Sinyal Keluaran dari ADC.
Gambar 4. Koefisien Approksimasi
F-41
Seminar Nasional Aplikasi Teknologi Informasi 2006 (SNATI 2006) Yogyakarta, 17 Juni 2006
ISSN: 1907-5022
iterasi bertambah sampai 50 iterasi, sedangkan untuk nilai µ = 0, 4 dan 0, 5 jumlah iterasi berkurang kembali sampai 34 iterasi. Dari sini dapat disimpulkan perubahan µ dapat memperlambat iterasi. Perubahannya itu juga tergantung pada nilai awal saat random bobot dan bias.
GRAFIK MSE LM vs BP 1,00E+00
MSE
1,00E-01 1,00E-02
LM BP
1,00E-03 1,00E-04
Grafik Perubahan µ
1,00E-05 0
50 100 150 200 250 300 350 400 450 500
1,00E+00
EPOCH
MSE
1,00E-01
µ = 0.1
Gambar 10. Perbandingan Grafik Learning LM & BP
µ = 0.2
1,00E-02
µ = 0.3
1,00E-03
µ = 0.4 µ = 0.5
1,00E-04
Gambar 10 memperlihatkan perbandingan proses training metode LM dan metode backpropagation ditinjau dari segi banyaknya iterasi yang dilakukan. Grafik error menggunakan metode LM digambarkan pada garis biru, terlihat bahwa error konvergen pada iterasi ke-36. Pada metode LM grafik error turun secara drastis membentuk garis yang linier. Garis merah menunjukkan error untuk metode backpropagation, dimana grafik tersebut turun secara perlahan dan mencapai konvergen pada iterasi ke-480
1,00E-05 0
10
20
30
40
50
60
Epoch
µ
Gambar 7. Perubahan konstanta learning
terhadap
Grafik Perubahan β
1,00E+01
β=1.5 β=2
1,00E+00
β=2.5
MSE
1,00E-01
Perbandingan Error LM dgn Bakpro
β=3 β=3.5
1,00E-02
1
β=4 1,00E-03
β=4.5
0.01 0
β=5
1,00E-04
β=5.5
0.0001
1,00E-05 0
5
10
15
20
25
30
35
40
45
50
55
1E-06
EPOCH
1E-08
Gambar 8. Perubahan Konstanta learning Pengujian faktor pengali
β
β
10
20
30
LM Bakpro
1E-10
terhadap
1E-12
ini bertujuan
Gambar 9. Perbandingan Error Learning LM & BP
untuk melihat pengaruh perubahan β terhadap kecepatan learning. Pada pengujian ini nilai β diubah-ubah mulai dari 1 sampai 6. Dari Gambar 7 dapat dilihat bahwa untuk β = 1.5 jumlah iterasi yang dibutuhkan untuk mencapai konvergen sekitar 40 iterasi. Dengan kenaikan nilai β proses iterasi semakin cepat hal ini disebabkan oleh nilai µ semakin kecil karena dibagi oleh nilai β yang semakin besar sehingga proses invers matrik semakin cepat. Akan tetapi pada niali β = 5 pada awalnya terjadi osilasi pada pada penurunan nilai error sampai iterasi sekitar 10 iterasi dan setelah itu tidak terjadi lagi penurunan error hal ini disebabkan karena terjadi proses pembagian dengan bilangan yang sangat kecl sekali pada invers matrik untuk perbaikan pembobot pada persamaan.
4.
Kesimpulan Dari hasil pengujian dapat diambil kesimpulan bahwa semakin kecil konstanta learning µ jumlah iterasi semakin kecil dan
semakin besar nilai faktor pengali β dapat mempercepat iterasi. Dengan konfigurasi jaringan yang sama iterasi dengan algoritma LevenbergMarquartdt (35 iterasi) lebih sedikit dibandingkan dengan backpropagation standar (sekitar 550 iterasi). Pengujian dengan data learning error terkecil pada LM Sekitar 1 X 10-6 dan error tebesar sekitar 1 X 10-5 sedangkan dengan BP error terkecil sekitar 1X10-5 dan error terbesar sekitar 1 X 10-6.
F-42
Seminar Nasional Aplikasi Teknologi Informasi 2006 (SNATI 2006) Yogyakarta, 17 Juni 2006
Daftar Pustaka [1] Leslie Crowell. (1996). Biomedical Instrumentation and Measurement, Prentice Hall of India, New Delhi. [2] Oliver Rioul, Martin Vitterli. (1991). Wavelets and Signal Processing. IEEE SP Magazine. [3] Supeno. (2005). Analisis Multi Resolusi Data Seismik Dengan Menggunakan Transformasi Wavelet. Tesis Magister. Jurusan Fisika Fakultas MIPA. ITS Surabaya. [4] Laurene Fausett. (1994). Fundamentals of Neural Networks. Prentice-Hall International, Inc. New Jersey, USA. [5] Rahmat. dkk. (2005). Pengenalan Pola Sinyal EKG menggunakan JST dengan Algoritma Levenberg–Marquardt. Seminar Nasional Pasca Sarjana V ITS Surabaya. [6] Martin T Hagan. dkk. (1994) Training Feedforwaed Network with the Marquardt Algorithm. IEE Transactions on Neural Network. Vol 5 No 6. [7] N. N. R. Ranga Suri. dkk. Paralell Levenberg Marquardt-Baesd Neural Network Training on Linux Clusters–a Cases Studi. AI and Neural Networks Group Center for Artificial Intelligence & Robotics. Bangalore, University of Mysore. [8] Syed Muhammad Akhil Burney.dkk.(2004) Levenberg Marquard Algorithm for Karachi Stock Exchage Share Rates Forescasting. International Journal of Computation Inteligence. Volume 1 Number 2 ISSN : 1304 4508 [9] Deepak Misrha. dkk (2005). Levenberg Marquardt Learning Algorithm for Integrate – and Fire Neuron Model. Neural Information Processing- Letter and Reviews. Vol 9 N0. 2 November.
F-43
ISSN: 1907-5022
Seminar Nasional Aplikasi Teknologi Informasi 2006 (SNATI 2006) Yogyakarta, 17 Juni 2006
F-44
ISSN: 1907-5022