• Tidak ada hasil yang ditemukan

PENERAPAN METODE ADAPTIVE NEURO-FUZZY INFERENCE SYSTEM UNTUK MEMPREDIKSI NILAI POST TEST MAHASISWA PADA JURUSAN TEKNIK INFORMATIKA FTIF ITS

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENERAPAN METODE ADAPTIVE NEURO-FUZZY INFERENCE SYSTEM UNTUK MEMPREDIKSI NILAI POST TEST MAHASISWA PADA JURUSAN TEKNIK INFORMATIKA FTIF ITS"

Copied!
9
0
0

Teks penuh

(1)

1

PENERAPAN METODE

ADAPTIVE NEURO-FUZZY INFERENCE SYSTEM

UNTUK

MEMPREDIKSI NILAI

POST TEST

MAHASISWA PADA JURUSAN TEKNIK

INFORMATIKA FTIF ITS

Banon Tri Kuncahyo1, R. V. Hari Ginardi2, Isye Arieshanti3

Teknik Informatika, Fakultas Teknologi Informasi, ITS

email : banon.tri@gmail.com1, hari@its-sby.edu2, isye.arieshanti@gmail.com3

ABSTRAKSI

Pendidikan merupakan proses yang menerima input berupa siswa dengan tingkat pemahaman yang rendah, kemudian dilatih melalui beberapa tahap untuk menghasilkan individu-individu yang berkualitas. Salah satu cara untuk menilai keberhasilan pendidikan adalah dari nilai yang bersangkutan. Oleh karena itu dibutuhkan prediksi terhadap nilai tersebut untuk digunakan pada proses pendidikan selanjutnya. Adaptive Neuro-Fuzzy Inference System (ANFIS) adalah suatu metode yang bisa digunakan untuk memprediksi nilai tersebut.

Tugas akhir ini mengimplementasikan metode adaptive neuro-fuzzy inference system untuk memprediksi nilai post test mahasiswa pada jurusan teknik informatika FTIf ITS dalam dua tahap. Tahap pertama adalah tahap latih menggunakan algoritma least square estimator. Tahap latih terdiri dari 2 proses yaitu forward untuk memperbaiki parameter konsekuen pada lapisan 4 dan backward utuk memperbaiki parameter premis pada lapisan 1. Tahap kedua adalah tahap uji setelah mendapatkan arsitektur jaringan yang optimum pada tahap latih.

Uji coba dilakukan dengan memprediksikan nilai post test (dalam kasus ini adalah nilai UAS) pada dua dataset yang berbeda. Berdasarkan uji coba, ANFIS (Adaptive Neuro-Fuzzy Inference System) menghasilkan rata-rata error sebesar 0,01 dan RMSE sebesar 0,01 dengan 200 epoch. Pada eksperimen ini dicoba beberapa epoch dan performa yang terbaik dicapai pada epoch 200. Semakin besar epoch semakin bagus performanya. Kata Kunci: Prediksi nilai post test (UAS), ANFIS, fuzzy, jaringan saraf tiruan.

1. PENDAHULUAN

Pendidikan merupakan suatu proses yang menerima input berupa siswa dengan tingkat pemahaman yang rendah, kemudian dilatih melalui beberapa tahap pengembangan untuk kemudian menghasilkan individu-individu yang berkualitas dengan kemampuan, keterampilan dan atribut yang cocok untuk suatu pekerjaan atau tingkat pendidikan tertentu[1]. Proses ini terjadi melalui pelajaran-pelajaran di kelas yang langkah-langkah pengajaranya ditetapkan dalam kurikulum. Dari proses ini kemudian didapatkan sebuah nilai atau beberapa nilai yang saling berhubungan yang nantinya akan digunakan untuk mendapatkan nilai akhir dari sebuah proses pendidikan. Salah satu nilai yang

sangat penting adalah nilai ujian akhir semester karena mencakup pemahaman siswa tentang materi mulai dari awal semester sampai dengan materi akhir semester. Prediksi nilai ujian akhir semester ini bisa dilakukan pada siswa yang tidak bisa mengikuti ujian akhir semester tersebut sehingga harus melakukan ujian susulan sebagai bahan pertimbangan menentukan nilai kelulusan siswa.

Ujian akhir semester mencerminkan pemahaman siswa terhadap materi selama satu semester berlangsung. Terdapat beberapa hambatan yang muncul ketika akan melakukan prediksi terhadap nilai ujian akhir semester. Salah satunya adalah beberapa nilai sebelumnya tidak menunjukkan trend yang sama. Nilai siswa pada beberapa nilai sebelumnya berbeda-beda tergantung pada tingkat pemahaman pada bab tersebut. Jika nilai-nilai sebelumnya rendah atau tinggi maka akan lebih mudah melakukan prediksi terhadap nilai ujian akhir semester, tetapi jika nilainya berubah-ubah akan susah melakukan prediksi terhadap nilai ujian akhir

Beberapa penelitian sebelumnya telah dilakukan untuk memprediksi nilai ujian akhir siswa, antara lain adalah metode decision tree[2] dan statistika, antara lain discriminant analysis [2], K-Nearest Neighbour[3] dan regresi[4]. Metode decision tree menghasilkan hasil yang cukup akurat. Sementara itu, metode statistika memiliki error rates yang lebih besar dibandingkan dengan metode pada datamining, seperti machine learning. Metode statistika tidak bisa menyelesaikan masalah apabila terdapat pembobotan pada masing-masing variabel/nilai yang digunakan. Pembobotan yang dimaksud misalnya, Nilai Kuis memiliki bobot 30%, nilai UTS memiliki bobot 30% dan nilai UAS memiliki bobot 40%.

Untuk mengatasi kelemahan metode sebelumnya, sebuah metode yang merupakan penggabungan antara metode sistem pengambilan keputusan fuzzy (fuzzy inference system) dan mesin pembelajaran, jaringan saraf tiruan (neural network) diterapkan untuk memprediksi nilai ujian akhir semester siswa[4]. Metode ini disebut dengan Adaptive Neuro-Fuzzy Inference System (ANFIS). Metode ANFIS merupakan metode yang menggunakan jaringan syaraf tiruan untuk mengimplementasikan sistem inferensi fuzzy. Keunggulan sistem inferensi fuzzy adalah dapat menerjemahkan pengetahuan dari pakar dalam bentuk aturan-aturan, namun biasanya dibutuhkan waktu yang lama untuk menetapkan fungsi keanggotaannya. Oleh sebab itu dibutuhkan teknik pembelajaran dari jaringan

(2)

2 syaraf tiruan untuk mengotomatisasi proses tersebut sehingga dapat mengurangi waktu pencarian.

Dengan mempertimbangkan kelebihan ANFIS, maka tugas Akhir ini mengimplementasikan metode ANFIS untuk memprediksi kemampuan akademik siswa. Sistem inferensi fuzzy yang digunakan adalah sistem inferensi fuzzy model Tagaki-Sugeno-Kang (TSK) orde satu dengan pertimbangan kesederhanaan dan kemudahan komputasi. Sistem fuzzy inidigabungkan dengan algoritma pembelajaran neural network.

2. Jaringan Saraf Tiruan (Artificial Neural Network)

Jaringan saraf tiruan atau artificial neural network sistem pengolah informasi yang memiliki karakter seperti jaringan saraf biologis, yaitu jaringan otak manusia. Pada jaringan saraf tiruan terdapat istilah neuron atau lebih dikenal dengan node. Setiap neuron terhubung dengan neuron lainya melalui layer dengan bobot tertentu. Bobot melambangkan informasi yang digunakan jaringan untuk menyelesaikan permasalahan. Setiap neuron memiliki internal state yang disebut dengan fungsi aktivasi. Fungsi aktivasi merupakan fungsi dari input yang diterima neuron. Satu neuron akan mengirimkan sinyal ke neuron-neuron yang lain[6].

2.1.Neuron Penyusun Jaringan Saraf Tiruan

Neuron adalah unit yang berfungsi untuk memproses informasi yang merupakan dasar dari operasi JST. Gambar 1 menunjukkan komponen dari neuron. Terdapat 3 elemen dasan dari neuron, yaitu :

1. Sinapsis yang menghubungkan antara neuron yang satu dengan neuron yang lain, dimana setiap sinapsis memiliki bobot masing-masing. 2. Penjumlah atau adder bertugas menjumlahkan

sinyal input yang telah diberi bobot berdasarkan bobot pada sinapsis neuron tersebut.

Fungsi aktivasi yang digunakan untuk membatasi keluaran dari sebuah neuron[7].

Gambar 1. Komponen Neuron

2.2.Arsitektur Jaringan Saraf Tiruan (Artificial Neural Network)

Jaringan saraf tiruan dapat diklasifikasikan menjadi 2 (dua) jenis, yaitu single-layer dan multi-layer[6].

a. Dalam jaringan saraf single-layer, neuron-neuron dikelompokkan menjadi 2 unit,yaitu unit input dan unit output. Unit input menerima

masukkan, sedangkan unit output akan memberikan respon berdasarkan masukkan.

Gambar Error! No text of specified style in document..

Single layer network

Dalam gambar 2 di atas, X1, X2, X3 adalah simpul input dari jaringan, W1, W2, W3 adlaah bobot dari tiap simpul dan Y adalah output dari jaringan.

b. Jaringan saraf multi-layer memiliki struktur tambahan selain unit input dan unit output, yaitu hidden-unit. Hidden unit berhubungan dengan tingkat kompleksitas jaringan. Semakin kompleks sebuah jaringan maka akan dibutuhkan semakin banyak jumlah hidden unit. Jaringan saraf multi-layer sering digunakan untuk menyelesaikan permasalahan yang rumit, karena pelatihan untuk permasalahan yang kompleks akan lebih berhasil jika dilakukan dengan multi-layer.

Gambar 1. Multilayer network

Dalam gambar 3 di atas, X1, X2, Xn adalah simpul input dari jaringan, V11, V12,…Vn3 adalah bobot dari jaringan, Z1, Z2, Zn adalah simpul tersembunyi dari jaringan.

2.3.Fungsi Aktivasi

Fungsi aktivasi adalah fungsi yang akan digunakan untuk memproses input menjadi output yang diinginkan. Penggunaan fungsi aktivasi ini tergantung pada kebutuhan dan output yang diinginkan.

Berikut merupakan contoh dari fungsi aktivasi yang biasa digunakan [6]:

1. Fungsi linier/pureline

Fungsi linier akan memproses input menuju output yang sebanding. Fungsi ini didefinisikan pada fungsi matematis sebagai berikut :

(2.1) Gambar 2.4 menggambarkan fungsi linier ini :

X1 X2 X3 Y W1 W2 W3

(3)

3

Gambar 2 Fungsi linier/pureline

2. Fungsi sigmoid

Fungsi sigmoid membatasi output neuron dalam rentang antara 0 hingga 1. Fungsi ini didefinisikan pada fungsi matematis sebagai berikut :

(2.2) Fungsi ini digambarkan pada Gambar 2.5 :

Gambar 3 Fungsi sigmoid

3. Fungsi tangen hiperbolik

Fungsi tangent hiperbolik membatasi nilai output dalam rentang -1 hingga 1 dengan menggunakan rumus tangen hiperbolik. Fungsi ini didefinisikan pada fungsi matematis sebagai berikut :

(2.3)

Gambar 2.6 adalah gambar dari fungsi tangen hiperbolik:

Gambar 4 Fungsi tangent hiperbolik

3. Teori Logika Fuzzy

Logika fuzzy menyatakan bahwa logika benar dan salah dalam logika konvensional tidak dapat mengatasi masalah gradasi yang ada pada dunia nyata. Tidak seperti logika Boolean, logika fuzzy mempunyai nilai yang kontinyu. Tingkat fuzzy dinyatakan dalam derajat keanggotaan dan derajat kebenaran. Oleh sebab itu dinyatakan bahwa sebuah kondisi bisa bernilai sebagian benar dan sebagian salah pada waktu yang sama[7].

3.1.Himpunan Fuzzy (Fuzzy Sets)

Himpunan fuzzy (fuzzy set) adalah sekumpulan obyek x dimana masing-masing obyek memiliki nilai keanggotaan (membership function) “μ” atau disebut juga dengan nilai kebenaran. Jika X adalah sekumpulan obyek dan anggotanya dinyatakan dengan x maka himpunan fuzzy dari A di dalam X adalah himpunan dengan sepasang anggota atau dapat dinyatakan dengan[8]:

𝐴 = { µA(𝑥) | 𝑥∶𝑥∈X,𝐴(𝑥)[0,1] R} (3.1) Contoh, jika A = “bilangan yang mendekati 10” dimana : A = {(x, µA(x)) | µA(x ) = (1+(x-10)2)-1}

A = {(0, 0.01),…,(5, 0.04),…,(10, 1),…,(15, 0.04),…} Ada beberapa hal yang perlu diketahui dalam sistem fuzzy, yaitu [8]:

1. Variabel fuzzy

Variabel fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Contoh: umur, temperatur, permintaan, dan lain-lain.

2. Himpunan fuzzy

Himpunan fuzzy merupakan suatu grup yang memiliki suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy. Contoh: Variabel temperatur terbagi menjadi 5 himpunan fuzzy, yaitu: DINGIN, SEJUK, NORMAL, HANGAT dan PANAS.

Gambar 5 Himpunan fuzzypada variabel temperature

3. Semesta Pembicaraan

Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan atau sebaliknya. Nilai semesta pembicaraan dapat berupa bilangan positif maupun negatif. Contoh semesta pembicaraan:

a. Semesta pembicaraan untuk variabel umur: [0 +∞]

b. Semesta pembicaraan untuk variabel temperatur: [0 40]

4. Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dan boleh dioperasikan dalam suatu himpunan fuzzy. Semesti halnya semesta pembicaraan, domain merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Nilai domain dapat berupa bilangan positif maupun negatif. Contoh domain himpunan fuzzy:

a. DINGIN = [0, 20] b. SEJUK = [15, 25] c. NORMAL = [20, 30] d. HANGAT = [25, 35]

(4)

4 e. PANAS = [30, 40].

3.2.Fungsi Keanggotaan Fuzzy

Keanggotaan (membership function) adalah suatu kurva yang menunjukkan titik-titik input data ke dalam nilai keanggotaanya (disebut juga sebagai derajat keanggotaan) yang memiliki interval antara 0 sampai 1[8].

Fungsi keanggotaan yang sering digunakan [8], antara lain :

1. Fungsi keanggotaan segitiga

Fungsi keanggotaan segitiga memiliki parameter a, b, dan c dengan formula sebagai berikut:

(3.2) 2. Fungsi keanggotaan trapesium

Fungsi keanggotaan trapesium memiliki parameter a, b, c, dan d dengan formula sebagai berikut :

(3.3) 3. Fungsi keanggotaan Gaussian

Fungsi keanggotaan Gaussian memiliki memiliki parameter a, dan dengan formula sebagai berikut :

(3.4) 4. Fungsi keanggotaan Bell yang diperluas

(Generalized Bell/Gbell)

Fungsi keanggotaan Bell yang diperluas memiliki parameter a, b, dan c dengan formula sebagai berikut :

(3.5)

3.3.Basis Aturan

Basis aturan merupakan sekumpulan aturan yang terdapat pada sistem fuzzy. Aturan if-then fuzzy atau fuzzy conditional statement adalah sebuah bentuk aturan if A then B, dimana A dan B adalah label dari fuzzy sets yang ditandai sesuai dengan fungsi keanggotaan[10]. Dengan kata lain, basis aturan if-then fuzzy digunakan untuk menangkap maksud yang tidak jelas dari pemikiran sesuai dengan kemampuan manusia yang mampu membuat keputusan di lingkungan yang tidak pasti dan tidak jelas. Sebagai contoh dapat digambarkan sebagai beikut :

If (jika) tekananya tinggi then (maka) volumenya kecil Dimana tekanan dan volume adalah variable linguistik, tinggi dan kecil adalah nilai linguistik atau label yang didefinisikan dalam fungsi keanggotaan.

3.4.Sistem Inferensi Fuzzy (Fuuzy Inference System)

Sistem inferensi fuzzy adalah sebuah sistempengambilan keputusan yang didasarkan pada teori fuzzy, aturan fuzzy if-then dan logika fuzzy[8].

Struktur dasar sistem inferensi fuzzy terdiri atas:

1. Sebuah basis aturan yang berisi aturan fuzzy if-then.

2. Basis data yang mendefinisikan fungsi keanggotaan himpunan fuzzy.

3. Unit pengambilan keputusan yang menyatakan operasi inferensi atas aturan-aturan yang ada. 4. Fuzzifikasi yang mentransformasikan masukan

klasik (crisp) ke derajat tertentu sesuai dengan fungsi keanggotaan.

5. Defuzzifikasi yang mentransformasikan hasil inferensi fuzzy ke dalam bentuk crisp.

Gambar 9. Fuzzy inference system

4. Sistem ANFIS (Adaptive Neuro-Fuzzy Inference System)

Sistem inferensi fuzzy merupakan sebuah system dengan pengetahuan linguistik yang mudah dimengerti dan dapat dijalankan pada algoritma propagasibalik berdasarkan pasangan data masukan-keluaran dengan menggunakan arsitektur jaringan saraf tiruan. Metode ini memungkinkan system fuzzy belajar. Gabungan dari system jaringan saraf (neural network) dengan system fuzzy ini disebut dengan adaptive neuro-fuzzy inference system (ANFIS)[10]

4.1.Struktur ANFIS dan Algoritma Pembelajaran Hibrida

ANFIS menggunakan sistem fuzzy Sugeno untuk mengambil keputusan berdasarkan aturan fuzzy if-then dan fakta yang ada. Model fuzzy Sugeno yang digunakan adalah fuzzy Sugeno tipe 1 yang menghasilkan output linear. Aturan umum fuzzy Sugeno dengan 2 aturan fuzzy if-the adalah sebagai berikut: Rule 1: If x is A1 and y is B1, then f1 = p1x + q1y + r1 Rule 2: If x is A2 and y is B2, then f2 = p2x + q2y + r2

Gambar 10 Fuzzy Sugeno tipe 1 dengan 2 input dan 2 aturan[11].

ANFIS menggunakan algoritma belajar hibrida dalam kerjanya. Algoritma hibrida ini berarti menggabungkan 2 (dua) algoritma pembelajaran dalam sebuah jaringan. ANFIS menggabungkan metode Least

(5)

5

Square Estimator (LSE) dan Error Backpropagation

(EBP). Metode EBP diterapkan pada lapisan 1, sedangkan metode LSE diterapkan pada lapisan 4[10].

Gambar 11 Struktur ANFIS dengan 2 input Tabel 1 Proses Pembelajaran Hibrida pada

ANFIS[11]

- Tahap Maju Tahap Mundur

Parameter Premis Tetap Gradient descent-EBP Parameter

Konsekuen LSE Tetap

Sinyal Keluaran

Simpul Sinyal Kesalahan Berikut adalah penjelasan lebih lanjut tentang proses pembelajaran pada ANFIS[10]:

Pada awalnya, jaringan merambat dari layer input ke layer output. Output dari neuron/simpul ke-i pada lapisan ke-l dinotasikan sebagai Ol,i, seperti berikut:

Lapisan 1

Setiap simpul i pada lapisan ini adalah simpul adaptif dengan fungsi aktivasi simpul sebagai berikut : O1,i = µAi(x) untuk i = 1,2 atau

O1,i = µAi-2(y) untuk i = 3,4 (4.1)

Dengan x dan y adalah input pada simpul ke i, dan Ai adalah label linguistik seperti baik, buruk, dsb. Dengan kata lain O1,i adalah fungsi keanggotaan dari dari Ai dan menspesifikasikan derajat keanggotaan x dan y terhadap

Ai. Fungsi keanggotaan µAi(x) didasarkan pada

persamaan bell dengan nilai maksimum 1 dan nilai minimum 0 (2.14).

(4.2) dimana {a, b,c} adalah himpunan parameter. Parameter ci dan ai dapat diatur untuk merubah nilai dari pusat dan lebar dari kurva bell, sedangkan bi digunakan untuk mengatur kemiringan kurva dan harus bernilai positif agar kurva tidak terbalik. Jika nilai dari paremeter-parameter ini berubah, maka kurva fungsi bell juga akan

berubah. Hal ini berarti akan terbentuk berbagai fungsi keanggotaan untuk himpunan linguistik A1, …,I sesuai dengan model fuzzy Sugeno. Parameter pada lapisan ini disebut dengan parameter premis.

Lapisan 2

Setiap simpul pada lapisan ini adalah simpul nonadaptif. Outputnya merupakan perkalian dari semua input yang masuk pada lapisan ini.

O2,i = wi = µAi(x) . µAi-2(y), i = 1,2,…,n (4.3) Tiap keluaran simpul menyatakan derajat pengaktifan (firing strength) tiap aturan fuzzy. Banyaknya simpul pada lapisan ini menunjukkan banyaknya aturan yang dibentuk.

Lapisan 3

Setiap simpul pada lapisan ini adalah simpul nonadaptif yang menampilkan fungsi derajat pengaktifan ternomalisasi (normalized firing strength) yaitu rasio keluaran simpul ke-i pada lapisan sebelumnya terhadap seluruh keluaran lapisan sebelumnya, dengan bentuk fungsi simpul : 2 , 1 , 2 1 , 3   wiw iw w i O (4.4) Lapisan 4

Setiap simpul pada lapisan ini adalah simpul adaptif dengan fungsi simpul :

i i i

i i i i w f w p x q y r O4,     (4.5)

dengan adalah derajat pengaktifan ternormalisasi dari lapisan 3 dan {pi, qi, ri} menyatakan parameter konsekuen yang adaptif.

Lapisan 5

Pada lapisan ini hanya ada satu simpul tetap yang fungsinya untuk menjumlahkan semua masukan.

i i i i i i i i i

w

f

w

f

w

O

5, (4.6)

Jaringan adaptif dengan lima lapisan tersebut ekivalen dengan system inferensi fuzzy Sugeno.

4.2.Proses Pembelajaran dengan RLSE untuk Parameter Konsekuen pada Tahap Maju

(6)

6 Berdasarkan arsitektur ANFIS pada Gambar 11, diketahui bahwa jika nilai dari parameter premis tetap maka keluaran keseluruhannya dapat dinyatakan dengan

kombinasi linier dari parameter

konsekuen

(4.7)

Jika sejumlah N data belajar diterapkan pada persamaan (4.7), didapat

       

 

 

 

wxp p

     

w ypq w pr w xpp

 

w ypq

 

w pr up u r w q y w p x w r w q y w p x w             2 2 2 2 2 2 1 1 1 1 1 1 1 2 1 2 2 1 2 2 1 2 1 1 1 1 1 1 1 1 1        (4.8)

Jika persamaan (4.8) dinyatakan dengan persamaan matriks, berbentuk :

(4.9)

Dengan dimensi dari masing matriks A, X dan B adalah

PxM, Mx1, dan Px1. Dimana P adalah jumlah pasangan

data latih dan M adalah jumlah parameter konsekuen. Penyelesaian terbaik adalah dengan meminimumkan . Dengan teori LSE didapatkan solusi untuk X*, LSE dari X, adalah dengan menggunakan pseudo-inverse dari X :

(4.10)

Karena memperlama waktu komputasi yang disebabkan oleh perkalian dengan inverse matriks dan persamaan menjadi tidak jelas jika adalah matriks singular, maka X dihitung dengan Recursive LSE (RLSE) seperti berikut :

(4.11)

Dengan adalah vector baris dari matriks A, adalah komponen ke i dari matriks B, dan Si adalah matriks kovarian. Inisial kondisi dari X0 adalah 0 dan S0 adalah

, dimana adalah bilangan positif besar dan I adalah matriks identitas dengan ukuran MxM.

4.3.Proses Pembelajaran Backpropagation-error untuk Parameter Premis pada Tahap Mundur

Misalkan jaringan adaptif yang diberikan memiliki lapisan L dan lapisan k memiliki sejumlah k node, maka untuk P data, jumlah dari kesalahan kuadrat adalah:

(4.12) Dengan adalah output ideal dari data, adalah output yang dihasilkan jaringan. Tujuan dari sistem adaptif adalah untuk meminimumkan pengukuran kesalahan pada persamaan (4.12) dengan mengubah parameter-parameter adaptif. Dengan mendefinisikan sinyal kesalahan sebagai ordered derivative terhadap keluaran simpul ke-i, lapisan ke-l, maka ordered derivative dinotasikan dengan :

(4.13)

Sinyal kesalahan untuk simpul keluaran ke-i (pada lapisan l) dapat dihitung langsung dengan :

(4.14)

Jika pengukuran kesalahan seperti yang didefinisikan pada persamaan (4.12) maka persamaan (4.13) menjadi :

(4.15)

Untuk simpul dalam pada lapisan l posisi ke-i, sinyal kesalahan dapat diperoleh menggunakan aturan rantai :

(4.16)

Dengan 0 ≤ l ≤ L-1. Sinyal kesalahan simpul dalam, pada lapisan ke-l dapat dinyatakan sebagai kombinasi linier dari sinyal kesalahan simpul pada lapisan ke (l+1). Jadi untuk menghitung sinyal kesalahan pada simpul ke-i lapisan ke-l (l < L), pertama digunakan persamaan (4.14) untuk mendapatkan sinyal kesalahan pada lapisan keluaran kemudian persamaan (4.16) secara iteratif sampai mencapai lapisan yang diinginkan. Prosedur diatas disebut penjalaran balik (backpropagation) karena sinyal kesalahan dihitung secara mundur dari lapisan keluaran hingga lapisan masukan.

Vektor gradien didefinisikan sebagai ordered derivative dari pengukuran kesalahan terhadap tiap parameternya. Jika a adalah parameter simpul ke-I lapisan ke-l, maka diperoleh :

(7)

7

(4.17)

Jika a merupakan parameter yang ada pada beberapa simpul maka persamaan (2.29) menjadi :

(4.18)

dengan S merupakan himpunan simpul yang berisikan a sebagai parameter, sedangkan x* dan f* adalah keluaran dan fungsi dari simpul yang bersangkutan. Turunan masing-masing secara keseluruhan terhadap pengukuran kesalahan akan menghasilkan :

(4.19)

Dengan metode gradient simple steepest descent, persamaan untuk memperbaiki parameter a adalah :

(4.20)

dengan adalah laju proses belajar (learning rate) yang dinyatakan dengan :

(4.21)

Dengan k adalah step size yang dapat diubah untuk mempercepat konvergensi[11].

Parameter untuk simpul selanjutnya diperbaharui dengan :

i + 1 = i +  (4.22) Untuk sistem pada Gambar 2.12 dengan menerapkan persamaan (2.26) dan persamaan (2.28) maka diperoleh persamaan-persamaan : 13 13 ε x Ep    (4.23) adalah sinyal kesalahan lapisan keluaran dari jaringan adaptif. Kemudian secara iteratif dengan propagasibalik diperoleh sinyal kesalahan simpul ke-i lapisan ke-L-1, atau 13 12 , 13 12 ε ε w (4.24) 13 11 , 13 11 ε ε w (4.25) 12 10 , 12 10 ε ε w (4.26) 11 9 , 11 9 ε ε w (4.27) 9 8 , 9 10 8 , 10 8 ε ε ε ww (4.28) 9 7 , 9 10 7 , 10 7 ε ε ε ww (4.29) 8 6 , 8 6 ε ε w (4.30)

dengan cara yang sama dapat diperoleh 5, 4 dan 3. Dalam penelitian ini dicari nilai perubahan dari parameter-parameter fungsi keanggotaan himpunan fuzzy. Parameter-parameter tersebut berada pada lapisan ke-1 maka sinyal kesalahan pada lapisan ke-1, yaitu 6, 5, 4 dan 3 dimasukkan ke dalam persamaan (4.24) –

(4.30) untuk mencari . Pada persamaan (4.24) – (4.30) digunakan notasi Wi,j, dimana nilai ini

menyatakan bobot untuk sinyal kesalahan tiap simpul. Berdasarkan persamaan (2.28) dapat dihitung dengan

, , j i j i xf W    untuk i > j (4.31) Dibandingkan dengan menerapkan Persamaan (4.16) untuk mencari sinyal kesalahan pada lapisan dalam, prosedur yang lebih sederhana dapat dilakukan dengan mengartikan Wi,j sebagai bobot sinyal kesalahan

dari simpul i ke simpul j dan sinyal kesalahan pada simpul i merupakan jumlah dari tiap sinyal kesalahan yang masuk ke simpul j dikalikan dengan bobotnya. Proses belajar propagasi balik (EBP) untuk contoh ini bisa digambarkan sebagai berikut.

Gambar 12 Proses belajar propagasibalik pada ANFIS[8]

5. Implementasi 5.1.Tahap Latih

Tahap ini merupakan tahap pembelajaran yang dilakukan oleh jaringan. Parameter pada jaringan dirubah-rubah berdasarkan data yang dimasukkan agar menghasilkan output yang diinginkan. Perubahan parameter - parameter diharapkan mampu menyelesaikan masalah-masalah yang sejenis, tidak overfitting maupun underfitting.

Pada tahap ini terdapat 2 tahap pembelajaran, yaitu tahap maju dan tahap mundur. Berikut merupakan penjelasan dari masing-masing tahap:

1. Tahap maju  Lapisan 1

Output dimpul pada lapisan ini merupakan fungsi keanggotaan µAi(x) yang didasarkan pada persamaan bell

(8)

8 dengan nilai maksimum 1 dan nilai minimum 0 seperti pada persamaan (4.2). Parameter a, b, c pada persamaan (4.2) disebut dengan parameter premis. Nilai dari parameter ini akan diperbarui pada tahap mundur.

 Lapisan 2

Output setiap simpul pada lapisan ini merupakan perkalian dari semua input yang masuk seperti pada persamaan (4.3). Tiap keluaran simpul menyatakan derajat pengaktifan (firing strength) tiap aturan fuzzy. Banyaknya simpul pada lapisan ini menunjukkan banyaknya aturan yang dibentuk

 Lapisan 3

Ouput setiap simpul pada lapisan ini disebut dengan derajat pengaktifan ternomalisasi (normalized firing

strength) sesuai dengan persamaan (4.4). Derajat

pengaktifan ternomalisasi adalah rasio keluaran simpul ke-i pada lapisan sebelumnya terhadap seluruh keluaran lapisan sebelumnya.

 Lapisan 4

Setiap simpul pada lapisan ini adalah simpul adaptif dengan fungsi simpul seperti ayng dijelaskan pada persamaan (4.5).

 Lapisan 5

Pada lapisan ini hanya ada satu simpul tetap yang fungsinya untuk menjumlahkan semua masukan dari lapisan 4 seperti dijelaskan pada persamaan (4.6). 2. Tahap mundur

Pada proses ini dilakukan algoritma EBP (Error Backpropagation) dimana pada setiap layer dilakukan perhitungan error untuk melakukan update parameter-parameter ANFIS. Pada layer 5 dilakukan perhitungan error dengan rumus differensial dari perhitungan MSE yaitu:

2

)

(

yd

y

2

(5.1) Nilai yd adalah output aktual, dan nilai y adalah output ANFIS. Setelah persamaan 5.1 dideferensial maka manghasilkan persamaan (5.2)

y

yd

5

(5.2)

Pada layer 4 tidak dilakukan perhitungan error hal ini dikarenakan pada alur mundur tidak terjadi update nilai paramater konsekuen yang terdapat pada layer 4. untuk perhitungan error layer 3 dilakukan dengan rumus sebagai berikut: t y y error

     * 3 (5.3)

Dimana hasil defferensial rumus diatas adalah sebagai berikut:

)

(

4

*

)

(

5 3

i

o

i

, i=1,2,..,7 (5.4) Pada layer 2 dilakukan perhitungan error dengan melibatkan error 5 dan error 3 yaitu :

       t t y y error* * 2 (5.5)

Dimana hasil defferensial rumus 3.5 adalah sebagai berikut: 2 2 1 3 2

)

*

(

)

(

*

)

(

)

(

i

i

n

i=n=1,2,..,7 (5.6) Pada layer 1 dilakukan perhitungan error dengan melibatkan error 5 ,3 dan error 2 yaitu :

*

*

*

1

error

y

y

t

t

(5.7) Dimana hasil defferensial rumus diatas adalah sebagai berikut:

, i=1,2,...,28 j=1,2,...7 (5.8) Setiap epoch dari jaringan adalah satu kali tahap maju dan satu kali tahap mundur dilakukan. Dalam tahap maju, input diproses untukmendapatkan output jaringan sampai matriks A dan B didapatkan, dan parameter konsekuen didapatkan dengan formula LSE dan kemudian menghitung error. Pada tahap mundur, error rates dipropagasikan balik sampai lapisan input dan parameter premis dirubah

5.2.Tahap Uji

Tahap uji yang dilakukan untuk mengetahui apakah ANFIS dapat mengenali pola dengan memberikan input yang mungkin berbeda dengan input pada tahap latih. Dataset yang ada dibagi menjadi data latih dan data uji dengan komposis ayng berbeda. Pada tahap ini, jaringan hanya berjalan satu kali tahap maju untuk setiap rangkaian data yang dimasukkan.

6. Uji Coba dan Evaluasi

Dataset yang digunakan pada uji coba ini adalah nilai-nilai yang berasal dari 2 mata kuliah yang berbeda dengan atribut 4 atribut (nilai Kuis 1, nilai Kuis 2, nilai UTS, nilai Kuis 3) dan satu nilai post test (UAS) yang akan diprediksi

6.1.Skenario Uji Coba

Uji coba dilakukan dengan melatih data dengan menggunakan iterasi/epoch yang berbeda-beda, yaitu 50, 100, dan 200 epoch. Komposisi data latih dan data uji yang digunakan adalah 25 data latih dan 15 data uji. Uji coba ini dilakukan pada dataset1 dan dataset2 untuk kemudian dibandingkan hasilnya.

Pada setiap pasangan data input output akan dihitung error program yang didapatkan dari selisih antara output ideal (nilai post test yang sebenarnya) dengan output yang dihasilkan oleh jaringan. Kemudian disetiap akhir iterasi/ epoch dihitung RMSE (root mean square error). Dan di akhir epoch akan dihitung rata-rata error dan rata-rata RMSE. Semakin kecil nilai rata-rata error dan rata-rata RMSE menunjukkan bahwa aplikasi mampu berjalan sesuai dengan yang diharapkan.

6.2. Hasil Uji Coba

Rata-rata error sesuai dengan persamaan (2.24) dan RMSE sesuai dengan persamaan (2.44) hasil uji coba pada Dataset1 dapat dilihat pada tabel 5.1 berikut

(9)

9

Tabel 6.2 Rata-rata Error dan RMSE output ANFIS dengan menggunakan 15 data uji pada Dataset1

Jumlah

Iterasi Rata-rata Error Rata-rata RMSE

50 0,01 0,01

100 0,01 0,01

200 0,01 0,01

Dari tabel 6.1 di atas terlihat bahwa semakin banyak iterasi yang dilakukan akan menghasilkan rata-rata error dan rata-rata RMSE yang semakin kecil. Kecenderungan nilai rata-rata error dan rata-rata RMSE semakin kecil pada saat jumlah iterasi bertambah dari 50 menjadi 100 kemudian menjadi 200 iterasi.

Rata-rata error dan RMSE hasil uji coba pada Dataset2 dapat dilihat pada tabel 6.2 berikut

Tabel 6.3 Error output ANFIS dengan menggunakan 15 data uji pada Dataset2

Jumlah

Iterasi rata Error Rata- rata RMSE

Rata-50 0,06 0,07

100 0,06 0,07

200 0,06 0,07

Dari tabel 6.2 di atas terlihat bahwa semakin banyak iterasi yang dilakukan akan menghasilkan rata-rata error dan rata-rata RMSE yang semakin kecil. Kecenderungan nilai rata-rata error dan rata-rata RMSE semakin kecil pada saat jumlah iterasi bertambah dari 50 menjadi 100 kemudian menjadi 200 iterasi.

6.3. Evaluasi

Dari hasil uji coba dengan menggunakan 25 data latih dan 15 data uji dapat diketahui bahwa jumlah iterasi/epoch berpengaruh pada rata-rata error dan rata-rata RMSE yang dihasilkan. Semakin banyak iterasi, maka program akan menghasilkan rata-rata error dan rata RMSE yang semakin kecil. Pada dataset1, rata-rata error dan rata-rata RMSE terkecil diperoleh pada setelah 200 iterasi, yaitu sebesar 0,01 untuk rata-rata error dan 0,01 untuk rata-rata RMSE. Sedangkan pada dataset2, rata-rata error dan rata-rata RMSE terkecil diperoleh juga setelah 200 iterasi, yaitu sebesar 0,06 untuk rata-rata error dan 0,06 untuk rata-rata RMSE.

Dari hasil uji coba juga diketahui bahwa perubahan jumlah epoch yang diberikan pada ANFIS berpengaruh pada hasil yang dikeluarkan. Hal ini disebabkan karena semakin banyak epoch yang diberikan pada jaringan ANFIS menyebabkan semakin banyak pula proses learning yang dilakukan. Dengan semakin banyaknya proses learning yang dilakukan maka parameter akan disesuaikan sehingga bisa menghasilkan error yang minimum untuk semua data dalam dataset.

7. Kesimpulan

Berdasarkan hasil uji coba yang telah dilakukan, terdapat beberapa kesimpulan yang dapat diambil, yaitu:

1. Metode ANFIS ini dibangun dengan 5 lapisan, dimana masing-masing lapisan memiliki fungsi aktivasi sesuai dengan konsep sistem inferensi fuzzy. Dan menggunakan forward dan backward untuk memperbaiki parameter-parameternya. 2. Dengan menggunakan iterasi/epoch yang berbeda

terlihat bahwa metode ANFIS mencapai rata-rata error sebesar 0,01 dan RMSE sebesar 0,01 untuk dataset1. Error tersebut tercapai pada saat epoch 200. Untuk dataset2 model mencapai error sebesar 0,06 dan RMSE sebesar 0,07 dengan menggunakan epoch yang sama.

Berdasarkan hasil error dapat disimpulkan bahwa semakin besar jumlah iterasi/epoch amak error yang dihasilkan juga semakin kecil.

Referensi

[1] Karagozog˘lu, B., & Turkmen, N. 2007. A software

tool to facilitate design, assessment and evaluation of courses in an educational system.

[2] Superby, J., F, Vandamme, J., P, & Meskens, N. 2006.Determination of factors influencing the achievement of the first-year university students using data mining methods.

[3] Romero, C, Ventura, S, Espejo, P., G, & Hervas, C. 2010. Data Mining Algorithms to Classify Students. [4] Taylan, O, & Karagozoglu, B. 2009. An adaptive neuro-fuzzy model for prediction of student’s academic performance.

[5] Wikipedia. 2011. Klasifikasi, <URL:

http://id.wikipedia.org/wiki/Klasifikasi> diakses 21 Desember 2011.

[6] Setiawan, Kuswara, 2003, Paradigma Sistem Cerdas. Malang : Banyumedia Publishing.

[7] Zadeh, L. A. 1972. A fuzzy set theoretic interpretation of the linguistic hedges. Journal of Cybernetics, 2, 4–34.

[8] Kusumadewi, Sri. 2002. Analisis dan Desain Sistem Fuzzy Menggunakan Fuzzy Toolbox Matlab. Yogyakarta : Graha Ilmu.

[9] Jang, J.-S.R, Sun, C.-T dan Mizutani E. 1996. ANFIS : Adaptive-Network-Based Fuzzy Inference System. [10] Jang, J., & Sun, C. 1995. Neuro-fuzzy modeling and control. Proceedings of IEEE, 83,378406 .

Referensi

Dokumen terkait

● BMKG menginformasikan Peringatan Dini Cuaca Jawa Barat tanggal 9 Januari 2021 pk 14.10 WIB: berpotensi terjadi hujan sedang-lebat yang dapat disertai kilat/petir dan angin

Dampak yang didapatkan dari tidak terintegrasinya data-data dari setiap Fakultas yang menginduk pada suatu Universitas diantaranya adalah informasi yang didapat

Berdasarkan hasil penelitian terkait persepsi siswa yang dilakukan oleh Nurhidayat (2012), hasilnya menyebutkan bahwa persepsi positif remaja tentang perilaku merokok

Pelaksanaan penelitian tindakan kelas pada pembelajaran Seni rupa dalam meningkatkan kemampuan pada pembelajaran seni rupa siswa kelas 1 SMP Negeri 1 Tapa Kabupaten Bone

Selain itu, hasil penelitian ini juga didukung dari penelitian yang dilakukan oleh Hemawati 97 dengan judul Pengaruh Total Pembiayaan Musyarakah, Pembiayaan Bai’

kat merealisasikan perasaannyaVt&#34;idak jelas menggambar- kan obyek yang dituju, sehingga untuk dapat mengetahui maks,;ldnya perlu pemahaman terhadap apa :yang

Islam dapat menjamin terwujudnya kebahagian dan kesejahteraan manakalah ajarannya dijadikan pedoman hidup dan dilaksanakan secara konsisten serta konsekuen.(Siti Muria,

Berkaitan dengan permasalahan yang telah dipaprkan, melalui metode VAL IT ingin mengkaji bagaimana pengelolaan aset yang berbasis teknologi informasi sebagai bagian dari