Sentiment Analysis Approaches and Methods
Sentiment Analysis Approaches and Methods
Sentiment Analysis Approaches and MethodsSaat ini segala informasi tersedia secara online. Orang-orang mulai mengekspresikan opini-opini mereka pada berbagai topik di media social online. Opini-opini tersebut berupa textual data yang menyimpan hidden knowledge. Agar dapat dimanfaatkan, dibutuhkan suatu proses untuk mendapatkan informasi yang berguna. Teknik yang digunakan adalah text mining. Text mining adalah sebuah teknik untuk mengekstraksi informasi yang berguna dari data teks yang tidak terstruktur [10].
Sosial media seperti facebook berisi konten yang dibuat oleh pengguna sosial media tersebut. Konten tersebut berupa data yang dapat dianalisa, seperti misalnya emotion, attitudes, opini dan sentiment yang dapat digunakan untuk menganalisa suatu topik atau tren tertentu yang terjadi pada sosial media tersebut. Analisis tersebut disebut dengan sentiment analysis atau opinion mining [11]. Secara umum, terdapat 2 pendekatan untuk melakukan Sentiment Analysis, yaitu pendekatan menggunakan Machine Learning dan dan pendenkatan menggunakan Knowledge-Based. Pendekatan-pendekatan tersebut memiliki kelebihan dan kekurangannya masing-masing.
Machine Learning Approach
Machine Learning memerlukan dataset untuk digunakan sebagai data training. Oleh karena itu, dibutuhkan effort untuk mengumpulkan dan melakukan class tag pada sampel dataset tersebut, selain itu proses training juga membutuhkan waktu [1]. Akurasi dari pendekatan klasifikasi machine learning sangat baik, akan tetapi performa klasifikasinya domain dependent terhadap dataset yang digunakan pada saat training [2].Metode-metode yang masuk ke dalam kategori ini adalah sebagai berikut:
- Naïve Bayes
- Maximum Entropy
- SVM
- Neural Network
Semua metode pada pendekatan machine learning membutuhkan proses training, Pada [9], dilakukan sentiment analysis menggunakan beberapa metode machine learning, yaitu Naïve Bayes, Maximum Entropy dan SVM. Sentiment analysis dilakukan pada data review film yang didapat dari IMDb. Pelabelan data dilakukan secara otomatis menggunakan star rating yang diberikan oleh penulis review. Kemudian star rating tersebut dibagi menjadi 3 kategori, yaitu positive, negative dan netral. Hanya data yang berlabel positive dan negative yang digunakan sebagai data training. Untuk menghindari bias dari penulis review, jumlah review dari seorang reviewer dibatasi hanya 20 review per kategori label. Hasil penelitian menunjukan bahwa SVM memiliki persentase akurasi tertinggi dari ketiga metode yang digunakan. Selain itu, penggunaan unigram dengan negation-tag pada proses training memiliki persentase akurasi lebih baik dibandingkan jika menggunakan bigram. Penggunaan word presence dan word count juga mempengaruhi akurasi sentiment analysis. Penggunaan word presence memberikan akurasi lebih baik dibandingkan menggunakan word count pada proses training. Selain itu dicoba juga proses part-of-speech atau POS tagging pada preprocessing. Tujuannya adalah untuk menghindari penggunaan kata yang tidak tepat, seperti misalnya “I love this movie” yang memiliki sentiment positif dengan “This is a love story” yang bersentimen netral. Akan tetapi hasil percobaan tidak lebih baik dibandingkan dengan tanpa menggunakan POS tagging.
Knowledge-Based Method Approach
Knowledge-Based adalah pendekatan Sentiment Analysis pada word level, dimana entitas yang diproses adalah kata. Metode-metode yang masuk di dalam pendekatan ini adalah sebagai berikut:
- Lexicon-Based
- PMI (Pointwise Mutual Information)
Knowledge -Based bergantung pada dictionary atau kamus lexicon yang digunakan untuk melakukan penilaian terhadap fitur yang didapat.
- Lexicon-Based
Lexicon-Based menggunakan dictionary atau kamus lexicon untuk melakukan penilaian terhadap kata. Pada dictionary, kata-kata dipasangkan dengan nilai polaritasnya. Yang harus dilakukan sebelum melakukan analisis menggunakan lexicon adalah menentukan kata yang akan dianalis dari corpus. Pemilihan kata tersebut dapat dilakukan dengan melakukan Part-Of-Speech Tagging dan lalu mencari kata-kata dengan tipe yang ingin diambil, seperti misalnya adjective dan adverb
.Makna kata dapat berubah bergantung pada konteks dari kalimat, oleh karena itu, pendekatan lexicon-based terkadang tidak bisa menangkap makna sebenarnya dari kata yang diprosesnya. Akan tetapi, lexicon-based memiliki performa klasifikasi yang baik pada kasus lintas domain, dan knowledge dapat ditambahkan kapan saja kedalam dictionary [2].
Beberapa dictionary yang digunakan dalam penelitian antara lain adalah SentiWordNet, AFINN-111.
- Hybrid Approach
Pendekatan ini menggabungkan knowledge-based approach dan machine learning approach. Beberapa penelitian sukses mengaplikasikan keduanya secara bersamaan.
Pada [8], peneliti menggunakan kombinasi lexicon-based dan SVM. SVM digunakan untuk memberikan polaritas terhadap kata-kata baru yang didapat dari corpus. Kata-kata baru tersebut didapatkan menggunakan chi-square test, dimana kata-kata pada tweet akan dibandingkan dengan dataset positive dan negative. Idenya adalah, jika kata-kata tersebut cenderung sering muncul pada salah satu kelas, maka kata-kata tersebut dapat dikategorikan kedalam kelas tersebut. Dengan pendekatan ini, dictionary dapat ditambahkan secara otomatis.
Pada [7], terdapat beberapa analisis yang digunakan pada corpus, yaitu sentiment analysis, demand analysis dan behavioural analysis. Selain itu, metode pengenalan yang digunakan adalah semi-unsupervised naïve bayes. Pada metode ini, dilakukan pelabelan tweet secara otomatis menggunakan seed words. Corpus pada twitter sangat pendek, oleh karena itu biasanya tweet dari orang jepang selalu menyisipkan karakter yang menjadi ekspresi dari sang penulis tweet. Pada penelitian ini, seed words yang digunakan adalah ‘♪’ sebagai tweet positif dan ‘orz’ sebagai tweet negative. Setelah tweet diberi label, tweet tersebut dipecah menggunakan morphological analyser atau POS tagger untuk mengekstraksi kata-kata yang akan digunakan sebagai input training naïve bayes classifier. Dengan metode ini, naïve bayes classifier dapat melakukan training menggunakan data yang tanpa terlebih dahulu diberi label oleh peneliti.
Selain metode pada [7], metode PMI (Pointwise Mutual Information) juga dapat digunakan sebagai pendekatan semi-unsupervised method, dimana seed words yang dipilih adalah ‘excellent’ dan ‘poor’. Dengan PMI, kalimat tersebut dihitung semnatic orientation-nya terhadap seed words yang dipilih.
Pada [8], dilakukan penggabungan metode lexicon-based dan machine-learning. Penggabungan dilakukan karena metode lexicon-based seringkali tidak tepat dalam mendeteksi polaritas karena kata-kata dapat memiliki polaritas yang berbeda bergantung pada konteks kalimatnya (Low Recall). Pada [8], metode lexicon-based digunakan untuk mengkategorikan tweet kedalam kelas polaritas. Setelah proses tersebut, dilakukan proses aggregating opinion pada entity (NN & NNP) pada tweet tersebut. Hal ini dilakukan untuk menghindari low recall dari metode lexicon-based. Setelah proses tersebut, dilakukan klasifikasi polaritas menggunakan opinion rules, dimana kalimat dipecah-pecah menggunakan POS tagger dan dikenali pattern-nya. Pengenalan pattern dilakukan untuk mengetahui polaritas dari kalimat tersebut. Polaritas dari tweet tersebut kemudian digunakan sebagai label untuk proses training SVM classifier.
REFERENCES
[1] Cao, J., Zeng, K., Wang, H., Cheng, J., Qiao, F., Wen, D., & Gao, Y. (2014). Web-based traffic sentiment analysis: Methods and applications. IEEE transactions on Intelligent Transportation systems, 15(2), 844-853.
[2] Kundi, F. M., & Asghar, M. Z. (2014). Lexicon-based sentiment analysis in the social web. Journal of Basic and Applied Scientific Research, 4(6).
[3] Asghar, M. Z. (2014). Lexicon based Approach for Sentiment Classification of User Reviews. Life Science Journal, 11(10).
[4] Lunando, E., & Purwarianti, A. (2013, September). Indonesian social media sentiment analysis with sarcasm detection. In Advanced Computer Science and Information Systems (ICACSIS), 2013 International Conference on (pp. 195-198). IEEE.
[5] Buntoro, G. A., Adji, T. B., & Purnamasari, A. E. (2014). Sentiment Analysis Twitter dengan Kombinasi Lexicon Based dan Double Propagation. CITEE 2014, 39-43.
[6] Cao, J., Zeng, K., Wang, H., Cheng, J., Qiao, F., Wen, D., & Gao, Y. (2014). Web-based traffic sentiment analysis: Methods and applications. IEEE transactions on Intelligent Transportation systems, 15(2), 844-853.
[7] Shimada, K., Inoue, S., Maeda, H., & Endo, T. (2011, December). Analyzing tourism information on twitter for a local city. In Software and Network Engineering (SSNE), 2011 First ACIS International Symposium on (pp. 61-66). IEEE.
[8] Zhang, L., Ghosh, R., Dekhil, M., Hsu, M., & Liu, B. (2011). Combining Lexicon-based and Learning-based Methods for Twitter Sentiment Analysis.
[9] Pang, B., Lee, L., & Vaithyanathan, S. (2002, July). Thumbs up?: sentiment classification using machine learning techniques. In Proceedings of the ACL-02 conference on Empirical methods in natural language processing-Volume 10 (pp. 79-86). Association for Computational Linguistics.
[10] He, W., Zha, S., & Li, L. (2013). Social media competitive analysis and text mining: A case study in the pizza industry. International Journal of Information Management, 33(3), 464-472.
[11] Liu, B. (2012). Sentiment analysis and opinion mining. Synthesis lectures on human language technologies, 5(1), 1-167.