• Tidak ada hasil yang ditemukan

IMPLEMENTASI METODE K-NEAREST NEIGHBOR (K-NN) UNTUK IDENTIFIKASI UJARAN KEBENCIAN TERHADAP TOKOH POLITIK PADA TWITTER TUGAS AKHIR

N/A
N/A
Protected

Academic year: 2022

Membagikan "IMPLEMENTASI METODE K-NEAREST NEIGHBOR (K-NN) UNTUK IDENTIFIKASI UJARAN KEBENCIAN TERHADAP TOKOH POLITIK PADA TWITTER TUGAS AKHIR"

Copied!
126
0
0

Teks penuh

(1)

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

(2)

ii

(3)

iii

(4)

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.

(5)

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

(6)

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...

(7)

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

(8)

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

(9)

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.

(10)

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.

(11)

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

(12)

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

(13)

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

(14)

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

(15)

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

(16)

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

(17)

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

(18)

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

(19)

xix

DAFTAR LAMPIRAN

Lampiran Halaman

A Dataset, Hasil Pre-Process, Dan Pelabelan Manual ... A-1

B Surat Pernyataan ... B-1

(20)

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.

(21)

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

(22)

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).

(23)

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.

(24)

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

(25)

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.

(26)

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).

(27)

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

(28)

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.

(29)

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-”).

(30)

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.

(31)

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

(32)

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.”

(33)

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

(34)

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).

(35)

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

(36)

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%.

(37)

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

(38)

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%.

(39)

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

(40)

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

(41)

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.

(42)

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 = 𝑙𝑜𝑔

𝑁

𝐷𝐹

3. Kemudian lakukan proses TF-IDF dimana nilai dari IDF dimasukkan ke kolom yang bernilai 1 pada dokumen.

4. Selanjutnya menghitung bobot dari setiap kata pada dokumen.

5. Hasil yang telah ditetapkan akan menjadi acuan untuk mencari panjang vector, sebelum dilakukan perhitungan menggunakan jarak Euclidean.

3.7.5 Feature Selection

Feature selection digunakan untuk meningkatkan akurasi pada penelitian ini

dengan menyeleksi hasil bobot fitur yang telah didapatkan, feature selection yang

digunakan pada penelitian ini menggunakan threshold atau ambang batas.

(43)

III-5 3.7.6 Klasifikasi K-Nearest Neighbor

Pada tahap ini dilakukan analisa dari Metode klasifikasi yang telah diperoleh dengan data latih. Nilai k yang digunakan dalam proses perhitungan yaitu 3, 5, 7, 9, dan 11. Adapun langkah-langkah Metode K-Nearest Neighbor adalah:

1. Tentukan k

2. Hitung jarak data baru dengan semua data training. Jarak dihitung menggunakan jarak Euclidean menggunakan persamaan (2.3).

3. Urutkan jarak tersebut dari yang terdekat 4. Periksa kelas k tetangga terdekat

5. Kelas data baru = kelas mayoritas k tetangga terdekatnya

3.8 Perancangan

Tahapan”ini adalah tahapan tentang perancangan sistem yang akan dibuat berdasarkan analisa yang telah dilakukan. Adapun perancangan sistem adalah sebagai berikut:”

1. PerancangandBasis Data.

Merancangppenyimpanan data dalamkkonseptual model. Tujuan dari perncangan basis data adalah untuk menyimpan data yang akan digunakan pada sistem.

2. Perancangan struktur menu

Perancangan struktur menu bertujuan untuk merancang”menu-menu pada sistem sesuai dengan fungsi masing-masing dan mengetahui berapa menu yang akan dibutuhkan.”

3. Perancanganaantarmuka (interface)

Merancang”atau mendesain tampilan antarmuka (interface) sistem yang akan membuat interaksi antara pengguna (user) dengan sistem. Tampilan yang dibuat dapat memberikan gambaran umum implementasi dari aplikasi yang dibuat.”

3.9 Implementasi dan Pengujian

Setelah tahapan analisa dan perancangan dilakukan, tahapan selanjutnya yaitu

melakukan tahapan implementasi dan pengujian terhadap penelitian ini.

(44)

III-6 3.9.1 Implementasi

Proses”implementasi sistem adalah pembuatan modul yang telah dirancang sebelumnya sesuai dengan bahasa pemrograman yang digunakan yaitu PHP dalam sistem yang akan dibangun.”Adapun spesifikasi komputer pembuat sistem untuk mengimplementasikan sistem yang telah dilakukan analisa dan perancangannya adalah sebagai berikut.

1. Perangkattkeras (Hardware)

Processor : Intel(R) Celeron(R) CPU N3050 @ 1.60 GHz 1.60 GHz System Type : 64-bit”Operating System, x64-based processor”

RAM : 2 GB

Harddisk : 500 GB 2. Perangkat lunak (Software)

Sistem Operasi : Microsoft Windows 10 Pro Bahasa Pemrograman : PHP 7

Browser : Google Chrome

Text Editor : Sublime Text Version 3.0 3.9.2 Pengujian

Pengujian”merupakan tahapan dimana tahapan implementasi telah selesai.

Tahap pengujian diperlukan sebagai ukuran bahwa sistem dapat dijalankan sesuai dengan tujuan.”Metode pengujian kode program yang akan digunakan yaitu White Box. Kemudian untuk pengujian tingkat akurasi, dilakukan dengan pembagian data latih dan data uji dari total 1.000 Tweet yaitu dengan pembagian 70% data latih dan 30% data uji, 80% data latih dan 20% data uji, 90% data latih dan 10% data uji dengan nilai parameter k=3, k=5, k=7, k=9 dan k=11 menggunakan metode pengujian Confussion Matrix.

3.10 Kesimpulan dan Saran

Kesimpulan berisikan hasil dari penelitian yang telah dilakukan. Hal tersebut

bertujuan untuk mengetahui apakah implementasi Metode K-Nearest Neighbor

berhasil dan mengetahui tingkat akurasinya. Pada bagian saran berisi kemungkinan

pengembangan yang dapat dilakukan terhadap penelitian ini.

Referensi

Dokumen terkait

Risalah dari data-data tersebut selayaknya terakomodasi di Pangkalan Data Pendidikan Tinggi, dengan demikian jenis informasi yang dihasilkan dapat disesuaikan dengan

Berdasarkan hasil penelitian, perangkat pembelajaran biologi dengan pendekatan scientific skill memiliki tingkat keterterapan yang baik, sehingga dapat digunakan

Sementara untuk mengaktifkan dan menon-akftifkan efek gitar, digunakan 3PDT footswitch sebagai saklar true/by pass yang berfungsi untuk mengontrol apakah sinyal masukan yang

Pemilik berniat membuat suatu identitas perusahaan miliknya sebagai identitas visual untuk memberikan nilai tambah pada Butik Mazel dengan menjual barang-barang

Sepak sila merupakan teknik yang mendasar dalam permainan sepaktakraw karana usaha memainkan bola yang dilakukan oleh pemain, baik tekong maupun apit mengontrol bola

Skripsi ini berisi tentang pengembangan model Bioco 1.0 (Model Sistem Penunjang Keputusan Agroindustri Bahan Bakar Nabati Berbasis Minyak Kelapa) yang dirancang untuk

10 yaitu bahwa latihan aerobik seperti halnya lati- han sepeda statis memiliki pengaruh yang baik untuk peningkatan fungsi pernapasan dilihat dari peningkatan nilai FVC pada