Anda di halaman 1dari 34

ANALISIS SENTIMEN DENGAN KLASIFIKASI NAÏVE BAYES

PADA PESAN TWITTER MENGGUNAKAN DATA SEIMBANG

EGA ADITYAWAN

DEPARTEMEN ILMU KOMPUTER


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2014
PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA

Dengan ini saya menyatakan bahwa skripsi berjudul Analisis Sentimen


dengan Klasifikasi Naïve Bayes pada Pesan Twitter Menggunakan Data Seimbang
adalah benar karya saya dengan arahan dari komisi pembimbing dan belum
diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber
informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak
diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam
Daftar Pustaka di bagian akhir skripsi ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada
Institut Pertanian Bogor.
Bogor, Agustus 2014

Ega Adityawan
NIM G64100099
ABSTRAK

EGA ADITYAWAN. Analisis Sentimen dengan Klasifikasi Naïve Bayes pada


Pesan Twitter Menggunakan Data Seimbang. Dibimbing oleh AHMAD RIDHA.

Penelitian ini bertujuan untuk mengklasifikasi data tweet menjadi 3


sentimen yaitu positif, negatif, dan netral menggunakan data seimbang. Data yang
digunakan terdiri atas 8 entitas berbeda dengan masing-masing entitas setiap
sentimennya terdiri atas 80-90 data. Pengklasifikasian data tweet menggunakan
metode naïve Bayes dengan Multinomial dan Bernoulli. Sebelum klasifikasi,
dilakukan beberapa tahap praproses seperti normalisasi dan pembuangan
stopwords. Pengujian dilakukan pada 60 data setiap entitas per sentimennya untuk
mendapatkan model terbaik menggunakan 3-fold cross validation. Setelah itu,
data yang tersisa pada setiap entitas per sentimennya dianggap menjadi data baru.
Data baru tersebut akan dilakukan klasifikasi dengan menggunakan data latih dari
model terbaik pada 3-fold cross validation. Hasil klasifikasi pada data baru
menunjukkan, metode naïve Bayes memberikan nilai akurasi sebesar 71.09%
untuk Multinomial dan 66.42% untuk Bernoulli. Adapun nilai akurasi tiap
sentimennya untuk model Multinomial dan Bernoulli masing-masing yaitu
58.62% dan 64.53% untuk sentimen positif, 77.42% dan 65.53% untuk sentimen
negatif, 64.40% dan 84.18% untuk sentimen netral.

Katakunci: Analisis Sentimen, Data Seimbang, Klasifikasi, Naïve Bayes, Twitter

ABSTRACT
EGA ADITYAWAN. Sentiment Analysis with Naïve Bayes Classification on
Twitter Data Using Balanced Data. Supervised by AHMAD RIDHA.

The purpose of this research is to classify tweet data into 3 sentiments, i.e.,
positive, negative, and neutral using balanced data. The data consists of 8 different
entities where each entity consists of 80-90 tweets for each sentiment. Data
classification uses naïve Bayes with Multinomial and Bernoulli method. Before
classification, preprocessing includes normalization and stopword removal.
Evaluation is conducted on 60 data of each entity per sentiment to get the best
model using 3-fold cross validation. After that, the remaining data from previous
evaluation is considered to be new data. The new data will be classified using the
training data of the best models in the 3-fold cross validation. Classification
results on new data shows, that naïve Bayes method gives an accuracy rate of
71.09% and 66.42% for the Multinomial and Bernoulli. The accuracy rate of each
sentiment for Multinomial and Bernoulli models respectively are 58.62% and
64.53% and for the positive sentiment, 77.42% and 65.53% for the negative
sentiment, 64.40% and 84.18% for the neutral sentiment.

Keywords: Balanced Data, Classification, Naïve Bayes, Sentiment Analyst,


Twitter.
ANALISIS SENTIMEN DENGAN KLASIFIKASI NAÏVE BAYES
PADA PESAN TWITTER MENGGUNAKAN DATA SEIMBANG

EGA ADITYAWAN

Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Komputer
pada
Departemen Ilmu Komputer

DEPARTEMEN ILMU KOMPUTER


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2014
Penguji : 1 Aziz Kustiyo, SSi MKom
2 Dr Imas S Sitanggang, SSi MKom
Judul Skripsi : Analisis Sentimen dengan Klasifikasi Naïve Bayes pada Pesan
Twitter Menggunakan Data Seimbang
Nama : Ega Adityawan
NIM : G64100099

Disetujui oleh

Ahmad Ridha, SKom MS


Pembimbing

Diketahui oleh

Dr Ir Agus Buono, MSi MKom


Ketua Departemen

Tanggal Lulus:
PRAKATA

Segala puji bagi Allah subhanahu wata’ala atas segala rahmat serta karunia-
Nya yang telah diberikan sehingga penulis mampu menyelesaikan karya ilmiah ini
dengan baik. Shalawat dan salam semoga senantiasa tercurah kepada Nabi
Muhammad shallallahu ‘alaihi wasallam serta kepada keluarganya, sahabatnya,
serta para pengikutnya yang selalu berpegang kepada Al-Quran dan As-Sunnah.
Terima kasih penulis ucapkan kepada Bapak Ahmad Ridha, SKom MS
selaku pembimbing yang telah memberikan banyak ide, saran, bantuan, serta
dukungan sampai selesainya karya ilmiah ini, serta yang telah berkenan menjadi
penguji Bapak Aziz Kustiyo, SSi MKom dan Ibu Dr Imas S Sitanggang, SSi
MKom yang telah banyak memberikan saran. Ungkapan terima kasih juga
disampaikan kepada ayah, ibu, adik, serta seluruh keluarga, atas doa dan kasih
sayangnya. Terima kasih juga disampaikan kepada Ahmad Thoriq Abdul Aziz
atas bantuan diberikannya semua sumberdaya pada penelitian sebelumnya serta
rekan-rekan seperjuangan di Ilmu Komputer IPB angkatan 47 atas segala
kebersamaan, bantuan, dukungan, serta kenangan bagi penulis selama menjalani
masa studi.
Semoga karya ilmiah ini bermanfaat.

Bogor, Agustus 2014

Ega Adityawan
DAFTAR ISI

DAFTAR TABEL x
DAFTAR LAMPIRAN x
PENDAHULUAN 1
Latar Belakang 1
Tujuan Penelitian 1
Manfaat Penelitian 2
Ruang Lingkup Penelitian 2
METODE 2
Pengumpulan Data 3
Penentuan Sentimen Secara Manual 3
Normalisasi Teks 3
Evaluasi Normalisasi Teks 3
Pembuangan Stopword 4
K-fold Cross Validation 4
Klasifikasi Menggunakan Naïve Bayes 4
EvaluasiHasil Klasifikasi 6
Lingkungan Implementasi 6
HASIL DAN PEMBAHASAN 6
Pengumpulan Data 6
Penentuan Sentimen Secara Manual 6
Normalisasi Teks 7
Evaluasi Normalisasi Teks 7
Pembuangan Stopword 7
K-fold Cross Validation 8
Klasifikasi Menggunakan Naïve Bayes 9
KESIMPULAN DAN SARAN 11
Kesimpulan 11
Saran 12
DAFTAR PUSTAKA 12
RIWAYAT HIDUP 22
DAFTAR TABEL
1 Hasil 3-Fold Cross Validation untuk entitas XL 8
2 Hasil 3-Fold Cross Validation 9
3 Confusion matrix untuk hasil klasifikasi menggunakan naïve Bayes
model Multinomial 11
4 Confusion matrix untuk hasil klasifikasi menggunakan naïve Bayes
model Bernoulli 11

DAFTAR LAMPIRAN
1 Contoh keyword pada pengumpulan data 13
2 Contoh tabel kamus kata dalam normalisasi teks 13
3 Daftar kata buang pada stoplist (Ridha et al. 2002) 14
4 Daftar kata tambahan normalisasi teks 15
5 Confusion matrix 3-fold cross validation terbaik 16
6 Contoh tabel kata dan frekuensi pada tiap sentimen 20
7 Contoh tabel kata dan peluang pada tiap sentimen 21
2
1

PENDAHULUAN

Latar Belakang

Jejaring sosial adalah struktur sosial yang terdiri atas elemen-elemen


individual atau organisasi. Jejaring sosial menunjukkan cara mereka berhubungan
karena kesamaan sosial, mulai dari mereka yang dikenal sehari-hari sampai
dengan keluarga (Barnes 1969). Terjadinya perubahan era teknologi membuat
banyak dikenalnya sosial media yang merupakan sebuah media untuk
bersosialisasi satu sama lain. Sosialisasi secara online yang memungkinkan
manusia untuk saling berinteraksi tanpa dibatasi ruang dan waktu (Saumi 2012).
Twitter merupakan salah satu social networking yang tersedia dan cukup populer.
Twitter berada di urutan 8 untuk situs umum yang sering dikunjungi (Alexa
2013).
Menurut data yang dirilis Twitter, pada tahun 2012 Indonesia menjadi
negara dengan pengguna Twitter terbesar kelima di dunia (Tempo 2012). Lalu
Jakarta juga didaulat sebagai penyumbang 2.4% tweet yang lalu lalang selama
bulan Juni 2012 berdasarkan 1058 miliar tweet publik yang diambil datanya
(Semiocast 2012). Data ini menjadi dasar untuk dilakukannya penelitian pada
Twitter.
Aziz (2013) telah melakukan analisis sentimen dengan proses klasifikasi
pada entitas yang sedang dibicarakan pada Twitter. Hasil klasifikasinya pun
menunjukkan akurasi 96%, namun akurasi setiap sentimennya sangat tidak
berimbang. Sentimen netral memiliki akurasi yang jauh lebih besar yaitu 97%
dibandingkan sentimen positif dan negatif yang masing-masing hanya 30% dan
0%. Hal ini disebabkan oleh jumlah data sentimen netral yang lebih banyak
dibanding sentimen lainnya. Jumlah data sentimen netral terdiri atas 13161 data
sedangkan sentimen positif dan negatif masing-masing terdiri atas 657 data dan
143 data.
Pada penelitian ini dilakukan pengambilan data ulang dengan data yang
lebih seimbang pada setiap sentimennya. Sebelum proses klasifikasi, dilakukan
tahap praproses yaitu normalisasi teks untuk mengubah kata yang tidak baku
menjadi kata baku dan pembuangan stopwords untuk membuang kata yang
kemunculannya tinggi tetapi tidak memiliki arti. Proses pengujiannya pun
menggunakan 3-fold cross validation agar didapat model terbaik pada data
tersebut.

Perumusan Masalah

Rumusan masalah dalam penelitian ini adalah adanya permasalahan


imbalanced data yang belum diperhatikan pada penelitian sebelumnya yang
dilakukan oleh Aziz (2013).

Tujuan Penelitian

Penelitian ini bertujuan mengklasifikasikan data tweet dengan jenis data


seimbang pada sentimen yang telah ditentukan menggunakan metode naïve Bayes
dengan model Multinomial dan Bernoulli.
2

Manfaat Penelitian

Penelitian ini diharapkan dapat membantu entitas yang ingin mengetahui


perbincangan tentang entitas tersebut di Twitter. Selain itu, penelitian ini
diharapkan dapat memberikan informasi mengenai perbincangan tersebut apakah
mengandung sentimen positif, negatif, atau netral.

Ruang Lingkup Penelitian

Ruang lingkup penelitian ini menggunakan data statis dari Twitter yang
telah dikumpulkan dan berbahasa Indonesia. Data tweet diklasifikasikan
menggunakan teknik naïve Bayes dengan 3 kelas sentimen, yaitu positif, negatif,
dan netral. Penelitian ini tidak menangani keberadaan entitas yang ambigu.

METODE
Metode yang digunakan dalam penelitian ini terdiri atas 8 tahap, seperti
pada Gambar 1. Tahap pertama adalah pengumpulan data. Data yang digunakan
berasal dari jejaring sosial Twitter. Setelah data didapatkan, langkah selanjutnya
ialah melakukan penentuan sentimen secara manual terhadap data tersebut.
Kemudian, data dianalisis untuk mendapatkan sentimennya. Namun, sebelum
dilakukan analisis sentimen, data harus masuk ke dalam tahap praproses terlebih
dahulu, yaitu normalisasi dan pembuangan stopwords. Normalisasi teks bertujuan
mengubah tweet yang awalnya sulit dimengerti menjadi tweet yang mudah
dimengerti. Untuk mengetahui tingkat efektivitas proses normalisasi teks ini,
dilakukan evaluasi terhadap hasil normalisasi. Tahap praproses selanjutnya adalah
pembuangan stopwords, pada proses ini kata-kata yang kemunculannya tinggi dan
dianggap tidak memiliki makna akan dihilangkan. Setelah itu dilakukan k-fold
cross validation dengan tujuan mendapatkan model data latih terbaik. Pada bagian
klasifikasi sentimen digunakan klasifikasi naïve Bayes model Multinomial dan
Bernoulli. Tahap terakhir adalah evaluasi hasil klasifikasi.

2. Penentuan 3. Normalisasi Teks


1. Pengumpulan
Sentimen Secara
Data
Manual

6. K-fold Cross 5. Pembuangan 4. Evaluasi


Validation Stopword Normalisasi Teks

7. Klasifikasi 8. Evaluasi Hasil


Menggunakan Klasifikasi
Naïve Bayes

Gambar 1 Metode penelitian


3

Pengumpulan Data

Tahap pertama adalah pengumpulan data. Data berupa kumpulan tweet yang
belum terklasifikasi namun sudah diekstraksi berdasarkan keyword yang
ditentukan. Penentuan keyword (contoh pada Lampiran 1), ditentukan sesuai
entitas yang ingin di ambil datanya. Data diperoleh selama periode 1 Februari
2014 sampai dengan 20 April 2014. Pengambilan data ini memanfaatkan Twitter
API dan dilakukan secara real time menggunakan aplikasi yang telah dibuat oleh
Hawksey (2013). Untuk menghindari adanya tweet spam digunakan juga batas
minimal follower suatu akun yaitu 200. Tiap tweet dilengkapi dengan atribut
seperti identitas, sentimen, topik, isi pesan, keyword, nama pengguna Twitter,
nama entitas, tanggal, dan identitas editor.

Penentuan Sentimen Secara Manual

Penentuan sentimen secara manual adalah pengelompokan data pada


sentimen yang telah ditentukan sebelumnya secara manual agar dapat digunakan
untuk kebutuhan klasifikasi. Data tweet dikelompokkan menurut pendapat dari
peneliti sehingga pengelompokannya bersifat subjektif.

Normalisasi Teks

Tweet hasil pengumpulan data selanjutnya dinormalisasi. Hal ini bertujuan


mempermudah proses analisis sentimen terhadap entitas-entitas tadi mengingat
banyaknya kata yang tidak baku didalam tweet seperti singkatan, tanggal, jumlah
mata uang, dan akronim. Kata yang tidak baku memiliki kecenderungan yang
lebih tinggi dalam hal ambiguitas interpretasinya atau pelafalannya dibanding kata
yang sudah baku. Misalnya, kata kamu bisa ditulis dengan kata lo, km ,kmu, anda,
dan masih banyak lagi. Jika tidak dilakukan normalisasi, kata-kata tersebut akan
berdiri sendiri. Padahal, seharusnya kata-kata tersebut terkelompokkan ke dalam
konteks yang sama, yaitu saya. Kasus semacam ini dapat diselesaikan dengan
normalisasi teks dengan cara mengganti kata yang tidak baku dengan kata yang
sesuai konteksnya (Sproat et al. 2001). Proses normalisasi teks dilakukan
menggunakan penggantian pada kata yang tidak baku menjadi kata baku dengan
sistem yang telah dibuat oleh Aziz (2013). Sebelum dilakukan penggantian
dengan kata baku, harus dibuat terlebih dahulu sebuah kamus yang berisi kata
yang tidak baku berikut kata bakunya (contoh pada Lampiran 2).

Evaluasi Normalisasi Teks

Tweet hasil normalisasi teks dievaluasi secara manual. Evaluasi ini bertujuan
menghitung tingkat akurasi dari hasil normalisasi. Proses evaluasi dilakukan
terhadap 1000 tweet yang diambil secara acak mengingat banyaknya jumlah tweet
yang ada.
4

Pembuangan Stopword

Tahap ini dilakukan dengan menghilangkan kata yang termasuk dalam


daftar kata buang pada data tweet setelah selesai dilakukan proses
normalisasi teks. Kata buang adalah kata yang tingkat kemunculannya tinggi
namun tidak memiliki arti untuk proses klasifkasi. Daftar kata buang didapat
dari penelitian Ridha et al. (2004). Daftar kata buang dapat dilihat pada
Lampiran 3.

K-fold Cross Validation

Pada proses selanjutnya dilakukan proses k-fold cross validation yaitu


dengan membagi dataset sebanyak k subset data yang jumlahnya sama besar
dan melakukan uji coba dengan satu subset data menjadi data uji dan subset
data lainnya menjadi data latih (Meira dan Zaki 2014). Proses fold dilakukan
hingga setiap subset data tepat satu kali menjadi data uji. Pada penelitian ini,
data dibagi menjadi 3 subset data dengan jumlah data masing-masing 60
data setiap entitas per sentimennya. Pengujian pada proses ini menggunakan
metode naïve Bayes dengan model Multinomial dan Bernoulli. Nantinya
pasangan subset terbaik dari hasil proses ini akan digunakan sebagai data
latih untuk proses klasifikasi pada data yang tersisa pada setiap entitas per
sentimennya.

Klasifikasi Menggunakan Naïve Bayes

Proses klasifikasi dilakukan terhadap data tweet hasil praproses untuk


mengklasifikasikan entitas berdasarkan respon terhadap entitas tersebut atau
analisis sentimen. Sentimen pada penelitian ini terdiri atas 3 kelas, yaitu
positif, negatif, dan netral. Tweet yang termasuk di dalam sentimen positif
contohnya: @BeresNews: Masyarakat Ingin Presiden Tegas Seperti
Prabowo. Sentimen netral contohnya: @erikadrenata: Pagi pak prabowo.
Sentimen negatif contohnya: Hubungan Baik Indonesia-AS Terancam
Memburuk Jika Prabowo Jadi Presiden. Klasifikasi ini menggunakan sistem
yang telah dibuat oleh Aziz (2013). Sebelum dilakukan klasifikasi, data
dibagi 2 menjadi data latih dan data uji. Data latih digunakan untuk memberi
pengetahuan kepada sistem tentang ciri-ciri suatu sentimen. Untuk
mengambil ciri-ciri suatu sentimen, dilakukan proses ekstraksi fitur yang di
dalamnya terdapat pembobotan kata berdasarkan kemunculan kata. Data uji
diperoleh dari data yang tersisa pada proses sebelumnya.
Fungsi klasifikasi yang digunakan adalah fungsi klasifikasi dengan
basis peluang yaitu naïve Bayes dengan model Multinomial dan model
Bernoulli. Penggunaan klasifikasi naïve Bayes dikarenakan prosesnya yang
sederhana dan mudah diaplikasikan pada berbagai keadaan serta tidak akan
mengalami kegagalan secara keseluruhan pada hasilnya (Manning et al.
2008). Pada model Multinomial, setiap data uji dihitung frekuensi kata t
pada tiap data latih sentimen c (Tct) dan jumlah kata unik pada data uji (N).
Kemudian dari data latih, jumlah kata (∑t’€vTct’) dan jumlah vocabulary (B)
dihitung. vocabulary (B) merupakan jumlah kata pada keseluruhan data
latih. Setelah frekuensi kata, jumlah kata, dan jumlah vocabulary
5

didapatkan, akan dihitung nilai peluang untuk kata t masuk pada sentimen c
(P(t|c)). Perhitungan peluang ini dapat bernilai nol apabila frekuensi kata pada
data uji di sentimen c (Tct) bernilai nol. Untuk mengatasi masalah ini, dimasukkan
koreksi seperti Laplace smoothing di semua probabilitas perkiraan sehingga
peluang tidak bernilai nol (Manning et al. 2008). Perhitungan peluang model
Multinomial dapat dilihat pada persamaan berikut:

Tct+1 (1)
P tc =
( t'∈V Tct')+B

Setelah didapatkan nilai peluang tiap kata, selanjutnya adalah mengalikan


nilai peluang tiap kata dengan memberikan pangkat (n) sesuai nilai frekuensi
kemunculan kata tersebut pada data uji. Hasilnya dikalikan kembali dengan nilai
peluang tiap sentimen (P(c)) (Manning et al. 2008). Nilai peluang tiap sentimen
(P(c)) dihitung dengan cara membagi jumlah data latih tiap sentimen dengan
jumlah data latih keseluruhan sentimen. Perhitungan akhir peluang kalimat pada
sebuah sentimen dapat dilihat pada Persamaan 2. Laplace smoothing digunakan
agar tidak ada kata uji yang berpeluang nol. Hasil yang diambil adalah hasil
perkalian yang terbesar pada setiap sentimennya.

N (2)
n
P cd = P t c *P c
i=1

Sementara itu, pada model Bernoulli, setiap data uji dihitung nilai peluang
tiap kata terhadap masing-masing sentimen. Perbedaannya dengan model yang
pertama yaitu perhitungan peluang menggunakan jumlah data yang mengandung
kata t (Tct), bukan frekuensi kemunculan kata t (Manning et al. 2008). Selain itu,
jika model Multinomial menggunakan jumlah kata dan jumlah vocabulary, model
Bernoulli menggunakan jumlah data latih tiap sentimen (Tc) dan jumlah sentimen
(∑c). Peluang tiap kata dihitung menggunakan persamaan:

Tct+1 (3)
P tc =
Tc+∑c

Setelah peluang tiap kata didapatkan, nilai dari hasil perkalian invers untuk
tiap peluang kata pada data latih selain kata pada data uji dihitung. Misalnya ada
sekumpulan kata pada data latih D dan sekumpulan kata pada data uji T.
Selanjutnya dicari kata-kata pada data latih D yang independen dengan kata-kata
pada data uji T. Dari kata-kata tersebut, diambil nilai peluang kata (dalam hal ini
diberi simbol P(t’|c)) dan jumlah kata (M) (Manning et al. 2008). Nilai peluang
kalimat terhadap suatu sentimen dihitung dengan persamaan:

N M

P cd = P t c *P c * (1-P(t' |c)) (4)


i=1 i=1
6

Evaluasi Hasil Klasifikasi

Tahap terakhir adalah evaluasi untuk mengetahui tingkat akurasi dari


hasil klasifikasi data pada data uji. Perhitungan tingkat akurasi dilakukan
dengan membandingkan antara hasil klasifikasi menggunakan metode naïve
Bayes dan klasifikasi secara manual. Evaluasi ini menggunakan sistem yang
telah dibuat oleh Aziz (2013).

Lingkungan Implementasi

Lingkungan implementasi yang digunakan sebagai berikut:


Perangkat lunak:
 Microsoft Windows 7 Professional 64bit,
 Notepad++ 6.4.5, PHP, dan
 XAMPP 3.1.0 beserta MySQL 3.5.2.2
Perangkat keras:
 prosesor Intel® Core™ i5-2350M CPU @ 2.30GHz, memori 8 GB, dan
 hardisk 500 GB

HASIL DAN PEMBAHASAN

Pengumpulan Data

Pada tahap pengumpulan data diperoleh 1997 data tweet yang terdiri
dari 8 entitas dengan 8 atribut setiap datanya dan menggunakan 41 keyword
yang berbeda untuk pencarian. Setiap entitas per sentimennya terdiri atas
sekitar 80-90 data. Dari atribut yang didapat hanya beberapa atribut saja
yang digunakan, yaitu id sebagai pengenal tweet, isi tweet sebagai input
system, dan keyword sebagai penciri dari entitas. Data dikumpulkan dengan
melakukan penyaringan pada isi tweet-nya menggunakan keyword tertentu.
Sebagai contoh untuk melakukan penyaringan data pada entitas 'Prabowo',
peneliti menggunakan keyword 'Prabowo'. Nantinya tweet yang
mengandung kata 'Prabowo' akan tersaring secara otomatis dan masuk
kedalam database.

Penentuan Sentimen Secara Manual

Tahap penentuan sentimen secara manual dilakukan untuk menentukan


sentimen pada setiap tweet yang tersaring dikarenakan data tweet belum
terklasifikasi secara otomatis. Tidak semua tweet yang didapat secara real
time diberikan sentimen, ada beberapa tweet yang cenderung ambigu
sehingga dapat mempengaruhi akurasi dari proses klasifikasi. Contoh tweet
yang ambigu: @budhi Sebenernya Aku setuju pd prabowo namun tdk setuju
pada sikapnya. Tweet ambigu tidak dimasukkan karena tidak termasuk pada
ruang lingkup penelitian ini.
7

Normalisasi Teks

Banyak tweet yang mengandung kata tidak baku. Kata yang tidak baku
dapat berupa pengulangan karakter sehingga sulit dikenali maupun singkatan-
singkatan kata, contohnya @indosatcare knapa sinyal hp ku sdh 3 hr ini tidak
ada?. Kasus pengulangan karakter perlu dilakukan penghilangan karakter yang
berulang. Penghilangan karakter hanya dilakukan pada perulangan karakter teks,
bukan karakter angka, karena jika dilakukan pada angka justru membuat tweet
semakin sulit dipahami atau memiliki arti yang berbeda. Contohnya pada kasus
perulangan angka nomor telepon 0011 yang angka 1 dan 0 pada nomer telepon
tersebut tidak akan dilakukan penghilangan. Pada kasus singkatan-singkatan kata
yang tidak baku, dibuat sebuah kamus yang berisi kata yang tidak baku beserta
kata bakunya. Proses normalisasi melalui 2 tahap, pertama adalah menghilangkan
semua tanda baca seperti titik, tanda koma, dan tanda tanya. Setelah itu dilakukan
proses penggantian kata tidak baku yang ada di tweet dengan kata baku
berdasarkan kamus yang sebelumnya sudah di siapkan. Kata yang dianggap tidak
baku akan digantikan oleh kata yang baku secara otomatis oleh sistem. Kamus
yang digunakan diambil dari penelitian Aziz (2013) dengan melakukan
penambahan beberapa kata (Lihat Lampiran 4) disebabkan oleh karena adanya
perbedaan entitas yang digunakan pada penelitian ini. Dalam normalisasi teks juga
terdapat beberapa kasus kata yang tidak tertangani karena kata yang tidak baku
memiliki makna lebih dari satu, contohnya: bet, bkn, bwt, gws, dah, dan masih
banyak lagi. Kata bet bisa berarti banget, namun bisa juga berarti nama panggilan
seseorang.

Evaluasi Normalisasi Teks

Untuk mengetahui hasil normalisasi teks, dilakukan evaluasi secara manual.


Sebanyak 1000 tweet diambil sebagai sampel secara acak dan dilakukan proses
evaluasi dengan membandingkan tweet sebelumnya. Evaluasi dianggap berhasil
jika tweet hasil normalisasi lebih mudah dimengerti secara subjektif. Setiap tweet
yang berhasil akan diberikan keterangan 1 dan 0 untuk yang lainnya. Dari total
1000 tweet ada 826 yang memiliki nilai 1 dengan tingkat akurasi 82.6 %.

Pembuangan Stopword

Tahap praproses selanjutnya yaitu pembuangan stopword. Pada tahap ini


suatu data tweet akan dikenali setiap kata yang terkandungnya, bila ada suatu kata
yang termasuk dalam daftar kata buang maka kata tersebut akan dihilangkan.
Contoh pada tweet "Kenapa XL ini sangat menyebalkan @XLcare". Tweet
tersebut dikenali bahwa kata kenapa, sangat, dan ini termasuk dalam daftar kata
buang sehingga akan dihilangkan. Setelah dihilangkan data tweet tersebut akan
menjadi XL menyebalkan @XLcare.
8

K-fold Cross Validation

Setelah itu dilakukan pengujian k-fold croos validation untuk 60 data setiap
entitas per sentimennya. Setiap kelompok data akan tepat satu kali menjadi data
uji dan kelompok lainnya menjadi data latih. Data dibagi menjadi 3 subset data
dan diberi label A, B, dan C dengan jumlah masing-masing sebanyak 60 data yang
terdiri dari 20 data sentimen positif, 20 data sentimen negatif, dan 20 data
sentimen netral. Ada 3 tahap pada proses ini, pertama subset data A dan B akan
menjadi data latih sedangkan subset data C akan menjadi data uji. Kedua data
kelompok B dan C menjadi data latih sedangkan data kelompok A menjadi data
uji. Terakhir data kelompok A dan C menjadi data latih sedangkan data kelompok
B menjadi data uji. Ketiga tahap proses tersebut dilakukan terpisah masing-masing
untuk setiap entitas per sentimennya agar didapat model terbaik untuk setiap
entitas per sentimennya. Setelah semua selesai, didapatkan pasangan subset data
yang terbaik dari proses ini. Contoh proses ini sebagai berikut, pada entitas XL
dikelompokkan data A, B, dan C. Setelah itu, dilakukan pengujian pada data
tersebut. Hasil klasifikasi untuk kedua modelnya pada setiap kelompok data untuk
entitas XL dapat dilihat pada Tabel 1.
Tabel 1 Hasil 3-Fold Cross Validation untuk entitas XL
Multinomial Bernoulli
Perlakuan Akurasi Perlakuan Akurasi
Latih (A dan B) 43.33% Latih (A dan B) 55%
Uji (C) Uji (C)
Latih (C dan B) 43.33% Latih (C dan B) 46.67%
Uji (A) Uji (A)
Latih (A dan C) 50% Latih (A dan C) 60%
Uji (B) Uji (B)

Model Multinomial pasangan kelompok data A dan C memiliki nilai


akurasi lebih besar dibandingkan pasangan kelompok data lainnya sebagai data
latih. Begitu juga untuk model Bernoulli, pasangan kelompok data A dan C juga
memiliki nilai akurasi yang lebih besar dibandingkan pasangan kelompok data
lainnya sehingga kelompok A dan C akan dijadikan sebagai data latih untuk
entitas XL pada proses klasifikasi model Multinomial dan Bernoulli untuk data
baru. Tidak tertutup kemungkinan bahwa suatu entitas memiliki kelompok data
latih yang berbeda untuk digunakan pada kedua modelnya. Untuk hasil K-Fold
seluruh entitas beserta nilai akurasi terbaiknya dan pasangan kelompok datanya
adalah seperti pada Tabel 2 dan confusion matrix pasangan terbaiknya dapat
dilihat pada Lampiran 5.
9
Tabel 2 Hasil 3-Fold Cross Validation

Multinomial Bernoulli
Entitas Nilai Kelompok Nilai Kelompok
Akurasi Akurasi
XL 55% A dan C 60% A dan C
TSEL 65% B dan C 80% A dan C
Indosat 70% A dan B 68.33% A dan C
ARB 75% B dan C 68.33% A dan C
HR 85 % A dan C 98.33 % A dan C
Jokowi 65% B dan C 61.67% B dan C
Prabowo 85% A dan C 81.67% A dan C
Wiranto 85% A dan C 65% B dan C

Seperti ditunjukan oleh Tabel 2 dan Lampiran 5, data tweet yang diduga
bernilai positif banyak yang hasil klasifikasinya menjadi negatif begitu juga
sebaliknya. Hal ini disebabkan oleh belum diperhatikannya penggantian frase
pada kata sehingga saat kata tersebut terkena proses stoplist teks akan berubah
maknanya pada kata yang sebaliknya. Contohnya pada tweet @kurnia Pak
Wiranto orang yang tidak layak menjadi presiden. Setelah mengalami
pemotongan stopword tweet menjadi @kurnia Pak Wiranto orang layak menjadi
presiden sehingga tweet yang diduga sentimen negatif, hasil klasifikasinya
sentimen positif.

Klasifikasi Menggunakan Naïve Bayes

Data latih berjumlah 960 yang terdiri atas 320 sentimen positif, 320
sentimen negatif, dan 320 sentimen netral. Data uji berjumlah 557 yang terdiri
dari 203 sentimen positif, 177 sentimen negatif, dan 177 sentimen netral. Data uji
maupun data latih telah diwakili oleh setiap entitas per sentimennya yang
digunakan pada penelitian ini. Data tweet yang tersisa dari proses k-fold cross
validation terdiri atas sekitar 20-30 data dianggap sebagai data baru dan akan
menjalani proses klasifikasi sebagai data uji. Proses klasifikasi mengunakan naïve
Bayes model Multinomial dan model Bernouli, dengan data latih untuk setiap
entitasnya didapatkan dari proses k-fold croos validation yang telah dilakukan.
Model pertama yaitu model Multinomial. Model Multinomial menghitung
nilai peluang setiap data uji terhadap tiap sentimen dengan mengambil nilai
peluang terbesar. Misalnya, sebuah data memliki peluang terhadap sentimen
positif sebesar 0.7, sentimen negatif sebesar 0.2, dan sentimen netral sebesar 0.5.
Hal ini menunjukkan bahwa data masuk ke dalam sentimen positif. Data uji dalam
penelitian ini berupa kalimat sehingga harus dipotong menjadi kata dan dihitung
jumlah kata yang unik atau tidak sama (N). Dari tiap kata tersebut, dihitung nilai
frekuensi kemunculannya pada keseluruhan data latih di tiap sentimen (Tct) dan
frekuensi kemunculannya pada kalimat (n). Untuk mempermudah proses
perhitungan frekuensi kemunculan kata pada keseluruhan data latih, dilakukan
proses training terhadap data latih. Training ini berupa pembuatan suatu tabel
yang berisi kata beserta frekuensi kemunculannya di dalam data latih (contoh pada
Lampiran 6). Selanjutnya, jumlah kata pada data latih masing-masing sentimen
10

dihitung (Tct'). Total kata pada data latih sentimen positif sebanyak 7065,
sentimen negatif sebanyak 3625, dan sentimen netral sebanyak 10060. Pada
keseluruhan data latih, dihitung juga jumlah kata yang unik atau vocabulary (B)
yang dalam penelitian ini berjumlah 3066. Setelah nilai Tct, Tct', dan B
didapatkan, maka nilai peluang suatu kata terhadap suatu sentimen (P(t|c)) dapat
dihitung menggunakan Persamaan 1.
Setelah nilai peluang tiap kata didapatkan, selanjutnya dicari jumlah data
latih keseluruhan suatu sentimen dan jumlah data latih masing-masing sentimen.
Nilai peluang kalimat (d) terhadap suatu sentimen (c) dihitung menggunakan
Persamaan 2. Penempatan suatu data ke dalam suatu sentimen dilakukan
berdasarkan nilai peluang P(c|d). Nilai P(c|d) terbesar menunjukkan bahwa
peluang data untuk masuk ke dalam sentimen tersebut paling besar atau paling
memungkinkan. Rata-rata waktu eksekusi yang dibutuhkan dalam proses
klasifikasi menggunakan naïve Bayes model Multinomial adalah sebesar 4.30
detik per tweet.
Model kedua yaitu model Bernoulli. Model Bernoulli memiliki konsep dasar
yang sama dengan model Multinomial. Perbedaannya terletak pada proses
perhitungan peluang pada model ini menggunakan jumlah dokumen yang
mengandung suatu kata. Langkah pertama, setiap data uji dipotong menjadi kata-
kata. Tiap kata dihitung banyaknya dokumen yang mengandung kata tersebut
untuk setiap sentimen (Tct). Kemudian, total dokumen data latih tiap sentimen
(Tc) dan jumlah sentimen (∑c) dihitung juga. Selanjutnya, nilai peluang tiap kata
dihitung dengan Persamaan 3.
Untuk mempermudah perhitungan nilai peluang tiap kata, dilakukan proses
training seperti pada model Multinomial. Perbedaannya dengan model
Multinomial, pada training kali ini dilakukan pembuatan tabel yang berisi kata,
nilai peluang, dan sentimen (contoh pada Lampiran 7). Perhitungan nilai peluang
kata didapatkan dari tabel jika ada atau menggunakan Persamaan 3 jika tidak
dengan nilai Tct = 0. Setelah nilai peluang tiap kata didapatkan, dihitung nilai dari
hasil perkalian invers untuk tiap peluang kata pada data latih selain kata pada data
uji. Misalnya, ada sekumpulan kata pada data latih D dan sekumpulan kata pada
data uji T. Selanjutnya dicari kata-kata pada data latih D yang independen dengan
kata-kata pada data uji T. Dari kata-kata tersebut diambil nilai peluang kata
(dalam hal ini diberi simbol P(t’|c)) dan jumlah kata (M).
Nilai peluang kalimat terhadap suatu sentimen dihitung menggunakan
Persamaan 4. Rata-rata waktu eksekusi yang dibutuhkan dalam proses klasifikasi
menggunakan naïve Bayes model Bernoulli adalah sebesar 3.03 detik per tweet.

Evaluasi Hasil Klasifikasi

Tahap terakhir adalah evaluasi hasil dari klasifikasi menggunakan naïve


Bayes. Evaluasi bertujuan mengetahui tingkat akurasi klasifikasi. Data tidak
terklasifikasi secara benar jika hasil sentimennya berbeda dari sentimen yang
seharusnya. Total hasil klasifikasi yang salah dari model Multinomial sebanyak
187 dari 557 sehingga tingkat akurasi sebesar 66.42%. Hasil evaluasi model ini
dapat dilihat pada Tabel 3 dengan akurasi sentimen negatif sebesar 77.4%,
sentimen positif sebesar 58.62%, dan sentimen netral sebesar 64.40%. Sementara
itu, untuk model Bernoulli total hasil klasifikasi yang salah sebanyak 161 dari 557
11

sehingga tingkat akurasi sebesar 71.09%. Hasil evaluasi model ini dapat dilihat
pada Tabel 4 dengan tingkat akurasi sentimen positif sebesar 64.53%, sentimen
negatif sebesar 65.53%, dan sentimen netral sebesar 84.18%.

Tabel 3 Confusion matrix untuk hasil klasifikasi menggunakan


naïve Bayes model Multinomial

Dugaan
Positif Negatif Netral
Hasil
Positif 119 18 13
Negatif 29 137 50
Netral 55 22 114

Tabel 4 Confusion matrix untuk hasil klasifikasi menggunakan


naïve Bayes model Bernoulli

Dugaan
Positif Negatif Netral
Hasil
Positif 131 13 11
Negatif 20 116 17
Netral 52 48 149

Kebanyakan data yang diduga pada sentimen positif dan negatif justru
menghasilkan sentimen netral pada hasil klasifikasinya. Contohnya pada tweet
@AndiJ pilih mantan menteri ekonomi pak hatta rajasa presiden. Tweet ini
termasuk dalam sentimen positif tetapi hasil klasifikasinya sentimen netral.
Kesalahan tersebut dikarenakan kata menteri banyak terdapat pada sentimen netral
seperti pada contoh tweet @Gerindra Pak prabowo bertemu menteri pertanian
pagi atau @siddikak Hari ini Pak Jokowi mendatangi menteri pekerjaan umum.
Hal ini terjadi karena suatu kata pada entitas bisa berbeda makna dientitas lainnya.

KESIMPULAN DAN SARAN

Kesimpulan

Simpulan dari penelitian ini adalah sistem pengklasifikasian data tweet


menggunakan naïve Bayes pada data seimbang belum menunjukan akurasi yang
cukup baik yaitu 66.42% untuk model Multinomial dan 71.09% untuk model
Bernoulli. Namun jika dilihat dari akurasi setiap sentimennya sudah cukup baik.
12

Selisih akurasi setiap sentimennya tidak terlalu besar dan juga tidak ada satu
sentimen yang lebih dominan secara mutlak dibanding sentimen lainnya.

Saran

Saran untuk penelitian selanjutnya adalah menggunakan metode klasifikasi


lainnya dan memperhatikan proses pemecahan frase kata pada data tweet.

DAFTAR PUSTAKA

[Alexa]. 2013. Top 500 sites on the web [internet]. [diunduh 2014 januari 1].
Tersedia dari: http://www.alexa.com/topsites.
Aziz ATA. 2013. Sistem pengklasifikasian entitas pada pesan Twitter
menggunakan ekspresi regular dan Naïve Bayes [skripsi]. Bogor (ID):
Institut Pertanian Bogor.
Barnes JA. 1969. Graph theory and social networks: a technical comment on
connectedness and connectivity. Sociology. 3(2): 215-232.
Hawksey M. 2013. Twitter Archiving Google Spreadsheet TAGS v5 [internet].
[diunduh 2014 Januari 21]. Tersedia dari:
http://mashe.hawksey.info/2013/02/twitter-archive-tagsv5/.
Manning CD, Raghavan P, Schütze H. 2008. An Introduction to Information
Retrieval. Cambridge (UK): Cambridge University Press.
Meira JR, Zaki MJ. 2014. Data Mining and Analysis Fundamental Concepts
and Algorithms. Cambridge (UK): Cambridge University Press.
Ridha A, Adisantoso J, Bukhari F. 2004. Pengindeksan otomatis dengan
istilah tunggal untuk dokumen berbahasa Indonesia. Prosiding Seminar
Nasional Ilmu Komputer dan Teknologi Informasi V, SNIKTI 2014; [Waktu
dan tempat pertemuan tidak diketahui]. hlm 328-335.
Saumi RR. 2012. Apa itu sosial media [internet]. [diunduh 2014 April 24].
Tersedia dari: http://www.unpas.ac.id/apa-itu-sosial-media/.
[Semiocast]. 2012. Top 20 Cities By Number Of Tweets [Internet]. [diunduh
2013 Des 20]. Tersedia dari:
http://semiocast.com/publications/2012_07_30_Twitter_reaches_half_a_bil
lion_accounts_140m_in_the_US.
Sproat S, Black AW, Chen S, Kumar S, Ostendorf M, Richards C. 2001.
Normalization of non-standard words. Computer Speech and Language.
15:287-333.doi:10.1006/csla.2001.0169.
[Tempo]. 2012. Indonesia Pengguna Twitter Terbesar Kelima Dunia
[internet]. [diunduh 2013 Des 1]. Tersedia dari:
http://www.tempo.co/read/news/2012/02/02/07238132.
13

Lampiran 1 Contoh keyword pada pengumpulan data

No Keyword Entitas
1 xlcare xl
2 xl123 xl
3 indosat indosat
4 indosatcare indosat
5 telkomsel tsel
6 telkomselflash tsel
7 tselbb tsel
8 prabowo prabowo
9 jokowi jokowi
10 wiranto wiranto
11 hatta rajasa hatta rajasa
12 arb arb
13 aburizal bakrie arb
14 hr hatta rajasa

Lampiran 2 Contoh tabel kamus kata dalam normalisasi teks

No Kata tidak baku Kata baku


1 bgmn bagaimana
2 gakjadi tidak jadi
3 kesane kesannya
4 makin2 makin makin
5 njupuk mengambil
6 nelepon menelpon
7 mangis manggis
8 ngeliatin memperlihatkan
9 sdg sedang
10 buanget banget
11 mantabh mantap
12 dkt dekat
13 mperpanjang memperpanjang
14 maning lagi
15 kemenkes Kementerian Kesehatan
16 ngebo tidur
17 smua semua
18 mrah2-marah marah
19 day hari
20 katany katanya
14

Lampiran 3 Daftar kata buang pada stoplist (Ridha et al. 2002)


ada biasanya kalau menunjukkan sedang seusai
adalah bila kalian menurut sedangkan sewaktu
adanya bilamana kami mereka sedikit si
adapun buat kamu merupakan segera siapa
aduh bukan karena meski sehabis siapakah
agar dalam kata meskipun sehingga siapapun
ah dan katanya misalnya sehubungan suatu
akan dapat kau mungkin sejak sudah
aku dari ke namun sejumlah supaya
alih-alih daripada kebanyakan nanti sekarang tak
anda dekat kecuali nyaris sekeliling tanpa
andai demi kemanakah oleh seketika tapi
antar demikian kemudian pada sekitar tatkala
antara dengan kenapa padahal sekonyong-konyong telah
apa depan kenapakah para selagi tengah
apakah di kepada pasti selain tentang
apalagi dia ketika pelbagai selalu tentu
asalkan dikatakan ketimbang per selama tentunya
atas dilakukan kini peri selanjutnya tergolong
atau dkk kita perihal selesai terhadap
ataupun dll lagi pinggir seluruh terjadi
bagai dsb lain pula seluruhnya terkadang
bagaikan engkau lain-lain pun semakin terlalu
bagaimana hal lainnya saat semenjak terlebih
bagaimanakah hamper lalu saja sementara termasuk
bagaimanapun hanya lebih sambil semua ternyata
bagi harus lepas sampai semuanya tersebut
bahkan hingga lewat samping seorang tertentu
bahwa ia maka sang sepanjang tetap
balik ialah makin sangat seperti tetapi
banyak ini manakala sangatlah sepertinya tiap
barangkali itu masih saya seputar tiba-tiba
bawah iya masing-masing seakan seraya tidak
beberapa jadi masing-masingnya seakan-akan sering ujar
begini jangan maupun seantero seringkali ujarnya
begitu jarang melainkan sebab serta umumnya
belakang jauh melakukan sebabnya sesuai untuk
belum jika melalui sebagai sesuatu walau
berapa jikalau memang sebagaimana sesudah walaupun
berbagai juga mengatakan sebagainya sesudahnya ya
bersama jumlah mengenai sebelum sesungguhnya yaitu
beserta justru menjadi sebelumnya setelah yakni
betapa kadang menjelang sebuah seterusnya yang
biar kadang-kadang menuju secara setiap
15

Lampiran 4 Daftar kata tambahan normalisasi teks

No Kata tidak baku Kata baku


1 ARB Aburizal Bakrie
2 Aburiezal Aburizal Bakrie
3 HR Hatta Rajasa
4 Hatta Hatta Rajasa
5 Korup Korupsi
6 Berpikir Berfikir
7 UUD Undang-undang
8 Praturan Peraturan
9 Syart Syarat
10 Aturn Aturan
11 RI-1 Presiden
12 Ekonom Ekonomi
13 Pemimpn Pemimpin
14 Kenerja Kinerja
15 Daerh Daerah
16 rakyt Rakyat
17 Mekanism Mekanisme
18 Rpt Rapat
19 Brtemu Bertemu
20 Sanbutan Sambutan
21 Kampoeng Kampung
22 Prospk Prospek
23 Ungulan Unggulan
24 Mentri Menteri
25 N Dan
26 Sopir Supir
27 Calek Caleg
28 Rlawan Relawan
29 Nyoblos Coblos
30 Plih Pilih
31 Greget Cocok
32 Jeblok Turun
33 Kesemsem Senang
34 Amandemn Amandemen
35 berkwalitas berkualitas
36 Nyalonin Calon
37 Bertgs Bertugas
38 Andln Andalan
16

Lampiran 5 Confusion matrix 3-fold cross validation terbaik


Entitas XL

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 10 3 6

Negatif 6 11 2

Netral 4 6 12

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 15 4 5
Negatif 3 13 7

Netral 2 3 8

Entitas TSEL

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 16 0 4

Negatif 1 18 13

Netral 3 2 3

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 18 0 1

Negatif 0 18 7

Netral 2 2 12
17

Lanjutan
Entitas Indosat

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 10 0 3

Negatif 4 17 2

Netral 6 3 15

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 9 1 1
Negatif 0 14 1

Netral 11 5 18

Entitas ARB

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 13 2 1

Negatif 4 17 3

Netral 3 1 16

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 12 6 1

Negatif 6 13 3
Netral 2 1 16
18

Lanjutan
Entitas HR

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 16 0 0

Negatif 3 18 3

Netral 1 2 17

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 19 0 0
Negatif 0 20 0

Netral 1 0 20

Entitas Jokowi

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 10 3 2

Negatif 6 15 4

Netral 4 2 14

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 15 1 1

Negatif 0 8 5

Netral 5 11 14
19

Lanjutan
Entitas Prabowo

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 14 1 0

Negatif 6 18 1

Netral 0 1 19

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 15 2 3
Negatif 3 17 0

Netral 2 1 17

Entitas Wiranto

Model Multinomial
Dugaan
Positif Negatif Netral
Hasil
Positif 18 3 3

Negatif 2 16 0

Netral 0 1 17

Model Bernoulli
Dugaan
Positif Negatif Netral
Hasil
Positif 15 7 3

Negatif 1 10 3

Netral 4 3 14
20

Lampiran 6 Contoh tabel kata dan frekuensi pada tiap sentimen


No Kata Frekuensi Sentimen
1 edge 1 positif
1 negatif
2 netral
2 survei 1 positif
1 negatif
1 netral
3 masalah 10 positif
8 negatif
12 netral
4 sinyal 17 positif
16 negatif
24 netral
5 jam 6 positif
4 negatif
6 netral
6 jalan 33 positif
26 negatif
35 netral
7 politik 8 positif
3 negatif
8 netral
8 hadiah 2 positif
1 negatif
2 netral
9 menang 5 positif
2 negatif
6 netral
10 kudeta 1 positif
1 negatif
1 netral
21

Lampiran 7 Contoh tabel kata dan peluang pada tiap sentimen

No Kata Nilai Peluang Sentimen


1 edge 0.0030 positif
0.0061 negatif
0.0061 netral
2 survei 0.0030 positif
0.0061 negatif
0.0030 netral
3 masalah 0.0092 positif
0.0278 negatif
0.0092 netral
4 sinyal 0.0061 positif
0.0526 negatif
0.0247 netral
5 jam 0.0092 positif
0.0154 negatif
0.0030 netral
6 jalan 0.0185 positif
0.0743 negatif
0.0009 netral
7 politik 0.0185 positif
0.0123 negatif
0.0030 netral
8 hadiah 0.0061 positif
0.0061 negatif
0.0003 netral
9 menang 0.0123 positif
0.0092 negatif
0.0061 netral
10 kudeta 0.0030 positif
0.0061 negatif
0.0030 netral
22

RIWAYAT HIDUP

Penulis dilahirkan di Trenggalek, Jawa Timur pada tanggal 30 Juni 1992 dan
merupakan anak pertama dari pasangan Agus Suharyanto dan Narwati. Pada tahun
2010, penulis menamatkan pendidikan di SMAI Nurul Fikri Boarding School,
Banten. Penulis lulus seleksi masuk Institut Pertanian Bogor (IPB) pada tahun yang
sama melalui jalur Undangan Seleksi Masuk IPB dan diterima sebagai mahasiswa di
Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam.
Selama aktif menjadi mahasiswa, penulis pernah menjadi asisten praktikum
Algoritma dan Pemrograman (2012). Penulis juga melaksanakan kegiatan Praktik
Kerja Lapangan di PT. Pertamina EP pada tahun 2013. Selain itu, penulis juga aktif
mengikuti berbagai pelatihan diluar kampus yang diantaranya Oracle database 11g
SQL Fundamental 2013, Oracle database 11g Administrator 1 2014, dan Building
Datawarehouse 2014. Penulis juga telah tersertifikasi untuk bidang database pada
Oracle database 11g ascociate tahun 2014 dan Junior database programmer SKKNI.

Anda mungkin juga menyukai