ANALISIS SENTIMEN PADA PROVIDER TELEKOMUNIKASI … Awal.pdfi analisis sentimen pada provider...

15
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

Transcript of ANALISIS SENTIMEN PADA PROVIDER TELEKOMUNIKASI … Awal.pdfi analisis sentimen pada provider...

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

xiv

DAFTAR LAMPIRAN

Lampiran 1. Source Code Program Analisis Sentime

1