analisis sentimen pada provider telekomunikasi … awal.pdfi analisis sentimen pada provider...
TRANSCRIPT
i
ANALISIS SENTIMEN PADA PROVIDER TELEKOMUNIKASI
MENGGUNAKAN METODE NAÏVE BAYES CLASSIFIER
DENGAN SELEKSI FITUR MUTUAL INFORMATION
KOMPETENSI KOMPUTASI
SKRIPSI
NI LUH PUTU EKA JULIARI
NIM. 1208605023
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS UDAYANA
BUKIT JIMBARAN
2016
ii
SURAT PERNYATAAN KEASLIAN KARYA ILMIAH
Yang bertanda tangan di bawah ini menyatakan bahwa naskah Skripsi dengan judul:
Analisis Sentimen pada Provider Telekomunikasi menggunakan Metode Naïve Bayes
Classifier dengan Seleksi Fitur Mutual Information
Nama : Ni Luh Putu Eka Juliari
NIM : 1208605023
Program Studi : Teknik Informatika
E-mail : [email protected]
Nomor telp/HP : 087861316339
Alamat : Jln. Dewi Sartika, Perumahan Dewi Sartika No. 5, Klungkung
Belum pernah dipublikasikan dalam dokumen skripsi, jurnal nasional maupun internasional
atau dalam prosiding manapun, dan tidak sedang atau akan diajukan untuk publikasi di jurnal
atau prosiding manapun. Apabila di kemudian hari terbukti terdapat pelanggaran kaidah-
kaidah akademik pada karya ilmiah saya, maka saya bersedia menanggung sanksi-sanksi yang
dijatuhkan karena kesalahan tersebut, sebagaimana diatur oleh Peraturan Menteri Pendidikan
Nasional Nomor 17 Tahun 2010 tentang Pencegahan dan Penanggulangan Plagiat di
Perguruan Tinggi.
Demikian Surat Pernyataan ini saya buat dengan sesungguhnya untuk dapat dipergunakan
bilamana diperlukan.
Bukit Jimbaran, April 2016
Yang membuat pernyataan,
(Ni Luh Putu Eka Juliari)
NIM. 1208605023
ii
iii
LEMBAR PENGESAHAN TUGAS AKHIR
Judul : Analisis Sentimen pada Provider Telekomunikasi Menggunakan
Metode Naïve Bayes Classifier dengan Seleksi Fitur Mutual Information
Kompetensi : Komputasi
Nama : Ni Luh Putu Eka Juliari
NIM : 1208605023
Tanggal Seminar : 22 April 2016
Disetujui Oleh :
Pembimbing I Penguji I
(I Putu Gede Hendra Suputra, S.Kom., M.Kom.) (Drs. I Wayan Santiyasa, M.Si.)
NIP. 198812282014041001 NIP. 196704141992031002
Pembimbing II Penguji II
(Agus Muliantara, S.Kom., M.Kom.)
NIP. 198006162005011001 NIP. 198901272012121001
Penguji III
Mengetahui,
Ketua Jurusan Ilmu Komputer
FMIPA Universitas Udayana
(Agus Muliantara, S.Kom., M.Kom.)
NIP. 198006162005011001
iv
Judul : Analisis Sentimen pada Provider Telekomunikasi Menggunakan
Metode Naïve Bayes Classifier dengan Seleksi Fitur Mutual
Information
Nama : Ni Luh Putu Eka Juliari (NIM: 1208605023)
Pembimbing : 1. I Putu Gede Hendra Suputra, S.Kom, M.Kom
2. Agus Muliantara, S.Kom, M.Kom
ABSTRAK
Penelitian di bidang analisis sentimen dari suatu data merupakan hal yang
penting dan dibutuhkan di era big data seperti saat ini. Analisis sentimen dapat
diaplikasikan pada perusahaan provider telekomunikasi karena banyaknya jumlah
pengguna dari provider telekomunikasi membuat perusahaan tersebut harus
menyediakan layanan berupa feedback untuk penggunanya agar memudahkan
dalam meninjau kembali produknya. Salah satu media yang digunakan sebagai
layanan feedback adalah Twitter. Analisis sentimen berguna untuk menganalisis
komentar-komentar di Twitter menjadi pengetahuan yang lebih bermakna. Metode
Naïve Bayes Classifier dipilih karena metode ini sederhana atau mudah
diaplikasikan, memiliki proses komputasi yang cepat, dan akurasi yang tinggi.
Sedangkan Mutual Information digunakan sebagai seleksi fitur dalam penelitian
ini karena fungsinya yang cocok untuk menilai term dari isi informasi dalam
proses klasifikasi. Data yang digunakan untuk training sebanyak 3.000 data,
masing-masing 1.000 data untuk sentimen positif, negatif, dan netral. Pada data
testing digunakan sebanyak 1.000 data untuk evaluasi sistem. Hasil penelitian
memperlihatkan terjadinya perubahan dari segi kecepatan dan akurasi sistem
setelah ditambahkannya seleksi fitur Mutual Information untuk n-gram kata n = 1.
Didapatkan waktu pemrosesan sebelum ditambahkan seleksi fitur Mutual
Information yaitu 53 detik dan setelah penambahan seleksi fitur menjadi 60 detik.
Selain itu, meningkatnya akurasi sistem dengan bertambahnya nilai akurasi tanpa
seleksi fitur yaitu 64.80 % menjadi 73.60% setelah penambahan seleksi fitur
Mutual Information.
Kata Kunci : Analisis Sentimen, Provider Telekomunikasi, Twitter, Naïve Bayes
Classifier, Mutual Information
v
Title : Sentiment Analysis on Telecommunication Providers
Using Naïve Bayes Classifier Method with Mutual
Information Feature Selection
Name : Ni Luh Putu Eka Juliari (Student Number: 1208605023)
Main Supervisor : I Putu Gede Hendra Suputra, S. Kom, M. Kom
Co-supervisor : Agus Muliantara, S. Kom, M. Kom
ABSTRACT
Research in the field of sentiment analysis of data is an important thing
and necessary in the era of big data as it is today. Sentiment analysis can be
applied to telecommunications provider companies for the large number of users
of telecommunications providers make the company must provide services in the
form of feedback to users in order to facilitate the review of products. One
medium that is used as a feedback service is Twitter. Sentiment analysis used for
analyzing the comments on Twitter becomes more meaningful knowledge. Naïve
Bayes Classifier method was chosen because the method is simple or easy to
apply, has a fast computing process and high accuracy. Mutual Information was
used as a feature selection in this study because of its function fit to assess the
terms of the content of the information in the classification process. The data used
for training totaled 3,000 data 1,000 data were respectively used for positive,
negative, and neutral sentiment. The testing data used a total of 1,000 data for
system evaluation. The results demonstrated the occurrence of a change in terms
of speed and accuracy of the system after the addition of Mutual Information
feature selection for n-gram word n = 1. The processing time was obtained before
the feature selection Mutual Information was added namely 53 seconds and after
the addition of feature selection reaching 60 seconds. In addition, the accuracy
system increased by augmenting the value of accuracy without feature selection,
namely 64.80% to 73.60% after the addition of feature selection of Mutual
Information.
Keywords : Sentiment Analysis, Telecommunication Provider, Twitter, Naïve
Bayes classifier, Mutual Information
vi
KATA PENGANTAR
Penelitian dengan judul “Analisis Sentimen pada Provider Telekomunikasi
menggunakan Metode Naïve Bayes Classifier dengan Seleksi Fitur Mutual
Information” ini disusun dalam rangkaian kegiatan pelaksanaan Tugas Akhir di
Jurusan Ilmu Komputer FMIPA UNUD. Penelitian ini dilaksanakan pada periode
Juli 2015 hingga April 2016 di Universitas Udayana.
Sehubungan dengan telah terselesaikannya penelitian ini, maka penulis
mengucapkan terima kasih dan penghargaan kepada berbagai pihak yang telah
membantu penulis, antara lain:
1. Bapak I Putu Gede Hendra Suputra, S.Kom, M.Kom. sebagai Pembimbing I
yang telah banyak meluangkan waktu untuk membantu pelaksanaan
penelitian ini;
2. Bapak Agus Muliantara, S.Kom, M.Kom. sebagai Pembimbing II yang telah
bersedia mengkritisi, memeriksa dan menyempurnakan penelitian ini;
3. Bapak Agus Muliantara, S.Kom, M.Kom. selaku Ketua Jurusan Ilmu
Komputer Universitas Udayana yang telah banyak memberikan masukan dan
motivasi sehingga memperlancar dalam proses pengerjaan penelitian ini;
4. Dra. Ni Wayan Arnati, M.Hum. dan Drs. I Wayan Teguh, M.Hum. selaku
pakar dalam bidang Linguistik yang telah meluangkan waktu untuk
membantu dalam penyempurnaan penelitian ini.
5. Bapak-bapak dan ibu-ibu dosen di Jurusan Ilmu Komputer yang telah
meluangkan waktu turut memberikan saran dan masukan dalam pelaksanaan
penelitian;
6. Kawan-kawan di Jurusan Ilmu Komputer yang telah memberikan dukungan
moral dalam penyelesaian penelitian ini.
vii
Disadari pula bahwa sudah tentu hasil-hasil dari penelitian ini masih
mengandung kelemahan dan kekurangan. Memperhatikan hal ini, maka masukan
dan saran-saran penyempurnaan sangat diharapkan.
Bukit Jimbaran, April 2016
Penulis
Ni Luh Putu Eka Juliari
viii
DAFTAR ISI
LEMBAR JUDUL .......................................................................................... i
LEMBAR PERNYATAAN ............................................................................ ii
LEMBAR PENGESAHAN ............................................................................ iii
ABSTRAK ...................................................................................................... iv
ABSTRACT .................................................................................................... v
KATA PENGANTAR .................................................................................... vi
DAFTAR ISI ................................................................................................... viii
DAFTAR TABEL ............................................................................................ xi
DAFTAR GAMBAR ....................................................................................... xii
DAFTAR LAMPIRAN ................................................................................... xiv
BAB I PENDAHULUAN ............................................................................. 1
1.1 Latar Belakang .......................................................................... 1
1.2 Rumusan Masalah ..................................................................... 4
1.3 Batasan Masalah ....................................................................... 4
1.4 Tujuan Penelitian ...................................................................... 5
1.5 Manfaat Penelitian .................................................................... 5
1.6 Metodologi Penelitian ............................................................... 5
1.6.1 Desain Penelitian ............................................................. 6
1.6.2 Pengumpulan Data ........................................................... 6
1.6.3 Pengolahan Data Awal .................................................... 6
1.6.4 Metode yang Digunakan .................................................. 7
BAB II TINJAUAN PUSTAKA ..................................................................... 8
2.1 Analisis Sentimen ...................................................................... 8
2.2 Naïve Bayes Classifier ............................................................... 8
2.3 Seleksi Fitur Mutual Information .............................................. 11
2.4 Text Pre-processing ................................................................... 12
2.5 Twitter ...................................................................................... 13
2.6 N-gram ....................................................................................... 15
2.7 Flowchart ................................................................................... 16
2.8 Bahasa Pemrograman PHP dan Database MySQL ................... 17
ix
2.9 Tinjauan Empiris ...................................................................... 19
BAB III ANALISIS DAN PERANCANGAN ............................................... 21
3.1 Kebutuhan Fungsional .............................................................. 21
3.1.1 Melakukan Pengumpulan Data ........................................ 21
3.1.2 Melakukan Pre-processing .............................................. 21
3.1.3 N-Gram Kata ................................................................... 22
3.1.4 Melakukan Seleksi Fitur .................................................. 22
3.1.5 Melakukan Klasifikasi Sentimen ..................................... 22
3.1.6 Output Sistem .................................................................. 22
3.1.7 Evaluasi Kinerja Sistem ................................................... 23
3.2 Rancangan Data ........................................................................ 23
3.3 Rancangan Antar Muka Sistem ................................................ 27
3.3.1 Rancangan Tampilan Cek Manual .................................. 28
3.3.2 Rancangan Tampilan Cek Real Time .............................. 28
3.3.3 Rancangan Tampilan Pengujian ...................................... 30
3.3.4 Rancangan Tampilan Import Data ................................... 31
3.3.5 Rancangan Tampilan Data Keyword ............................... 31
3.3.6 Rancangan Tampilan Data Training ................................ 32
3.3.7 Rancangan Tampilan Data Testing .................................. 33
3.3.8 Rancangan Tampilan Data Knowledge ............................ 33
3.4 Pengolahan Data ....................................................................... 34
3.4.1 Pre-processing ................................................................. 34
3.4.2 Seleksi Fitur ..................................................................... 35
3.4.3 Pelatihan Data Training ................................................... 36
3.4.4 Pengujian Data Testing .................................................... 38
3.5 Pengujian dan Evaluasi ............................................................. 39
3.5.1 Skenario Pengujian .......................................................... 39
3.5.2 Evaluasi Sistem ................................................................ 39
BAB IV HASIL DAN PEMBAHASAN ........................................................ 40
4.1 Pengumpulan Dataset ............................................................... 40
4.2 Implementasi Pre-processing ................................................... 41
4.3 Implementasi Proses Seleksi Fitur ............................................ 41
x
4.4 Implementasi Proses Naïve Bayes Classifier............................. 43
4.5 Implementasi Pelatihan Data Training ..................................... 45
4.6 Implementasi Pengujian Data Testing ...................................... 45
4.7 Implementasi Perhitungan Akurasi .......................................... 46
4.8 Tampilan Antarmuka Sistem .................................................... 46
4.8.1 Tampilan Cek Manual ..................................................... 46
4.8.2 Tampilan Cek Real Time .................................................. 47
4.8.3 Tampilan Pengujian .......................................................... 49
4.8.4 Tampilan Import Data ...................................................... 50
4.8.5 Tampilan Data Training.................................................... 50
4.8.6 Tampilan Data Testing ..................................................... 51
4.8.7 Tampilan Data Knowledge ............................................... 51
4.9 Hasil dan Pengujian Sistem ...................................................... 52
4.9.1 Pengujian Threshold Mutual Information ....................... 52
4.9.2 Pengujian Tahap Training ............................................... 53
4.9.3 Pengujian Tahap Testing ................................................. 58
4.9.4 Hasil Uji Coba Sistem ...................................................... 60
4.9.5 Analisa Hasil..................................................................... 61
BAB V KESIMPULAN DAN SARAN .......................................................... 65
5.1 Kesimpulan ............................................................................... 65
5.2 Saran ......................................................................................... 65
DAFTAR PUSTAKA ..................................................................................... 66
LAMPIRAN
xi
DAFTAR TABEL
Tabel 2.1 Contoh Pemotongan N-gram Berbasis Karakter ........................... 15
Tabel 2.2 Contoh Pemotongan N-gram Berbasis Kata .................................. 15
Tabel 2.3 Fungsi Simbol-Simbol Flowchart .................................................. 16
Tabel 3.1 Tabel Keyword .............................................................................. 24
Tabel 3.2 Tabel Tweet Training .................................................................... 25
Tabel 3.3 Tabel Tweet Testing ...................................................................... 26
Tabel 3.4 Tabel Pengetahuan ........................................................................ 27
Tabel 3.5 Tabel Stopword ............................................................................. 27
Tabel 3.6 Tabel Kontingensi Seleksi Fitur Mutual Information ................... 35
Tabel 3.7 Hasil Evaluasi Kinerja Sistem ....................................................... 39
Tabel 4.1 Source Code Pemanggilan Fungsi Twitter API ............................. 40
Tabel 4.2 Source Code Pre-processing .......................................................... 41
Tabel 4.3 Source Code Seleksi Fitur Mutual Information ............................ 42
Tabel 4.4 Source Code Naïve Bayes Classifier ............................................. 43
Tabel 4.5 Source Code Pelatihan Data Training ............................................ 45
Tabel 4.6 Source Code Pengujian Data Testing ............................................. 45
Tabel 4.7 Source Code Perhitungan Akurasi ................................................ 46
Tabel 4.8 Percobaan Pencarian Nilai Threshold untuk Seleksi Fitur ............ 52
Tabel 4.9 Pengujian Tahapan Pre-Processing .............................................. 53
Tabel 4.10 Pengujian Tahapan Pembentukan N-Gram Kata .......................... 54
Tabel 4.11 Pengujian Tahapan Seleksi Fitur Mutual Information .................. 56
Tabel 4.12 Pengujian Tahapan Testing ........................................................... 58
Tabel 4.13 Hasil Evaluasi Kinerja Sistem untuk N-gram n = 1,2,3,4 .............. 61
Tabel 4.14 Hasil Evaluasi Kinerja Sistem Tanpa Seleksi Fitur ....................... 61
xii
DAFTAR GAMBAR
Gambar 3.1 Rancangan Sistem...................................................................... 21
Gambar 3.2 Rancangan Tampilan Cek Manual ........................................... 28
Gambar 3.3 Rancangan Tampilan Cek Query .............................................. 29
Gambar 3.4 Rancangan Tampilan Cek Product ........................................... 29
Gambar 3.5 Rancangan Tampilan Cek Provider .......................................... 30
Gambar 3.6 Rancangan Tampilan Pengujian ............................................... 31
Gambar 3.7 Rancangan Tampilan Import Data ............................................ 31
Gambar 3.8 Rancangan Tampilan Data Keyword ........................................ 32
Gambar 3.9 Rancangan Tampilan Data Training ......................................... 32
Gambar 3.10 Rancangan Tampilan Data Testing ........................................... 33
Gambar 3.11 Rancangan Tampilan Data Knowledge ..................................... 33
Gambar 3.12 Flowchart Proses Pre-processing ............................................. 34
Gambar 3.13 Flowchart Proses Seleksi Fitur Mutual Information ................. 35
Gambar 3.14 Flowchart Proses Pembelajaran (Training) .............................. 36
Gambar 3.15 Flowchart Proses Pengujian (Testing) ...................................... 38
Gambar 4.1 Tampilan Cek Manual ............................................................... 47
Gambar 4.2 Tampilan Cek Query ................................................................ 48
Gambar 4.3 Tampilan Cek Product .............................................................. 48
Gambar 4.4 Tampilan Cek Provider .............................................................. 49
Gambar 4.5 Tampilan Pengujian ................................................................... 50
Gambar 4.6 Tampilan Import Data ............................................................... 50
Gambar 4.7 Tampilan Data Training ............................................................. 51
Gambar 4.8 Tampilan Data Testing .............................................................. 51
Gambar 4.9 Tampilan Data Knowledge ........................................................ 52
Gambar 4.10 Hasil Proses Pre-Processing .................................................... 54
Gambar 4.11 Hasil Pengujian N-gram Kata dengan Nilai N = 1 ................... 55
Gambar 4.12 Hasil Pengujian N-gram Kata dengan Nilai N = 2 ................... 55
Gambar 4.13 Hasil Pengujian N-gram Kata dengan Nilai N = 3 ................... 56
Gambar 4.14 Hasil Pengujian N-gram Kata dengan Nilai N = 4 ................... 56
Gambar 4.15 Perhitungan Nilai N11, N10, N01, N00 ................................... 57
xiii
Gambar 4.16 Perhitungan Nilai Mutual Information ..................................... 58
Gambar 4.17 Hasil N-gram Kata dan Sentimen Setelah Proses Seleksi Fitur 58
Gambar 4.18 Mengambil Data Hasil Training dari Tabel Pengetahuan ........ 59
Gambar 4.19 Perhitungan Naïve Bayes Classifier ......................................... 59
Gambar 4.20 Proses Negation Handling ........................................................ 60
Gambar 4.21 Grafik Waktu Analisis Sentimen Berdasarkan Nilai N-gram ... 61
Gambar 4.22 Grafik Akurasi Analisis Sentimen Berdasarkan Nilai N-gram . 62
Gambar 4.23 Grafik Hasil Perbandingan antar Provider pada Sistem ............ 63