Abstrak
Kebijakan pemerintah terkait karantina menimbulkan berbagai respon dari masyarakat masyarakat,
sebagian masyarakat merasa hal ini harus dilaksanakan agar penyebaran penyakit COVID-19 dapat
ditekan, namun tidak sedikit juga yang merasa hal ini merugikan masyarakat karena ruang geraknya
dibatasi, respon-respon masyarakat ini dapat ditemukan di dalam postingan-postingan Twitter mereka.
Dengan menganalisis sentimen pada postingan Twitter masyarakat maka kita dapat menyimpulkan
apakah suatu kebijakan cenderung lebih banyak mendapatkan respon positif ataukah negatif terhadap
masyarakat yang terdampak, untuk melakukan analisis ini digunakan metode deep learning yaitu Long-
Short Term Memory (LSTM) dengan penambahan Word Embedding terhadap 1364 data Twitter
masyarakat Indonesia yang dicrawling secara mandiri. Kinerja dengan menggunakan metode LSTM ini
menghasilkan 81% accuracy, 80% precision, 80% recall, dan 81% f-measure. Metode LSTM ini
menghasilkan performa yang lebih baik dibandingkan dengan 2 metode lainnya yaitu Naïve Bayes dan
Recurrent Neural Network (RNN) dengan selisih sebesar + 8%, dengan perincian 74% accuracy, 72%
precision, 74% recall, dan 69% f-measure untuk metode Naïve Bayes dan 71% accuracy, 71%
precision, 72% recall, dan 72% f-measure untuk metode RNN.
Kata kunci: Analisis Sentimen, Twitter, COVID-19, karantina, Word Embedding, Deep Learning, Long Short-
Term Memory, Teks Berbahasa Indonesia.
Abstract
Government policies related to quarantine have generated various responses from the community, some
people feel that The quarantine must be done so that the spread of the COVID-19 disease can be
suppressed, but others also feel that this is detrimental to the community because their activities are
being limited, this response can be found in their Twitter post. By analyzing the sentiments on people's
Twitter posts, we can conclude whether a policy tends to get more positive or negative responses to the
affected community. To carry out this analysis, deep learning method is used, namely Long-Short Term
Memoryf (LSTM) with the addition of Word Embedding to 1364 independently crawled Indonesian
people's Twitter data. Performance using the LSTM method produces 81% accuracy, 80% precision,
80% recall, and 81% f-measure. This LSTM method produces better performance than the other 2
methods, namely Naïve Bayes and Recurrent Neural Network (RNN) with a difference of + 8%, with
details of 74% accuracy, 72% precision, 74% recall, and 69% f-measure for the Naïve Bayes method
and 71% accuracy, 71% precision, 72% recall, and 72% f-measure for the RNN method.
Keywords: Sentiment Analysis, Twitter, COVID-19, Quarantine, Word Embedding, Deep Learning, Long Short-
Term Memory, Indonesian Text.
2.2.2 Filtering
Proses menghilangkan beberapa karakter
spesial yang tidak dibutuhkan seperti titik(.),
koma(,), tanda tanya(?), angka(0-9), dan apapun
yang dianggap tidak diperlukan dalam proses
training nantinya. Hal ini dikarenakan karakter-
karakter tersebut dianggap tidak memiliki efek
yang signifikan dalam menentukan label
(Nurrohmat & SN, 2019).
2.2.3 Tokenization
Proses pemotongan kalimat menjadi kata per
kata, hal ini dilakukan dengan cara memotong
dengan acuan tiap spasi pada suatu kalimat
(Nurrohmat & SN, 2019).
Gambar 1. Skip-gram model
2.2.4 Slang Words Conversion
Slang Words Conversion merupakan proses LSTM Classification
pengubahan kata tidak baku menjadi kata baku. LSTM merupakan salah satu variasi dari
Proses ini dibantu dengan menggunakan kamus RNN (Hochreiter & Schmidhuber, 1997).
yang telah dibuat oleh (Salsabila, et al., 2018) Permasalahan yang ada pada RNN yaitu
yang berisikan kumpulan kata tidak baku dan ketidakmampuan dalam menyimpan informasi
pasangan bentuk bakunya apabila terdapat kata ketika proses learning apabila terlalu banyaknya
tidak baku pada data nantinya akan digantikan informasi yang harus disimpan dapat
dengan kata baku yang terdapat dalam kamus. diselesaikan dengan menggunakan LSTM.
LSTM digunakan untuk menggantikan RNN
2.2.5 Pre-Padding node di dalam hidden layer yang juga disebut
Menambahkan token kosong pada awal data sebagai LSTM cells seperti pada Gambar 2,
agar jumlah panjang token tiap data sama LSTM cells ini didesain untuk dapat menyimpan
jumlahnya, hal ini dilakukan karena inputan
atau melupakan informasi sebelum-sebelumnya.
pada LSTM harus memiliki panjang sequence
yang sama (Reddy & Reddy, 2019).
Word Embedding
Word Embedding digunakan untuk
representasi makna yang lebih baik karena
adanya keterbatasan informasi pada teks pendek Gambar 2. RNN dengan LSTM Cells
(Wang & Liu, 2018), maka dari itu Word2vec
word embedding model dengan algoritme Skip- LSTM terdiri dari 3 gates, yaitu: Input Gate,
gram dapat digunakan untuk mempelajari relasi Forget Gate, dan Output Gate seperti pada
kontekstual antar kata yang ada pada data Gambar 3. Gates disini berfungsi untuk
training. Model Word2vec dengan algoritme menentukan apakah suatu informasi layak untuk
Skip-gram melakukan proses training dengan disimpan atau dilupakan, berikut persamaan-
cara memprediksi kata sebelumnya dan juga kata persamaan yang akan digunakan:
sesudahnya berdasarkan kata saat ini (Mikolov,
et al., 2013), gambaran arsitektur model ini
seperti pada Gambar 1.
METODOLOGI
Pengumpulan Data
Data merupakan data primer berupa Gambar 4. Rancangan Sistem
kumpulan Tweet berbahasa Indonesia yang
HASIL DAN PEMBAHASAN
dikumpulkan dengan menggunakan API
searching pada platform Twitter dengan
Pengujian Jumlah Dimensi Word
keyword “karantina” pada kurun waktu Juli 2020
Embedding
sampai September 2020 dengan total Tweet
sebanyak 1364. Setelah dilakukan percobaan dengan
beberapa variasi pada dimensi word embedding
Pelabelan Data didapatkan hasil seperti pada Tabel 1 dan
Gambar 5.
Pelabelan data dilakukan secara manual
dengan metode kuesioner kepada 6 orang Tabel 1. Hasil Pengujian Dimensi Word
relawan yang memahami tentang topik sentimen Embedding
analisis dengan data Tweet sebagai acuan, untuk
Waktu Min
data yang termasuk kategori Tweet positif
No Dimensi Epoch Eksekusi loss
memiliki kriteria: Mendukung kebijakan
karantina, diuntungkan oleh kebijakan karantina, 1 50 100 541 detik 0,465
atau tidak dirugikan oleh kebijakan karantina, 2 100 100 717 detik 0,454
sedangkan untuk data yang termasuk kategori 3 200 100 973 detik 0,430
Tweet negatif memiliki kriteria: Berisi umpatan 4 300 100 1037 detik 0,429
akibat kebijakan karantina, dan apapun yang
tidak termasuk ke dalam kriteria Tweet positif
namun masih relevan terhadap kebijakan
karantina.
Rancangan Sistem
Terdapat beberapa tahapan dalam
merancang sistem ini, yaitu:
Tahapan preprocessing yang meliputi
Casefolding, Filtering, Tokenization, Slang
Word Conversion, String to Int Convertion, dan
Padding. Proses Word Embedding akan Gambar 5. Grafik Hasil Pengujian Dimensi
ditambahkan sebelum menjadi input pada tahap Word Embedding
training data dengan metode LSTM, hasil akhir Dengan melihat hasil percobaan terjadi
dari proses training menggunakan metode peningkatan pada waktu eksekusi untuk 100
LSTM ini berupa model yang dapat epoch di setiap penambahan dimensi, namun
mengklasifikasikan data sebagai sentimen untuk nilai loss didapatkan nilai makin kecil di
positif atau negatif. Rancangan ini diilustrasikan setiap penambahan dimensi. Berdasarkan hal ini
seperti pada Gambar 4. dimensi sebesar 300 akan digunakan dengan
mempertimbangkan waktu eksekusi dan selisih
loss yang kecil dibandingkan dimensi 200.
Pengujian Kombinasi
Hyperparameter
Setelah dilakukan percobaan sebanyak 24
kasus akhirnya didapatkan kombinasi
hyperparameter terbaik yang dilihat dari loss
terkecil dari setiap kasus, hasil pengujian dapat
dilihat pada Tabel 2.
Tabel 2. Hasil Pengujian Kombinasi
Hyperparameter
Hidden Learning Min Val
Batch Size Rate loss acc Gambar 6. Grafik loss training
30 100 0,0001 0,433 0,799
30 100 0,00001 0,437 0,798
10 50 0,0001 0,438 0,791
20 25 0,00001 0,439 0,791
20 25 0,0001 0,439 0,768
30 50 0,00001 0,439 0,798
10 25 0,0001 0,442 0,784
20 100 0,0001 0,444 0,756
20 100 0,00001 0,445 0,784
5 100 0,00001 0,448 0,756
5 100 0,0001 0,451 0,775
Gambar 7. Grafik akurasi training
10 100 0,0001 0,451 0,779
Contoh hasil analisis sentimen dari model
10 25 0,00001 0,454 0,770
seperti pada Tabel 3.
10 50 0,00001 0,458 0,749
5 50 0,0001 0,458 0,759 Tabel 3 Contoh hasil perbandingan prediksi
5 50 0,00001 0,461 0,793 model dan aktual
10 100 0,00001 0,464 0,779
Text
Sentimen Sentimen
20 50 0,00001 0,466 0,763 aktual prediksi
30 50 0,0001 0,470 0,768 kapan karantina selesai
0 0
gue mau dapet uang jajan
5 25 0,00001 0,489 0,761
sumpah karantina gabut
30 25 0,0001 0,492 0,754 bgt kerjaaan gw makan
5 25 0,0001 0,493 0,756 0 0
tidur makan tidur nonton
30 25 0,00001 0,498 0,766 pelakor
20 50 0,0001 0,523 0,747 dan yup akhirnya dapet
email buat karantina 1 1
Kombinasi Hyperparameter teratas ini mandiri
nantinya akan digunakan sebagai parameter orang yg baru dtg ke
dalam pencarian model akhir. negara ini harus karantina
mandiri minggu dulu 1 1
Pengujian Model Akhir sebelum mereka bisa
keluar rumah
Dengan hyperparameter yang telah dipilih karantina belajar make up
dilakukan proses pencarian model dan pengujian tapi gue cuman punya
terhadap data uji. Hasil training model seperti 1 0
lipstik bedak bb cream
pada Gambar 6 dan Gambar 7, pengambilan concealer blush
model terbaik didasarkan dari nilai validation
loss terkecil.
Dari hasil pengujian ini didapatkan model Dengan rincian sebagai berikut:
ketika nilai validation loss sebesar 0.4317. Dari
model ini akan dilakukan pengujian terhadap
- Naïve Bayes menghasilkan 74%
data uji, model ini menghasilkan 81% accuracy, accuracy, 72% precision, 74% recall,
80% precision, 80% recall, dan 81% f-measure. dan 69% f-measure.
Confusion matrix dari pengujian ini dapat dilihat - RNN menghasilkan 71% accuracy, 71%
pada Tabel 4. precision, 72% recall, dan 72% f-measure.
Tabel 4. Confussion Matrix LSTM Kinerja metode LSTM pada kasus sentimen
Confussion Matrix analisis jauh lebih baik daripada metode Naïve
Bayes dan juga RNN, hal ini dikarenakan
Kelas Sebenarnya
beberapa faktor seperti pengaruh urutan kata
Positive Negative pada metode Naïve Bayes yang tidak
Prediksi Positive 117 26 diperhitungkan, sedangkan pada LSTM hal ini
Negative 25 105 memberi pengaruh pada hasil akhir prediksi.
Permasalahan pada RNN yaitu vanishing
Skor Accuracy 0,81 gradient ketika kata-kata yang muncul di awal
F-Measure 0,80 menjadi tidak terlalu berpengaruh pada saat
Precission 0,80 melakukan backpropagation, dengan metode
LSTM permasalahan ini tidak terjadi karena
Recall 0,81
metode LSTM merupakan salah satu metode
yang dapat menyelesaikan permasalahan ini.
Kesalahan prediksi mungkin saja terjadi Contoh Tweet dan hasil prediksi seperti pada
karena beberapa faktor seperti penghilangan Tabel 5.
angka pada saat proses preprocessing yang
Tabel 5. Contoh Hasil Prediksi Ketiga
menyebabkan kehilangan sebagian makna, dan
teks yang ditulis secara sarkastik juga Metode
menyebabkan keambiguan saat mengekstraksi
fitur. Teks Aktual LSTM RNN NB
Perbandingan Hasil Dengan Metode orang yg baru
Lain dtg ke negara ini
harus karantina
Dari kedua metode yang digunakan sebagai
pembanding, metode LSTM menghasilkan hasil mandiri minggu 1 1 0 0
yang lebih baik dibandingkan dengan kedua dulu sebelum
metode lainnya, dapat dilihat dari hasil skor mereka bisa
confussion matrix pada Gambar 8, dengan nilai keluar rumah
accuracy, precision, recall, dan f-measure lebih terakhir periksa
tinggi daripada kedua metode lainnya. mata sebelum
karantina min
nya mau periksa
0 0 1 0
lagi tapi takut
bgt nambah udh
pasti si karantina
hp
.
Gambar 8. Perbandingan dengan metode lain