Skip to content

Analisis sentimen teks bahasa Indonesia dengan Support Vector Machine (SVM): Perbandingan Leksikon dan Metode Ekstraksi Fitur

License

Notifications You must be signed in to change notification settings

onpilot/sentimen-bahasa

Repository files navigation

Analisis Sentimen Teks Bahasa Indonesia: Evaluasi Leksikon & Metode Ekstraksi Fitur

Python 3.7|3.8|3.9 GitHub license

Implementasi analisis sentimen untuk mengevaluasi performa leksikon dan metode ekstraksi fitur pada teks berbahasa Indonesia dengan Python di JupyterLab.

Sentiment analysis implementation to evaluate lexicon and extraction feature methods performance using Python in JupyterLab. Primarily made for dealing with text in social media using Indonesian language (bahasa Indonesia). *Note: jupyter notebooks with English documentation can be found in ipynb-en folder.

Set

tl;dr

Repositori ini dibuat untuk mengevaluasi performa leksikon dan metode ekstraksi fitur pada analisis sentimen teks berbahasa Indonesia mengenai penanganan Covid-19 dengan Support Vector Machine (SVM). Pendekatan analisis sentimen dilakukan dengan pemelajaran semisupervisi—menggabungkan pendekatan berbasis leksikon dan pendekatan berbasis pemelajaran mesin. Setiap jupyter notebook (ipynb) disertai dengan petunjuk. Algoritma dibuat dengan memanfaatkan modul RegEx bawaan Python dan library NLTK, Scikit-learn, juga imbalanced-learn. Validasi dilakukan dengan k-Fold cv setelah sebelumnya data disintesis (oversampling) dengan borderline SMOTE SVM atau SVM-SMOTE.

Algoritma yang termasuk

  • Pembersihan kata/prapengolahan teks
  • Penggantian kata tidak baku
  • Penghapusan stop words
  • Pelabelan leksikon: InSet, sentiwords_id (dari sentistrength_id)
  • Ekstraksi fitur: term presence, BoW, TF-IDF
  • Sintesis data: SVM-SMOTE
  • Klasifikasi: SVM
  • Plotting

Prasyarat

  • pandas >= 0.25.0
  • numpy >= 1.16.6
  • nltk
  • scikit-learn
  • imbalanced-learn
  • jupyterlab

Instalasi

Prasyarat

instal package satu per satu

pip3 install --user --upgrade [nama package] atau

Clone Repositori

git clone https://github.com/onpilot/sentimen-bahasa.git
cd sentimen-bahasa
pip3 install -r requirements.txt
jupyter-lab

FAQ

Saya punya instalasi Python versi lama untuk projek lain. Apa perlu di-uninstall dulu?

Ya. Atau gunakan aplikasi yang bisa memanajemen instalasi Python, seperti Conda atau Scoop.

Error: Microsoft Visual C++ 14.0 or greater is required!

Pengguna Windows perlu compiler Visual C++ 14.0 Build Tools atau versi di atasnya untuk package scikit-learn.

Publikasi

Publikasi mengenai projek ini bisa dilihat di: http://jurnal.umus.ac.id/index.php/intech/article/view/556

Jika kamu memanfaatkan repositori ini dalam publikasi akademis, kami sangat mengapresiasi sitasi ke paper berikut:

@article{j.ilm.intech:v03:02-556,
author  = {Wildan Fariq Abdillah, Agyztia Premana, Raden Mohamad Herdian Bhakti},
title   = {Analisis Sentimen Penanganan Covid-19 dengan Support Vector Machine: Evaluasi Leksikon dan Metode Ekstraksi Fitur},
journal = {Jurnal Ilmiah Intech: Information Technology Journal of UMUS},
year    = {2021},
volume  = {03},
issue   = {02},
pages   = {160-170},
issn    = {2685-4902 (online)},
doi     = {10.46772/intech.v3i02.556},
url     = {http://jurnal.umus.ac.id/index.php/intech/article/download/556/373}
}

to-dos

Bacaan Lanjut