## Penerapan Particle Swarm Optimization Pada Feedforward Neural Network Untuk Klasifikasi Teks Hadis Bukhari Terjemahan Bahasa Indonesia
Muhammad Ghufran, Adiwijaya, Said Al Faraby
Fakultas Informatika, Universitas Telkom Bandung, Indonesia Email: 1 muhghufran@student.telkomuniversity.ac.id, 2 adiwijaya@telkomuniversity.ac.id
3 saidalfaraby@telkomuniversity.ac.id

## Abstrak
Hadis merupakan sumber hukum Islam kedua setelah Al-Quran dan dijadikan sebagai pedoman hidup bagi umat islam. terdapat banyak hadis yang telah diriwayatkan salah satunya riwayat Bukhari. Penelitian ini bertujuan untuk membangun model yang dapat melakukan klasifikasi teks hadis Bukhari terjemahan bahasa  Indonesia. Topik ini dipilih untuk membantu masyarakat dalam memahami makna informasi yang terdapat didalam hadis berupa informasi yang menganjuran, melarangan, atau hanya sebatas informasi saja. Algoritma Backpropagation (BP) merupakan teknik yang umum digunakan untuk melatih Feedforward Neural Network (FNN) dalam proses klasifikasi karena memiliki akurasi yang baik khususnya dalam klasifikasi teks.  Tetapi BP memiliki kelemahan yaitu relatif lambat untuk mencapai konvergen dan terjebak dalam local minimum. Untuk mengatasi hal tersebut, algoritma Particle Swarm Optimization (PSO) digunakan untuk mempercepat mencapai konvergen dan mencari nilai  global  minimum. Tujuan  dari pengujian ini  untuk melihat kemampuan PSO dalam  melatih bobot dan bias pada FNN. Hasil pengujian pada 1000 data hadis menunjukkan model PSO-FNN dengan proses stemming mendapatkan  akurasi 88.5% sedangkan tanpa proses stemming  mendapatkan akurasi 88.57%. Sementara itu,  hasil pengujian perbandingan antara PSO- FNN  dengan  BP-FNN,  hasil  menunjukkan  bahwa  PSO-FNN  mendapatkan  akurasi  sebesar  88.57%  lebih  rendah  0.93% dibandingkan BP-FNN yang memperoleh akurasi sebesar 89.5%.
Kata  kunci: hadis,  particle  swarm  optimization,  backpropagation,  feedforward  neural  network,  klasifikasi  teks,  pemilihan fitur, multi-label

## Abstract
Hadith is the second source of Islamic law after Al-Qur'an and used as a guide for Muslims life. there are many hadith which has  been  narrated,  one  of  them  is  Bukhari  history.  This  research  aims  to  build  a  model  that  can  classify  Bukhari  hadith translation of Indonesian language. This topic is chosen to assist the public in understanding the meaning of the information that  contained  in  the  hadith,  in  the  form  of  advocacy  information,  prohibitions  or  just  information.  The  Backpropagation Algorithm (BP) is the general technique that used to train the Feedforward Neural Network (FNN) in classification process cause it has good accuracy for text classification. But, BP has a weakness that is relatively slow to reach convergent and stuck in local minimum. To overcome this, the Particle Swarm Optimization (PSO) algorithm is used to speed up convergence and find the minimum global value. The purpose of this test is to see the PSO's ability to train the weight and refraction of FNN. The result of this research on 1000 hadith data show that model PSO-FNN with stemming process get 88.5% accuracy while without stemming process get 88.57% accuracy. Meanwhile, the result of comparative test between PSO-FNN with BP-FNN, the result shows that  PSO-FNN get accuracy equal to 88.57% which is lower 0.93% than BP-FNN which has 89.5% accuracy.
Keywords: hadith,  particle  swarm  optimization,  backpropagation,  feedforward  neural  network,  text  classification,  feature selection, multi-label.

## 1. PENDAHULUAN
Hadis berasal dari bahasa Arab “Hadatha” yang berarti berita dan cerita atau bisa juga disebut sunnah, yang adalah perkataan, perbuatan, ketetapan dan persetujuan dari Nabi Muhammad yang dijadikan pedoman khususnya untuk kaum muslim di dunia. Hadis menjadi sumber hukum islam kedua setelah Al-Qur’an. Terdapat banyak kitab hadis yang ada di dunia, salah satu kitab hadis yang terkenal adalah Shahih Al-Bukhari karena dianggap sebagai kitab yang paling ontentik.
Saat ini, perkembangan teknologi tumbuh secara signifikan, salah satunya yang lagi tren adalah manfaat teknologi  pengenalan  ucapan  untuk  masyarakat  dalam  belajar  pengucapan  bahasa  arab  yang  benar  contohnya seperti belajar pengucapan huruf Hijaiyah [1]. Selain itu, dampak teknologi di jaman era digital membuat  setiap informasi  dapat  ditemukan  dengan  mudah  di  internet.  Tidak  terkecuali  hadis,  Banyak  data  hadis  dalam  bentuk digital telah tersebar, sehingga memudahkan masyarakat untuk mempelajari ilmu islam yang terdapat dalam hadis. Setiap hadis memiliki informasi yang berbeda-beda. terdapat hadis yang menganjurkan untuk berbuat kebaikan, ada  juga  yang  melarang, dan ada  yang  hanya  memberikan  informasi atau cerita  yang telah terjadi  pada sejarah islam.  Untuk  mengetahui  sifat  yang  dimiliki  pada  setiap  hadis  dibutuhkan  sebuah  model  sistem  yang  dapat mengidentifikasi apakah hadis tersebut merupakan anjuran, larangan, atau hanya sebatas informasi saja.
Akan tetapi tidak semua hadis hanya memiliki satu sifat saja, terdapat banyak hadis yang sifatnya lebih dari satu bahkan memiliki ketiga sifat tersebut. sehingga dibutuhkan model klasifikasi yang mampu mengelompokan hadis lebih dari satu sifat.
Dari  latar  belakang  tersebut  penulis  membuat  model  klasifikasi multi- label  yang  memungkinkan  setiap hadis memiliki lebih dari satu sifat. Hadis yang digunakan sebanyak 1000 data hadist Bukhari yang telah diberi
label  untuk  membantu  proses  pembelajaran  sistem. Information  gain digunakan  sebagai  seleksi  fitur  untuk memilih  fitur-fitur  yang  hanya  berhubungan  dengan  setiap  kelas.  Selanjutnya  model  klasifikasi Feedforward Neural Network (FNN) yang bobot dan biasnya dilatih menggunakan metode Particle Swarm Optimization (PSO) digunakan  untuk  melakukan  klasifikasi  terhadap  data  yang  telah  diseleksi  pada  tahap  sebelumnya.  Hasil  dari klasifikasi berupa label kelas dari masing-masing data.
Pada penelitian ini, penulis menggunakan dataset sebesar 1000 data hadis terjemahan bahasa Indonesia dari hadis Bukhari dengan tiga label yaitu anjuran, larangan, dan informasi. setiap data memungkinkan memiliki lebih dari satu label. selain itu, metode evaluasi yang digunakan untuk mengukur performasi sistem yaitu hamming loss yang  merupakan  salah  satu  metode  evaluasi  yang  umum  digunakan  untuk  pengujian multi -label,  metode  ini menghitung nilai error rate dari hasil klasifikasi.
Terdapat beberapa bagian selanjutnya pada jurnal ini, antara lain: Pada bagian kedua, terdapat studi terkait penelitian yang telah dilakukan sebelumnya. Pada bagian ketiga, akan dijelaskan alur dan model sistem yang akan dibangun untuk klasifikasi  teks  hadis  bukhari terjemahan  bahasa Indonesia dengan  menggunakan Feedforward Neural Network (FNN) yang bobot dan biasnya dilatih menggunakan Particle Swarm Optimization (PSO) . Pada bagian keempat, pemaparan hasil pengujian dan analisis dari  hasil  yang telah didapatkan. Pada bagian terakhir, dijelaskan kesimpulan yang didapatkan dari penelitian ini.

## 2. TEORITIS
Terdapat  banyak penelitian tentang klasifikasi teks dengan  memanfaatkan pendekatan  machine  learning, baik itu dalam bahasa inggris, arab, ataupun indonesia. Salah satu penelitian yang memanfaatkan machine learning pada  klasifikasi  teks  adalah  penelitian  yang  dilakukan  oleh  Al-Kabi  [2],  dengan  bantuan  teknik  TF-IDF  yang mengelompokkan  hadis  Bukhari  menjadi  kedalam  8  bentuk  kelas  yaitu ”Knowledge”,  ”Praying”,  ”Eclipse”, ”Call  to  Prayer”,  ”Faith”,  ”Good  Manners”,  ”Fasting”,  dan  ”Almsgiving” .  Dalam  penelitian  tersebut  hasil akurasi  sangat  dipengaruhi  oleh preprocessing  stopword dan stemming ,  rata-rata  akurasi  yang  didapat  adalah sebesar 83.2%.
Penelitian  lain  tentang  klasifikasi  teks  dilakukan  oleh  Harrag  F  [3]  dengan  menggunakan  tiga  metode stemming yaitu Root-Based stemming, Light-Stemming , dan Dictionary-Lookup stemming , untuk meningkatkan efektifitas  dan  performansi  dari  hasil  klasifikasi  teks.  Pada  penelitiannya, Artificial  Neural  Network (ANN) digunakan  sebagai  classifier  karena  memiliki  kelebihan  dapat  menangani  masalah  linear  dan  non-linier  untuk kategorisasi teks dan penggolongan linear dan non-linier dapat mencapai hasil yang baik [3]. Selain ANN, Support Vector Machine (SVM) juga digunakan dalam penelitian tersebut karena SVM merupakan model statistik yang memiliki kemampuan powerful dalam menangani set fitur yang sangat besar. Hasil dari penelitian tersebut, proses stemming digunakan sebagai feature reduction dalam memilih fitur yang akan digunakan dan mendapatkan hasil performansi sebesar 94% menggunakan F1 Measure dengan Macro-Average .
Selain itu, penelitian tentang klasifikasi teks dalam bahasa indonesia juga pernah dilakukan oleh Eliza J [4] dengan  melakukan  klasifikasi  teks  hadis  Bukhori  terjemahan  bahasa  Indonesia  kedalam  tiga  kelas  hadis,  yaitu hadis anjuran, hadis larangan, dan hadis informasi. Dalam penelitiannya klasifikasi teks hadis berdasarkan model unigram dengan menggunakan Artificial Neural Network (ANN), dan TF-IDF sebagai teknik untuk mendapatkan bobot nilai pada setiap kata. Pada pengujiannya  menghasilkan performansi  sebesar 85%. Disisi  lain, penelitian serupa dilakukan oleh Andina K [5] pada tahun 2017 dengan menggunakan Support Vector Machine (SVM), pada penelitian  tersebut  data  di  split  menjadi  data  latih  dan  data  uji  menggunakan  teknik  K-Fold.  Hasil  rata-rata performansi yang didapatkan pada pengujian tersebut sebesar 88%.
Disisi lain, Asriyanti Indah Pratiwi [6] melakukan penelitian tentang klasifikasi teks untuk sentimen analisis dalam movie review . Menemukan pemilihan fitur dan klasifikasi yang bagus merupakan tantangan tersendiri untuk mendapatkan hasil  yang optimal. Pada penelitian ini,  information gain digunakan sebagai feature selection dan classifier . Pemilihan fitur dan klasifikasi berdasarkan informasi yang dibutuhkan untuk menangani jumlah fitur yang besar agar klasifikasi lebih optimal, sekitar 90% fitur yang tidak diperlukan dihilangkan dan mendapatkan akurasi rata-rata sebesar 96%. Hasil tersebut merupakan kinerja terbaik sejauh ini.
Pada kasus klasifikasi teks multi -label, terdapat beberapa penelitian  yang telah dilakukan. Salah satunya yang dilakukan oleh Min-Ling Zhang dan Zhi-Hua Zhou [7] pada tahun 2006 terkait penelitian tentang klasifikasi teks multi-label. Metode yang digunakan pada penelitian tersebut adalah BP-MLL ( Backpropagation for multi- label Learning ) yang merupakan algoritma backpropagation dengan menggunakan fungsi error yang menangkap karakteristik pembelajaran multi -label, yaitu label dari suatu instance harus diberi peringkat lebih tinggi daripada yang  tidak  termasuk  dalam instance tersebut.  Metode  BP-MLL  memiliki  hasil  akurasi  yang  lebih  tinggi dibandingkan metode multi -label lainnya seperti BoosTexter, ADTBoost.MH, Rank-SVM dan BasicBP. Penelitian klasifikasi teks multi-label juga dilakukan oleh Reynaldi Ananda Pane [8] pada klasifikasi topik ayat  Al-Quran  terjemahan  bahasa  Inggris  menggunakan  Multinomial  Naive  Bayes,  proses stemming dan  tanpa stemming mempengaruhi  hasil evaluasi  yang didapatkan, proses tanpa stemming mendapatkan  hasil  yang  lebih baik karena setiap kata yang terkandung dalam Al-Qur’an memiliki ciri khusus. Hamming loss digunakan sebagai metode untuk evaluasi performansi sistem. Performa terbaik yang didapatkan pada penelitian ini adalah 0.1247
Disisi  lain, terdapat  beberapa  metode optimasi  yang dapat digunakan untuk meningkatkan performasi classifier ANN  dan  SVM  seperti  penelitian  yang  dilakukan  oleh  Septian  N  [9]  membangun  sistem  ramalan  cuaca menggunakan Hybrid  Genetic Algoritm dan Feedforward Neural  Network yang terhubung secara parsial. Pada penelitian tersebut, mendapatkan nilai MAPE sebesar 35,20% atau akurasi sebesar 64,80% dan MAPE 18,48% atau  81,52%  untuk  nilai  data  yang  hilang  pada  intensitas  hujan  diganti  dengan  nol  dan  rata-rata.  Contoh  lain, penelitian yang dilakukan oleh Joko [10] menggunakan Particle Swarm Optimization (PSO) yang diintegrasikan dengan Artificial  Neural  Network (ANN)  dalam  memprediksi  laju  inflasi.  Menurut  Joko  penintegrasian  model ANN-PSO digunakan untuk saling mengatasi kelemahan dan meningkatkan kelebihan pada masing-masing model sehingga diperoleh  hasil pengukuran  yang  lebih  baik. Hal tersebut terbukti pada pengujian prediksi  laju  inflasi menunjukkan bahwa secara ANN-PSO atau disebut dengan awPSO-ANN mendapatkan nilai RMSE yang lebih baik (0.157) dibandingkan ANN sebelum dioptimasi (0.181).

## 3. ANALISA DAN PEMBAHASAN
Dataset yang digunakan pada penelitian adalah hadis shahih Bukhari terjemahan bahasa Indonesia sebanyak 1000 data. Pada setiap data diberi label kelas yang terdiri dari tiga kelas yaitu kelas anjuran, kelas larangan, dan kelas informasi. Setiap data dapat memiliki satu atau lebih label kelas. Berikut contoh data yang akan digunakan pada proses klasifikasi yang terdapat pada Tabel 1 berikut.
Tabel 1.  Data Hadis Multi-Label Data Anjuran  Larangan  Informasi Siapa yang Kaum Muslimin selamat dari lisan dan tangannya. 0 0 1 Kamu memberi makan, mengucapkan salam kepada orang yang kamu kenal dan yang tidak kamu kenal. 1 0 1 permudahlah dan jangan persulit, berilah kabar gembira dan jangan membuat orang lari. 1 1 1
Pada penelitian ini, sistem dibangun untuk dapat melakukan klasifikasi data hadis terhadap tiga kelas data multi -label seperti yang telah direpresentasikan pada Tabel 1. Ada beberapa proses utama yang dilakukan dalam membangun sistem antara lain: proses preprocessing yaitu proses untuk menghasilkan data yang terstruktur dan bersih,  selanjutnya  proses feature  selection yang  digunakan  untuk  memilih  fitur  yang  berpengaruh,  proses pembobotan setiap fitur, proses klasifikasi yang akan menentukan kelas pada setiap data hadis, dan evaluasi dari proses klasifikasi. Berikut secara umum gambaran alur sistem pada Gambar 1.

## Gambar 1. Gambaran Umum Alur Sistem
Pada tahap  awal  dilakukan  proses  preprocessing  untuk  menghilangkan noise dan  mengubah  menjadi  data hadis menjadi data yang terstruktur sesuai dengan kebutuhan pada proses selanjutnya. Proses preprocessing dibagi menjadi beberapa tahap yang digambarkan pada Gambar 2.

## Gambar 2. Tahap Proses Preprocessing
1. Case Folding , merupakan proses untuk mengubah setiap kata menjadi huruf kecil, tahap ini diperlukan karena setiap  data  hadis  terdapat  huruf  kapital  sehingga  data  menjadi  tidak  konsisten  dan  perlu  distandarisasikan menjadi huruf kecil.
2. Cleaning , merupakan proses untuk menghilangkan karakter yang tidak dibutuhkan seperti tanda baca, angka dan simbol.
3. Tokenisasi ,  merupakan  proses  memotong  kalimat  menjadi  kumpulan  kata-kata  yang  kemudian  setiap  kata dijadikan fitur / atribut untuk proses selanjutnya.
4. Stopword  Removal ,  merupakan  proses  untuk  menghilangkan  kata-kata  yang  kurang  penting  dan  frekuensi jumlah kemunculannya cukup sering seperti : dan, atau, nama orang (pada kasus klasifikasi hadis) Tahap selanjutnya, data yang telah di preprocessing akan diseleksi untuk menentukan fitur mana saja yang akan digunakan untuk proses klasifikasi. Tahap ini disebut juga dengan feature selection , yang dimana hasil dari proses ini sangat mempengaruhi hasil klasifikasi karena akan menentukan fitur/kata apa saja yang berhubungan dengan masing-masing kelas. Feature Selection yang digunakan pada penelitian ini adalah Information Gain (IG) . Semakin tinggi kata yang memiliki nilai information gain maka semakin mempengaruhi kelas tersebut dan akan dijadikan fitur utama dalam proses klasifikasi.
𝐼(𝐶; 𝐴)   =  𝐻(𝐶)  −  𝐻(𝐶|𝐴); (1)
Pada  Persamaan(1)  Dimana  C  merupakan  kelas  dan  A  adalah  atribut  (kata),  sedangkan 𝐻(𝐶) = − ∑ 𝑝(𝐶) log 𝑝(𝐶) 𝑐𝐸𝐶 merupakan  entropi  dari  kelas  dan 𝐻(𝐶|𝐴) = − ∑ 𝑝(𝐶|𝐴) log 𝑝(𝐶|𝐴) 𝑐𝐸𝐶 merupakan kondisional entropi dari tiap kelas terhadap setiap kata [6]. Pada kasus ini, probabilitas dari kelas C antara yang termasuk kedalam kelas C atau yang tidak termasuk kedalam kelas C adalah 0.5, sehingga hasil nilai 𝐻(𝐶) = 1 . Oleh karena itu, formula untuk menghitung nilai information gain menjadi :
𝐼(𝐶; 𝐴)   =  1  −  𝐻(𝐶|𝐴); (2)
Semakin tinggi nilai information gain menandakan bahwa kata tersebut berpengaruh pada kelas yang ada. Adapun  nilai threshold yang  digunakan  untuk  menentukan  batas  minimal  kata  mana  saja  yang  akan  diambil dengan cara melihat plot hasil perhitungan seluruh kata pada setiap kelas. Proses selanjutnya yaitu pembobotan kata dengan menggunakan Term Frequency - Inverse Document Frequency atau dikenal dengan sebutan TF-IDF. Pada  proses  ini  data  direpresentasikan  kedalam  sebuah  matriks  dimana  setiap  baris  pada  matriks  merupakan dokumen  dan  untuk  kolomnya  sebagai  kata  /  fitur  (term).  Adapun  TF( Term  Frequency )  merupakan  frekuensi kemunculan  sebuah  kata  dalam  suatu  document  sedangkan  IDF    ( Inverised  Document  Frequency )  merupakan hubungan  ketersediaan  sebuah  kata  dalam  keseluruhan  dokumen,  semakin  sedikit  jumlah  dokumen  yang mengandung kata yang dimaksud, maka nilai IDF semakin besar. Berikut persamaan (3) merupakan perhitungan bobot menggunakan TF-IDF :
𝑤 𝑖𝑗 = 𝑡𝑓 𝑥 𝑖𝑑𝑓 = 𝑡𝑓 𝑖𝑗 𝑥  log 𝐷 𝑑𝑓𝑖 (3)
Dimana : 𝑤 𝑖𝑗 = bobot kata 𝑡 𝑗 terhadap dokumen 𝑑 𝑖 , 𝑡𝑓 𝑖𝑗 = jumlah kemunculan kata 𝑡 𝑗 dalam dokumen 𝑑 𝑖 , 𝑖𝑑𝑓 = Inversed Document Frequency, Nilai IDF didapatkan dari IDF : log2(D/ 𝑑 𝑓𝑖 ), dimana : D = jumlah dokumen, 𝑑 𝑓𝑖 = banyak dokumen yang mengandung kata yang dicari.
Bobot  yang  telah  didapatkan  dari  perhitungan  akan  digunakan  sebagai  masukkan  (input)  pada  model klasifikasi yang dibangun.
Pada  proses  selanjutnya  adalah  tahap  pengujian  model  yang  telah  dibangun  menggunakan k-fold  cross validation . Dalam teknik ini dataset dibagi menjadi sejumlah K-buah partisi secara acak dan K-jumlah perulangan percobaan, dimana setiap masing-masing percobaan menggunakan data partisi ke-K sebagai data testing dan sisa data pada partisi lainnya digunakan sebagai data training .
Pada penelitian ini digunakan nilai k-fold = 5. Pada penelitian ini, model klasifikasi yang dibangun adalah feedforward neural network yang bobot dan biasnya dilatih menggunakan particle swarm optimization . Particle Swarm Optimization (PSO) merupakan algoritma Swarm Intelligence, yang didasarkan pada perilaku sekawanan burung.  Perilaku  sosial  ini  terdiri  dari  tindakan  individu  dan  pengaruh  dari  individu-individu  lain  dalam  suatu kelompok.  Setiap  individu  berperilaku  secara  terdistribusi  dengan  kecerdasannya  masing-masing  dan  juga dipengaruhi oleh perilaku kelompok kolektifnya. Pada implementasinya, berikut gambaran proses pencarian solusi dengan menggunakan PSO-FNN :
Gambar 3. Proses PSO-FNN
Pencarian  solusi  dengan  menggunakan  PSO  diawali  dengan  inisialisasi  sekelompok  partikel  acak  yang ditugaskan  pada  posisi  acak particle  swarm  optimization (bobot  dan  bias)  selanjutkan  model  klasifikasi  dilatih menggunakan posisi partikel awal, perhitungan maju ( feedforward neural network ) akan menghasilkan kesalahan pembelajaran (partikel fitness ) berdasarkan bobot awal dan bias, dan kesalahan pada saat iterasi berlangsung akan dikurangi  oleh  perubahan  posisi  partikel,  dan  akan  memperbarui  bobot  dan  bias  jaringan.  Adapun  “ pbest ” merupakan nilai solusi terbaik yang dimiliki oleh setiap partikel dan “ gbest ” merupakan nilai solusi terbaik untuk semua  partikel  yang  diterapkan  pada  persamaan    (persamaan  4)  untuk  melakukan update kecepatan  supaya menghasilkan  nilai  solusi  terbaik  atau  nilai  minimal  dari  target  kesalahan  pembelajaran.  Penetapan  posisi  baru (nilai bobot dan bias) yang dihasilkan dengan menambahkan nilai kecepatan (persamaan 5) untuk menghasilkan posisi baru untuk pembelajaran baru pada perhitungan maju ( feedforward neural network) .
Proses  tersebut  diulang  sampai  kondisi  berhenti  atau  kesalahan  belajar  sudah  minimum.  Hasil  dari pembelajaran tersebut merupakan solusi untuk permasalahan optimasi, yang diambil berdasarkan pada nilai posisi “ gbest ” berupa nilai bobot dan bias.
𝑉 𝑘+1 = 𝑤, 𝑉 𝑘 + 𝑐 1 . 𝑅 1 . (𝑃𝑏𝑒𝑠𝑡 𝑘 − 𝑋 𝑘 ) +   𝑐 2 . 𝑅 2 . (𝐺𝑏𝑒𝑠𝑡 𝑘 − 𝑋 𝑘 ) (4)
𝑋 𝑘+1 = 𝑋 𝑘 +  𝑉 𝑘+1 (5)
Dimana : 𝑘 = 1,2,3 𝑠𝑎𝑚𝑝𝑎𝑖 𝑁 𝑗𝑢𝑚𝑙𝑎ℎ 𝑝𝑎𝑟𝑡𝑖𝑘𝑒𝑙 𝑉 𝑘 = 𝑘𝑒𝑐𝑒𝑝𝑎𝑡𝑎𝑛 𝑝𝑜𝑠𝑖𝑠𝑖 𝑠𝑒𝑘𝑎𝑟𝑎𝑛𝑔 (𝑎𝑤𝑎𝑙) 𝑃𝑏𝑒𝑠𝑡 𝑘 = 𝑛𝑖𝑙𝑎𝑖 𝑝𝑒𝑟𝑠𝑜𝑛𝑎𝑙 𝑏𝑒𝑠𝑡 𝐺𝑏𝑒𝑠𝑡 𝑘 = 𝑛𝑖𝑙𝑎𝑖 𝑔𝑙𝑜𝑏𝑎𝑙 𝑏𝑒𝑠𝑡
𝐶 1 𝐶 2 = 𝑛𝑖𝑙𝑎𝑖 𝑙𝑒𝑎𝑟𝑛𝑖𝑛𝑔 𝑟𝑎𝑡𝑒𝑠 𝑅 1 𝑅 2 = 𝑛𝑖𝑙𝑎𝑖 𝑎𝑐𝑎𝑘 𝑎𝑛𝑡𝑎𝑟𝑎 0. . 1 𝑋 𝑘 = 𝑝𝑜𝑠𝑖𝑠𝑖 𝑠𝑒𝑘𝑎𝑟𝑎𝑛𝑔 (𝑠𝑎𝑎𝑡 𝑖𝑛𝑖) 𝑤 = 𝑖𝑛𝑒𝑟𝑡𝑖𝑎 𝑤𝑒𝑖𝑔ℎ𝑡
Parameter weight pbest ( 𝐶 1 ), weight gbest ( 𝐶 2 ) yang digunakan pada particle swarm optimization mengacu pada penelitian yang dilakukan oleh Abdul Hamed [11], sedangkan parameter untuk pembobotan ( inertia weight ) menggunakan nilai default yaitu 1.
Tabel 2. Parameter PSO Parameter Nilai 𝐶 1 (𝑤𝑒𝑖𝑔ℎ𝑡 𝑝𝑏𝑒𝑠𝑡) 2.0 𝐶 2 (𝑤𝑒𝑖𝑔ℎ𝑡 𝑔𝑏𝑒𝑠𝑡) 2.0 Inertia weight (w) 1 (default) Jumlah partikel / populasi 30
Adapun arsitektur jaringan neural network yang dibagun pada penelitian ini digambarkan pada Gambar 3 dibawah ini :
(a) Model Anjuran
(b) Model Larangan
(c) Model Informasi
Gambar 4. Arsitektur Artificial Neural Network untuk Data Multi -Label
Pada Gambar 4 dibangun tiga model arsitektur yang digunakan untuk klasifikasi multi -label. Setiap arsitektur jaringan melatih data pada kelasnya masing-masing, sehingga setiap arsitektur memiliki nilai input dan bobot yang berbeda-beda. Setiap data dilatih dan diuji pada setiap arsitektur apakah data tersebut termasuk kelasnya atau tidak. Parameter yang digunakan pada pelatihan neural network yaitu :
Tabel 3. Parameter Neural Network Parameter Nilai 𝐿𝑒𝑎𝑟𝑛𝑖𝑛𝑔 𝑟𝑎𝑡𝑒𝑠 0.1 𝑀𝑜𝑚𝑒𝑛𝑡𝑢𝑚 0.1 Training Cycle 1000 Hidden layer 10
Pada proses terakhir yaitu mengevaluasi sistem yang telah dibangun apakah sudah baik atau belum dari hasil performasi  klasifikasi  pada  data  uji.  Teknik hamming  loss digunakan  untuk  proses  evaluasi  pengukuran performansi sistem, teknik ini biasanya digunakan untuk kasus multi -label. Performansi akan semakin baik jika output yang  dihasilkan  mendekati  nilai  0,  sehingga  semakin  kecil  nilai hamming  loss yang  didapatkan  maka semakin baik performansi sistem. Berikut pada Persamaan (6) adalah cara menentukan nilai hamming loss
ℎ𝑎𝑚𝑚𝑖𝑛𝑔 𝑙𝑜𝑠𝑠 = 1 𝑁𝐿 ∑ ∑ [𝑦̂ 𝑗 (𝑖) ≠ 𝑦 𝑗 (𝑖) ] 𝐿 𝑗=1 𝑁 𝑖=1 (6)
Dimana nilai 𝑁 merupakan banyak data yang diklasifikasikan, 𝐿 adalah jumlah label kelas, dan [𝑦̂ 𝑗 (𝑖) ≠ 𝑦 𝑗 (𝑖) ] merupakan  banyaknya  kesalahan  pada  proses  klasifikasi.  Berikut  contoh  perhitungan  untuk  mendapatkan  nilai hamming loss.
Tabel 4. Evaluasi Hamming Loss
𝒚 (𝒊)
𝒚 ̂ (𝒊)
Anjuran  Larangan  Informasi  Anjuran  Larangan  Informasi
Hadis 1 𝑥̃ (1) 1 1 0 1 1 1 Hadis 2 𝑥̃ (2) 1 0 1 1 0 1 Hadis 3 𝑥̃ (3) 1 1 1 1 0 1 Hadis 4 𝑥̃ (4) 1 0 0 1 0 0 Hadis 5 𝑥̃ (5) 0 1 0 0 1 0
Terdapat 2 kesalahan pada proses evaluasi sehingga jika jumlah data (N) = 5 dan label kelas (L) = 3 maka nilai hamming loss yang didapatkan adalah 1/(5*3) * 2 = 0.1333

## 4.   IMPLEMENTASI
Untuk mengetahui performansi yang dihasilkan pada feedforward neural network yang bobot dan biasnya telah dilatih  menggunakan particle  swarm  optimization ,  dilakukan  evaluasi  terhadap  beberapa  skenario  pengujian. Pengujian  pertama  dilakukan  untuk  mengetahui  pengaruh  dari  penggunaan  proses stemming pada  data  hadis Bukhari terjemahan bahasa Indonesia. Pengujian kedua dilakukan untuk mengetahui pengaruh perubahan jumlah partikel pada particle swarm optimization berdasarkan nilai hamming loss yang didapatkan, dan Pengujian terakhir
dilakukan  komparasi  antara backpropagation  –  feedforward  neural  network  (BP-FNN) dengan particle  swarm optimization  –  feedforward  neural  network  (PSO-FNN) untuk  mengetahui  nilai hamming  loss dan  waktu komputasi yang didapatkan dengan menggunakan data hadis yang telah di- stemming dan yang tidak.
1. Skenario Pengujian dengan Proses Stemming
Dilakukan  skenario  pengujian  untuk  mendapatkan  nilai hamming  loss dari  model  PSO-FNN dengan membandingkan hasil yang didapatkan dari data hadis yang telah diproses stemming dan yang tidak, pengujian dilakukan sebanyak k-fold =5. Hasil pengujian dapat dilihat pada Tabel 5.
Tabel 5. Hasil skenario pengujian dengan proses stemming Pengujian Iterasi K- Fold ke : Hamming Loss Rata-rata Hloss Stemming 1 0.1183 0.1205 2 0.15 3 0.126 4 0.093 5 0.115 Tanpa Stemming 1 0.1183 0.1143 2 0.135 3 0.1083 4 0.0917 5 0.1183
Dari hasil yang telah didapatkan, proses klasifikasi dengan tanpa proses stemming mendapatkan hasil   rata- rata nilai hamming loss yang lebih baik dibandingkan dengan proses stemming yaitu sebesar 0.114 atau 88.57% data  berhasil  di  klasifikasikan  dengan  benar,  selisih  0.62  dari  klasifikasi  dengan  proses stemming .  Hal  ini menunjukkan bahwa setiap kata pada hadis Bukhari yang di stemming akan   menghilangkan  makna  atau  ciri dari kata tersebut, imbuhan akhiran “-lah” biasanya merujuk pada ajakan atau  larangan  sehingga  jika menggunakan stemming sulit membedakan antara maksud dari “shalat” dan   “shalat-lah”.
2. Skenario Pengujian jumlah partikel pada Particle Swarm Optimization Pada skenario ini dilakukan tiga pengujian terhadap jumlah partikel pada particle swarm optimization . Hal ini untuk  mengetahui  seberapa  besar  pengaruh  perbedaan  jumlah  partikel  terhadap  hasil hamming  loss yang didapatkan.  Jumlah  partikel  menentukan  banyaknya  solusi  yang  dihasilkan  oleh  model particle  swarm optimization , Nilai bobot dan bias terbaik “gbest” yang dihasilkan dari partikel, kemudian digunakan menjadi parameter  bobot  dan  bias feedforward  neural  network untuk  data  testing.  Jumlah  partikel  yang  diuji  pada skenario ini yaitu 10, 30, dan 50.
Tabel 6. Hasil skenario pengujian jumlah partikel
Jumlah Partikel PSO Iterasi K- Fold ke : Hamming Loss Rata-rata Hloss 10 1 0.12 0.1186 2 0.145 3 0.1083 4 0.0967 5 0.1233 30 1 0.1167 0.1143 2 0.135 3 0.11 4 0.0933 5 0.1167 50 1 0.1167 0.114 2 0.1367 3 0.1083 4 0.0917 5 0.1167
Dari hasil yang didapatkan pada Tabel 6, jumlah 50 partikel pada particle swarm optimization mendapatkan hasil rata-rata nilai hamming loss sebesar 0.114 atau 88.6%, lebih baik dibandingkan dengan menggunakan 10 dan 30 partikel.  Pada pengujian ini semakin banyak jumlah partikel maka semakin baik model yang dibangun. Hal tersebut dikarenakan semakin  banyak  jumlah partikel  maka semakin  banyak solusi pada  setiap partikel yang mungkin dihasilkan oleh particle swarm optimization , kemudian dari banyak solusi tersebut dipilih solusi terbaiknya “gbest” yang akan dijadikan sebagai bobot dan bias pada model feedforward neural network untuk pengujian data testing .
3. Skenario pengujian komparasi PSO-FNN dan BP-FNN.
Pada  skenario  ini  akan  diuji  performansi  dari feedforward  neural  network yang  bobot  dan  biasnya  dilatih menggunakan particle  swarm  optimization (PSO-FNN)  dan backpropagation – feedforward neural network (BP-FNN) berdasarkan hasil dari evaluasi hamming loss . Pada pengujian ini, masing-masing classifier menggunakan  parameter  yang  telah  ditentukan,  untuk  PSO-FNN  menggunakan  partikel  sebanyak  30, sedangkan pada BP-FNN nilai learning rate sebesar 0.1. Pengujian dilakukan menggunakan dataset yang telah di- stemming dan yang tidak. Berikut Tabel 7 merupakan hasil pengujian dari skenario tiga.
Tabel 7. Skenario Pengujian Performansi BPNN+PSO dan BPNN
Model Classifier Pengujian Iterasi K- Fold ke : Hamming Loss Rata-rata Hloss PSO-FNN Stemming 1 0.1183 0.1205 2 0.15 3 0.126 4 0.093 5 0.115 Tanpa Stemming 1 0.1183 0.1143 2 0.135 3 0.1083 4 0.0917 5 0.1183 BP-FNN Stemming 1 0.1483 0.1183 2 0.115 3 0.0983 4 0.1033 5 0.1267 Tanpa Stemming 1 0.1333 0.105 2 0.1016 3 0.0867 4 0.0917 5 0.1117
Dari hasil pengujian pada setiap model klasifikasi baik itu particle swarm optimization - feedforward neural network ataupun backpropagation – feedforward neural network pada data yang tidak menggunakan proses stemming memiliki hasil hamming loss lebih baik dibandingkan dengan proses stemming . Selain itu, pada studi kasus ini performansi particle swarm optimization - feedforward neural network hanya mendapatkan akurasi sebesar  88.57%,  lebih  rendah  dibandingkan backpropagation – feedforward neural  network dengan  selisih 0.93%.

## 5.   KESIMPULAN
Berdasarkan  pengujian  yang  dilakukan  pada  tiga  skenario  yang  berbeda,  pada  penerapan particle  swarm optimization (PSO) untuk melatih bobot dan bias pada feedforward neural network (PSO-FNN), jumlah partikel pada PSO mempengaruhi hasil hamming loss dari klasifikasi. Hal tersebut dikarenakan semakin banyak jumlah partikel maka semakin banyak solusi pada setiap partikel yang dihasilkan untuk menentukan bobot terbaik yang akan digunakan oleh model FNN pada pengujian data testing. Pada dataset hadis Bukhari proses klasifikasi tanpa proses stemming mendapatkan hasil yang lebih baik, karena setiap kata pada hadis Bukhari yang tidak di- stemming tidak akan menghilangkan makna atau ciri dari kata tersebut, dengan kata lain setiap kata yang terdapat imbuhan dapat mempengaruhi sifat dari hadis tersebut.
Pada pengujian  ini performansi  yang dihasilkan metode particle swarm optimization  - feedforward neural network tidak  lebih  baik dibandingkan dengan backpropagation – feedforward neural  network . Sehingga perlu dilakukan penelitian lebih lanjut dengan menggunakan metode optimasi lainnya seperti Genetik Algorithm (GA), Ant Colony Optimization (ACO), Cuckoo Optimization Algorithm (COA).

## REFERENCES
[1] Adiwijaya, Aulia, M.N., Mubarok, M.S., Novia, W.U. and Nhita, F. A comparative study of MFCC-KNN and LPC-KNN for hijaiyyah letters pronounciation  classification system. Information and  Communication  Technology (ICoIC7), 5th  International Conference  on pp. (pp. 1-5). 2017.
[2] M. N. Al-Kabi, G. Kanaan, R. Al-Shalabi, S. Al-Sinjilawi and R. S. Al-Mustafa. Al-Hadith Text Classifier. Journal of Applied Sciences 5, pp. 584-587. 2005.
[3] F.  Harrag  and  E.  El-Qawasmah.  Neural  Network  for  Arabic  Text  Classification.  2009  Second  International  Conference  on  the Applications of Digital Information and Web Technologies, pp. 778-783. 2009.
MEDIA INFORMATIKA BUDIDARMA, Vol 2, No 4, Oktober 2018 ISSN 2614-5278 (media cetak) ISSN 2548-8368 (media online) Hal 165-173
[4] liza Riviera R. J, Said Al-Faraby, Adiwijaya. Klasifikasi Anjuran, Larangan dan Informasi pada Hadis Sahih Al-Bukhari. e-Proceeding of Engineering, p. 4683. 2017.
[5] Andina K., Said Al-Faraby, Adiwijaya. Klasifikasi Informasi, Anjuran dan Larangan pada Hadits Shahih Bukhari menggunakan Metode Support Vector Machine. e-Proceeding of Engineering, p. 5014. 2017.
[6] Asriyanti I. P & Adiwijaya. On the Feature Selection and Classification Based on Information Gain for Document Sentiment Analysis. Applied Computational Intelligence and Soft Computing, vol. 2018, p. 5. 2018.
[7] Min-Ling Zhang & Zhi-Hua Zhou. Multilabel neural networks with applications to functional genomics and text. IEEE transactions on Knowledge and Data Engineering, pp. 1338-1351. 2006.
[8] Reynaldi  A.  P.,  Mubarok  M.  S.,  Nanang  S.  H.,  Adiwijaya,  A  Multi-lable  Classification  on  Topics  of  Quranic  Verses  in  English Translation using Multinomial Naive Bayes. 6th International Conference on Information and Communication Technology (ICoICT). 2018.
[9] S.  a.  N.  F.  Nurcahyo.  Rainfall  Prediction  in  Kemayoran  Jakarta  Using  Hybrid  Genetic  Algorithm  (GA)  and  Partially  Connected Feedforward Neural Network (PCFNN). Information and Communication Technology (ICoICT), pp. 166-171. 2014.
[10]   Joko  S.  Dwi  Raharjo.  Model  Artificial  Neural  Network  berbasis  Particle  Swarm  Optimization  untuk  Prediksi  Laju  Inflasi.  Sistem Komputer. 2013.
[11]   H. N. Abdull Hamed, Siti Mariyam S. and Naomie Salim. Particle Swarm Optimization For Neural Network Learning Enchancement. Jurnal Teknologi, pp. 13-26. 2008.
[12]   A. Ethem, "Introduction to Machine Learning," MIT Press, 2010.
[13]   Y. H. Zweiri, J. F. Whidborne, L. D. Seneviratne. A three-term backpropagation algorithm. Neurocomputing, pp. 305-318. 2003.
[14]   S. M. Suyanto, in Artificial Intelligence: Searching, Reasoning, Planning and Learning, Bandung, Informatika. 2014.
[15]   Al Mira K. I., Mubarok M. S., Nanang S. H., Adiwijaya. A Multi-label Classification on Topics of Quranic Verses in English Translation Using Tree Augmented Naïve Bayes. 6th International Conference on Information and Communication Technology (ICoICT). 2018.
[16]   Mubarok, M.S., Adiwijaya and Aldhi, M.D. Aspect-based sentiment analysis to review products using Naïve Bayes. AIP Conference Proceedings (Vol. 1867, No. 1, p. 020060). 2017.