• Tidak ada hasil yang ditemukan

Jurnal Informatika Kaputama (JIK),Vol. 6 No. 2 Juli 2022 P-ISSN : E-ISSN :

N/A
N/A
Protected

Academic year: 2022

Membagikan "Jurnal Informatika Kaputama (JIK),Vol. 6 No. 2 Juli 2022 P-ISSN : E-ISSN :"

Copied!
8
0
0

Teks penuh

(1)

ANALISIS SENTIMEN TWITTER BAHASA INDONESIA MENGGUNAKAN PENDEKATAN MACHINE LEARNING

Aloysius Kurniawan Santoso1)

1Universitas Nusa Mandiri

Jl. Kramat Raya No. 18, Senen, Jakarta Pusat Email : 14002407@nusamandiri.ac.id1

ABSTRACT

Twitter is a social media that is still widely used in Indonesia in expressing ideas, ideas, and opinions. Not a few researchers use public tweets to make a research on sentiment analysis. This research discusses sentiment analysis of Indonesian tweets on Twitter social media. There are 3 types of sentiment in this study, -1 symbolizing negative, 0 symbolizing neutral, and 1 symbolizing positive. This study aims to find the model that has the best accuracy results. This research uses Logistic Regression, Random Forest, Adaboost and Decision Tree methods. The Decision Tree method uses several preprunings such as Max Depth, Min Leaves and Min Split. Among the four models in this study, the Logistic Regression method obtained an accuracy value of 61%.

Keywords: Sentiment Analysis, Logistic Regression, Accuracy

ABSTRAK

Twitter merupakan media sosial yang masih banyak digunakan di Indonesia dalam menuangkan sebuah ide, gagasan, serta opini. Tidak sedikit seorang peneliti memanfaatkan tweet masyarakat untuk menjadikan sebuah penelitian mengenai analisis sentimen Penelitian ini membahas mengenai analisis sentimen tweet bahasa Indonesia pada media sosial twitter. Sentimen pada penelitian ini ada 3 jenis, -1 melambangkan negatif, 0 melambangkan netral, dan 1 melambangkan positif. Penelitian ini bertujuan untuk menemukan pemodelan yang memiliki hasil accuracy terbaik.

Penelitian ini menggunakan metode Logistic Regression, Random Forest, Adaboost dan Decision Tree. Pada metode Decision Tree menggunakan beberapa prepruning seperti Max Depth, Min Leaves dan Min Split. Diantara keempat model dalam penelitian ini, metode Logistic Regression mendapatkan nilai akurasi sebesar 61 %.

Kata Kunci: Analisis Sentimen, Logistic Regression, Akurasi

(2)

1. PENDAHULUAN

Dalam sebuah pemodelan machine learning khususnya yang berfokus pada teks, hal yang terpenting dan perlu diperhatikan adalah proses pelatihan pada model yang digunakan. Hal tersebut disebabkan pada proses pelatihan analisis sentimen yang berjalan menggunakan data subjektif seperti opini.[1]Kebutuhan akan alat penambangan teks yang efektif dan efisien dan teknik meningkat sekarang hari karena mengejutkan sejumlah data tekstual. Data ini meningkat dari hari ke hari karena ke situs jejaring sosial (Facebook dan Twitter dll) [2].Penelitian ini berkonsentrasi pada analisis sentimen bahasa indonesia menggunakan data pada Twitter. Data Twitter memungkinkan peneliti memperoleh banyak pengetahuan dari penggunanya. Penambangan teks adalah salah satu bidang unggulan dari penambangan data, yang memiliki potensi untuk mengekstrak informasi yang berguna dari data tekstual mentah.

Menerapkan analisis sentimen ke Twitter adalah tren yang muncul dalam penambangan teks, dengan para peneliti mengenali tantangan spesifik yang dibawanya dan aplikasi potensialnya.Pada penelitian sebelumnya yang dilakukan oleh Riki Refdiana , menggunakan metode Support Vector Machine mendapatkan akurasi 59,6 %, menggunakan metode K-Nearest Neighbor mendapatkan akurasi 48,7 % dan menggunakan Stochastic Gradient Descent mendapatkan akurasi 57,8

%.[1]Tujuan penelitian ini adalah mendapatkan classifier terbaik dalam mendapatkan akurasi dalam teks bahasa indonesia yang tertuang pada cuitan sosial media khususnya Twitter.

2. METODOLOGI PENELITIAN

Metode penelitian yang menggunakan metode Decision Tree, Random Forest, Adaboost dan Logistic Regression. Berikut alur pemrosesan penelitian seperti Gambar 1 di bawah ini :

Gambar 1. Alur Penelitian 2.1. Dataset

Dataset yang digunakan dalam penelitian ini berjudul Indonesian Sentiment Twitter Dataset pada Github. Dataset berisi 10806 record dan 2 feature antara lain, texts dan sentiment. Tweet melambangkan isi tweet

(3)

pada media social twitter dan sentiment terbagi menjadi 3 yaitu -1 melambangkan negative, 0 melambangkan netral, dan 1 melambangkan positif. Berikut beberapa isi dataset dalam penelitian ini :

Tabel 2.1 Dataset

2.2. Preprocessing

Setelah dataset dipersiapkan, proses selanjutnya adalah Preprocessing.

Preprocessing yang dilakukan adalah menghapus mention dan hashtag pada feature Texts. Dengan melakukan penghapusan stopwords hal ini dapat meningkatkan akurasi dalam menganalisa sentimen dalam suatu bahasa, meskipun tidak terlalu signifikan, karena setiap kata memiliki arti yang berbeda di tiap bahasa yang digunakan [14]. Kata-kata stopwords seperti kata ganti, preposisi, dan konjungsi, dimana kata tersebut tidak membantu dan sering terjadi [15]. Pada penelitian ini tahapan preprocessing yang digunakan antara lain Label encoder untuk merubah isi kolom sentimen menjadi 0,1,2.

Lalu Cleaning untuk membersihkan tanda

baca pada kolom tweet. Setelah itu stopword yang berfungsi untuk menghilangkan kata - kata yang sering muncul namun tidak memiliki arti. Lalu stemming untuk mengubah kata menjadi kata dasar. Setelah itu proses tokenizing untuk memisahkan kalimat menjadi potongan - potongan kata. Dan yang terakhir adalah proses num2word yang berfungsi untuk merubah angka menjadi teks.

2.3. Proses Vektorisasi

Pada penelitian ini, proses setelah preprocessing dan sebelum masuk ke dalam model adalah proses vektorisasi. Proses ini menggunakan CountVectorizer yang merupakan features extraction pada Sklearn.

Proses ini menggunakan ekstraksi fitur n- gram. N-gram range yang digunakan adalah 1,2 yang berarti menghitung dengan unigram dan bigram.

2.4. Implementasi Algoritma

Pada implementasi algoritma menggunakan Decision Tree, Logistic Regression, Adaboost dan Random Forest.

Pada setiap model menggunakan 80% data training dan 20% data testing. Pada model Decision Tree, dibagi atas 2 kriteria yaitu entropy dan gini. Dan pada setiap kriteria akan menggunakan prepruning max depth, min leaves dan min split. Pada max depth menggunakan 5, 10, 15, 20, dan 30. Sedangkan pada min leaves menggunakan 2, 5, 8, 11, 14 dan 17. Dan pada min split menggunakan 4, 6, 8, 10, 12 dan 14. Pada Random Forest

menggunakan max_features=3,

n_estimators=300. Pada Adaboost menggunakan n_estimators=30, random_state=7. Pada Logistic Regression menggunakan random state=42. Setiap model akan menghasilkan nilai akurasi dan nantinya akan dibandingkan antar model yang menghasilkan nilai akurasi tertinggi.

sentimen Tweet

-1 lagu bosan apa yang aku save ni huhuhuhuhuhuhu

-1 kita lanjutkan saja diam ini hingga kau dan aku

1 doa rezeki tak putus inna haa zaa larizquna.

1 makasih loh ntar kita bagi hasil aku 99 9 sisa

-1 aku tak faham betul jenis orang malaysia yang

(4)

3. HASIL DAN PEMBAHASAN 3.1. Dataset

Dataset yang digunakan adalah dataset publik yang berasal dari GitHub. Dataset ini berisi dari 10.806 baris dan terdiri dari 2 kolom. Pada tahap berikut akan menjelaskan terkait tipe data pada dataset yang digunakan.

Adapun tipe data yang tersedia sebagai berikut

Tabel 3.1. Tipe Data

Kolom Tipe Data

Sentiemen Integer

Tweet Object

Sentimen terbagi dari 3 kelas yaitu -1 melambangkan negative, 0 melambangkan neutral dan 1 melambangkan positive. Dan berikut hasil dari penyebaran terkait sentiment :

Gambar 2. Peta jumlah penyebaran sentiment

Pada jumlah penyebaran kolom sentimen dijabarkan melalui Tabel 3.2 dibawah ini :

Tabel 3.2. Jumlah data pada kolom sentimen Sentimen Jumlah

-1 (Negative) 2887

0 (Neutral) 5327

1 (Positive) 2592

:

3.2. Missing Value

Dalam pemeriksaan missing value pada dataset yang digunakan, mendapatkan hasil nihil. Karena jika ada data yang kosong itu akan berpengaruh pada hasil pada setiap model yang digunakan.

3.3. Preprocessing

Pada tahap preprocessing ada beberapa tahap yang digunakan antara lain : 3.3.1. Label Encoder

Pada tahap ini menjelaskan bahwa melakukan label encoder pada kolom sentimen. Kolom sentimen yang semula -1, 0 dan 1 diubah menjadi 0, 1 dan 2.

3.3.2. Cleaning

Pada tahap ini adalah proses pembersihan tanda baca yang ada pada kolom tweet. Setelah dibersihkan akan menjadi seperti yang dijabarkan pada Tabel 3.3 dibawah ini :

Tabel 3.3. Hasil Cleaning

Sebelum Sesudah

aku aja capek sama diriku sendiri apalagi

kamu maaf ya '

aku aja capek sama diriku sendiri apalagi

kamu maaf ya ini tiga aku satu aja

gapunya '

ini tiga aku satu aja gapunya

3.3.3. Stopword

Pada tahap ini adalah proses menghilangkan kata – kata umum yang sering

(5)

muncul dan tidak memiliki arti dan menggunakan Sastrawi Indonesia. Setelah dilakukan proses stopword akan menjadi seperti yang dijabarkan pada Tabel 3.4 dibawah ini :

Tabel 3.4 Hasil Stopword

Sebelum Sesudah

aku aja capek sama diriku sendiri apalagi

kamu maaf ya

aja capek maaf

ini tiga aku satu aja gapunya

aja gapunya

3.3.4. Stemming

Pada tahap ini adalah proses mengubah kata berbahasa Indonesia menjadi kata dasar.

Setelah dilakukan proses stemming akan menjadi seperti yang dijabarkan pada Tabel 3.5 dibawah ini

Tabel 3.5 Hasil Stemming

Sebelum Sesudah

aja capek maaf aja capek maaf aja gapunya aja gapunya

3.3.5. Tokenizing

Pada tahap ini ada proses untuk memecah kalimat menjadi potongan – potongan kata pada kolom tweet. Dan Hasil pemisahan kalimat menjadi token terlampir pada Tabel 3.6 sebagai berikut :

Tabel 3.6 Hasil Tokenizing

Sebelum Sesudah

aja capek maaf [aja, capek, maaf]

aja gapunya [aja, gapunya]

3 .3.6.

Toke nizin g

Pada tahap ini adalah proses num2word atau merubah angka menjadi teks. Setelah proses selesai, akan diakhiri dengan menyimpan file CSV baru yang sudah selesai di preprocessing hingga siap untuk masuk dalam tahap model.

3.4. D e c i s i o n T r e e

P a d a

model Decision Tree menggunakan beberapa percobaan yang dijabarkan pada Tabel 3.7. dibawah ini :

Tabel 3.7. Percobaan pada Decision Tree

Dari beberapa kriteria, prepuning dan range yang di lakukan pada metode Decision Tree, mendapatkan hasil akurasi terbaik pada kriteria Gini, prepruning Max Depth range 30 sebesar 57%.

3.5. Adaboost

Pada model Adaboost menghasilkan akurasi sebesar 56% dan dijabarkan pada tabel 3.8 dibawah ini :

Kriteria Prepruning Range Entropy Max Depth 5,10,15,20

,25,30 Min

Leaves

2,5,8,11,1 4,17 Min Split 4,6,8,10,1

2,14 Gini Max Depth 5,10,15,20

,25,30 Min

Leaves

2,5,8,11,1 4,17 Min Split 4,6,8,10,1

2,14

(6)

Tabel 3.8. Tabel hasil metode Adaboost

Akurasi 0.56 F1 Score 0.43 Precision 0.55 Recall 0.44 3.6. Random Forest

Pada model Random Forest menghasilkan akurasi sebesar 60% dan dijabarkan pada Tabel 3.9 dibawah ini : Tabel 3.9. Tabel hasil Random Forest

Akurasi 0.60 F1 Score 0.54 Precision 0.58 Recall 0.52

3.7. Logistic Regression

Pada model Logistic Regression menghasilkan akurasi sebesar 61% dan dijabarkan pada Tabel 3.10 dibawah ini : Tabel 3.10.Tabel hasil Logistic Regression

Akurasi 0.61 F1 Score 0.56 Precision 0.58 Recall 0.55

3.8. Evaluasi Model

Pada evaluasi model akan menjabarkan perbandingan hasil akurasi dari beberapa model yang digunakan pada penelitian ini, diantara lain Decision Tree, Random Forest, Adaboost dan Logistic Regression. Model Logistic Regression adalah model terbaik dalam penelitian ini,

terbukkti dengan hasil akurasi tertinggi dibandingkan dengan model – model lainnya. Perbandingan hasil akurasi dijabarkan pada Tabel 3.11 dibawah ini :

Tabel 3.11.Tabel evaluasi model Model Akurasi (%)

Decision Tree 57

Random Forest 60

Adaboost 56

Logistic Regression 61

4. KESIMPULAN

Dari hasil penelitian yang didapatkan maka dapat disimpulkan bahwa model Logistic Regression adalah model terbaik diantara 3 model lainnya yang ada pada penelitian ini. Hal ini terbukti karena hasil akurasi yang didapatkan pada model Logistic Regression lebih tinggi dari lainnya. Logistic Regression mendapatkan nilai akurasi sebesar 61%, Adaboost mendapatkan nilai akurasi sebesar 56%, Random Forest mendapatkan nilai akurasi sebesar 60% dan Decision Tree mendapatkan nilai akurasi 57% pada kriteria Gini dan menggunakan Max Depth 30.

5. SARAN

Dari hasil yang didapatkan peneliti sangat menyadari bahwa hasil yang didapatkan masih bisa untuk dioptimalkan kembali. Oleh karena itu, peneliti menyarankan untuk penelitian lanjutan dapat mengembangkan dengan cara :

1. Menambahkan model – model pembanding seperti LSTM atau BiLSTM agar mendapatkan nilai akurasi yang lebih tinggi.

2. Menambahkan variasi, parameter serta tuning pada setiap model.

(7)

DAFTAR PUSTAKA

[1] R. Ferdiana, F. Jatmiko, D. D.

Purwanti, A. S. T. Ayu, and W. F.

Dicka, “Dataset Indonesia untuk Analisis Sentimen,” J. Nas. Tek.

Elektro dan Teknol. Inf., vol. 8, no. 4, p. 334, 2019, doi:

10.22146/jnteti.v8i4.533.

[2] M. Ahmad and I. Ali, “Sentiment Analysis of Tweets using SVM Sentiment Analysis of Tweets using SVM,” no. November, 2017, doi:

10.5120/ijca2017915758.

[3] D. Iskandar and Y. K. Suprapto,

“Perbandingan akurasi klasifikasi tingkat kemiskinan antara algoritma C4 . 5 dan Naïve Bayes Clasifier,” vol. 11, no. 1, pp. 14–17, 2013.

[4] P. Kamath, P. Patil, S. Shrilatha, and S.

Sowmya, “Crop Yield Forecasting using Data Mining,” Glob. Transitions Proc., pp. 0–7, 2021, doi:

10.1016/j.gltp.2021.08.008.

[5] P. Bidang, K. Sains, Y. Mardi, J.

Gajah, M. No, and S. Barat, “Jurnal Edik Informatika Data Mining : Klasifikasi Menggunakan Algoritma C4 . 5 Data mining merupakan bagian dari tahapan proses Knowledge

Discovery in Database ( KDD ) . Jurnal Edik Informatika.”

[6] F. Sodik and I. Kharisudin, “Analisis Sentimen dengan SVM , NAIVE BAYES dan KNN untuk Studi Tanggapan Masyarakat Indonesia Terhadap Pandemi Covid-19 pada Media Sosial Twitter,” vol. 4, pp. 628–

634, 2021.

[7] U. Salamah and D. Ramayanti,

“Implementation of Logistic

Regression Algorithm for Complaint Text Classification in Indonesian Ministry of Marine and Fisheries Abstract :,” Int. J. Comput. Tech., vol.

5, no. 5, pp. 74–78, 2018.

[8] D. Alita and A. R. Isnain, “Pendeteksian Sarkasme pada Proses Analisis

Sentimen Menggunakan Random Forest Classifier,” J. Komputasi, vol. 8, no. 2, pp. 50–58, 2020, doi:

10.23960/komputasi.v8i2.2615.

[9] A. Andreyestha and A. Subekti,

“Analisa Sentiment Pada Ulasan Film Dengan Optimasi Ensemble Learning,”

J. Inform., vol. 7, no. 1, pp. 15–23, 2020, doi: 10.31311/ji.v7i1.6171.

[10] R. Puspita and A. Widodo,

“Perbandingan Metode KNN, Decision Tree, dan Naïve Bayes Terhadap Analisis Sentimen Pengguna Layanan BPJS,” J. Inform. Univ. Pamulang, vol.

5, no. 4, p. 646, 2021, doi:

10.32493/informatika.v5i4.7622.

[11] H. Hermanto and A. Noviriandini,

“Analisa Sentimen Terhadap Belajar Online Pada Masa Covid-19

Menggunakan Algoritma Support Vector Machine Berbasis Particle Sarm Optimization,” J. Inform. Kaputama, vol. 5, no. 1, pp. 129–136, 2021.

[12] M. Cindo, “Studi Komparatif Metode Ekstraksi Fitur pada Analisis Sentimen,”

vol. 1, no. 10, pp. 9–12, 2021.

[13] M. R. A. Nasution and M. Hayaty,

“Perbandingan Akurasi dan Waktu Proses Algoritma K-NN dan SVM dalam Analisis Sentimen Twitter,” J.

Inform., vol. 6, no. 2, pp. 226–235, 2019, doi: 10.31311/ji.v6i2.5129.

[14] A. W. Pradana and M. Hayaty, “The Effect of Stemming and Removal of Stopwords on the Accuracy of Sentiment Analysis on Indonesian- language Texts,” Kinet. Game Technol.

Inf. Syst. Comput. Network, Comput.

Electron. Control, vol. 4, no. 3, pp. 375–

380, 2019, doi:

10.22219/kinetik.v4i4.912.

[15] S. Elbagir and J. Yang, “Sentiment

(8)

analysis of twitter data using machine learning techniques and scikit-learn,”

ACM Int. Conf. Proceeding Ser., 2018, doi: 10.1145/3302425.3302492.

Referensi

Dokumen terkait

Dunia penerbangan saat ini berkembang dengan pesat dan banyak diminati juga memiliki daya tarik yang cukup besar kepada pengguna jasa penerbangan. Untuk dapat bertahan

Metode sistem pendukung keputusan yang akan digunakan dalam pemberian beasiswa di SMAN 1 Bangun Purba adalah Simple Multi Atribute Rating Technique (SMART) dimana

Pada proses perancangan model algoritma Random Forest, model algoritma Random Forest yang dibangun dengan menggunakan ‘n’ pohon Decision Tree dengan mencari nilai

Prony Brake adalah alat untuk mengukur unjuk kerja mesin dengan putaran rendah, komponen utamanya berupa disc brake (rem cakram) yang dimodifikasi sehingga bisa memvariasikan

4,300 > t tabel 1,985. iii) berdasarkan hasil uji F menunjukkan bahwa fasilitas ruang tunggu keberangkatan domestik dan kualitas pelayanan passenger handling

Dalam penelitian yang berjudul " perancangan sistem manajemen basis data pada sekolah untuk menunjang sekolah modern berbasis teknologi " merupakan

Berdasarkan hasil riset yang penulis lakukan pada Badan Usaha Masyarakat Desa Bersama (BUMDESMA) Anugerah, pencatatan laporan transaksi kas masuk dan kas keluar

Beberapa kesimpulan yang dapat diambil dari hasil penelitian yang telah penulis lakukan untuk mendiagnosa gangguan lambung melalui citra iris mata dengan jaringan