KNS&I11-002
1. Pendahuluan
Pertumbuhan media online mendorong munculnya informasi tekstual yang tidak terbatas, sehingga muncul kebutuhan
penyajian tanpa mengurangi nilai dari informasi tersebut. Informasi tekstual dikategorikan menjadi dua: fakta dan
opini[1]. Fakta merupakan ekspresi obyektif mengenai suatu entitas, kejadian atau sifat, sedangkan opini adalah ekspresi
subyektif yang menggambarkan sentimen orang, pendapat atau perasaan tentang sebuah entitas, kejadian, atau sifat.
Analisis sentimen yang merupakan bagian dari opinion mining[2], adalah proses memahami, mengekstrak dan mengolah
data tekstual secara otomatis untuk mendapatkan informasi[3]. Dilakukan untuk melihat pendapat terhadap sebuah
masalah, atau dapat juga digunakan untuk identifikasi kecenderungan hal di pasar[4]. Analisis sentimen dalam penelitian
ini adalah proses klasifikasi dokumen tekstual ke dalam dua kelas, yaitu kelas sentimen positif dan negatif. Besarnya
pengaruh dan manfaat dari analisis sentimen, menyebabkan penelitian ataupun aplikasi mengenai analisis sentimen
berkembang pesat, bahkan di Amerika kurang lebih 20-30 perusahaan yang memfokuskan pada layanan analisis
sentimen[2]. Pada dasarnya analisis sentimen merupakan klasifikasi, tetapi kenyataannya tidak semudah proses klasifikasi
biasa karena terkait penggunaan bahasa. Dimana terdapat ambigu dalam penggunaan kata, tidak adanya intonasi dalam
sebuah teks, dan perkembangan dari bahasa itu sendiri[1].
Manfaat analisis sentimen dalam dunia usaha antara lain untuk melakukan pemantauan terhadap sebuah produk. Secara
cepat dapat digunakan sebagai alat bantu untuk melihat respon masyarakat terhadap produk tersebut. Sehingga dapat
segera diambil langkah-langkah strategis berikutnya. Faktor-faktor keuntungan tersebut mendorong perlunya dilakukan
penelitian analisis sentimen terhadap dokumen berbahasa Indonesia. Penelitian analisis sentimen dalam makalah ini
dilakukan dengan menggunakan pendekatan dalam machine learning yang dikenal dengan nama Support Vector Machine
(SVM) dan dikhususkan pada dokumen teks berbahasa Indonesia.
2. Definisi masalah
Dalam penelitian ini fitur yang digunakan adalah unigram, akan tetapi tidak semua kata dalam dokumen digunakan
sebagai fitur. Bagaimana proses ekstraksi fitur sebagai dasar klasifikasi merupakan masalah yang akan dibahas di
penelitian ini. Masalah lainnya adalah mengenai bagaimana memilih fitur dari sebuah dokumen untuk proses klasifikasi.
Pemilihan metode dalam klasifikasi juga menjadi salah satu masalah yang akan dibahas. Hal ini tentu saja terkait dengan
bagaimana hasil klasifikasi dengan metode yang telah dipilih.
3. Kajian Pustaka
Penelitian mengenai analisis sentimen terus berkembang, masing-masing penelitian menggunakan data, bahasa, fitur,
algoritma dan perhitungan pembobotan yang berbeda-beda. Data korpus yang biasa digunakan dalam analisis sentimen
antara lain data wall street journal[5], data forum diskusi[6,7], data review film[8, 9, 10, 11], data permainan komputer[12], data
pariwisata[12], data pendidikan[8], data property[8], dan data yang bersumber dari blog dan media sosial[7,13,14,15].
Terkait fitur yang digunakan, secara garis besar terbagi menjadi dua[7]. Yang pertama adalah teknik simbol, dengan
melakukan analisis terhadap setiap kata pada dokumen dan melakukan ekstraksi hubungan untuk mendapatkan sentimen.
Pada teknik ini makna dari tiap kata harus diketahui dan aturan kata dalam kalimat berbeda-beda tergantung dari bahasa
9
Konferensi Nasional Sistem dan Informatika 2011; Bali, November 12, 2011
KNS&I11-002
yang digunakan. Sementara yang kedua adalah menggunakan tehnik machine learning. Pada tehnik ini fitur yang
digunakan adalah unigram dan n-gram. Dalam fitur unigram, kata dan simbol dalam dokumen direpresentasikan ke
dalam bentuk vektor, dan tiap kata atau simbol dihitung sebagai satu fitur[9].
Sedangkan pada fitur n-gram antara lain menggunakan syntactic, semantic, link based, dan part-of-speech. Dalam hal ini
fitur diambil bukan dari kata per kata melainkan dari keseluruhan dokumen, dimana hubungan tiap kata dalam sebuah
dokumen dianalisa terlebih dahulu untuk mendapatkan relasi antar kata. Dari kata-kata yang membentuk relasi tersebut
diambil menjadi sebuah fitur klasifikasi.
Algoritma yang biasa digunakan dalam machine learning adalah metode klasifikasi Naive Bayes dan SVM. Untuk
penelitian ini digunakan metode machine learning SVM yang telah diakui kemampuannya dalam berbagai aplikasi,
sehingga ditempatkan sebagai state of the art dalam pattern recognition[16,3].
Sedangkan pembobotan yang biasa digunakan dalam analisis sentimen antara lain: Feature Frequency (FF), Feature
Presence (FP),Term Frequency Inverse Document Frequency (TFIDF). Selain fitur tersebut dikembangkan pula fitur
lainnya seperti SentiWordNet Word Groups[6], CHI (Statistic Measure)[8], MI (Mutual Information)[8], dan IG
(Information Gain)[8].
4. Metodologi
Di bawah ini adalah metodologi yang digunakan dalam penelitian ini.
Pengumpulan Data
Crawling
Seleksi Bahasa
Pre-processing
Cleansing
Case Folding
Parsing
Pembobotan
TP
TF
TF-IDF
Pembelajaran &
Klasifikasi
SVM
Naive Bayes
Konferensi Nasional Sistem dan Informatika 2011; Bali, November 12, 2011
Dataset Label
TwOri
TwLex
TwLexRoot
TwLexAAVN
TwLexAAVNRoot
KNS&I11-002
4.4. Pembobotan
Sebuah dokumen dinyatakan dalam model vector-space. Semua kata yang terkandung dalam tulisan didaftarkan,
dinyatakan dengan { , , , } yang merupakan daftar kata. Jumlah kemunculan kata dalam dokumen dinyatakan
dengan ( ) yang merupakan jumlah kemunculan kata
muncul dalam dokumen . Sehingga didapat dokumen
direpresentasikan dalam vektor:
( ( ),
( ), ,
( ))
(1)
Metode pembobotan adalah unigram, dimana tiap kata atau simbol dihitung sebagai satu fitur. Adapun perhitungan bobot
yang digunakan adalah Feature Term Frequency (TF), Feature Term Presence (TP), dan Term Frequency-Inverse
Document Frequency (TFIDF). Untuk mereduksi jumlah atribut digunakan minimal frekuensi kemunculan kata sebanyak
tiga. Hal ini berdasarkan pada penelitian Web Forum Sentiment Analysis based on Topics[19], bahwa penggunaan
minimal tiga kata tidak berpengaruh besar terhadap hasil klasifikasi.
4.5. Metode Klasifikasi
Penelitian menggunakan metode pembelajaran supervised dengan algoritma SVM. Untuk mendapatkan hasil klasifikasi
terbaik, diujikan menggunakan tiga kernel yang berbeda, yaitu polynomial (e=1 & e=2) dan RBF. Sebagai pembanding,
digunakan algoritma Naive Bayes. Naive Bayes menggunakan asumsi bahwa dalam sebuah dokumen kemunculan kata
tidak mempengaruhi kemunculan kata yang lain dan ketidakmunculan kata tidak mempengaruhi ketidakmunculan kata
yang lain. Walaupun asumsi ini bertentangan dengan aturan bahasa, namun tidak mengurangi keakuratan dari metode ini.
4.6. Validasi & Evaluasi
Proses validasi menggunakan k-fold cross-validation, dengan k=3, mengikuti penelitian Pang[4]. Hal ini karena dataset
yang digunakan cukup besar yaitu 6000 data. Sedangkan untuk menghitung tingkat kebenaran proses klasifikasi
digunakan data confusion matrix.
5. Hasil Penelitian
5.1. Pengumpulan Data
Crawling dilakukan dengan aplikasi Java sesuai dengan kata kunci yang digunakan. Hasil dari proses crawling dan
filtering adalah data tweet sebanyak 34413 data. Berikut ini adalah contoh data:
Sambil nungguin si kecil balet, sebagian kecil ibu2 ngobrol, sebagian besar sibuk dgn blackberry-nya. Sukses besar
teknologi informasi :)
@avianw @BagusGibbon wah berarti dah punya iPad dong. Kerjaan gw kan cuma email, bikin surat, itung2 dikit ma
presentasi. Buat gw aje deh :)
yeyey bagus mi lagi hape nexian ku, sudah ganti casing, ganti nomer2 baru lagi, tambah lagi hape ku...
Mungkin g naksi sama ipad generasi ke 2 kali ya kalo yg pertama inikan itung2 masih produk coba2nya apple di
generasi tablet.
5.2. Pemilihan & Ekstraksi Fitur
Data berikut adalah contoh data hasil pemilihan dan ekstraksi fitur masing-masing dataset.
Dataset
TwOri
Kelas Kata
Konferensi Nasional Sistem dan Informatika 2011; Bali, November 12, 2011
Dataset
TwLex
TwLexRoot
TwLexAAVN
TwLexAAVNRoot
Data
sambil si kecil balet sebagian kecil ibu sebagian besar sibuk
sukses besar teknologi informasi
sambil si kecil balet bagi kecil ibu bagi besar sibuk sukses besar
teknologi informasi
kecil balet sebagian kecil ibu sebagian besar sibuk sukses besar
teknologi informasi
kecil balet kecil ibu besar sibuk sukses besar teknologi
informasi
KNS&I11-002
Kelas Kata
l l adj n n adj n n adj adj adj
adj n n
l l adj n pre adj n pre adj adj
adj adj n n
adj n n adj n n adj adj adj
adj n n
adj n adj n adj adj adj adj n
n
12
Konferensi Nasional Sistem dan Informatika 2011; Bali, November 12, 2011
75.00
75.0
72.5
70.0
70.00
1
74.0
75.8
76.0
75.0
76.1
65.00
60.00
TF
KNS&I11-002
TP
73.3
75.2
75.8
74.6
75.7
TFIDF 73.9
75.8
76.0
75.0
76.1
SVM
Rata
75.6
75.9
74.9
75.9
73.7
72.
73.
74.
73.
73.
66.
66.
65.
65.
75.00
70.00
TF
71.2
71.0
71.3
70.6
70.9
TP
71.1
71.2
71.8
70.4
70.3
TFIDF 71.2
71.0
71.3
70.6
70.9
SVM
Rata
71.1
71.4
70.5
70.7
71.2
65.00
60.00
71.
73.
73.
72.
72.
66.
66.
65.
65.
76.0
74.0
72.0
70.0
68.0
70.00
65.00
TF
69.5
72.3
72.6
70.5
70.6
TP
73.6
75.3
75.7
74.8
75.1
SVM
TFIDF 69.4
72.3
72.5
70.5
70.6
Rata
73.3
73.6
71.9
72.1
70.8
71.
73.
73.
72.
72.
67.
66.
65.
65.
SVM
60.00
Konferensi Nasional Sistem dan Informatika 2011; Bali, November 12, 2011
KNS&I11-002
Hal ini menunjukkan bahwa SVM menjanjikan nilai kebenaran yang lebih baik dalam melakukan analisis sentimen untuk
dokumen berbahasa Indonesia dibandingkan dengan Naive Bayes.
6. Kesimpulan
Dari hasil penelitian dapat disimpulkan bahwa SVM memiliki tingkat ketelitian yang lebih baik dibandingkan dengan
Nave Bayes. Untuk fitur klasifikasi yang paling tinggi adalah menggunakan dataset TwLexRoot (kata dasar dari kamus),
sedangkan terendah adalah menggunakan dataset TwOri (kata asli tanpa melihat kamus). Metode pembobotan yang
digunakan secara umum tidak mempengaruhi urutan hasil klasifikasi dari dataset yang digunakan.
Daftar Pustaka
[1] Bing Liu. (2010). Sentiment Analysis: A Multi-Faceted Problem, IEEE Intelligent Systems.
[2] Bing Liu. (2010). Sentiment Analysis and Subjectivity, in Handbook of Natural Language Processing.
[3] Bo Pang and Lilian Lee. (2008). Opinion Mining and Sentiment Analysis, Foundations and Trends in Information
Retrieval, vol. Volume 2, no. Issue 1-2, pp. 1-135.
[4] Bo Pang, Lillian Lee, and Shivakumar Vaithyanathan. (2002). Thumbs up? Sentiment Classification using Machine
Learning, in Proceedings of the ACL-02 conference on Empirical methods in natural language processing, vol.
Volume 10, pp. 7986, Morristown, NJ, USA.
[5] Vasileios Hatzivassiloglou and Kathleen R. McKeown. (1997). Predicting the Semantic Orientation of Adjectives, in
ACL '98 Proceedings of the 35th Annual Meeting of the Association for Computational Linguistics and Eighth
Conference of the European Chapter of the Association for Computational Linguistics, pp. 174-181, Stroudsburg,
PA, USA.
[6] Hyung-il Ahn, Geyer, Werner, Casey Dugan, and David R. Millen. (2010). How Incredibly Awesome!- Click
Here to Read More, in 4th International AAAI Conference on Weblogs and Social Media, Washington, DC.
[7] Erik Boiy, Pieter Hens, Marie Francine Moens, and Koen Deschacht. (2007). Automatic Sentiment Analysis in Online Text, Proceedings ELPUB2007 Conference on Electronic Publishing.
[8] Tan Songbo and Zhang Jin. (2008). An empirical study of sentiment analysis for chinese documents," Expert
Systems with Applications, vol. Volume 34, pp. 2622-2629.
[9] Tim OKeefe and Irena Koprinska. (2009). Feature Selection and Weighting Methods in Sentiment Analysis,
Proceedings of the 14th Australasian Document Computing Symposium.
[10] Franky and Ruli Manurung. (2008). Machine Learning-based Sentiment Analysis of Automatic Indonesian
Translations of English Movie Reviews, in Proceedings of the International Conference on Advanced
Computational Intelligence and Its Applications 2008 (ICACIA 2008), Depok, Indonesia.
[11] Tony Mullen and Nigel Collier. (2004). Sentiment Analysis using Support Vector Machines with Diverse
Information Sources, in Proceedings of EMNLP 2004, pp. 412-418, Barcelona, Spain.
[12] Sigrid Maurel, Paolo Curtoni, and Luca Dini. (2008). A Hybrid Method for Sentiment Analysis, in Atelier FOuille
des Donnes d'OPinions (FODOP'08) Conjointement la confrence INFORSID 2008, pp. 9-22, Fontainebleau,
France.
[13] Tetsuya Nasukawa and Jeonghee Yi. (2003). Sentiment Analysis: Capturing Favorability Using Natural Language
Processing, in K-CAP '03: Proceedings of the 2nd international conference on Knowledge capture, pp. 70-77, New
York, NY, USA.
[14] Xiangwen Liao et al. (2006). Combining Language Model with Sentiment Analysis for Opinion Retrieval of BlogPost, Intelligent Software Department.
[15] L. Dini and G. Mazzini. (2002). Opinion classification Through information, in In Intl. Conf. on Data Mining
Methods and Databases for Engineering.pp. 299-310.
[16] Anto Satriyo, Arief Budi, and Dwi Handoko. (2003). Support Vector Machine Teori dan Aplikasinya dalam
Bioinformatika, Kuliah Umum IlmuKomputer.Com.
[17] Pak Alexander and Patrick Paroubek. (2010). Twitter as a Corpus for Sentiment Analysis and Opinion Mining,
Proceedings of the Seventh conference on International Language Resources and Evaluation (LREC'10), pp. 13201326.
[18] Shuyo Nakatami. (2010). Language Detection Library for Java, http://code.google.com/p/language-detection/,
diakses November 2010.
[19] Lei Shi, Bai Sun, Liang Kong, and Yan Zhang. (2009). Web Forum Sentiment Analysis Based on Topics, Computer
and Information Technology, 2009. CIT '09. Ninth IEEE International Conference on, vol. 2, pp. 148 - 153, October
2009.
14