Deteksi Pekerjaan Melalui Klasifikasi Naïve Bayes pada Media Sosial Twitter.
v
Universitas Kristen Maranatha
ABSTRAK
Dengan munculnya berbagai media sosial, banyak orang yang menuliskan pendapat terhadap suatu masalah yang sedang terjadi pada media sosial. Setiap orang dalam satu golongan pekerjaan yang sama kemungkinan besar memiliki gaya penulisan bahasa pada media sosial yang hampir mirip. Dengan demikian, dibuatlah penelitian untuk mendeteksi pekerjaan seseorang lewat tweet yang ditulis dengan cara mengidentifikasi gaya bahasa yang digunakan. Analisis dilakukan dengan melakukan klasifikasi tweet. Klasifikasi yang digunakan dalam penelitian ini adalah Naïve Bayes Classifier. Proses yang dilakukan dalam penelitian ini dibagi menjadi tiga bagian utama, yaitu pengambilan dan pengelompokan data, pengolahan data, dan testing. Jenis pekerjaan yang dipakai dalam penelitian ini adalah politisi, artis, pelajar, dan musisi. Proses pengolahan data pada penelitian ini adalah proses pembersihan isi tweet dan pembentukan model yang akan diuji dengan cross-validation dan validasi kesalahan tipe satu. Dalam proses pembentukan model, dipakai juga proses pemecahan kata secara n-gram (unigram, bigram, dan trigram). Pengujian yang dilakukan memakai dua metode, yaitu Naïve Bayes Binomial dan Multinomial. Kesimpulan dari penelitian ini pembentukan model masing-masing pekerjaan secara Naive Bayes Multinomial lebih stabil dibandingkan dengan pembentukan model dengan Naïve Bayes Binomial. Metode pemecahan kata secara n-gram yang paling cocok digunakan adalah unigram.
(2)
vi
Universitas Kristen Maranatha
ABSTRACT
With the advent of social media, there is a lot of people who write opinion on an issue that is happening on social media. Everyone in the group who has the same job has a high probability having a writing style language that are quite similar on a social. Thus, the study was made to detect someone’s job through a tweet written on their Twitter account by identifying the style of language used. The analyses of the study were performed by tweets classification. Classification that is used in this study is Naïve Bayes Classifier. The processing in this study were divided into three main parts, retrieval and grouping the data, data processing, and testing. The type of jobs used in this study consists of politicians, actress / actor, student, and musician. The processing of the data in this study is the process of cleaning the content of the tweet and the establishment of the model which will be tested by cross-validation and validation of the error type one. In the process of model building, the process of dividing word by n-grams (unigram, bigram, and trigram) are also used. The testing are carried out using two methods, Naïve Bayes Binomial and Multinomial. The conclusion of this study the formation of the respective model for each job which was made by using Naïve Bayes Multinomial is more suitable compared with the one which was made by using Naïve Bayes Binomial. The most suitable methods of dividing word by n-grams is unigram.
(3)
vii
Universitas Kristen Maranatha
DAFTAR ISI
LEMBAR PENGESAHAN ... i
PERNYATAAN ORISINALITAS LAPORAN PENELITIAN ... ii
PERNYATAAN PUBLIKASI LAPORAN PENELITIAN ...iii
PRAKATA ... iv
ABSTRAK ... v
ABSTRACT ... vi
DAFTAR ISI ... vii
DAFTAR TABEL ... xi
DAFTAR GAMBAR ... xiv
DAFTAR PSEUDOCODE ...xviii
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 1
1.3 Tujuan Pembahasan ... 1
1.4 Batasan Masalah ... 2
1.5 Ruang Lingkup Kajian ... 2
1.6 Sumber Data ... 2
1.7 Sistematika Penyajian ... 2
BAB II KAJIAN TEORI ... 4
2.1 Naïve Bayes ... 4
2.1.1 E-Mail Filtering ... 4
(4)
viii
Universitas Kristen Maranatha
2.1.3 Naïve Bayes Classifier Binomial ... 6
2.1.4 Naïve Bayes Classifier Multinomial ... 7
2.2 Twitter ... 7
2.2.1 Twitter Sentiment Analysis ... 8
2.2.2 Twitter Profiling ... 8
2.2.3 Twitter4J ... 9
BAB III ANALISIS DAN RANCANGAN SISTEM ... 10
3.1 Analisis ... 10
3.1.1 Pengambilan Data dan Pengelompokan Data ... 10
3.1.2 Pengolahan Data ... 12
3.1.3 Testing atau Eksperimen ... 13
3.2 Gambaran Keseluruhan ... 18
3.2.1 Persyaratan Antarmuka Eksternal ... 19
3.2.2 Antarmuka Pengguna ... 19
3.2.3 Antarmuka Perangkat Keras ... 19
3.2.4 Antarmuka Perangkat Lunak ... 19
3.2.5 Fitur-fitur Produk Perangkat Lunak ... 20
3.3 Desain Perangkat Lunak ... 25
3.3.1 Pemodelan Perangkat Lunak ... 25
3.3.2 Desain Antarmuka ... 33
BAB IV PENGEMBANGAN PERANGKAT LUNAK ... 37
4.1 Implementasi Modul / Class ... 37
4.1.1 Class Diagram ... 37
(5)
ix
Universitas Kristen Maranatha
4.2 Implementasi Antarmuka ... 56
4.2.1 Implementasi Antarmuka Form Halaman Utama ... 56
4.2.2 Implementasi Antarmuka Form Pengambilan Data... 57
4.2.3 Implementasi Antarmuka Form Testing Unigram ... 58
4.2.4 Implementasi Antarmuka Form Testing Bigram ... 59
4.2.5 Implementasi Antarmuka Form Testing Trigram ... 60
BAB V PEMBAHASAN DAN UJI COBA HASIL PENELITIAN ... 62
5.1 Pengujian Silang menggunakan metode Naïve Bayes Binomial ... 62
5.1.1 Pengujian Silang untuk Model Politisi ... 62
5.1.2 Pengujian Silang untuk Model Artis ... 68
5.1.3 Pengujian Silang untuk Model Pelajar ... 75
5.1.4 Pengujian Silang untuk Model Musisi ... 81
5.2 Pengujian Silang menggunakan metode Naïve Bayes Multinomial ... 86
5.2.1 Pengujian Silang untuk Model Politisi ... 87
5.2.2 Pengujian Silang untuk Model Artis ... 93
5.2.3 Pengujian Silang untuk Model Pelajar ... 100
5.2.4 Pengujian Silang untuk Model Musisi ... 106
5.3 Pengujian Error Tipe Satu ... 112
5.3.1 Pengujian Error Tipe Satu untuk Naïve Bayes Binomial ... 112
5.3.2 Pengujian Error Tipe Satu untuk Naïve Bayes Multinomial ... 114
5.4 Hasil Pengambilan Kata tiap Pekerjaan ... 115
5.4.1 Politisi ... 116
5.4.2 Artis ... 119
(6)
x
Universitas Kristen Maranatha
5.4.4 Musisi ... 127
5.5 Pengujian Tweet dengan Metode Naïve Bayes Binomial ... 131
5.5.1 Pengujian Pekerjaan secara Unigram ... 131
5.5.2 Pengujian Pekerjaan secara Bigram ... 133
5.5.3 Pengujian Pekerjaan secara Trigram... 134
5.6 Pengujian Tweet dengan Metode Naïve Bayes Multinomial ... 135
5.6.1 Pengujian Pekerjaan secara Unigram ... 135
5.6.2 Pengujian Pekerjaan secara Bigram ... 137
5.6.3 Pengujian Pekerjaan secara Trigram... 138
5.7 Evaluasi Hasil Pengujian Silang ... 139
5.8 Evaluasi Hasil Pengujian Tweet ... 141
5.9 Penelitian untuk Pembuatan Model secara Incremental ... 142
5.10 Evaluasi Hasil Pengambilan Kata tiap Pekerjaan ... 145
BAB VI SIMPULAN DAN SARAN ... 147
6.1 Simpulan ... 147
6.2 Saran ... 147
DAFTAR PUSTAKA ... 148
(7)
xi
Universitas Kristen Maranatha
DAFTAR TABEL
Tabel 2.1 Contoh penggunaan Naïve Bayes Classifier Binomial ... 6
Tabel 3.1 Contoh training set Naïve Bayes Binomial ... 14
Tabel 3.2 Contoh Instance Testing Naïve Bayes Binomial ... 14
Tabel 3.3 Contoh trainingset Naïve Bayes Multinomial ... 16
Tabel 3.4 Contoh instance testing Naïve Bayes Multinomial ... 16
Tabel 3.5 Deskripsi Use Case Diagram Pengambilan Data ... 26
Tabel 3.6 Deskripsi Use Case Diagram Lakukan Profiling ... 26
Tabel 3.7 Deskripsi use case diagram Pembersihan Tweet ... 27
Tabel 3.8 Deskripsi use case diagram Pembuatan Model ... 27
Tabel 3.9 Deskripsi use case diagram Menampilkan Hasil Profiling ... 28
Tabel 4.1 Deskripsi Fungsi Class Testing Unigram ... 44
Tabel 4.2 Deskripsi Fungsi Class ViewPengambilanData ... 50
Tabel 5.1 Hasil Politisi Unigram Non-Stopwords Binomial ... 62
Tabel 5.2 Hasil Politisi Unigram Stopwords Binomial ... 63
Tabel 5.3 Hasil Politisi Bigram Non-Stopwords Binomial ... 64
Tabel 5.4 Hasil Politisi Bigram Stopwords Binomial ... 65
Tabel 5.5 Hasil Politisi Trigram Non-Stopwords Binomial ... 66
Tabel 5.6 Hasil Politisi Trigram Stopwords Binomial ... 67
Tabel 5.7 Hasil Artis Unigram Non-Stopwords Binomial ... 69
Tabel 5.8 Hasil Artis Unigram Stopwords Binomial ... 70
Tabel 5.9 Hasil Artis Bigram Non-Stopwords Binomial ... 71
Tabel 5.10 Hasil Artis Bigram Stopwords Binomial ... 72
Tabel 5.11 Hasil Artis Trigram Non-Stopwords Binomial ... 73
Tabel 5.12 Hasil Artis Trigram Stopwords Binomial ... 74
Tabel 5.13 Hasil Pelajar Unigram Non-Stopwords Binomial ... 75
(8)
xii
Universitas Kristen Maranatha
Tabel 5.15 Hasil Pelajar Bigram Non-Stopwords Binomial ... 77
Tabel 5.16 Hasil Pelajar Bigram Stopwords Binomial ... 78
Tabel 5.17 Hasil Pelajar Trigram Non-Stopwords Binomial ... 79
Tabel 5.18 Hasil Pelajar Trigram Stopwords Binomial ... 80
Tabel 5.19 Hasil Musisi Unigram Non-Stopwords Binomial ... 81
Tabel 5.20 Hasil Musisi Unigram Stopwords Binomial ... 82
Tabel 5.21 Hasil Musisi Bigram Non-Stopwords Binomial ... 83
Tabel 5.22 Hasil Musisi Bigram Stopwords Binomial ... 84
Tabel 5.23 Hasil Musisi Trigram Non-Stopwords Binomial ... 85
Tabel 5.24 Hasil Musisi Trigram Stopwords Binomial ... 86
Tabel 5.25 Hasil Politisi Unigram Non-Stopwords Multinomial ... 87
Tabel 5.26 Hasil Politisi Unigram Stopwords Multinomial ... 88
Tabel 5.27 Hasil Politisi Bigram Non-Stopwords Multinomial ... 89
Tabel 5.28 Hasil Politisi Bigram Stopwords Multinomial ... 90
Tabel 5.29 Hasil Politisi Bigram Stopwords Multinomial ... 91
Tabel 5.30 Hasil Politisi Trigram Stopwords Multinomial ... 92
Tabel 5.31 Hasil Artis Unigram Non-Stopwords Multinomial ... 94
Tabel 5.32 Hasil Artis Unigram Stopwords Multinomial ... 95
Tabel 5.33 Hasil Artis Bigram Non-Stopwords Multinomial ... 96
Tabel 5.34 Hasil Artis Bigram Stopwords Multinomial ... 97
Tabel 5.35 Hasil Artis Trigram Non-Stopwords Multinomial ... 98
Tabel 5.36 Hasil Artis Trigram Stopwords Multinomial ... 99
Tabel 5.37 Hasil Pelajar Unigram Non-Stopwords Multinomial ... 100
Tabel 5.38 Hasil Pelajar Unigram Stopwords Multinomial ... 101
Tabel 5.39 Hasil Pelajar Bigram Non-Stopwords Multinomial ... 102
Tabel 5.40 Hasil Pelajar Bigram Stopwords Multinomial ... 103
Tabel 5.41 Hasil Pelajar Trigram Non-Stopwords Multinomial ... 104
Tabel 5.42 Hasil Pelajar Trigram Stopwords Multinomial ... 105
(9)
xiii
Universitas Kristen Maranatha
Tabel 5.44 Hasil Musisi Unigram Stopwords Multinomial ... 107
Tabel 5.45 Hasil Musisi Bigram Non-Stopwords Multinomial... 108
Tabel 5.46 Hasil Musisi Bigram Stopwords Multinomial ... 109
Tabel 5.47 Hasil Musisi Trigram Non-Stopwords Multinomial ... 110
Tabel 5.48 Hasil Musisi Trigram Stopwords Multinomial ... 111
Tabel 5.49 Hasil Pengujian Error Tipe Satu Binomial tanpa Stopping ... 112
Tabel 5.50 Hasil Pengujian Error Tipe Satu Binomial disertai Stopping ... 113
Tabel 5.51 Hasil Pengujian Error Tipe Satu Multinomial tanpa Stopping ... 114
Tabel 5.52 Hasil Pengujian Error Tipe Satu Multinomial disertai Stopping ... 115
Tabel 5.53 Hasil Pengujian Tweet Unigram Non-Stopwords Binomial... 132
Tabel 5.54 Hasil Pengujian Tweet Unigram Stopwords Binomial ... 132
Tabel 5.55 Hasil Pengujian Tweet Bigram Non-Stopwords Binomial ... 133
Tabel 5.56 Hasil Pengujian Tweet Bigram Stopwords Binomial ... 133
Tabel 5.57 Hasil Pengujian Tweet Trigram Non-Stopwords Binomial ... 134
Tabel 5.58 Hasil Pengujian Tweet Trigram Stopwords Binomial ... 135
Tabel 5.59 Hasil Pengujian Tweet Unigram Non-Stopwords Multinomial ... 136
Tabel 5.60 Hasil Pengujian Tweet Unigram Stopwords Multinomial ... 136
Tabel 5.61 Hasil Pengujian Tweet Bigram Non-Stopwords Multinomial ... 137
Tabel 5.62 Hasil Pengujian Tweet Bigram Stopwords Multinomial ... 137
Tabel 5.63 Hasil Pengujian Tweet Trigram Non-Stopwords Multinomial ... 138
Tabel 5.64 Hasil Pengujian Tweet Trigram Stopwords Multinomial... 139
Tabel 5.65 Hasil Pengujian Silang dengan Metode Naïve Bayes Binomial... 139
Tabel 5.66 Hasil Pengujian Silang dengan Metode Naïve Bayes Multinomial ... 140
Tabel 5.67 Hasil Pengujian Tweet dengan Metode Naïve Bayes Binomial ... 141
(10)
xiv
Universitas Kristen Maranatha
DAFTAR GAMBAR
Gambar 2.1 Contoh penggunaan Naïve Bayes Classifier Multinomial ... 7
Gambar 3.1 Trending Topic pada media sosial Twitter ... 10
Gambar 3.2 Contoh tweet yang tidak bersih ... 12
Gambar 3.3 Contoh tweet yang bersih ... 12
Gambar 3.4 Use Case Diagram ... 25
Gambar 3.5 Activity Diagram Pengambilan Data ... 29
Gambar 3.6 Activity Diagram Pembersihan Tweet ... 30
Gambar 3.7 Activity Diagram Lakukan Profiling ... 31
Gambar 3.8 Activity Diagram Pembuatan Model ... 32
Gambar 3.9 Desain Antarmuka Form Halaman Utama ... 33
Gambar 3.10 Desain Antarmuka Form Pengambilan Data ... 34
Gambar 3.11 Desain Antarmuka Form Testing Unigram ... 34
Gambar 3.12 Desain Antarmuka Form Testing Bigram ... 35
Gambar 3.13 Desain Antarmuka Form Testing Trigram ... 36
Gambar 4.1 Struktur Keseluruhan Aplikasi ... 37
Gambar 4.2 Struktur Class Atribut ... 38
Gambar 4.3 Struktur Class File... 39
Gambar 4.4 Struktur Class Instance ... 41
Gambar 4.5 Struktur Class Probability ... 42
Gambar 4.6 Struktur Class TestingUnigram... 43
Gambar 4.7 Struktur Class TestingBigram ... 47
Gambar 4.8 Struktur Class TestingTrigram ... 48
Gambar 4.9 Struktur class ViewPengambilanData... 49
Gambar 4.10 Implementasi Antarmuka Form Halaman Utama ... 57
Gambar 4.11 Implementasi Antarmuka Form Pengambilan Data ... 58
Gambar 4.12 Implementasi Antarmuka Form Testing Unigram ... 59
(11)
xv
Universitas Kristen Maranatha
Gambar 4.14 Implementasi Antarmuka Form Testing Trigram ... 61
Gambar 5.1 Hasil Politisi Unigram Non-Stopwords Binomial ... 63
Gambar 5.2 Hasil Politisi Unigram Stopwords Binomial ... 64
Gambar 5.3 Hasil Politisi Bigram Non-Stopwords Binomial ... 65
Gambar 5.4 Hasil Politisi Bigram Stopwords Binomial ... 66
Gambar 5.5 Hasil Politisi Trigram Non-Stopwords Binomial ... 67
Gambar 5.6 Hasil Politisi Trigram Stopwords Binomial ... 68
Gambar 5.7 Hasil Artis Unigram Non-Stopwords Binomial ... 69
Gambar 5.8 Hasil Artis Unigram Stopwords Binomial ... 70
Gambar 5.9 Hasil Artis Bigram Non-Stopwords Binomial ... 71
Gambar 5.10 Hasil Artis Bigram Stopwords Binomial ... 72
Gambar 5.11 Hasil Artis Trigram Non-Stopwords Binomial ... 73
Gambar 5.12 Hasil Artis Trigram Stopwords Binomial ... 74
Gambar 5.13 Hasil Pelajar Unigram Non-Stopwords Binomial ... 75
Gambar 5.14 Hasil Pelajar Unigram Stopwords Binomial ... 76
Gambar 5.15 Hasil Pelajar Bigram Non-Stopwords Binomial ... 77
Gambar 5.16 Hasil Pelajar Bigram Stopwords Binomial ... 78
Gambar 5.17 Hasil Pelajar Trigram Non-Stopwords Binomial ... 79
Gambar 5.18 Hasil Pelajar Trigram Stopwords Binomial ... 80
Gambar 5.19 Hasil Musisi Unigram Non-Stopwords Binomial ... 81
Gambar 5.20 Hasil Musisi Unigram Stopwords Binomial ... 82
Gambar 5.21 Hasil Musisi Bigram Non-Stopwords Binomial ... 83
Gambar 5.22 Hasil Musisi Bigram Stopwords Binomial ... 84
Gambar 5.23 Hasil Musisi Trigram Non-Stopwords Binomial ... 85
Gambar 5.24 Hasil Musisi Trigram Stopwords Binomial ... 86
Gambar 5.25 Hasil Politisi Unigram Non-Stopwords Multinomial ... 88
Gambar 5.26 Hasil Politisi Unigram Stopwords Multinomial ... 89
Gambar 5.27 Hasil Politisi Bigram Non-Stopwords Multinomial ... 90
(12)
xvi
Universitas Kristen Maranatha
Gambar 5.29 Hasil Politisi Bigram Stopwords Multinomial ... 92
Gambar 5.30 Hasil Politisi Trigram Stopwords Multinomial ... 93
Gambar 5.31 Hasil Artis Unigram Non-Stopwords Multinomial ... 94
Gambar 5.32 Hasil Artis Unigram Stopwords Multinomial ... 95
Gambar 5.33 Hasil Artis Bigram Non-Stopwords Multinomial ... 96
Gambar 5.34 Hasil Artis Bigram Stopwords Multinomial ... 97
Gambar 5.35 Hasil Artis Trigram Non-Stopwords Multinomial... 98
Gambar 5.36 Hasil Artis Trigram Stopwords Multinomial ... 99
Gambar 5.37 Hasil Pelajar Unigram Non-Stopwords Multinomial ... 100
Gambar 5.38 Hasil Pelajar Unigram Stopwords Multinomial ... 101
Gambar 5.39 Hasil Pelajar Bigram Non-Stopwords Multinomial... 102
Gambar 5.40 Hasil Pelajar Bigram Stopwords Multinomial... 103
Gambar 5.41 Hasil Pelajar Trigram Non-Stopwords Multinomial ... 104
Gambar 5.42 Hasil Pelajar Trigram Non-Stopwords Multinomial ... 105
Gambar 5.43 Hasil Musisi Unigram Non-Stopwords Multinomial ... 106
Gambar 5.44 Hasil Musisi Unigram Stopwords Multinomial ... 107
Gambar 5.45 Hasil Musisi Bigram Non-Stopwords Multinomial ... 108
Gambar 5.46 Hasil Musisi Bigram Stopwords Multinomial ... 109
Gambar 5.47 Hasil Musisi Trigram Non-Stopwords Multinomial ... 110
Gambar 5.48 Hasil Musisi Trigram Stopwords Multinomial ... 111
Gambar 5.49 Hasil Pengujian Error Tipe Satu Binomial tanpa Stopping ... 112
Gambar 5.50 Hasil Pengujian Error Tipe Satu Binomial disertai Stopping ... 113
Gambar 5.51 Hasil Pengujian Error Tipe Satu Multinomial tanpa Stopping ... 114
Gambar 5.52 Hasil Pengujian Error Tipe Satu Multinomial disertai Stopping ... 115
Gambar 5.53 Hasil Pengambilan kata Politisi Unigram dengan Stopping ... 116
Gambar 5.54 Hasil Pengambilan kata Politisi Unigram tanpa Stopping ... 117
Gambar 5.55 Hasil Pengambilan kata Politisi Bigram dengan Stopping ... 117
Gambar 5.56 Hasil Pengambilan kata Politisi Bigram tanpa Stopping... 118
(13)
xvii
Universitas Kristen Maranatha
Gambar 5.58 Hasil Pengambilan kata Politisi Trigram tanpa Stopping ... 119
Gambar 5.59 Hasil Pengambilan kata Artis Unigram dengan Stopping ... 120
Gambar 5.60 Hasil Pengambilan kata Artis Unigram tanpa Stopping ... 121
Gambar 5.61 Hasil Pengambilan kata Artis Bigram dengan Stopping ... 121
Gambar 5.62 Hasil Pengambilan kata Artis Bigram tanpa Stopping ... 122
Gambar 5.63 Hasil Pengambilan kata Artis Trigram dengan Stopping ... 123
Gambar 5.64 Hasil Pengambilan kata Artis Trigram tanpa Stopping... 123
Gambar 5.65 Hasil Pengambilan kata Pelajar Unigram dengan Stopping ... 124
Gambar 5.66 Hasil Pengambilan kata Pelajar Unigram tanpa Stopping ... 125
Gambar 5.67 Hasil Pengambilan kata Pelajar Bigram dengan Stopping ... 125
Gambar 5.68 Hasil Pengambilan kata Pelajar Bigram tanpa Stopping ... 126
Gambar 5.69 Hasil Pengambilan kata Pelajar Trigram dengan Stopping ... 126
Gambar 5.70 Hasil Pengambilan kata Pelajar Trigram tanpa Stopping ... 127
Gambar 5.71 Hasil Pengambilan kata Musisi Unigram dengan Stopping ... 128
Gambar 5.72 Hasil Pengambilan kata Musisi Unigram tanpa Stopping... 128
Gambar 5.73 Hasil Pengambilan kata Musisi Bigram dengan Stopping ... 129
Gambar 5.74 Hasil Pengambilan kata Musisi Bigram tanpa Stopping ... 130
Gambar 5.75 Hasil Pengambilan kata Musisi Trigram dengan Stopping ... 130
Gambar 5.76 Hasil Pengambilan kata Musisi Trigram tanpa Stopping ... 131
Gambar 5.77 Bobot nilai kata baru untuk pekerjaan politisi ... 143
Gambar 5.78 Bobot nilai kata baru untuk pekerjaan artis... 143
Gambar 5.79 Bobot nilai kata baru untuk pekerjaan pelajar... 144
(14)
xviii
Universitas Kristen Maranatha
DAFTAR PSEUDOCODE
Pseudocode 4.1 Pseudocode untuk Pemecahan Kata secara N-Gram ... 52 Pseudocode 4.2 Pseudocode untuk Perhitungan Metode Naïve Bayes Binomial ... 53 Pseudocode 4.3 Perhitungan untuk Metode Naïve Bayes Multinomial ... 55
(15)
1
Universitas Kristen Maranatha
1
BAB I
PENDAHULUAN
1.1 Latar BelakangSejak ditemukannya sistem internet, orang-orang dapat berkomunikasi atau bersosialisasi dengan mudah. Seiringan dengan berkembangnya pengguna internet, semakin banyak jejaring sosial yang dapat digunakan untuk saling berkomunikasi, seperti Facebook, Twitter, Ask.fm, Path, dan lain-lain. Dengan munculnya banyak media sosial, semakin banyak juga orang-orang yang menuliskan opini atau pendapat mereka terhadap suatu masalah yang sedang terjadi di dunia nyata pada media sosial yang ada.
Orang-orang yang terdapat pada suatu golongan pekerjaan yang sama pada umumnya akan menulis pendapat yang hampir sama terkait dengan suatu masalah yang sedang muncul, dan setiap golongan pekerjaan memiliki kata yang paling sering muncul yang berbeda. Dengan demikian, dibuatlah penelitian ini yang bertujuan untuk membuat aplikasi yang dapat mendeteksi pekerjaan seseorang lewat tweet yang ditulis dengan cara mengidentifikasi gaya bahasa yang digunakan oleh sang penulis tweet, lalu mencocokkannya dengan training dataset yang dimiliki.
1.2 Rumusan Masalah
Berdasarkan uraian latar belakang masalah, masalah-masalah yang muncul dan dapat diidentifikasi adalah bagaimana membuat aplikasi yang dapat mendeteksi pekerjaan seseorang lewat tweet yang ditulis dengan dasar hipotesis bahwa dengan kemunculan kata tertentu secara n-gram dapat menentukan jenis pekerjaan seseorang.
1.3 Tujuan Pembahasan
Berdasarkan latar belakang dan rumusan masalah, maka dapat diambil tujuannya untuk membuat aplikasi yang dapat mendeteksi pekerjaan seseorang lewat tweet yang ditulis.
(16)
2
Universitas Kristen Maranatha 1.4 Batasan Masalah
Batasan masalah yang terdapat pada penelitian ini adalah:
1. Memilih empat profesi sebagai acuan penelitian (politisi, artis, musisi, dan pelajar). 2. Mengambil semua tweet baik tweet murni maupun re-tweet dengan asumsi re-tweet
kemungkinan besar memiliki konten atau isi yang sesuai dengan pekerjaan masing-masing.
3. Pembuangan emoticon masih belum semua dilakukan (hanya menghilangkan karakter Non-ASCII).
1.5 Ruang Lingkup Kajian
Ruang Lingkup yang terdapat dalam Software adalah: 1. Input: tweet pengguna media sosial Twitter.
2. Output: hasil dari pengujian profiling penulis tweet yang isinya adalah pekerjaan penulis tweet.
1.6 Sumber Data
Sumber data yang digunakan untuk pembuatan aplikasi ini diperoleh dari dokumen-dokumen dari pihak yang terkait yaitu tweet dari pengguna masing-masing kelompok yang sudah ditentukan. Kelompok yang sudah ditentukan adalah musisi, pelajar, artis, dan politikus.
1.7 Sistematika Penyajian
Sistematika penyajian dari penyusunan laporan ini adalah sebagai berikut: BAB I. Pendahuluan
Bab ini berisi tentang pendahuluan yang terdiri dari latar belakang, rumusan masalah, tujuan pembahasan, ruang lingkup kajian, sumber data, dan sistematika penyajian Laporan Tugas Akhir.
(17)
3
Universitas Kristen Maranatha Bab ini berisi tentang penjelasan teori-teori yang berkatian dengan pembuatan sistem dan mendukung pembuatan sistem yang ada
BAB III. Analisis dan Rancangan Sistem
Bab ini berisi tentang penjelasan analisis suatu keadaan, kebutuhan sistem, perancangan sistem, UML, dan gambaran arsitektur sistem.
BAB IV. Pengembangan Perangkat Lunak
Bab ini berisi tentang penjelasan perencanaan tahap implementasi, proses perkembangan implementasi proyek, penjelasan mengenai realisasi fungsionalitas dan User Interface Design yang sudah dibuat.
BAB V. Pembahasan dan Uji Coba Hasil Penelitian
Bab ini berisi tentang penjelasan rencana pengujian sistem serta pengujian akan diuji dan dilakukan.
BAB VI. Simpulan dan Saran
Bab ini berisi kesimpulan dari pembahasan pada perancangan serta analisa pengujian aplikasi yang dibuat
(18)
147
Universitas Kristen Maranatha
6
BAB VI
SIMPULAN DAN SARAN
6.1 Simpulan
Kesimpulan yang diperoleh dari hasil analisis, pengambilan data, implementasi, dan pengujian aplikasi ini adalah:
1. Menggunakan metode Naïve Bayes Classifier dengan dasar nilai kemunculan kata tertentu, aplikasi dapat mendeteksi pekerjaan dari penulis tweet.
2. Isi dari tweet yang terdapat di dalam Twitter tidak memiliki struktur dan bahasa yang baku. (Lihat pada Bab V bagian 5.4 dan 5.10).
3. Pembentukan model masing-masing pekerjaan secara Naive Bayes Multinomial lebih stabil dibandingkan dengan pembentukan model dengan Naïve Bayes Binomial. 4. Metode pemecahan kata secara n-gram yang paling cocok digunakan untuk tweet pada
media sosial Twitter adalah unigram. (Lihat pada Bab V bagian 5.8)
5. Kata-kata yang sering muncul di dalam tweet merupakan stopwords, sehingga jika proses pembentukan model menggunakan fitur pencarian dan penggantian stopwords
dengan huruf ‘s’, kata yang paling sering muncul adalah huruf ‘s’ untuk masing -masing model pekerjaan (Lihat pada Bab V bagian 5.4).
6. Naive Bayes Binomial memberikan hasil pengujian kesalahan tipe satu lebih baik
dibandingkan dengan metode Naïve Bayes Multinomial.
6.2 Saran
Berikut ini adalah saran-saran yang bisa dipakai untuk mengembangkan aplikasi: 1. Lingkup pekerjaan yang diuji diperbanyak.
2. Mencari solusi untuk menghilangkan semua emoticon
3. Menambah list stopwords, seperti kemungkinan singkatan-singkatan (Bab 5.10) 4. Menggunakan fitur stemming untuk mencari kata-kata yang bermakna sama walaupun
bentuk katanya berbeda (Bab 5.10)
(19)
148
Universitas Kristen Maranatha
DAFTAR PUSTAKA
Balagurusamy, E. (2007). Programming With Java:A Primer 3E. New Delhi: Tata McGraw-Hill Publishing Company Limited.
Bui, A. A., & Taira, R. K. (2010). Medical Imaging Informatics. London: Springer Science+Business Media, LLC.
Go, A., Huang, L., & Bhayani, R. (2009). Twitter Sentiment Analysis. Stanford: Stanford University.
Hamzah, A. (2012). Klasifikasi Teks dengan Naive Bayes Classifier(NBC) untuk Pengelompokan Teks Berita dan Abstract Akademis. Yogyakarta: Institut Sains dan Teknologi AKPRIND.
Manning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to Information Retrieval. Cambridge: Cambridge University Press.
Metsis, V., Androutsopoulos, I., & Paliouras, G. (2006). Spam Filtering with Naive Bayes - Which Naive Bayes? CEAS 2006 - Third Conference on Email and Anti-Spam. California.
Pak, A., & Paroubek, P. (2010). Twitter as a Corpus for Sentiment Analysis and Opinion Mining. Orsay Cedex: Universit´e de Paris-Sud.
Pennacchiotti, M., & Popescu, A.-M. (2011). A Machine Learning Approach to Twitter User Classification. Sunnyvale: Association for the Advancement of Artificial. Poo, D., Kiong, D., & Ashok, M. (2008). Object-Oriented Programming and Java.
London: Springer-Verlag London Limited 2008.
Reilly, T. O., & Milstein, S. (2011). The Twitter Book. Sebastopol: O'Reilly Media, Inc. Rennie, J. D. (2001). Improving Multi-class Text Classification with Naive Bayes.
Massachusetts: Massachusetts Institute of Technology.
Rish, I. (2001). An empirical study of the naive Bayes classifier. IJCAI 2001 workshop on empirical methods in artificial intelligence, 41-46.
Sahami, M., Dumais, S., Heckerman, D., & Horvitz, E. (n.d.). A Bayesian Approach to Filtering Junk E-Mail. Stanford: Stanford University.
(20)
149
Universitas Kristen Maranatha Wenyuan, D., Gui-Rong, X., Qiang, Y., & Yong, Y. (2007). Transferring Naive Bayes Classifiers for Text Classification. Association for the Advancement of Artificial.
(1)
1
Universitas Kristen Maranatha
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Sejak ditemukannya sistem internet, orang-orang dapat berkomunikasi atau bersosialisasi dengan mudah. Seiringan dengan berkembangnya pengguna internet, semakin banyak jejaring sosial yang dapat digunakan untuk saling berkomunikasi, seperti Facebook, Twitter, Ask.fm, Path, dan lain-lain. Dengan munculnya banyak media sosial, semakin banyak juga orang-orang yang menuliskan opini atau pendapat mereka terhadap suatu masalah yang sedang terjadi di dunia nyata pada media sosial yang ada.
Orang-orang yang terdapat pada suatu golongan pekerjaan yang sama pada umumnya akan menulis pendapat yang hampir sama terkait dengan suatu masalah yang sedang muncul, dan setiap golongan pekerjaan memiliki kata yang paling sering muncul yang berbeda. Dengan demikian, dibuatlah penelitian ini yang bertujuan untuk membuat aplikasi yang dapat mendeteksi pekerjaan seseorang lewat tweet yang ditulis dengan cara mengidentifikasi gaya bahasa yang digunakan oleh sang penulis tweet, lalu mencocokkannya dengan training dataset yang dimiliki.
1.2 Rumusan Masalah
Berdasarkan uraian latar belakang masalah, masalah-masalah yang muncul dan dapat diidentifikasi adalah bagaimana membuat aplikasi yang dapat mendeteksi pekerjaan seseorang lewat tweet yang ditulis dengan dasar hipotesis bahwa dengan kemunculan kata tertentu secara n-gram dapat menentukan jenis pekerjaan seseorang.
1.3 Tujuan Pembahasan
Berdasarkan latar belakang dan rumusan masalah, maka dapat diambil tujuannya untuk membuat aplikasi yang dapat mendeteksi pekerjaan seseorang lewat tweet yang ditulis.
(2)
2
Universitas Kristen Maranatha 1.4 Batasan Masalah
Batasan masalah yang terdapat pada penelitian ini adalah:
1. Memilih empat profesi sebagai acuan penelitian (politisi, artis, musisi, dan pelajar). 2. Mengambil semua tweet baik tweet murni maupun re-tweet dengan asumsi re-tweet
kemungkinan besar memiliki konten atau isi yang sesuai dengan pekerjaan masing-masing.
3. Pembuangan emoticon masih belum semua dilakukan (hanya menghilangkan karakter Non-ASCII).
1.5 Ruang Lingkup Kajian
Ruang Lingkup yang terdapat dalam Software adalah: 1. Input: tweet pengguna media sosial Twitter.
2. Output: hasil dari pengujian profiling penulis tweet yang isinya adalah pekerjaan penulis tweet.
1.6 Sumber Data
Sumber data yang digunakan untuk pembuatan aplikasi ini diperoleh dari dokumen-dokumen dari pihak yang terkait yaitu tweet dari pengguna masing-masing kelompok yang sudah ditentukan. Kelompok yang sudah ditentukan adalah musisi, pelajar, artis, dan politikus.
1.7 Sistematika Penyajian
Sistematika penyajian dari penyusunan laporan ini adalah sebagai berikut: BAB I. Pendahuluan
Bab ini berisi tentang pendahuluan yang terdiri dari latar belakang, rumusan masalah, tujuan pembahasan, ruang lingkup kajian, sumber data, dan sistematika penyajian Laporan Tugas Akhir.
(3)
3
Universitas Kristen Maranatha Bab ini berisi tentang penjelasan teori-teori yang berkatian dengan pembuatan sistem dan mendukung pembuatan sistem yang ada
BAB III. Analisis dan Rancangan Sistem
Bab ini berisi tentang penjelasan analisis suatu keadaan, kebutuhan sistem, perancangan sistem, UML, dan gambaran arsitektur sistem.
BAB IV. Pengembangan Perangkat Lunak
Bab ini berisi tentang penjelasan perencanaan tahap implementasi, proses perkembangan implementasi proyek, penjelasan mengenai realisasi fungsionalitas dan User Interface Design yang sudah dibuat.
BAB V. Pembahasan dan Uji Coba Hasil Penelitian
Bab ini berisi tentang penjelasan rencana pengujian sistem serta pengujian akan diuji dan dilakukan.
BAB VI. Simpulan dan Saran
Bab ini berisi kesimpulan dari pembahasan pada perancangan serta analisa pengujian aplikasi yang dibuat
(4)
147
Universitas Kristen Maranatha
6
BAB VI
SIMPULAN DAN SARAN
6.1 Simpulan
Kesimpulan yang diperoleh dari hasil analisis, pengambilan data, implementasi, dan pengujian aplikasi ini adalah:
1. Menggunakan metode Naïve Bayes Classifier dengan dasar nilai kemunculan kata tertentu, aplikasi dapat mendeteksi pekerjaan dari penulis tweet.
2. Isi dari tweet yang terdapat di dalam Twitter tidak memiliki struktur dan bahasa yang baku. (Lihat pada Bab V bagian 5.4 dan 5.10).
3. Pembentukan model masing-masing pekerjaan secara Naive Bayes Multinomial lebih stabil dibandingkan dengan pembentukan model dengan Naïve Bayes Binomial. 4. Metode pemecahan kata secara n-gram yang paling cocok digunakan untuk tweet pada
media sosial Twitter adalah unigram. (Lihat pada Bab V bagian 5.8)
5. Kata-kata yang sering muncul di dalam tweet merupakan stopwords, sehingga jika proses pembentukan model menggunakan fitur pencarian dan penggantian stopwords
dengan huruf ‘s’, kata yang paling sering muncul adalah huruf ‘s’ untuk masing -masing model pekerjaan (Lihat pada Bab V bagian 5.4).
6. Naive Bayes Binomial memberikan hasil pengujian kesalahan tipe satu lebih baik dibandingkan dengan metode Naïve Bayes Multinomial.
6.2 Saran
Berikut ini adalah saran-saran yang bisa dipakai untuk mengembangkan aplikasi: 1. Lingkup pekerjaan yang diuji diperbanyak.
2. Mencari solusi untuk menghilangkan semua emoticon
3. Menambah list stopwords, seperti kemungkinan singkatan-singkatan (Bab 5.10) 4. Menggunakan fitur stemming untuk mencari kata-kata yang bermakna sama walaupun
bentuk katanya berbeda (Bab 5.10)
(5)
148
Universitas Kristen Maranatha
DAFTAR PUSTAKA
Balagurusamy, E. (2007). Programming With Java:A Primer 3E. New Delhi: Tata McGraw-Hill Publishing Company Limited.
Bui, A. A., & Taira, R. K. (2010). Medical Imaging Informatics. London: Springer Science+Business Media, LLC.
Go, A., Huang, L., & Bhayani, R. (2009). Twitter Sentiment Analysis. Stanford: Stanford University.
Hamzah, A. (2012). Klasifikasi Teks dengan Naive Bayes Classifier(NBC) untuk Pengelompokan Teks Berita dan Abstract Akademis. Yogyakarta: Institut Sains dan Teknologi AKPRIND.
Manning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to Information Retrieval. Cambridge: Cambridge University Press.
Metsis, V., Androutsopoulos, I., & Paliouras, G. (2006). Spam Filtering with Naive Bayes - Which Naive Bayes? CEAS 2006 - Third Conference on Email and Anti-Spam. California.
Pak, A., & Paroubek, P. (2010). Twitter as a Corpus for Sentiment Analysis and Opinion Mining. Orsay Cedex: Universit´e de Paris-Sud.
Pennacchiotti, M., & Popescu, A.-M. (2011). A Machine Learning Approach to Twitter User Classification. Sunnyvale: Association for the Advancement of Artificial. Poo, D., Kiong, D., & Ashok, M. (2008). Object-Oriented Programming and Java.
London: Springer-Verlag London Limited 2008.
Reilly, T. O., & Milstein, S. (2011). The Twitter Book. Sebastopol: O'Reilly Media, Inc. Rennie, J. D. (2001). Improving Multi-class Text Classification with Naive Bayes.
Massachusetts: Massachusetts Institute of Technology.
Rish, I. (2001). An empirical study of the naive Bayes classifier. IJCAI 2001 workshop on empirical methods in artificial intelligence, 41-46.
Sahami, M., Dumais, S., Heckerman, D., & Horvitz, E. (n.d.). A Bayesian Approach to Filtering Junk E-Mail. Stanford: Stanford University.
(6)
149
Universitas Kristen Maranatha Wenyuan, D., Gui-Rong, X., Qiang, Y., & Yong, Y. (2007). Transferring Naive Bayes Classifiers for Text Classification. Association for the Advancement of Artificial.