ANALISIS SENTIMEN TERHADAP AKUN PENYEBAR UJARAN … · 2020. 4. 24. · ANALISIS SENTIMEN TERHADAP...

18
ANALISIS SENTIMEN TERHADAP AKUN PENYEBAR UJARAN KEBENCIAN DI TWITTER Oleh Restu Zakharia NIM: 622014004 Skripsi Untuk melengkapi salah satu syarat memperoleh Gelar Sarjana Teknik Program Studi Sistem Komputer Fakultas Teknik Elektronika dan Komputer Universitas Kristen Satya Wacana Salatiga Mei 2019

Transcript of ANALISIS SENTIMEN TERHADAP AKUN PENYEBAR UJARAN … · 2020. 4. 24. · ANALISIS SENTIMEN TERHADAP...

  • ANALISIS SENTIMEN TERHADAP AKUN PENYEBAR UJARAN

    KEBENCIAN DI TWITTER

    Oleh

    Restu Zakharia

    NIM: 622014004

    Skripsi

    Untuk melengkapi salah satu syarat memperoleh

    Gelar Sarjana Teknik

    Program Studi Sistem Komputer

    Fakultas Teknik Elektronika dan Komputer

    Universitas Kristen Satya Wacana

    Salatiga

    Mei 2019

  • ANALISIS SENTIMEN TERHADAP AKUN PENYEBAR UJARAN

    KEBENCIAN DI TWITTER

    Oleh

    Restu Zakharia

    NIM: 622014004

    Skripsi

    Untuk melengkapi salah satu syarat memperoleh

    Gelar Sarjana Teknik

    Program Studi Sistem Komputer

    Fakultas Teknik Elektronika dan Komputer

    Universitas Kristen Satya Wacana

    Salatiga

    Mei 2019

  • ii

    ABSTRACT

    Social media has become popular for Indonesian people, including children,

    teenagers and adults. Social media, Twitter for example, is used to disseminate

    information to public, which then can be easily replied by others. Of course, there might

    be positive or negative responses. Based on that reason, a tweet detection system

    containing hate speech on Twitter using DeepDetect® Server is proposed.

    The design of this system aims to classify tweets containing hate speech on

    Twitter based on tweets that have been uploaded. This classification is divided into 2

    types of classes, namely hate speech and neutral. The testing phase is done by entering

    input in the form of text/tweet sentences, tweet URLs and Twitter account names. The

    final result of the testing of the system in this paper is the percentage of tweets

    containing hate speech and neutral.

    After conducting several training processes using the multilayer perceptron

    method, the best machine learning model was obtained with 50 hidden neurons in 1

    layer using relu activations, learning rate of 0.009, batch size of 64, test split of 10%

    and iterations of 1000. From the training results obtained the best model with precision

    of 90.42 %, recall of 90.30 % and accuracy of 90.15 %. Tests were carried out on 31

    tweets and 6 different Twitter accounts. From 31 tweets, 93.55% successed to detect

    correctly and 6.45% were incorrect. The incorrect prediction results are due to the lack

    of the number of datasets used in this thesis. The percentage of success can be increased

    by adding more valid datasets so that predicted tweets can vary.

    Keywords : Twitter, Analisis Sentimen, Multilayer Perceptron, DeepDetect®

  • iii

    KATA PENGANTAR

    Puji syukur dan terima kasih penulis haturkan kepada Tuhan Yesus Kristus atas

    segala berkat kebaikan, kesehatan, rejeki, kekuatan dan kasih setia-Nya yang senantiasa

    selama ini menyertai penulis, akhirnya penulis dapat menyelesaikan perancangan serta

    penulisan skripsi sebagai syarat untuk menyelesaikan studi di Fakultas Teknik

    Elektronika dan Komputer yang tercinta. Terima kasih Allah Bapa Yang Maha Kuasa

    atas segala kasih sayang, kekuatan, pengampunan, ujian, didikan, senang, tawa, sedih,

    susah selama berkuliah sehingga membuat penulis menjadi orang yang seperti sekarang.

    Pada kesempatan ini penulis juga hendak mengucapkan terima kasih yang sebesar-

    besarnya atas dukungan dan doa dari orang-orang terkasih di sekeliling penulis.

    1. Bapak Sutopo dan Ibu Haryati orang tua yang sangat luar biasa sampai

    kapanpun, yang selalu memberi dukungan, kasih sayang, kesabaran,

    kemarahan dan keramahan, uang saku dan doa secara terus-menerus. Semoga

    sehat selalu dan panjang umur, sampai nantinya penulis dapat membahagiakan

    Bapak dan Ibu. Adikku tercinta Tabita Christinne Setefanus terima kasih

    untuk support dan doanya, kakakku Dian Ari Tri Wulan sukses untuk kita

    semua. Love you my family!

    2. Bapak Handoko, Ph.D, dan Bapak Atyanta N. R., M.B.A., M.T., selaku

    pembimbing I dan II, terima kasih atas bimbingan dan arahan serta kesediaan

    waktu dan tenaga untuk membimbing penulis selama pengerjaan skripsi ini.

    3. Dosen-dosen pengajar, karyawan dan laboran FTEK, Mbak Rista, Mbak Yola

    dan Mbak Ragil terimakasih atas bantuan dan bimbingannya.

    4. Dinindira Kesaktianningtyas, terima kasih atas semua bantuan, dukungan,

    perhatian, kasih dan doa yang diberikan kepada penulis, you’re the best!!

    5. Saudaraku seangkatan 2014, Dido yang selalu menjadi teman curhat disaat

    galau, Eno sang penghibur, Melky konco rono rene, Gondes ketua angkatan

    yang super duper sekali, Lisbeth, Rizky, Bancak, Fikra, Elisa, suhu Abdusy

    dan teman teman 2014 yang tidak dapat penulis sebutkan satu-satu. Kalian

    semua keluarga baruku.

    6. Mas Wawa terimakasih atas ilmu dan bimbingannya dalam bidang komputasi.

    7. Mas-masku yang ganteng-ganteng, mas Ahong, mas Rikco, mas Gambliss,

    mas Boy, mas Joy, mas Riky dan mas-mas yang lain. Adi-adiku, Rein, Pandu,

  • iv

    Yougi, Imad, Hoeko, Ferdi dan adek-adek yang lain, semangat buat kalian

    semua...!!

    8. Keluarga kons Jambewangi 25, Dido, Eno, Rein, Pandu dan Yougi.

    Terimakasih untuk semuanya. Kenangan hebat !!

    9. Berbagai pihak yang tidak dapat disebutkan satu persatu yang telah turut andil

    dalam proses pengerjaan skripsi ini., penulis ucapkan terimakasih.

    Penulis menyadari bahwa skripsi ini masih jauh dari kata “sempurna”, oleh karena

    itu penulis sangat mengharapkan kritik maupun saran dari pembaca sekalian sehingga

    skripsi ini dapat berguna bagi kemajuan teknik elektronika. Akhir kata semoga

    pngerjaan dan penulisan skripsi ini dapat bermanfaat dan boleh menjadi inspirasi bagi

    siapapun yang membacanya.

    Salatiga, 30 April 2019

    Penulis

  • v

    DAFTAR ISI

    INTISARI .............................................................................................. i

    ABSTRACT .......................................................................................................... ii

    KATA PENGANTAR .......................................................................................... iii

    DAFTAR ISI ......................................................................................................... v

    DAFTAR GAMBAR ............................................................................................ ix

    DAFTAR TABEL ................................................................................................. xi

    BAB I PENDAHULUAN ............................................................................. 1

    1.1. Tujuan ......................................................................................... 1

    1.2. Latar Belakang ............................................................................ 1

    1.3. Spesifikasi Sistem ....................................................................... 2

    1.4. Sistematika Penulisan ................................................................. 3

    BAB II LANDASAN TEORI ......................................................................... 4

    2.1. Ujaran kebencian (Hate Speech) ................................................. 4

    2.2. Text Mining ................................................................................. 6

    2.3. Analisis Sentimen ....................................................................... 6

    2.4. Jaringan Syaraf Tiruan (Artificial Neural Networks) .................. 6

    2.5. Multilayer Perceptron (MLP) ..................................................... 8

    2.6. Fungsi Aktivasi ........................................................................... 9

    2.6.1. Fungsi Aktivasi Sigmoid .................................................. 9

    2.6.2. Fungsi Aktivasi Tanh ........................................................ 9

    2.6.3. Fungsi Aktivasi ReLu ....................................................... 10

  • vi

    2.6.4. Fungsi Aktivasi PreLu ...................................................... 11

    2.7. DeepDetect Server ...................................................................... 11

    2.7.1. Parameter Membuat Machine Learning Service .............. 12

    2.7.2. Parameter Tahap Pelatihan ............................................... 14

    2.7.3. Parameter Tahap Pengujian .............................................. 16

    2.8. Library Caffe .............................................................................. 17

    2.9. Precision, Recall dan Accuracy .................................................. 18

    BAB III PERANCANGAN ALAT .................................................................. 19

    3.1. Gambaran Sistem ........................................................................ 19

    3.2. Kebutuhan Perancangan Sistem .................................................. 20

    3.2.1. Kebutuhan Data ................................................................ 20

    3.2.2. Perancangan Perangkat Keras dan Lunak ......................... 21

    3.3. Data Twitter ................................................................................ 22

    3.3.1. Data Tweet ........................................................................ 22

    3.3.2. Klasifikasi Tweet ............................................................... 22

    3.4. Crawler Data ............................................................................... 23

    3.4.1. Twitter API ....................................................................... 23

    3.4.1. Pengambilan Data ............................................................. 23

    3.5. Simple Web Server ...................................................................... 25

    3.5. Perancangan User Interface ........................................................ 27

  • vii

    BAB IV PENGUJIAN DAN ANALISIS ......................................................... 29

    4.1. Hasil Data .................................................................................... 29

    4.2. Skenario Pengujian terhadap Algoritma Multilayer Perceptron 29

    4.2.1. Skenario Pengujian Jumlah Layer Tersembunyi ............. 31

    4.2.2. Skenario Pengujian Fungsi Aktivasi ................................. 32

    4.2.3. Skenario Pengujian Partisi Data (test split) ...................... 32

    4.2.4. Skenario Pengujian Jumlah Iterasi ................................... 33

    4.2.5. Skenario Pengujian Learning Rate ................................... 33

    4.2.6. Skenario Pengujian Batch Size ......................................... 34

    4.3. Skenario Pengujian Pada Aplikasi Web ..................................... 34

    4.3.1. Input Berupa Tweet ........................................................... 34

    4.3.2. Input Berupa URL Tweet .................................................. 36

    4.3.3. Input Berupa Nama Akun Twitter .................................... 36

    4.4. Hasil Pengujian Algoritma Multilayer Perceptron .................... 37

    4.4.1. Hasil Pengujian Jumlah Layer Tersembunyi ................... 37

    4.4.2. Hasil Pengujian Fungsi Aktivasi....................................... 39

    4.4.3. Hasil Pengujian Partisi Data (test split) ............................ 40

    4.4.4. Hasil Pengujian Jumlah Iterasi ........................................ 41

    4.4.5. Hasil Pengujian Learning Rate ......................................... 43

    4.4.6. Hasil Pengujian Batch Size ............................................... 44

    4.5. Hasil Pengujian Pada Aplikasi Web ........................................... 46

  • viii

    4.5.1. Hasil Pengujian Pada Input Berupa Tweet ........................ 46

    4.5.2. Hasil Pengujian Pada Input Berupa URL Tweet ............... 48

    4.5.3. Hasil Pengujian Pada Input Berupa Nama Akun Twitter . 48

    BAB V KESIMPULAN DAN SARAN .......................................................... 50

    5.1. Kesimpulan ................................................................................. 50

    5.2. Saran ........................................................................................... 50

    DAFTAR PUSTAKA ........................................................................................... 52

    LAMPIRAN DOKUMENTASI DATASET ........................................................ 53

    LAMPIRAN DOKUMENTASI PENGUJIAN SISTEM ..................................... 55

  • ix

    DAFTAR GAMBAR

    Gambar 2.1 Arsitektur Jaringan Syaraf Tiruan ...................................................... 7

    Gambar 2.2. Arsitektur Multilayer Perceptron. ...................................................... 8

    Gambar 2.3. Fungsi Aktivasi Sigmoid. ................................................................... 9

    Gambar 2.4. Fungsi Aktivasi Tanh ......................................................................... 10

    Gambar 2.5. Fungsi Aktivasi ReLu ........................................................................ 10

    Gambar 2.6. Fungsi Aktivasi PreLu ........................................................................ 11

    Gambar 2.7. Arsitektur Caffe .................................................................................. 17

    Gambar 3.1. Gambaran Cara Kerja Sistem ............................................................. 19

    Gambar 3.2. Contoh Tweet yang Akan Diambil ..................................................... 22

    Gambar 3.3. Pelabelan Data Latih .......................................................................... 22

    Gambar 3.4. Contoh Data Latih Sebelum Tahap Cleaning .................................... 23

    Gambar 3.5. Flow Chart Pengambilan Data Tweet ................................................ 24

    Gambar 3.6. Diagram Aplikasi Web Server ............................................................ 26

    Gambar 3.7. Flow Chart Web Server ...................................................................... 26

    Gambar 3.8. User Interface A ................................................................................. 27

    Gambar 3.9. User Interface B ................................................................................. 28

    Gambar 4.1. Tweet Ahmad Dhani ........................................................................... 35

    Gambar 4.2. Grafik Perbandingan Precision, Recall dan Accuracy pada Pengujian

    Jumlah Layer Tersembunyi ................................................................ 38

    Gambar 4.3. Grafik Perbandingan F1 dan Train Loss pada Pengujian

    Jumlah Layer Tersembunyi ................................................................ 38

  • x

    Gambar 4.4. Grafik Perbandingan Precision, Recall dan Accuracy pada Pengujian

    Fungsi Aktivasi .................................................................................. 39

    Gambar 4.5. Grafik Perbandingan F1 dan Train Loss pada Pengujian Fungsi

    Aktivasi .............................................................................................. 39

    Gambar 4.6. Grafik Perbandingan Precision, Recall dan Accuracy pada Pengujian

    Partisi Data ......................................................................................... 40

    Gambar 4.7. Grafik Perbandingan F1 dan Train Loss pada Pengujian Partisi

    Data .................................................................................................... 41

    Gambar 4.8. Grafik Perbandingan Precision, Recall dan Accuracy pada Pengujian

    Jumlah Iterasi ..................................................................................... 42

    Gambar 4.9. Grafik Perbandingan F1 dan Train Loss pada Pengujian Jumlah

    Iterasi .................................................................................................. 42

    Gambar 4.10. Grafik Perbandingan Precision, Recall dan Accuracy pada Pengujian

    Learning Rate ..................................................................................... 43

    Gambar 4.11. Grafik Perbandingan F1 dan Train Loss pada Pengujian Learning

    Rate .................................................................................................... 44

    Gambar 4.12. Grafik Perbandingan Precision, Recall dan Accuracy pada Pengujian

    Batch Size ........................................................................................... 45

    Gambar 4.13. Grafik Perbandingan F1 dan Train Loss pada Pengujian Batch Size . 45

  • xi

    DAFTAR TABEL

    Tabel 2.1. Perbedaan Kebencian dan Kemarahan Menurut Aristoteles ............. 4

    Tabel 2.2. Perbandingan Library di DeepDetect Berdasarkan Fungsionalitas ... 11

    Tabel 2.3. Perbandingan Library di DeepDetect Berdasarkan GPU Support ..... 12

    Tabel 2.4. Perbandingan Library di DeepDetect Berdasarkan Data Masukan ... 12

    Tabel 2.5. Deskripsi Query Parameter Create Machine Learning Service ......... 13

    Tabel 2.6. Deskripsi Parameter di Machine Learning Library Caffe ................. 13

    Tabel 2.7. Deskripsi Parameter di Model Object ................................................ 14

    Tabel 2.8. Deskripsi Parameter di Input Object .................................................. 14

    Tabel 2.9. Deskripsi Parameter Train dengan Library Caffe ............................. 15

    Tabel 2.10. Deskripsi Query Parameter Train Machine Learning Service. .......... 15

    Tabel 2.11. Deskripsi Parameter Train Library Caffe untuk Input ...................... 15

    Tabel 2.12. Deskripsi Parameter Train Library Caffe untuk Net ......................... 16

    Tabel 2.13. Deskripsi Parameter Train Library Caffe untuk Solver ..................... 16

    Tabel 2.14. Deskripsi Parameter Train Library Caffe untuk Output .................... 16

    Tabel 2.15. Deskripsi Parameter Predict dengan Library Caffe ........................... 17

    Tabel 2.16. Deskripsi Query Parameter Predict Machine Learning Service ........ 17

    Tabel 3.1. Contoh Penerapan Case Folding ....................................................... 25

    Tabel 3.2. Contoh Penerapan Cleaning .............................................................. 25

    Tabel 4.1. Skenario Pengujian Jumlah Layer Tersembunyi ............................... 31

    Tabel 4.2. Skenario Pengujian Fungsi Aktivasi .................................................. 32

    Tabel 4.3. Skenario Pengujian Partisi Data (test split) ....................................... 32

    Tabel 4.4. Skenario Pengujian Jumlah Iterasi .................................................... 33

    Tabel 4.5. Skenario Pengujian Learning Rate .................................................... 33

    Tabel 4.6. Skenario Pengujian Batch Size ........................................................... 34

  • xii

    Tabel 4.7. Skenario Pengujian Input Berupa Teks/Kalimat dari Data Baru ....... 35

    Tabel 4.8. Skenario Pengujian Input Berupa Teks/Kalimat dari Data

    Training .............................................................................................. 36

    Tabel 4.9. Skenario Pengujian Input Berupa URL Tweet ................................... 36

    Tabel 4.10. Skenario Pengujian Input Berupa Nama Akun Twitter ..................... 37

    Tabel 4.11. Hasil Pengujian Jumlah Layer Tersembunyi ..................................... 37

    Tabel 4.12. Hasil Pengujian Fungsi Aktivasi ........................................................ 39

    Tabel 4.13. Hasil Pengujian Partisi Data (test split) ............................................. 40

    Tabel 4.14. Hasil Pengujian Jumlah Iterasi .......................................................... 41

    Tabel 4.15. Hasil Pengujian Learning Rate .......................................................... 43

    Tabel 4.16. Hasil Pengujian Batch Size ................................................................ 44

    Tabel 4.17. Hasil Pengujian Input Berupa Teks/Kalimat dari Data Baru ............. 46

    Tabel 4.18. Hasil Pengujian Input Berupa Teks/Kalimat dari Data Training ....... 47

    Tabel 4.19. Hasil Pengujian Input Berupa URL Tweet ......................................... 48

    Tabel 4.20. Hasil Pengujian Input Berupa Nama Akun Twitter ........................... 49