IMPLEMENTASI METODE K-NEAREST NEIGHBOR (K-NN) UNTUK IDENTIFIKASI UJARAN KEBENCIAN TERHADAP
TOKOH POLITIK PADA TWITTER
TUGAS AKHIR
Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Teknik
Pada Jurusan Teknik Informatika
Oleh:
RIDHO DARMAWAN 11551102852
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SULTAN SYARIF KASIM RIAU PEKANBARU
2019
ii
iii
iv
LEMBAR HAK ATAS KEKAYAAN INTELEKTUAL
Tugas Akhir yang tidak diterbitkan ini terdaftar dan tersedia di Perpustakaan Universitas Islam Negeri Sultan Syarif Kasim Riau adalah terbuka untuk umum dengan ketentuan bahwa hak cipta pada penulis. Referensi kepustakaan diperkenankan dicatat, tetapi pengutipan atau ringkasan hanya dapat dilakukan seizin penulis dan harus disertai dengan kebiasaan ilmiah untuk menyebutkan sumbernya.
Penggandaan atau penerbitan sebagian atau seluruh Tugas Akhir ini harus
memperoleh izin dari Dekan Fakultas Sains dan Teknologi Universitas Islam
Negeri Sultan Syarif Kasim Riau. Perpustakaan yang meminjamkan Tugas Akhir
ini untuk anggotanya diharapkan untuk mengisi nama, tanda peminjaman dan
tanggal pinjam.
v
LEMBAR PERNYATAAN
Dengan ini saya menyatakan bahwa dalam Tugas Akhir ini tidak terdapat karya yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu Perguruan Tinggi, dan sepanjang pengetahuan saya juga tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan oleh orang lain kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan didalam daftar pustaka.
Pekanbaru, 30 Desember 2019 Yang membuat pernyataan,
RIDHO DARMAWAN
11551102852
vi
LEMBAR PESEMBAHAN
Allah akan meninggikan derajat orang-orang yang beriman di antaramu dan orang-orang yang diberi ilmu pengetahuan.
--- Alhamdulillâh…
Rasa syukur kuhaturkan kepada-Mu, Yaa Allah yang Maha Ber-Ilmu, hanya karena karuniaMu sajalah hamba-Mu akhirnya dapat menyelesaikan Tugas Akhir
ini
***
Tugas Akhir ini kupersembahkan untuk Ayah dan Ibu.
Tentulah tidak akan tergantikan semua jasa, pengorbanan, tetes keringat dan rasa letih itu, hanya dengan karya kecil dariku ini... Namun semoga dengan ini, aku
dapat mengukir sebaris senyum bahagia di hati Ayah dan Ibu... Jika boleh kujabarkan cinta,, tentulah tidak pernah dapat seindah rasa syukurku menjadi anakmu... Terimakasih untuk semua rangkaian do’a, kasih sayang serta ilmu yang
berharga...
Dan tidak lupa kupersembahkan untuk semua adik-adik ku tersayang, terimakasih untuk semua dukungan dan doa yang telah diberikan selama ini...
Juga, kupersembahkan untuk semua keluargaku dan kerabat... Semua kesulitan seolah lenyap saat mengingat bahwa aku memiliki dukungan darimu semua. Aku
tahu, engkau semua berjuang jauh lebih keras dariku, namun selalu memiliki energi hebat untuk menyemangatiku...
Alhamdulillâh, Allah menganugerahiku
keluarga yang indah...
vii
IMPLEMENTASI METODE K-NEAREST NEIGHBOR (K-NN) UNTUK IDENTIFIKASI UJARAN KEBENCIAN TERHADAP
TOKOH POLITIK PADA TWITTER
RIDHO DARMAWAN 11551102852
Tanggal Sidang: 30 Desember 2019 Periode Wisuda:
Jurusan Teknik Informatika Fakultas Sains dan Teknologi
Universitas Islam Negeri Sultan Syarif Kasim Riau
ABSTRAK
Ujaran kebencian adalah suatu ucapan atau bahasa yang mengekspresikan suatu kebencian terhadap individu maupun kelompok yang bertujuan untuk menghina atau mempermalukan yang medianya bisa terdapat dimana saja, salah satunya Twitter. Twitter merupakan media sosial yang memungkinkan pengguna untuk menyampaikan perasaan dan opini melalui Tweet, termasuk Tweet yang mengandung ujaran kebencian. Tentunya dibutuhkan bantuan ahli bahasa untuk mengidentifikasi ujaran kebencian dimana hal itu dapat membutuhkan waktu yang lama sehingga dilakukan identifikasi menggunakan sistem. Penelitian ini menggunakan metode K-Nearest Neighbor. Data yang digunakan yaitu Tweet tentang tokoh politik. Data Tweet diperoleh berdasarkan komentar terhadap akun tokoh politik dan hashtag terkait tokoh tersebut dengan memanfaatkan Twitter API (Application Programming Interface). Penelitian ini menggunakan dataset 1000 data yang dibagi menjadi 500 data kelas kebencian dan 500 data kelas tidak kebencian. Hasil dari proses pengujian menggunakan confusion matrix memperoleh akurasi tertinggi yaitu sebesar 85%, recall sebesar 85.33%, precision sebesar 84.77%, dan error rate sebesar 15% pada model dataset 70%:30% dengan nilai k bernilai 11 dan threshold bernilai 20. Berdasarkan hasil penelitian dapat disimpulkan bahwa metode K-Nearest Neighbor baik dalam proses identifikasi ujaran kebencian pada media sosial Twitter.
Kata Kunci: Confusion Matrix, K-Nearest Neighbor, Threshold, Tokoh Politik, Twitter, Ujaran Kebencian
viii
IMPLEMENTATION OF THE K-NEAREST NEIGHBOR (K-NN) METHOD FOR IDENTIFYING HATE SPEECH AGAINST
POLITICAL FIGURES ON TWITTER
RIDHO DARMAWAN 11551102852
Date of Final Exam: December 30, 2019 Graduation Ceremony Period:
Department of Informatics Engineering Faculty of Science and Technology
State Islamic University of Sultan Syarif Kasim Riau
ABSTRACT
Hate speech is a speech or language that expresses a hatred of a individual or group who intends to insult or humiliate and the media can be found anywhere, one of them Twitter. Twitter is a social media that allows users to express feeling and opinions through Tweets, including Tweets that contain hate speech. Of course the help of linguist in needed to identify hate speech where it can take a long time so identification is done using the system. This research uses the K-Nearest Neighbor method. The data used are Tweets about political figures. Tweet data is obtained based on comments on the accounts of political figures and related hashtag of these figures by using the Twitter API (Application Programming Interface). This research using data as much as 1000 data is divided into 500 hate class data and 500 non hate class data. The test result using confusion matrix show the highest accuracy of 85%, recall of 85.33%, precision of 84.77%, and error rate of 15% in the 70% : 30% model with k value of 11 and threshold of 20. Based on the results of the research, the K-Nearest Neighbor method is good in the process of identifying hate speech on twitter social media.
Keywords: Confusion Matrix, Hate Speech, K-Nearest Neighbor, Political figure, Threshold, Twitter
ix
KATA PENGANTAR
Assalamua’alaikum Wa rahmatullahi Wabarakatuh
Alhamdulillahi rabbil’alamin, tak henti-hentinya penulis ucapkan kehadirat Tuhan yang tiada Tuhan selain Dia, Allah subhana wa ta’ala, yang dengan rahmat dan hidayahNya penulis mampu menyelesaikan Tugas Akhir ini dengan baik. Tidak lupa dan tak akan pernah lupa bershalawat kepada Nabi dan RasulNya, Nabi Muhammad SAW yang hanya menginginkan keimanan dan keselamatan bagi umatnya dan sangat belas kasihan lagi penyayang kepada orang-orang mukmin.
Tugas Akhir ini disusun sebagai salah satu syarat untuk mendapatkan gelar kesarjanaan pada jurusan Teknik Informatika Universitas Islam Negeri Sultan Syarif Kasim Riau. Banyak sekali pihak yang telah membantu penulis dalam penyusunan laporan ini, baik berupa bantuan materi ataupun berupa motivasi dan dukungan kepada penulis. Semua itu tentu terlalu banyak bagi penulis untuk membalasnya, namun pada kesempatan ini penulis hanya dapat mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. H. Ahmad Mujahidin, M.Ag selaku Rektor Universitas Islam Negeri Sultan Syarif Kasim Riau.
2. Bapak Dr. Ahmad Darmawi, M.Ag selaku Dekan Fakultas Sains dan Teknologi Universitas Islam Negeri Sultan Syarif Kasim Riau.
3. Ibu Elin Haerani, S.T., M.Kom, selaku Ketua Jurusan Teknik Informatika Universitas Islam Negeri Sultan Syarif Kasim Riau.
4. Bapak Muhammad Fikry, S.T., M.Sc., selaku dosen pembimbing I Tugas Akhir penulis, yang telah sangat banyak berbagi waktu, ilmu dan wawasan yang dimiliki kepada penulis sehingga penelitian dan Laporan Tugas Akhir ini selesai.
5. Ibu Yusra, S.T, MT., selaku dosen pembimbing II Tugas Akhir penulis,
yang telah meluangkan waktunya dan banyak memberikan wawasan, ilmu
yang bermanfaat serta pengalaman yang berharga untuk penulis.
x
6. Bapak Suwanto Sanjaya, ST, M.Kom, selaku dosen penguji I yang telah meluangkan waktunya dan banyak memberikan wawasan, ilmu yang bermanfaat serta pengalaman yang berharga untuk penulis.
7. Ibu Fadhilah Syafria, ST, M.Kom, CIBIA, selaku penguji II yang telah meluangkan waktunya dan banyak memberikan wawasan, ilmu yang bermanfaat serta pengalaman yang berharga untuk penulis.
8. Bapak Teddie Darmizal, M.T.I, selaku Pembimbing Akademis penulis selama menjalani perkuliahan di Jurusan Teknik Informatika.
9. Seluruh Bapak/Ibu dosen Teknik Informatika yang telah sabar memberikan tunjuk ajar serta ilmu yang bermanfaat kepada penulis selama masa perkuliahan.
10. Kedua orang tua penulis, Ayahanda Darianto, S.S.T dan Ibunda Erni Yusnita yang tidak pernah letih untuk terus memberikan semangat, nasehat, dan untuk kasih sayang yang tidak pernah pudar. Semoga Allah Subhanahu Wata‟ala senantiasa memberikan kesehatan kepada Ayahanda dan Ibunda.
11. Adik-adik (M. Fajri Novrianto, Risda Aini Putri, Yusni Maisarah, dan M.
Ilman Nafian) yang selalu memberikan dukungan, motivasi, kekuatan dan doa yang tulus untuk kelancaran Tugas Akhir penulis.
12. Keluarga besar penulis yang telah menginspirasi, memberikan semangat, dan dukungan bagi penulis.
13. Teman-teman Kost Sahabat (Alya Sri Rezki, Akmal, Anju Firman, Andika, Erizka Karmala Sari, Filzha Hidayat, Fahrurrozi Harahap, Fitri Handayani, Gandhi Alwira Ponda, Muhammad Rezki, Muhammad Zamil, Puspita Sari, Rahman Aditya, Rio Arnopalindo, Suci Hidayati dan Wawan Kurniawan) yang selalu memberikan semangat yang tak pernah pudar.
14. Kepada Kakanda dan Ayunda Teknik Informatika yang tidak dapat penulis sebutkan satu persatu. Terimakasih atas dukungan moril maupun materil dalam pengerjaan Laporan Tugas Akhir ini.
15. Teman-teman seperjuangan Teknik Informatika angkatan 2015, Khusunya
Teknik Informatika kelas C angkatan 2015 yang selalu memberikan
motivasi untuk terus maju.
xi
16. Semua pihak yang tidak dapat penulis sebutkan satu persatu. Terimakasih atas dukungan moril maupun materil dalam pengerjaan Laporan Tugas Akhir ini.
Penulis menyadari bahwa dalam penulisan laporan ini masih banyak kesalahan dan kekurangan, oleh karena itu kritik dan saran yang sifatnya membangun sangat penulis harapkan untuk kesempurnaan laporan ini. Akhirnya penulis berharap semoga laporan ini dapat memberikan sesuatu yang bermanfaat bagi siapa saja yang membacanya. Amin.
Wassalamu’alaikum wa rahmatullahi wa barakatuh
Pekanbaru, Desember 2019
Penulis
xii
DAFTAR ISI
Halaman
LEMBAR PERSETUJUAN ... ii
LEMBAR PENGESAHAN ... iii
LEMBAR HAK ATAS KEKAYAAN INTELEKTUAL ...iv
LEMBAR PERNYATAAN ... v
LEMBAR PESEMBAHAN ...vi
ABSTRAK ... vii
ABSTRACT ... viii
KATA PENGANTAR ...ix
DAFTAR ISI ... xii
DAFTAR GAMBAR ... xv
DAFTAR TABEL ...xvi
DAFTAR PERSAMAAN... xviii
DAFTAR LAMPIRAN ...xix
DAFTAR SIMBOL ... xx
BAB I PENDAHULUAN ... I-1
1.1 Latar Belakang ... I-1
1.2 Rumusan Masalah ... I-4
1.3 Batasan Masalah... I-4
1.4 Tujuan ... I-4
1.5 Sistematika Penulisan ... I-4
BAB II LANDASAN TEORI ... II-1
2.1 Twitter ... II-1
2.2 Ujaran Kebencian ... II-1
2.3 Text Mining ... II-2
2.3.1 Text Preprocessing ... II-3
2.3.2 Enhanced Confix Stripping Stemmer ... II-4
xiii
2.4 Pembobotan Kata ... II-6
2.5 Feature Selection ... II-7
2.6 Klasifikasi ... II-7
2.7 K-Nearest Neighbor (KNN) ... II-8
2.8 Pengujian ... II-9
2.9 Penelitian Terkait ... II-10
BAB III METODOLOGI PENELITIAN ... III-1
3.1 Identifikasi Masalah ... III-2
3.2 Studi Pustaka ... III-2
3.3 Pengumpulan Data ... III-2
3.7 Analisa... III-2
3.7.1 Kebutuhan Data ... III-2
3.7.2 Pelabelan Manual Dataset ... III-3
3.7.3 Text Preprocessing ... III-3
3.7.4 Pembobotan Kata ... III-4
3.7.5 Feature Selection ... III-4
3.7.6 Klasifikasi K-Nearest Neighbor ... III-5
3.8 Perancangan ... III-5
3.9 Implementasi dan Pengujian ... III-5
3.9.1 Implementasi ... III-6
3.9.2 Pengujian ... III-6
3.10 Kesimpulan dan Saran... III-6
BAB IV ANALISA DAN PERANCANGAN ... IV-1
4.1 Analisa... IV-1
4.1.1 Analisa Masalah ... IV-1
4.1.2 Analisa Kebutuhan Data ... IV-1
xiv
4.1.3 Analisa Pelabelan Manual Data ... IV-2 4.1.4 Analisa Tahapan Text Pre-processing ... IV-2 4.1.5 Analisa Pembobotan Kata ... IV-5 4.1.6 Analisa Feature Selection ... IV-8 4.1.7 Analisa Klasifikasi Metode K-Nearest Neighbor ... IV-8 4.2 Perancangan ... IV-18 4.2.1 Perancangan Basis Data ... IV-18 4.2.2 Perancangan Struktur Menu ... IV-20 4.2.3 Perancangan Antarmuka ... IV-20 BAB V IMPLEMENTASI DAN PENGUJIAN ... V-1 5.1 Implementasi ... V-1 5.1.1 Batasan Implementasi ... V-1 5.1.2 Lingkungan Implementasi ... V-1 5.1.3 Implementasi Sistem ... V-2 5.2 Pengujian ... V-10 5.2.1 White Box ... V-10 5.2.2 Confusion Matrix ... V-29 5.2.3 Hasil Pengujian ... V-36 5.2.4 Analisa Hasil Pengujian ... V-37 BAB VI PENUTUP ... VI-1 6.1 Kesimpulan ... VI-1 6.2 Saran ... VI-1 DAFTAR PUSTAKA ...xxi LAMPIRAN
DAFTAR RIWAYAT HIDUP
xv
DAFTAR GAMBAR
Gambar Halaman
3.1 Tahapan Metodologi Penelitian ... III-1
4.1 Flowchart K-Nearest Neighbor ... IV-8
4.2 Rancangan Struktur Menu... IV-20
4.3 Rancangan Antarmuka Halaman Dashboard ... IV-21
4.4 Rancangan Antarmuka Data Tweet ... IV-21
4.5 Rancangan Antarmuka Preprocess ... IV-22
4.6 Rancangan Antarmuka Data Latih ... IV-22
4.7 Rancangan Antarmuka TF-IDF ... IV-23
4.8 Rancangan Antarmuka Data Uji ... IV-23
4.9 Rancangan Antarmuka Halaman Pembobotan dan Pengujian ... IV-24
5.1 Implementasi Halaman Antarmuka Dashboard ... V-2
5.2 Implementasi Antarmuka Halaman Data Tweet ... V-3
5.3 Implementasi Antarmuka Preprocess ... V-4
5.4 Implementasi Antarmuka Data Latih ... V-5
5.5 Implementasi Antarmuka Pembobotan TF-IDF... V-6
5.6 Implementasi Antarmuka Halaman Data Uji ... V-7
5.7 Implementasi Antarmuka Halaman TF-IDF Data Uji ... V-8
5.8 Implementasi Antarmuka Halaman DF-IDF Data Uji ... V-8
5.9 Implementasi Antarmuka Halaman Tabel Hasil Klasifikasi ... V-9
5.10 Implementasi Antarmuka Hasil Pengujian... V-9
5.11 Implementasi Antarmuka Halaman Prediksi Tweet ... V-10
5.12 Hasil Pengujian Confusion Matrix k=3 ... V-30
5.13 Hasil Pengujian Confusion Matrix k=3 ... V-31
5.14 Hasil Pengujian Confusion Matrix k=11 ... V-33
xvi
DAFTAR TABEL
Tabel Halaman
2.1 Penelitian Terkait Mengenai Ujaran Kebencian ... II-10
2.2 Penelitian Terkait Dengan Metode yang Sama ... II-11
4.1 Kebutuhan Data dan Pelabelan ... IV-2
4.2 Hasil Proses Cleaning data Tweet ... IV-2
4.3 Hasil Proses Case folding data Tweet ... IV-3
4.4 Hasil Proses Tokenizing Data Tweet ... IV-3
4.5 Hasil Proses Normalisasi data Tweet ... IV-4
4.6 Hasil Proses Stemming data Tweet ... IV-5
4.7 Hasil Proses Remove Stopword data Tweet ... IV-5
4.8 Hasil Pembobotan Kata IDF ... IV-6
4.9 Hasil Pembobotan TF-IDF ... IV-7
4.10 Hasil Feature Selection ... IV-8
4.11 Data Uji ... IV-9
4.12 Hasil Proses Cleaning Data Uji ... IV-9
4.13 Hasil Proses Case Folding Data Uji... IV-9
4.14 Hasil Proses Tokenizing Data Uji ... IV-10
4.15 Hasil Proses Normalisasi Data Uji ... IV-10
4.16 Hasil Proses Stemming Data Uji ... IV-11
4.17 Hasil Proses Remove Stopword Data Uji ... IV-11
4.18 Data Uji Setelah Pre-processing ... IV-12
4.19 Pembobotan Kata Data Uji... IV-12
4.20 Nilai Euclidean... IV-17
4.21 Kategori Terpilih k=3 ... IV-18
4.22 Struktur Tabel Basicword ... IV-18
4.23 Struktur Tabel Dataset... IV-18
4.24 Struktur Tabel Komentar... IV-19
4.25 Struktur Tabel Nearest ... IV-19
4.26 Struktur Tabel Normalisasi ... IV-19
4.27 Struktur Tabel Stopword ... IV-19
xvii
4.28 Struktur Tabel Threshold ... IV-19
5.1 Pengujian White Box Untuk Frekuensi Kemunculan Kata... V-16
5.2 Pengujian White Box Menghitung Nilai DF ... V-21
5.3 Pengujian White Box Pembobotan IDF ... V-23
5.4 Pengujian White Box Menghitung Bobot Nilai TF*IDF ... V-26
5.5 Pengujian White Box Menghitung Hasil K-Nearest Neighbor ... V-29
5.6 Pengujian Dataset 90% : 10% ... V-31
5.7 Pengujian Dataset 80% : 20% ... V-32
5.8 Hasil Pengujian Dataset 70% : 30% ... V-34
5.9 Pengujian Threshold Dataset 90:10 ... V-34
5.10 Pengujian Threshold Dataset 80:20 ... V-35
5.11 Pengujian Threshold Dataset 70:30 ... V-36
5.12 Rincian Data Hasil Pengujian ... V-37
5.13 Hasil Klasifikasi Pengujian Data Yang Salah ... V-38
xviii
DAFTAR PERSAMAAN
Persamaan Halaman
2.1 Menghitung Pembobotan TF-IDF ... II-7
2.2 Menghitung Nilai IDF ... II-7
2.3 Menghitung Jarak Euclidean... II-8
2.4 Menghitung Akurasi ………... ... II-10
2.5 Menghitung Error Rate ………... ... II-10
2.6 Menghitung Recall ...II-10
2.7 Menghitung Precision…. ... II-10
xix
DAFTAR LAMPIRAN
Lampiran Halaman
A Dataset, Hasil Pre-Process, Dan Pelabelan Manual ... A-1
B Surat Pernyataan ... B-1
xx
DAFTAR SIMBOL
Flowchart
Simbol Keterangan
Terminator : Simbol Terminator (mulai/ selesai) merupakan tanda bahwa sistem akan dijalankan atau berakhir.
Data : simbol yang mendeskripsikan data input/output yang digunakan.
Verifikasi : simbol yang digunakan untuk memutuskan apakah valid atau tidak validnya suatu kejadian.
Proses : simbol yang digunakan untuk melakukan pemrosesan data baik oleh user maupun komputer (sistem).
Arus Data : simbol yang digunakan untuk menggambarkan
arus data didalam sistem.
BAB I
PENDAHULUAN
1.1 Latar Belakang
Perkembangan teknologi dan informasi menjadikan internet sebagai alat komunikasi yang paling banyak diminati oleh masyarakat (Siswanto, 2018).
Menurut (Nugroho, 2018), internet tidak terlepas dari yang namanya media jejaring sosial. Twitter, Facebook, dan Youtube merupakan salah satu media jejaring sosial sebagai media perangkat komunikasi terpopuler yang ada dikalangan pengguna internet saat ini (Kumar & Sebastian, 2012). Oleh karena itu, media jejaring sosial banyak dimanfaatkan para politisi untuk melakukan penyebaran pesan kepada masyarakat baik itu berupa tanggapan terhadap suatu isu-isu politik maupun untuk meningkatkan popularitas mereka menjelang pemilihan umum.
Salah satu media jejaring sosial yang telah dimanfaatkan para politisi dalam melakukan penyebaran pesan adalah Twitter. Twitter merupakan media sosial yang efektif untuk melakukan propaganda politik sehingga banyak digunakan para politisi untuk melakukan penyebaran pesan yang kemudian menjadi viral dan dapat menjadi trending topic serta dijadikan sebagai sumber berita yang dikutip media cetak maupun online (Gunawan, 2018). Hal tersebut dikarenakan Twitter merupakan salah satu media jejaring sosial dengan pengguna terbanyak diantara beberapa situs jejaring sosial yang ada. Twitter terus mengalami peningkatan pengguna sejak kemunculannya pada tahun 2006 (Claudy, Perdana, & Fauzi, 2018).
Data statistik menunjukkan bahwa Twitter memiliki lebih dari 200 juta pengguna aktif secara global (Hartanto, 2017) dan 19,5 juta pengguna berasal dari Indonesia yang menjadikan Indonesia sebagai pengguna Twitter peringkat kelima didunia (Kementerian Komunikasi dan Informatika, 2013).
Keberadaan Twitter telah digunakan secara luas oleh berbagai lapisan
masyarakat, dimana keberadaan Twitter dapat menampilkan apa yang sedang
menjadi tren pembicaraan dan hal apa yang sedang menarik untuk dibahas
(Hidayatullah & Azhari, 2014). Kebiasaan masyarakat dalam menilai tokoh politik
I-2 dalam bentuk Tweet pada media jejaring sosial Twitter tidak dapat terhindar dari yang namanya ujaran kebencian (Munir, Fauzi, & Perdana, 2017). Twitter hanya dapat melakukan pelaporan terhadap Tweet, namun tidak dapat menyaring komentar atau Tweet yang dikirim ke pengguna lainnya (H. Yadav & M.
Manwatkar, 2015).
Ujaran kebencian merupakan bahasa atau perkataan seseorang sebagai bentuk ekspresi kebencian yang dituju terhadap kelompok tertentu dengan maksud menghina dan mempermalukan anggota kelompok yang lain (Davidson, Warmsley, Macy, & Weber, 2017). Ujaran kebencian pada sosial media termasuk dalam tindakan pidana yang diatur dalam “Undang-Undang Informasi dan Transaksi Elektronik (UU ITE) Nomor 11 tahun 2008 pasal 28 ayat 2 tentang ujaran kebencian terhadap individu atau kelompok” (Sitompul, 2018). Salah satu akun sosial media yang menjadi pelaku ujaran kebencian terhadap tokoh politik adalah
@AHMADDHANIPRAST yang mengakibatkannya divonis penjara karena Tweetnya yang menimbulkan kersahan masyarakat dan berpotensi untuk memecah belah antar golongan (Palupi, 2019). Oleh karena itu, dibutuhkannya sebuah sistem untuk mengklasifikasikan Tweet yang bermakna ujaran kebencian dan tidak bermakna ujaran kebencian sehingga dapat menghindari adanya Tweet yang bermakna ujaran kebencian pada media jejaring sosial Twitter, karena berdasarkan data yang disampaikan oleh oleh kapolri Jenderal Tito Karnavian, pada tahun 2016 kasus kejahatan ujaran kebencian berjumlah 1.829 kasus dan mengalami peningkatan di tahun 2017 dengan kasus yang sama berjumlah 3.325 kasus (Movanita, 2017).
Penelitian ini mencoba mengklasifikasikan Tweet ujaran kebencian dan
tidak ujaran kebencian berbahasa Indonesia terhadap tokoh politik. Tokoh politik
yang dimaksud merupakan tokoh politik yang pernah dinobatkan sebagai politisi
dengan pernyataannya yang banyak dikutip oleh media yaitu Fahri Hamzah dan
tokoh politik yang paling banyak menjadi pusat pemberitaan (news maker) ditanah
air salah satunya adalah Basuki Tjahaja Purnama (Ahok) yang tersangkut kasus
hukum penistaan agama berdasarkan sumber dari Indonesia Indicator (I2) (Susanti,
2019).
I-3 Beberapa penelitian yang telah dilakukan dalam mengklasifikasikan ujaran kebencian diantaranya adalah (Alfina, Mulia, Fanany, & Ekanata, 2017). Dalam penelitian tersebut metode”Random Forest Decision Tree”(RFDT) dengan fitur kata n-gram berhasil mendapatkan nilai tertinggi dengan F-measure sebesar 93.5%
dan”Random Forest Decision Tree”(RFDT) dikombinasikan dengan fitur char n- gram mendapat F-Measure 84.2%. Begitu juga penelitian untuk mengidentifikasi ujaran kebencian pada Twitter menggunakan metode Back Propagation Neural Network (BPNN) berbasis Lexicon Bases Features (Munir et al., 2017). Sedangkan (Buntoro, 2016) membahas tentang analisis sentiment”hate speech pada Twitter menggunakan metode Naïve Bayes dan Support Vector Machine (SVM).”
Penelitian lain yang dilakukan dalam mendeteksi ujaran kebencian (hate speech) pada media sosial facebook menggunakan metode Support Vector Machine (SVM) dan Esemble Feature (Kresna, Arda, Fauzi, & Setiawan, 2018).
Dalam penelitian yang menggunakan Metode K-Nearest Neighbor, ada beberapa penelitian sebelumnya yang telah dilakukan diantaranya oleh (Ernawati
& Wati, 2018) tentang analisis sentimen review agen travel menggunakan metode K-Nearest Neighbor memperoleh hasil akurasi mencapai 87.00%. Dalam penelitian lainnya oleh (Nugraha, Al Faraby, & Adiwijaya, 2018) tentang klasifikasi dokumen menggunakan metode K-Nearest Neighbor dengan Information Gain menunjukkan bahwa metode K-Nearest Neighbor tanpa Information Gain untuk seluruh dokumen training dengan berbagai parameter-parameter memiliki tingkat akurasi tertinggi yaitu sebesar 93.94438%.
Oleh karena itu, metode yang akan digunakan pada penelitian ini adalah metode K-Nearest Neighbor untuk identifikasi ujaran kebencian terhadap tokoh politik. Berdasarkan penelitian yang telah dilakukan oleh (Ernawati & Wati, 2018), (Nugraha et al., 2018), (Aini, Sari, & Arwan, 2018), dan (Sani, Zeniarza, &
Luthfiarta, 2016) bahwa metode ini terbukti memperoleh tingkat akurasi yang baik.
Selain itu, penelitian yang dilakukan oleh (Putri, Suparti, & Rahmawati, 2014)
menyebutkan metode klasifikasi K-Nearest Neighbor memperoleh akurasi yang
lebih baik daripada metode naïve bayes.
I-4 Berdasarkan latar belakang diatas maka penulis melakukan penelitian tugas akhir menggunakan Metode K-Nearest Neighbor untuk mengidentifikasi Tweet ujaran kebencian terhadap tokoh politik pada media sosial Twitter.
1.2 Rumusan Masalah
Berdasarkanlpermasalahan pada latar belakang diatas, dapat dirumuskan masalah pada penelitian ini yaitu”bagaimana membangun sebuah sistem yang dapat mengidentifikasi Tweet ujaran kebencian terhadap tokoh politik pada Twitter dengan menerapkan metode K-Nearest Neighbor serta menghitung akurasi metode K-Nearest Neighbor dalam mengidentifikasi Tweet ujaran kebencian terhadap tokoh politik pada Twitter.”
1.3 Batasan Masalah
Dalam memudahkan penelitian ini, dibutuhkan adanya”batasan masalah.
Berikut beberapa batasan masalah pada penelitian ini adalah:”
1. Dataset yang digunakan berjumlah 1000 Tweet.
2. Kelas yang digunakan dalam identifikasi ujaran kebencian ini adalah kebencian dan tidak kebencian.
3. Tokoh politik yang dimaksud adalah Fahri Hamzah dan Basuki Tjahaja Purnama (Ahok).
4. Tweet yang digunakan adalah berbahasa Indonesia.
1.4 Tujuan
Berdarkan rumusan masalah diatas, adapun tujuan dari penelitian ini sebagai berikut:
1. Mengidentifikasi Tweet ujaran kebencian terhadap tokoh politik pada media sosial Twitter.
2. Mengetahui tingkat akurasi untuk identifikasi Tweet ujaran kebencian menggunakan metode K-Nearest Neighbor.
1.5 Sistematika Penulisan
Sistematika penulisan berupa gambaran singkat yang berisi berbagai pokok permasalahan diuraikan menjadi beberapa bagian:
BAB I PENDAHULUAN
I-5 Pada bagian ini berisi tentang latar belakang, rumusan masalah, batasan masalah, tujuan dan sistematika penulisan.
BAB II LANDASAN TEORI
Pada bagian ini berisi tentang landasan teori dan mendukung penelitian ini sebagai dasar untuk pemecahan masalah.
BAB III METODOLOGI PENELITIAN
Pada bagian ini berisi tentang langkah yang akan dilakukan pada proses penelitian, yaitu perumusan masalah, studi pustaka, pengumpulan data, pelabelan manual dataset, analisa dan perancangan, implementasi dan pengujian, serta kesimpulan dan saran.
BAB IV ANALISIS DAN PERANCANGAN SISTEM
Pada bagian ini berisi tentang analisa data, analisa proses menggunakan algoritma K-Nearest Neighbor.
BAB V IMPLEMENTASI DAN PENGUJIAN
Pada bagian ini berisi tentang uraian mengenai implementasi K- Nearest Neighbor untuk identifikasi ujaran kebencian terhadap tokoh politik pada Twitter.
BAB VI PENUTUP
Pada bagian ini menjelaskan tentang kesimpulan dari hasil
penelitian dan berupa saran-saran yang berhubungan dengan
penelitian ini.
BAB II
LANDASAN TEORI
2.1 Twitter
Twitter merupakan media sosial dimana para pengguna dapat mengirim dan membaca pesan. Para pengguna hanya dapat menuliskan pesan sebanyak 140 karakter (Nugroho, 2018). Pada bulan maret tahun 2006 Twitter dibentuk oleh Jack Dorsey kemudian pada bulan juli situs jaringan sosial dibentuk. Pada Twitter, pengguna yang belum memiliki akun Twitter hanya dapat melihat Tweet yang dilakukan oleh orang lain saja, sedangkan pengguna yang telah punya akun Twitter bisa menulis dan berinteraksi satu sama lain. Twitter dapat diakses lewat web atau perangkat seluler (smartphone). Twitter menyediakan akses programatik ke data Twitter kepada perusahaan, pengembang, dan pengguna lewat Application Programming Interface (API).
Twitter API merupakan cara program komputer “berbicara” satu sama lain agar dapat meminta dan menyajikan informasi. Twitter mengizinkan akses kebagain dari layanan melalui API untuk memungkinkan orang-orang membangun perangkat lunak yang terintegrasi dengan Twitter seperti solusi yang membantu sebuah perusahaan menjawab umpan balik pelanggan di Twitter.
Ada beberapa istilah yang terdapat pada Twitter diantaranya seperti Tweet, Direct Message, Follow, Follower, Following, Favorite, ReTweet, Timeline, Hashtag, Mention, Trending Topic, dan Search List.
2.2 Ujaran Kebencian
Ujaran kebencian merupakan suatu perkataan yang dilakukan oleh seseorang
maupun kelompok baik itu provokasi ataupun hinaan terhadap orang lain atau
kelompok tertentu. Pada dasarnya, ujaran kebencian mengandung berbagai aspek
diantaranya adalah aspek ras, warna kulit, etnis, agama dan sebagainya. Ujaran
kebencian juga dapat dikatakan sebagai upaya untuk menindas atau merendahkan
kelompok sosial atau etnis (Sutantohadi, 2018).
II-2 Berbagai macam media seperti jejaring media sosial, media cetak maupun elektronik, demonstrasi dan lain sebagainya ujaran kebencian dapat dilakukan oleh seseorang. Ujaran Kebencian dalam arti hukum adalah sebagai perilaku, perkataan, tulisan, ataupun pertunjukan yang dilarang yang dapat memicu munculnya tindakan kekerasan dan sikap prasangka baik itu dari pihak pelaku pernyataan ataupun korban dari tindakan tersebut (Febriyani & Sunarto, 2018).
Menurut Prof. Sanusi Husin yang dikutip oleh (Febriyani & Sunarto, 2018) Beberapa faktor penyebab seseorang melakukan ujaran kebencian khususnya penghinaan yang dilakukan pada media sosial, yaitu sebagai berikut:
1. Faktor lingkungan ekonomi
Faktor lingkungan ekonomi ini dapat memicu seseorang melakukan kejahatan ujaran kebencian pada media sosial yang bermula dengan keadaan ekonomi yang tergolong rendah, tidak mempunyai penghasilan, pengangguran dan terdesak suatu kebutuhan yang dapat mendorong pelaku melakukan tindakan ujaran kebencian pada media sosial.
2. Faktor kepentingan masyarakat
Adanya tujuan tertentu untuk melakukan ujaran kebencian diantaranya dapat berupa kepentingan pribadi, politik, SARA, ataupun hanya untuk mencari sensasi saja.
3. Faktor sarana, fasilitas dan kemajuan teknologi
Dengan adanya sarana, fasilitas, dan kemajuan teknologi yang berkembang membuat seseorang dapat dengan mudah melakukan komunikasi secara langsung dan tidak langsung sehingga masyarakat dengan mudah mendapatkan informasi tanpa batasan waktu sehingga tingkat penyebaran sangat cepat dapat diakses setiap orang.
2.3 Text Mining
Text mining merupakan upaya untuk mengolah suatu teks dokumen dalam ukuran yang besar dari waktu ke waktu menggunakan metode analisis yang bertujuan untuk mengetahui dan mengekstrak sebuah informasi yang bermanfaat dari sumber data melalui eksplorasi dan identifikasi suatu pola yang menarik pada text mining (Somantri, Wiyono, & Dairoh, 2016). Sedangkan menurut (Han, Pei, &
Kamber, 2011) text mining didefinisikan sebagai suatu langkah menganalisis teks
II-3 yang dilakukan oleh komputer secara otomatis dengan tujuan untuk mencari sebuah informasi yang berkualitas dari sebuah rangkaian teks dalam sebuah dokumen.
2.3.1 Text Preprocessing
Proses awal dari tahapan text mining yaitu text preprocessing. Tahap ini merupakan proses untuk mempersiapkan data teks dokumen atau dataset. Proses ini berfungsi untuk mengubah data teks yang tidak terstruktur menjadi data yang terstruktur. Adapun proses yang akan dilakukan pada tahap ini adalah:
1. Cleaning
Cleaning merupakan proses pembersihan atribut-atribut baik itu kata maupun karakter pada suatu dokumen yang tidak berhubungan dengan informasi atau yang tidak diperlukan untuk mngurangi noise pada proses klasifikasi. Atribut-atribut yang dihilangkan adalah URL (http://situs), hashtag (#), mention (@username), angka (0-9), dan emoticon.
2. Case folding
Case folding adalah proses untuk merubah semua huruf dari “a” sampai dengan “z” dalam dokumen menjadi huruf kecil atau lowercase.
3. Case folding
Case folding merupakan proses yang berfungsi sebagai pemisah suatu kalimat atau dokumen menjadi sebuah kata-kata yang menyusun kalimat tersebut.
4. Normalisasi
Normalisasi merupakan tahapan untuk merubah kata yang salah eja atau kata-kata yang tidak baku menjadi baku.
5. Stemming
Stemming merupakan teknik untuk menemukan kata dasar dari sebuah kata yang telah mengalami imbuhan dengan cara menghilangkan dan menghapus imbuhan-imbuhan tersebut, baikkyang merupakan awalan (prefixes), sisipan (infixes), akhiran (suffixes), danskombinasi darinawalan serta akhirana(cofixes) padankata turunan. misalnya dalam bahasa Indonesia kata
‘menendang’, ‘tendangan’, ‘penendang’, ‘menendangi’ kata dasarnya
adalah ‘tendang’ (Maulidi, 2016). Salah satu algoritma stemming untuk kata
berbahasa Indonesia adalah Algoritma Enhanced Confix Stripping Stemmer.
II-4 6. Remove Stopword
Remove stopword adalah kata umum atau berupa kata ganti dan kata sambung yang biasanya muncul dalam jumlah besar dan dianggap tidak memiliki makna, sehingga tidak akan mempengaruhi. Misalnya kata penghubung seperti “dan”, “atau”, “tapi”, “di”, “ke”, “dari”, “yang”, “ada”,
“dengan”, “akan”, “itu”, “tidak”, “mau”, dan lain-lain. Tujuan utama dari stopword remove ini untuk mengurangi jumlah kata dalam sebuah dokumen yang nantinya akan berpengaruh dalam kecepatan dan performa dalam kegiatan Natural Language Processing (NLP).
2.3.2 Enhanced Confix Stripping Stemmer
Algoritma Enhanced confix stripping stemmer merupakan pengembangan dari Algoritma Nazief dan Adriani. Proses stemming yang paling baik adalah menggunakan algoritma Enhanced Confix Stripping Stemmer (Khidfi & Sari, 2018). Algoritma enhanced confix stripping stemmer dikembangkan oleh putu adhi kerta mahendra pada tahun 2008.
Aturan morfologi bahasa Indonesia mengelompokkan imbuhan kedalam beberapa kategori sebagai berikut:
1. Inflection”suffixes yakni kelompok akhiran yang tidak merubah bentuk kata dasar. Sebagai contoh,”kata “duduk” yang diberikan akhiran “-lah” akan menjadi “duduklah”. Kelompok ini dapat dibagi menjadi dua:
a. Particle (P) atau partikel, yakni termasuk di dalamnya “-lah”, “- kah”, “tah”, dan “-pun”.
b. Possessive Pronoun (PP) atau kata ganti kepunyaan, termasuk di dalamnya adalah “-ku”, “mu”, dan “-nya”.
2. Derivation”Suffixes (DS) yakni kumpulan akhiran asli Bahasa Indonesia yang secara langsung ditambahkan pada kata dasar yaitu”akhiran “-i”, “- kan”, dan “-an”.
3. Derivation”Prefixes (DP) yakni kumpulan awalan yang dapat langsung diberikan pada kata dasar murni, atau pada kata dasar yang sudah mendapatkan penambahan sampai dengan 2 awalan. Termasuk di dalamnya adalah”:
a. Awalan yang dapat bermorfologi (“me-”, “be-”, “pe-”, dan “te-”).
II-5 b. Awalan yang tidak bermorfologi (“di-”, “ke-” dan “se-”).
Berdasarkan”pengklasifikasian imbuhan-imbuhan di atas, maka bentuk kata berimbuhan dalam Bahasa Indonesia dapat dimodelkan sebagai berikut:”
[DP+ [DP+ [DP+]]] Kata Dasar [[+DS] [+PP] [+P]]
Adapun tahapan-tahapan dari kerangka algoritma Enhanced Confix Stripping Stemmer ini sebagai berikut:
1. Cari kata yang akan di-stemming dalam kamus. Jika ditemukan, maka kata tersebut diasumsikan sebagai kata dasar. Maka algoritma berhenti. Jika tidak lakukan langkah 2.
2. Cek ruleaprecedence. Apabilansuatu kata memilikiapasangan awalan- akhirann“be-lah”, “be-an”, “me-i”, “di-i”, “pe-i”, ataua“te-i” makanlangkah stemmingaselanjutkannadalah (5,d3, 4, 6). Apabila katantidak memiliki pasanganaawalan–akhiran tersebut, langkah stemmingaberjalan normala(3, 4, 5, 6).
3. Hilangkanainflectionalnparticle P (“-lah”, “-kah”, “-tah”,”-pun”)adannkata ganti kepunyaanaatau possessiveapronounnPP (“-ku”, “-mu”,”-nya”).a 4. Hilangkan derivationasuffixesnDS (“-i”, “-kan”, atau ”-an”).
5. HilangkanaDerivational PrefixesnDP (“di-”, “ke-”, “se-”, “me-”, “be-”,
“pe”, “te-”).
a. Identifikasi tipeaawalan dannhilangkan. Awalan adaadua tipe:
1. Standar:a“di-”, “ke-”, “se-”, yangadapatnlangsung dihilangkansdari kata.
2. Kompleks:a“me-”, “be-”, “pe-”, ”te-” adalahntipe-tipe awalanayang dapat bermorfologi sesuaiskata dasarnyang mengikutinya.s
b. Cari kata yangstelah dihilangkannawalannya ini di dalamskamus.
Apabilaatidaknditemukan, makaslangkah 5 diulanginkembali. Apabila ditemukan,smakaskeseluruhan presesndihentikan.
6. Jika semua gagal,smaka masukannkata yang diujidpada algortima ini
dianggap sebagaiskatandasar.
II-6
2.4 Pembobotan Kata
Pembobotan atau term weighting adalah proses untuk mendapatkan nilai suatu kata yang telah diproses sebelumnya (Puspitasari & Santoso, 2018). Ada beberapa metode pembobotan data yang dapat digunakan diantaranya adalah document frequency”(DF), term frequencyy(TF), dan inverse document frequency (IDF). Pada penelitian ini pembobotan kata yang digunakan yaitu gabungan dari termffrequency dan inverse documentffrequency.
Menurut”penelitian yang dilakukan”oleh (Salton & Buckley, 1988)”kombinasi antara TF dan IDF untuk menghitung bobot kata (term) menunjukkan”bahwa”gabungan keduanya menghasilkan performasi yang lebih baik. Faktor TF dan IDF dapat berkontribusi untuk memperbaiki nilai recall dan precision.”
1. Term Frequency
Term frequency (TF)”merupakan salah satu metode untuk menghitung bobot tiap term dalam teks. Dalam metode ini tiap term diasumsikan memiliki nilai kepentingan yang sebanding dengan jumlah kemunculan term tersebut pada teks.”
2. Document Frequency (DF)
Document Frequency (DF) merupakan jumlah dokumen yang mengandung suatu term tertentu.
3. Inverse Document Frequency (IDF)
Inverse”Document Frequency (IDF) merupakan metode untuk menghitung kemunculan term dalam keseluruhan koleksi teks. Dalam hal ini, term yang jarang muncul pada koleksi keseluruhan term dinilai lebih berharga. Nilai kepentingan tiap term diasumsikan berbanding terbalik dengan jumlah teks yang mengandung term tersebut.”
4. Term Frequency Inverse Document Frequency (TF-IDF)
Term Frequency Inverse Document Frequency”(TF-IDF) adalah menghitung
bobot dengan cara integrasi antara term frequency (tf) dan inverse document
frequency (idf). Langkah dalam TF-IDF adalah untuk menemukan jumlah kata
yang kita ketahui (tf) setelah dikalikan dengan berapa banyak data dimana suatu
II-7 kata itu muncul (idf). Rumus dalam menentukan pembobot dengan TF-IDF adalah sebagai berikut:”
𝒘
𝒊𝒋= 𝒕𝒇(𝒊, 𝒋) 𝒙 𝒊𝒅𝒇……… (2.1) Dimana untuk mencari nilai idf menggunakan persamaan berikut:
𝒊𝒅𝒇 = 𝒍𝒐𝒈 (
𝑵𝒅𝒇𝒊
) …….………..……… (2.2)
Dengan:
W (i, j) = bobot dari term ke-i dalam dokumen j
Tf (i, j) = Frekuensi kemunculan term ke-i dalam dokumen j Idf = nilai idf dari kata i
N = jumlah semua dokumen
Dfi = jumlah dokumen yang mengandung kata i
2.5 Feature Selection
Feature selection adalah suatu metode penganalisaan data yang bertujuan untuk memilih fitur yang berpengaruh (fitur optimal) dan mengesampingkan fitur yang tidak berpengaruh dan tidak relevan atau fitur berlebihan. Sebuah fitur dikatakan tidak televan jika memberikan sedikit informasi, sedangkan sebuah fitur dikatakan berlebihan jika informasi yang diberikan adalah informasi yang terkandung dalam fitur lain (tidak memberikan informasi baru) (Kesuma, 2011).
Pada penelitian ini dalam menyeleksi data menggunakan threshold. Threshold adalah nilai bobot diatas ambang batas yang diberikan oleh pengguna yang akan dipilih.
2.6 Klasifikasi
Menurut (Prasetyo, 2012)”klasifikasi merupakan suatu pekerjaan menilai
objek data untuk memasukkannya ke dalam kelas tertentu dari sejumlah kelas yang
tersedia. Dalam klasifikasi terdapat dua proses yang dilakukan yaitu dengan
membangun model untuk disimpan sebagai memori dan menggunakan model
tersebut untuk melakukan pengenalan atau klasifikasi atau prediksi pada suatu data
lain supaya diketahui di kelas mana objek data tersebut dimasukkan berdasarkan
model yang telah disimpan dalam memori.”
II-8 Beberapa metode klasifikasi yang telah digunakan oleh peneliti diantaranya adalah Support Vector Machine (Buntoro, 2016), Naïve Bayes (Darujati &
Gumelar, 2012), dan K-Nearest Neighbor (Claudy et al., 2018). Dalam penelitian ini peneliti menggunakan metode K-Nearest Neighbor (K-NN) untuk melakukan tahap klasifikasi.
2.7 K-Nearest Neighbor (KNN)
Metode”K-Nearest Neighbor (KNN) adalah metode yang digunakan untuk klasifikasi terhadap objek berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek tersebut. Nilai K yang digunakan disini menyatakan jumlah tetangga terdekat yang dilibatkan dalam penentuan prediksi label kelas pada data uji. Dari K tetangga terdekat yang terpilih kemudian dilakukan voting kelas dari K tetangga terdekat tersebut. Kelas dengan jumlah suara tetangga terbanyaklah yang diberikan sebagai label kelas hasil prediksi pada data uji tersebut (Steinbach, Kumar, & Tan, 2006).”
Adapun”tujuan dari algortima ini adalah untuk mengklasifikasikan obyek baru berdasarkan atribut dan training sample. Classifier tidak menggunakan model apapun untuk disesuaikan dan hanya berdasarkan pada memori. Diberikan titik query, akan ditemukan sejumlah k obyek atau (titik training) yang paling dekat dengan titik query. Klasifikasi menggunakan voting terbanyak diantara klasifikasi dari k obyek. Algoritma K-Nearest Neighbor (KNN) menggunakan klasifikasi ketetanggaan sebagai nilai prediksi dari query instance yang baru.”Dekat atau jauhnya tetangga biasanya dihitung berdasarkan jarak Euclidean (Euclidean Distance).”
Jarak Euclidean paling sering digunakan untuk menghitung jarak. Jarak Euclidean berfungsi menguji ukuran yang bisa digunakan sebagai interpretasi kedekatan jarak antara dua obyek. Yang direpresentasikan sebagai berikut:”
𝒅 (𝒙, 𝒚) = √∑
𝒓𝒌=𝟏(𝒙
𝒊− 𝒚
𝒊)
𝟐………..……… (2.3)
“Dimana x, y ϵ X dan 𝑥
𝑖,𝑦
𝑖adalah nilai fitur ke-i dari x dan y, sedangkan r
adalah jumlah fitur dalam vector. Semakin besar nilai d akan semakin jauh tingkat
II-9 keserupaan antara kedua individu dan sebaliknya jika nilai d semakin kecil maka Akan semakin dekat tingkat keserupaan antar individu tersebut (Prasetyo, 2014).”
Langkah-langkah untuk menghitung metode K-Nearest Neighbor adalah sebagai berikut:”
1. Menentukan”parameter K (Jumlah tetangga paling dekat).”
2. Menghitung”kuadrat jarak euclidean (query instance) masing-masing obyek terhadap data sample yang diberikan.”
3. Mengurutkan”objek-objek tersebut kedalam kelompok yang mempunyai jarak Euclid terkecil hingga terbesar.”
4. Periksa kelas K tetangga terdekat.”
5. Dengan”menggunakan kategori nearest neighbor yang paling mayoritas maka dapat diprediksikan nilai query instance yang telah dihitung.”
2.8 Pengujian
Pengujian merupakan tahapan untuk menguji terhadap system yang telah dibangun. Metode pengujian yang akan digunakan yaitu white box. Pengujian white box adalah pengujian yang didasarkan pada pengecekan terhadap detail perancangan, menggunakan struktur kontrol dari desain program secara prosedural untuk membagi pengujian ke dalam beberapa test case (Nidhra, Srinivas, &
Dondeti, 2012). Tujuan penggunaan white box untuk menguji semua statement program.
Pengukuran akurasi klasifikasi menggunakan Confusion matrix. Confusion
matrix adalah sebuah metode yang biasa digunakan untuk perhitungan akurasi pada
bidang data mining,”dengan menghitung jumlah prediksi benar dan salah dari
sebuah metode klasifikasi berbanding dengan data sesungguhnya atau prediksi
target (Prasetyo, 2012). Nilai akurasi merupakan tingkat kedekatan antara nilai
prediksi dengan nilai aktual. Precision adalah tingkat ketepatan antara informasi
yang diminta dengan jawaban yang diberikan oleh sistem. Recall adalah tingkat
keberhasilan sistem dalam menemukan kembali informasi. Error rate adalah
tingkat kegagalan sistem dalam memprediksi nilai aktual Confusion matrix
merupakan tabel yang mencatat hasil kerja klasifikasi. Tabel 2.1 merupakan
Confusion matrix yang melakukan klasifikasi masalah biner (dua kelas).
II-10 Tabel 2.1 Matriks Confusion untuk klasifikasi 2 kelas
Kelas Hasil prediksi
Positif Negative
Kelas asli Positif True Positive (TP) False Negative (FN) Negative False Posotive (FP) True Negative (TN) Confusion matrix merupakan perhitungan yang menghasilkan 4 output, yaitu akurasi, error rate, recall, dan precision. Berikut merupakan persamaan dari Confusion matrix.
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 =
(𝑇𝑃+𝑇𝑁)(𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁)
𝑥 100% ………... (2.4)
𝑒𝑟𝑟𝑜𝑟 𝑟𝑎𝑡𝑒 =
(𝐹𝑁+𝐹𝑃)(𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁)
𝑥 100% ……….. (2.5) 𝑟𝑒𝑐𝑎𝑙𝑙 =
(𝑇𝑃)(𝑇𝑃+𝐹𝑁)
𝑥 100% ……….. (2.6)
𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 =
𝑇𝑃𝑇𝑃+𝐹𝑃
……….. (2.7)
Keterangan:
TP = true positive, jumlah data dengan kelas positif dan terklasifikasi secara benar TN = true negative, jumlah data dengan kelas negatif dan terklasifikasi secara benar FN = false negative, jumlah data dengan kelas negatif dan terklasifikasi secara salah FP = false positive, jumlah data dengan kelas positif dan terklasifikasi secara salah
2.9 Penelitian Terkait
Adapun beberapa penelitian yang telah dilakukan peneliti-peneliti sebelumnya terkait dengan penelitian yang akan dilakukan penulis yaitu:
Tabel 2.1 Penelitian Terkait Mengenai Ujaran Kebencian
No Penulis Judul Tahun Kesimpulan
1 Aditya Kresna Bayu Arda Putra,
Mochammad Ali Fauzi, Budi Darma
Identifikasi”
Ujaran
Kebencian Pada Facebook Dengan Metode Ensemble
2018 Penelitian”ini menggunakan
metode esemble feature untuk
menggabungkan beberapa
fitur dari tiap tulisan agar
mempermudah proses
identifikasi ujaran kebencian
II-11 Setiawan , Eti
Setiawati
Feature Dan Support Vector Machine”
dan metode Support Vector Machine digunakan untuk melakukan Identifikasi.
2 Ika Alfina, Rio Mulia, Mohamad Ivan Fanany, Yudo Ekanata
Hate Speech Detection In The Indonesian Language:
2017 Penelitian ini mendeteksi ujaran kebencian atau hatespeech berbahasa A Dataset And Preliminary Study Indonesia pada Twitter dengan data berkaitan dengan pemilihan umum kepala daerah DKI Jakarta tahun 2017 yang diperoleh dari Twitter Streaming API.
3 Muhammad Mishbahul Munir, Mochammad Ali Fauzi, Dan Rizal Setya Perdana
Implementasi”
Metode
Backpropagatio
n Neural
Network Berbasis
Lexicon Based Features Dan Bag Of Words Untuk
Identifikasi Ujaran
Kebencian Pada Twitter”
2018 Penelitian ini melakukan identifikasi Tweet ujaran kebencian pada Twitter menggunakan” metode Backpropagation Neural Network dengan Lexicon Based Features dan Bag Of Words. Tingkat akurasi mencapai 78.081%.”
4 Ghulam Asrofi Buntoro
Analisis”
Sentimen Hatespeech Pada Twitter Dengan Metode Naïve Bayes Classifier Dan Support Vector Machine”
2016 Pada penelitian ini mengklasifikasikan Tweet ujaran kebencian dengan
tagar HateSpeech
(#HateSpeech) pada Twitter dengan dua sentimen yaitu
HateSpeech dan
GoodSpeech.
Tabel 2.2 Penelitian Terkait Dengan Metode yang Sama
No Penulis Judul Tahun Kesimpulan
1 Moh Aziz Nugroho, Heru Agus Santoso
Klasifikasi Dokumen Komentar Pada Situs Youtube Menggunakan Algoritma KNN
2018 Tingkat akurasi mencapai
80.6%.
II-12 2 Yessivha
Imanuela Claudy, Rizal Setya Perdana, M. Ali Fauzi
Klasifikasi Dokumen Twitter Untuk Mengetahui Karakter Calon Karyawan Menggunakan Algoritma (KNN)
2018 Tingkat akurasi yang diperoleh sebesar 66%
dengan nilai k=4.
3 Pratama Dwi Nugraha, Said Al Faraby, Adiwijaya
Klasifikasi Dokumen Menggunakan
Metode K-
Nearest Neighbor Dengan Information Gain
2018 Metode KNN tanpa information gain lebih unggul dari pada menggunakan information gain dengan nilai akurasi sebesar 93.94%.
4 Siti Ernawati, Risa Wati
Penerapan Algoritma KNN Pada Analisis Sentimen
Review Agen Travel
2018 Tingkat akurasi mencapai 87%.
5 Syafitri Hidayatul Annur Aini , Yuita Arum Sari , Achmad Arwan
Seleksi Fitur Information Gain Untuk Klasifikasi Penyakit Jantung Menggunakan Kombinasi
Metode K-
Nearest
2018 Tingkat akurasi yang diperoleh mencapai 92.31%.
6 Ramadhan Rakhmat Sani, Junta
Zeniarza, Ardytha Luthfiarta
Pengembangan Aplikasi Penentuan Tema Tugas Akhir
Berdasarkan Data Abstrak Menggunakan Algoritma K- Nearest Neighbor
2016 Metode K-Nearest Neighbor mampu mengklasifikasi data abstrak dengan baik menggunakan jumlah k = 3.
Proses akan semakin baik apabila data training semakin banyak.
7 Yoseph
Samuel, Rosa Delima,
Implementasi
Metode K-
Nearest
2015 Metode K-Nearest Neighbor
ditambah dengan Decision
Rule memiliki hasil lebih
II-13 Antonius
Rachmat
Neighbor Dengan
Decision Rule Untuk
Klasifikasi
baik daripada K-Nearest Subtopik Berita Neighbor tanpa Decision rule.
8 Riyan Eko Putri, Suparti, Rita
Rahmawati
Perbandingan Metode Klasifikasi Naïve Bayes Dan K-Nearest Neighbor Pada Analisis Data Status Kerja Di Kabupaten Demak Tahun 2012
2014 Metode klasifikasi K-Nearest Neighbor lebih baik daripada metode naïve bayes
9 Andreas”Dani el Arifin, Isye Arieshanti, Agus Zainal Arifin”
Implementasi Algoritma K- Nearest
Neighbour Yang
Berdasarkan
One Pass
Clustering Untuk Kategorisasi Teks
2012 Menggunakan algoritma one
pass K-Nearest Neighbor
tingkat akurasi mencapai
88%.
BAB III
METODOLOGI PENELITIAN
Metedologi”penelitian merupakan tahapan kerangka kerja penelitian yang tersusun secara sistematis agar pelaksanaan penelitian mencapai tujuan yang diharapkan.”Berikut adalah gambaran tahapan yang akan dilakukan dalam penyelesaian tugas akhir yang berjudul “implementasi metode K-Nearest Neighbor untuk identifikasi ujaran kebencian terhadap tokoh politik pada Twitter”
yang”dapat dilihat pada gambar 3.1 berikut.”
Gambar 3.1 Tahapan Metodologi Penelitian
Identifikasi Masalah
Perancangan 1. Perancangan Basis Data 2. Perancangan Struktur Menu 3. Perancangan antarmuka
Analisa 1. Kebutuhan Data
2. Pelabelan Manual Dataset 3. Text Preprocessing
(Cleaning, Case Folding, Tokenizing, Normalisasi, Stemming, Remove Stopword)
3. Pembobotan Kata 4. Feature selection
5. Klasifikasi K-Nearest Neighbor Studi Pustaka
Pengumpulan Data
Implementasi dan Pengujian
Kesimpulan dan Saran
III-2
3.1 Identifikasi Masalah
Tahap”ini merupakan tahap awal dari metodologi penelitian. Tahap ini berisi latar belakang, rumusan masalah, dan batasan masalah. Latar belakang merupakan landasan dari penelitian ini dibuat. Rumusan masalah merupakan permasalahan yang ada di latar belakang. Kemudian batasan masalah yang dibuat untuk membatasi penelitian ini.”
3.2 Studi Pustaka
Tahapan selanjutnya yaitu pencarian informasi dan menemukan referensi yang berhubungan dengan permasalahan pada penelitian ini melalui jurnal ilmiah, buku terkait baik itu text book maupun e-book, media online dan referensi lainnya yang berkaitan penelitian ini. Referensi yang dikumpulkan berkaitan dengan teori- teori mengenai penelitian serupa yang telah dilakukan sebelumnya.”
3.3 Pengumpulan Data
Tahapan”ini merupakan tahapan pengumpulan data yang diperlukan untuk menganalisa dan memperoleh data-data serta informasi yang berhubungan dengan penelitian yang akan dilakukan. Data yang dikumpulkan berasal dari Tweet pada media sosial Twitter terhadap akun @Fahrihamzah dan @basuki_btp serta hashtag yang berkaitan dengan kedua tokoh tersebut. Data yang dikumpulkan dari server Twitter menggunakan Twitter API (Application Programming Interface). Data yang telah dikumpulkan disimpan pada MySQL dan setelah itu di export kedalam format Comma Separated Values (CSV) untuk dilabeli oleh pakar.
3.7 Analisa
Setelah melakukan tahapan identifikasi masalah, studi Pustaka, dan Pengumpulan data maka selanjutnya melakukan tahapan analisa. Analisa merupakan langkah-langkah yang berisi tentang gambaran penelitian yang akan dilakukan. Adapun rincian analisa sebagai berikut:
3.7.1 Kebutuhan Data
Analisa kebutuhan data merupakan suatu proses untuk menganalisa data
yang telah dikumpulkan. Dataset yang digunakan pada penelitian ini berjumlah
1000 data yang terdiri dari 500 data kelas kebencian dan 500 data kelas tidak
kebencian menggunakan bahasa Indonesia. Tujuan dari analisa kebutuhan data
III-3 yaitu untuk memudahkan dalam proses pengolahan data untuk diolah pada tahap selanjutnya.
3.7.2 Pelabelan Manual Dataset
Melakukan pelabelan manual untuk menyelesaikan permasalahan klasifikasi Tweet ujaran kebencian agar data dapat masuk kedalam kelompok yang benar berdasarkan informasi yang dikandungnya. Jumlah dataset yang akan digunakan yaitu berjumlah 1000 Tweet. Pelabelan manual dilakukan oleh dosen bahasa Indonesia atas nama Roza Afifah, S.Pd, M.Hum. Dataset tersebut dibagi kedalam dua kategori.
Ada dua kategori yang ditentukan untuk klasifikasi berdasarkan informasi yang dikandungnya, antara lain:
1. Kategori ujaran kebencian
2. Kategori tidak melakukan ujaran kebencian 3.7.3 Text Preprocessing
Tahapan preprocessing atau praproses data merupakan langkah untuk mempersiapkan data mentah sebelum dilakukan proses lainnya. Tahapan ini melakukan pembersihan sebuah data dengan tujuan untuk meyeragamkan bentuk kata dan mengurangi volume kata yang bersumber dari sekumpulan dokumen yang diperoleh dari Twitter API. Dalam tahapan preprocessing akan dilakukan sejumlah proses yaitu cleaning, case folding, case folding, normalisasi, stemming, dan remove stopword.
1. Cleaning
Pada tahap ini dilakukan pembersihan-pembersihan atribut yang tidak berhubungan dengan informasi yang ada pada data seperti URL, hashtag, mention, dan emoticon.
2. Case folding
Pada tahap ini dilakukan proses untuk mengubah seluruh huruf di dalam dokumen menjadi huruf kecil.
3. Case folding
Tahapan ini merupakan tahapan untuk melakukan proses pemisahan kata
pada suatu kalimat menjadi sebuah kata-kata yang menyusunnya. Tahapan
ini menggunakan proses pemisahan kata unigram.
III-4 4. Normalisasi
Tahapan ini merupakan proses untuk merubah kata yang salah eja atau kata-kata yang tidak baku menjadi baku menggunakan kamus normalisasi.
5. Stemming
Tahapan ini merupakan tahapan untuk mengubah semua kata ke kata dasarnya. Algoritma stemming yang digunakan yaitu Enhanced Confix Stripping (ECS).
6. Remove Stopword
Tahapan ini merupakan tahapan untuk menghapus kata-kata yang tidak penting untuk digunakan. Misalnya kata “di”, “ke”, “dari”, “yang”, “di”,
“ada”, “dengan”, “akan”, “itu”, “tidak”, “mau”, dan lain-lain.
3.7.4 Pembobotan Kata
Pembobotan kata merupakan proses untuk pemberian bobot terhadap jumlah frekuensi kata. Proses Pembobotan kata pada penelitian ini menggunakan Metode TF-IDF karena menurut penelitian yang dilakukan oleh (Robertson, n.d.) metode tersebut merupakan metode yang terkenal efisien, mudah, dan memiliki hasil yang akurat. Berikut langkah langkah pada proses pembobotan kata menggunakan TF-IDF:
1. Menghitung kata yang muncul (TF) pada semua dokumen.
2. Menghitung nilai IDF dengan rumus IDF = 𝑙𝑜𝑔
𝑁𝐷𝐹