Analisis dan Implementasi Fuzzy Suppot Vector Machine Untuk Klasifikasi Multiclass Emosi Pada Twitter Analisis dan Implementasi Fuzzy Suppot Vector Machine Untuk Klasifikasi Multiclass Emosi Pada Twitter


Analisis dan Implementasi Fuzzy Suppot Vector Machine

Untuk Klasifikasi Multiclass Emosi Pada Twitter

Analisis dan Implementasi Fuzzy Suppot Vector Machine

Untuk Klasifikasi Multiclass Emosi Pada Twitter

Rizki Elisa Nalawati1, Arie Ardiyanti S2., Siti Sa’adah3

Jurusan Teknik Informatika, Fakultas Informatika

Universitas Telkom

Jalan Terusan Buah Batu No.1 Bandung

[email protected]

 

 

ABSRAK

Dewasa ini mikroblogging menjadi sarana komunikasi online yang sangat popular. Jutaan orang melakukan tukar pendapat opini setiap harinya. Sehingga menyebabkan website mikroblogging kaya data yang mengandung opini dan sentiment. Twitter meruapakan mikroblogging yang terpopular.

Dengan menggunakan Twitter, analisis akan dilakukan dengan tujuan menunjukkan kumpulan dari corpus untuk analisis emosi dan opinion mining. Kemudian akan melakukan analisis pada corpus yang dikumpulkan dan menjelaskan fenomena yang ditemukan. Dengan corpus yang diperoleh maka akan dilakukan pengklasifikasian emosi yang dapat menentukan kelas emosi penulis twitter.

Oleh karena itu, pada tugas akhir ini digunakan sebuah metode bernama Fuzzy Support Vector Machine (FSVM). FSVM merupakan metode yang dapat digunakan untuk menangani masalah multiclass, dari decision function yang ditemukan dari pasangan-pasangan kelas. Nilai keanggotaan ini yang akan menentukan klasfikasi dari jenis emosi. Hasil rata-rata yang didapat dari kombinasi data training testing 80%:20% mencapai 85,46%, sedangkan dari kombinasi data training dan testing 65%:35% mencapai 85,50% dan dari kombinasi 50%:50% data trainig dan testing mencapai 85,49%.

 

Kata kunci: Emotion Analysis, Sentiment Analysis, opinion mining, text classification, Fuzzy Support Vector Machine (FSVM)

 

 

ABTRACK

Nowadays online microblogging becomes a means of communication that is very popular. Millions of people do every day brainstorming opinion. Causing a data -rich micro-blogging website that contains opinions and sentiment. Twitter is a popular microblogging.

By using Twitter, the analysis will be carried out with the aim of showing a collection of a corpus for emotion analysis and opinion mining and then perform analysis on the collected corpus and explain the phenomena found. With a corpus obtained will be conducted to determine the classification of emotion emotion class writer twitter.

Therefore, in this final project used a method called Fuzzy Support Vector Machine ( FSVM ). FSVM is a method that can be used to deal with multiclass problems, from the decision function found from the pairs class. This value will determine the membership of the type of emotion klasfikasi. The average accuracy obtained from a combination of training data testing 80 % : 20 % is 85.46 %, while the combination of data from training and testing 65 % : 35 % to is 85.50 % and from a combination of 50 % : 50 % of data trainig and testing reached 85.49 % .

Kata kunci: Emotion Analysis, Sentiment Analysis, opinion mining, text classification, Fuzzy Support Vector Machine (FSVM)


  1. PENDAHULUAN

Dewasa ini perkembangan teknologi berkembang sangat pesat. Tiap orang diberbagai belahan dunia dapat berkomunikasi dengan orang lain. Untuk memenuhi kebutuhan manusia akan komunikasi maka banyak mikro blogging yang bermunculan di internet. Salah satu mikro blogging yang sangat popular adalah Twitter. Twitter banyak digunakan untuk media curhat, sharing pengetahuan, sharing pendapat maupun komunikasi. Setiap aktifitas tweets yang dilakukan setiap pengguna twitter tentunya mengandung emosi yang dimiliki oleh pengguna twitter.

Namun berbagai masalah sering muncul dari pengguna Twitter antara lain adalah perselisihan di Twitter yang sering disebut twitwar. Berdasarkan publikasi Tempo, 2013 Twitter adalah “target” utama untuk memulai perselisihan[13]. Hal ini juga didasari oleh para peneliti dari University of Beijing yang melakukan analisis terhadap Weibo (Twitter versi China) yang mendasari orang berkomentar sinis didasari oleh kemarahan, kesedihan maupun keduanya.

Emosi memainkan peran penting pada tingkat kecerdasan manusia, pengambilan keputusan, interaksi sosial, persepsi, kreativitas, belajar, dan lain sebagainya [3]. Opinion Mining dan Sentiment Analysis adalah subtopik dari Natural Languge Processing (NLP) yang akan melakukan ektraksi pengetahuan tentang sentiment dari individu, dan akan melakukan evaluasi dari opini-opini yang ada pada Twitter. Sebuah text yang mengandung emosi dapat dijadikan data untuk klasifikasi emosi.

Selama ini klasifikasi emosi dikelompokkan menjadi 3 kategori yaitu negatif, positif dan netral. Untuk itu diperlukan penjabaran lebih lanjut dalam melakukan klasifikasi emosi yang didasari oleh seorang pakar psikologi Harris W. Stren, Ph.D [15] yang mengkategorikan emosi menjadi 4 kategori yaitu : senang, marah, sedih, takut. Namun, untuk menangani kasus-kasus tertentu, Apoorv [16] dengan papernya Sentiment Analysis of Twitter Data melakukan penambahan klasifikasi netral untuk menangani tweet yang tidak dapat digolongkan di keempat kategori.

Untuk itu dibutuhkan metode yang dapat mengklasifikasikan 5 kategori emosi pada Twitter yaitu Fuzzy Support Vector Machine (FSVM). FSVM akan mencari decision function pada setiap pasangan kelas dan akan membandingkan decision function pada setiap pasangan kelas. Fuzzy Support Vector Machine (FSVM) diperkenalkan oleh Abe, Inoue tahun 2002. Dimana FSVM akan mencari nilai keanggotaan yang dihasilkan dari SVM dengan akurasi 99,56%.

 

  1. METODE PENELITIAN

2.1 Data Mining

Data mining merupakan sebuah analisa pada dataset observational yang umumnya berjumlah besar untuk menemukan sebuah relasi yang implisit serta untuk merangkum data ke dalam sebuah representasi yang dapat dimengerti dan bermanfaat oleh pemilik data [12]. Secara singkat data mining merupakan sebuah proses ekstraksi data untuk menghasilkan sebuah model atau pola yang mudah dimengerti.

Proses data mining ini sangat dibutuhkan terutaman dalam mengolah data yang sangat besar. Secara umum proses data minig dibagi menjadi dua yaitu verifikasi dan discovery.

2.2       Klasifikasi

Klasifikasi adalah proses untuk menemukan model atau fungsi yang menjelaskan atau membedakan konsep atau kelas data, dengan tujuan untuk dapat memperkirakan kelas dari suatu objek yang labelnya tidak diketahui[7].

Pada opinion mining, diberikan sekumpulan kategori (label) opini dan koleksi opini yang berfungsi sebagai data latih, yaitu data yang digunakan untuk membangun model, dan kemudian dilakukan proses untuk menemukan kategori yang tepat untuk test opini, yaitu opini yang digunakan untuk menentukan akurasi dari model[10]

2.3 TF-IDF

Term Frekuensi (TF) merupakan frekuensi kemunculan term pada dokumen. TF pada satu dokumen dengan dokumen lain akan berbeda, hal ini dipengaruhi dengan tingkat kepentingan sebuah term pada dokumen. Sedangkan Inverse Document Frequensi (IDF) merupakan perhitungan sebuah term dalam dokumen yang akan dibandingkan dengan dokumen lain. Perhitungan TF-IDF ini akan bergantung pada keunikan sebuah term. Semakin sedikit dokumen yang mengandung term yang dimaksud semakin besar nilai idf yang didapat. Jika semua dokumen mengandung term yang dimaksud maka nilai IDF yang didapat untuk term ini adalah nol. Sehingga kemunculan term tersebut tidak akan berguna untuk menentukan karakteristik atau jenis sebuah dokumen.

 

2.4 PREPROSESING

 

 

Gambar 1. Proses Preprosesing

  1. Case Folding

Mengubah huruf besar menjadi huruf kecil. Huruf-huruf kapital yang dirubah adalah huruf awal kata.

Contoh            : Pengen Banget Ngeliat Bulan 😀

Menjadi          : ingin banget ngeliat bulan

  1. Tokenizing

Pada tahap ini kalimat hasil dari proses Case Folding dilakukan pemotongan stirng berdasarkan kata yang menyusunnya

Contoh            : pengen banget ngeliat bulan 😀

Menjadi          : ingin

banget

ngeliat

bulan

😀

  1. Normalisasi Fitur

Pada jenis tweet di twitter, banyak kompoen yang khas yang sering digunakan oleh penguna twitter seperti username, URL, cc, RT tidak memiliki pengaruh pada sentimen. Maka komponen-komponen tersebut akan dibuang.

  1. Conver Number

Berdasarkan Ismail dan Dwi [18], kemunculan angka di tengah-tengah kata perlu dirubah menjadi karakter yang serupa. Konversi-konversi tersebut sesuai dengan tabel berikut :

Tabel 1. Konversi Angka

Angka Konversi
0 O
00 U
1 I
2 Sama dengan karakter sebelum angka 2
3 E
4 A
5 S
6 G
7 T
8 B
9 G

 

  1. Convert Emoticon

Pada twitter sering kita temui emoticon yang dapat merepresentasikan suasana hati pengguna twitter. Oleh karena itu perlu dilakukan konversi emoticon sehingga dapat diketahui suasana hati pemilik akun twitter. Namun, dalam implementasi dalam sistem ini tidak menggunakan seluruh emoticon yang ada. Emoticon yang digunakan hanya yang mencerminkan 5 bentuk emosi yaitu senang, sedih, marah, takut.

 

Tabel 2. Konversi Emoticon

Emoticon Konversi
🙂   🙂   😉   😀     😛   8)   8-|     <@o Senang
🙁   🙁 ;-( :-<   :'( Sedih
:-@ :@ Marah
😐 😮 Takut

 

  1. Stopword

Dataset hasil dari proses convert number akan dilakukan pembuangan kata-kata yang tidak perlu digunakan. Seperti kata “jadi”, “ke”, “lalu”.

 

  1. Convert Word

Biasanya pada tweet muncul kata-kata yang tidak baku. Oleh karena itu perlu adanya kamus yang dapat melakukan pengembalian kata-kata tersebut menjadi kata yang baku. Untuk kata-kata yang tidak ada dalam kamus akan dibuat kamus baru yang mengacu pada munculnya kata-kata yang muncul pada tweet tersebut.

 

  1. Convert negation

Kata-kata pada tweet banyak yang mengandung negasi diantaranya (“bukan”, “tidak”, “nggak”, “gak”, “gk”) ketika kata tersebuk ganjil maka akan merubah nilai sentimen dari tweet.

2.6          Support Vector Machine (SVM)

Support Vector Machine (SVM) adalah sebuah classifier linear dengan feature set yang telah ditentukan sebelumnya[6], SVM memberikan hasil yang maksimal ketika jumlah data training sedikit dan tidak ada overlap antara kelas yang ada. SVM akan mencari sebuah hyperplane linier untuk memisahkan kelas yang ada [3]. SVM akan mencari sebuah hyperplane dengan margin terbesar yang disebut maximum marginal hyperplane (MMH). Margin yang dimiliki MMH ini akan memberikan jarak terbesar antar kelas. Jarak antara hyperplane dengan sebuah sisi dari margin tersebut sama dengan jarak antara hyperplane dengan margin pada sisi lainya. [6]. Sebuah fungsi penentu atau decision function d(x,w,b) untuk menentukan MMH dapat dinyatakan dengan persamaan(1)

(1)

Untuk mengoptimalkan persamaan 1 sehingga diperoleh sebuah margin maksimal digunakan optimasi quadratik programing yang dinyatakan pada persamaan (2).

||w||2                                                                                (2.2)

Subject                                                                                                                                                                                                                                         (2.3)

 

Persamaan diatas dapat dilakukan jika jumlah features kecil, numun apabila jumlah features besar, maka persamaan (2) dapat dirubah[17] ke bentuk (3)

 

Q(α) =

 

Subject ke

 

untuk i = 1,…,M                                       (2.4)

 

Dimana α = α1,…αM yang meruapakan lagrange Multiplier.

2.6          Fuzzy Support Vector Machine

Fuzzy Support Vector Machine (FSVM) merupakan pengembangan Suport Vector Machine untuk permasalahan multiclass. Dengan menggunakan decision function yang diperoleh dari SVM untuk sebuah pasangan kelas, untuk setiap kelas didefinisikan sebuah polyhedral pyramidal fungsi keanggotaan [4].

Fuzzy support vector machine i\dapat digunakan untuk menangani kasus multikelas. Dimana decision function yang didapat dari Multiclass SVM akan mencari setiap hyperplane. Dengan inputan vektor x mengikuti rule :

(2.5)

Dimana akan terpenuhi dengan satu i, x akan diklasifikasi ke kelas i.

Namun, jika persamaan (2.5) digunakan untuk plural i, maka tidak akan ada i yang dapat memenuhi. Sehingga x tidak akan bisa diklasifikasikan.

Gambar 2 Area tidak dapat diklasifikasikan dengan konvensional support vector machine [5]

 

 

 

 

 

 

 

 

 

 

 

 

Untuk menangani permasalahan diatas, dibutuhkan penanganan pairwise classification [19]. Dimana akan diperoleh decision function untuk pasangan kelas i dan kelas j dengan maksimum margin,

(2.6)

 

Dimana,

Untuk setiap inputan vektor x dapat dihitung,

 

(2.8)

 

 

Sehingga x akan diklasifikasikan ke dalam kelas,

(2.9)

 

Namun, area yang tidak diklasifikasikan dapat terjadi apabila D(xi) mempunyai nilai yang sama.

Pada FSVM menggunakan fungsi keanggotaan untuk mengklasifikasikan daerah yang tidak dapat diklasifikasikan. Persamaan (2.10) menunjukkan fungsi keanggotaan mij :

(2.10)

 

Dengan menggunakan mij (x), dapat didefinisikan fungsi keanggotaan x terhadap kelas i

 

Gambar 3 Garis kontur terhadap fungsi keanggotaan i [5]

 

 

 

 

 

 

 

 

 

 

 

Sehingga data x yang diklasifikasikan ke dalam kelas,

 

(2.12)

 

  1. PENGUJIAN

Pada bab ini akan dijelaskan mengenai pengujian dan analisis kinerja dari algoritma. Dalam pongujian ini digunakan 5 kelas yaitu senang,. Sedih, marah, takut dan netral. Dalam tahap pengujian akan diamati pengaruh pembagian kombinasi data training dan testing, parameter gamma dan toleransi serta pengaruh hashtag dan emoticon.

 

Tabel 3. Hasil Uji Sistem dengan 80% Data Train dan 20% Data Testing

Toleransi Gamma Akurasi
0,1 0,1 84,95
0,1 1 85,43
0,1 5 86,4
0,5 0,1 85,92
0,5 1 85,92
0,5 5 84,8
0,99 0,1 85,92
0,99 1 84,44
0,99 5 85,43
rata-rata 85,46%

 

Tabel 4. Hasil Uji Sistem dengan 65% data train dan 35% data test

Toleransi Gamma Akurasi
0,1 0,1 85,68
0,1 1 85,92
0,1 5 85,62
0,5 0,1 85,92
0,5 1 85,62
0,5 5 85,32
0,99 0,1 86,52
0,99 1 85,92
0,99 5 82,42
rata-rata 85,49%

 

Tabel 5. Hasil uji sistem dengan 50% data train dan 50% data test

Toleransi Gamma Akurasi
0,1 0,1 73,92
0,1 1 87,84
0,1 5 86,86
0,5 0,1 86,47
0,5 1 86,86
0,5 5 87,25
0,99 0,1 86,66
0,99 1 86,86
0,99 5 86,86
rata-rata 85,5%

 

Secara keseluruhan dapat dilihat bahwa komposisi pembagian data training dan data testing tidak memberikan pengaruh yang signifikan terhadap hasil performansi sistem. Namun, dapat dilihat pada penelitian ini kecenderungan hasil diperoleh lebih baik ketika perbedaan data train dan testingnya sama Jumlah data train yang banyak tidak menjamin performansi sistem yang dihasilkan akan lebih baik namun lebih terhadap bagaimana karakteristik data pada saat ditraining. Ketika sebuah data train memiliki jumlah yang sedikit namun dengan karakteristik yang baik, dapat merepresentasikan seluruh kemungkinan yang ada maka model yang dibentuk SVMpun akan menunjukkan hasil yang baik, dan begitupula sebaliknya. Dari gambar di atas dapat dilihat pula bahwa hasil yang diperoleh relatif stabil, hal ini disebabkan oleh jarangnya terjadi misklasifikasi yang dipengaruhi oleh adanya parameter toleransi yang akan mengatur pinalti ketika terjadi kesalahan pada saat klasifikasi sehingga model yang dihasilkan representatif dalam mengklasifikasikan data testing

 

Gambar 4. Pengaruh Toleransi

 

Gambar 5. Pengaruh Gamma

 

Nilai γ merupakan nilai yang digunakan untuk mengatur lebar Gaussian pada SVM. Disini γ digunakan untuk mengatur flesibilitas decision boundaries dari hasil klasifikasi. Semakin kecil nilai γ maka hyperplane yang terbentuk akan mendekati linier. Sedangkan ketika nilai γ semakin besar akan membentuk sebuah hyperplane yang semakin fleksibel namun dapat mengakibatkan terjadinya overfitting sehingga sama halnya dengan toleransi, sangat penting menentukan nilai parameter γ yang pas.Pada penelitian ini akurasi teringgi didapat ketika nilai γ adalah 5. Semakin besar nilai γ yang digunakan akurasi semakin tinggi begitupun sebaliknya. Sehingga dapat disimpulkan bahwa nilai parameter γ juga dianggap berpengaruh terhadap performansi yang dihasilkan sistem. Gaussian Kernel dimana parameter γ akan sangat berpengaruh terhadap hyperplane yang dibentuk.

 

Gambar 6. Pengaruh Emoticon/Hashtag

Secara keseluruhan dapat dilihat bahwa adanya emoticon dan atau hashtag pada tweet berpengaruh dalam menentukan emosi pengguna twitter. Hal ini karena data yang telah mempunyai emoticon dan atau hashtag telah mempunyai karakteristik data yang baik dan dapat merepresentasikan kemungkinan yang ada. Sehingga model yang dibentuk oleh SVM menunjukkan hasil yang baik pula.

 

 

  1. KESIMPULAN

Berdasarkan analisis terhadap pengujian yang dilakukan dalam Tugas Akhir ini, dapat disimpulkan bahwa Metode Fuzzy Support Vector Machine dapat diimplementasikan untuk melakukan multiclass klasifikasi emosi pada twitter dengan akurasi yang baik dengan rata-rata akurasi diatas 80%. Dalam penelitian ini Nilai toleransi tidak berpengaruh dalam meningkatkan akurasi sistem dan parameter γ berpengaruh dalamproses klasifikasi dari sistem. Selain itu adanya emoticon maupun hashtag yang digunakan di tweet juga berpengaruh dalam meningkatkan akurasi sistem dengan kenaikan akurasi rata-rata sebesar 1,01%. Perbedaan komposisi data train dan data testing tidak berpengaruh secara signifikan namun kecenderungan hasil yang lebih baik ditunjukkan ketika jumlah data train mendekati jumlah data test.

 

 

  1. DAFTAR PUSTAKA

 

[1]     Tekno.liputan6.com diakses tanggal 05 November 2013 ham 6:54

[3]     R C Balabantaray, Mudasir Mohammad, Nibha Sharma, Multi-Class Twitter Emotion Classification: A New Approach, International Journal of Applied Information Systems (IJAIS) – ISSN : 2249-0868 Foundation of Computer Science FCS, New York, USA Volume 4– No.1, September 2012 – www.ijais.org, Department of CSE, IIIT Bhubaneswar, IIIT Bhubaneswar, Odisha

[4]     Abe, Shingo dan; Takuya Inoue.2002. Fuzzy Support Vector Machine for Multiclass Problems. European Symposium on Artificial NeuralNetworks, Bruges, Belgia.

[5]     Wang, Lipo(Ed.). 2005. Support Vector Machines: Theory and Applications. Springer,New York.

[6]     Han, Jiawei dan; Kamber Micheline 2006. Data Mining:Concepts and Technigues. Morgan Kaufmann Publishers, San Fransisco

[7]     Edgar, Lailil, Ahmad. 2013. Implementasi Fuzzy Support Vector Machine Untuk Pengklasifikasian Genre Musik Berdasarkan Fitur Audio, Universitas Brawijaya Malang

[8]     B.Datta Sai Aparna , B.Jayanag , S.Vasavi; A Study on Multiclass Classification of Opinions using Machine Learning Techniques, 2013, International Journal of Computational Linguistics and Natural Language Processing, India

[9]     Pang, Bo and Lee, Lilian 2008, Opinion mining and sentiment analysis, Foundations and Trends in Information Retrieval Vol. 2, No 1-2 (2008) 1–135, USA

[10]   Pamuji, Farid, Opinion Mining On Product Review Using Reqursive Least Squares Back Propagation Methods, 2013

[11]   Liu, BIng, OPINION MINING, Department of Computer Science, University of Illinois at Chicago

[12]   Hand, David; Heikki Mannila, Padharaic Smyth. 2001. Principles of Data Mining. The Brafford Book, London England.

[13]   RindhuS.H, http://www.tempo.co/read/news/2013/09/23/072515743/ Twitter-Jadi- Target-Pertengkaran, 2013, diakses tanggal 7 November 2013 pukul 06.00 WIB

[14]   Muis, Abdul, http://politik.kompasiana.com/2013/09/15/fenomena-politik-pendukung emosional-592087.html, 2013, diakses tanggal 7 November 2013 06.03 WIB

[15]   Harris W. Stren, Ph.D, 2011. http://www.harrisstern.com/support/fourbasichumanfeelings.html, , diakses tanggal 25 november 2013, 08.01

[16]   Apoorv Agarwal, Boyi Xie, 2012. Sentiment Analysis of Twitter Data, New York, NY 10027 USA

[17]   Abe, Shigeo. Inoue, Takuya. 2013 Fuzzy Support Vector Machine for Pattern Classification. Neural Networks, 2001. Proceedings.IJCNN’01 International Joint Conference on,1:1449-1454

[18]   Sunni, Ismail. Hendratmo Widyantoro, Dwi. 2012. Analisis Sentimen dan Ekstraksi Topik Penentu Sentimen pada Opini Terhadap Tokoh Publik. Jurnal Sarjana Institut Teknologi Bandung Bidang Teknik Elektro dan Informatika Volume 1, Number 2, Juli 2012

[19] Takasi, Fumitake. Abe, Shigeo Optimizing Directed Acyclic Graph, Support Vector Machines, Graduate School of Science and Technology, Kobe University Kobe Japan [email protected]

[20]   Satriyo Nugroho, Anto. Budi Witarto, Arief. Handoko, Dwi. 2003. Support Vector Machine –Teori dan Aplikasinya dalam Bioinformatika1, Copyright © 2003 IlmuKomputer.Com


Leave a Reply