Analisis Sentimen HateSpeech pada Pengguna Layanan Twitter dengan Metode Naïve Bayes Classifier (NBC)
Murni1,*, Imam Riadi2, Abdul Fadlil3,
1Program Studi Magister Informatika, Universitas Ahmad Dahlan, Yogyakarta, Indonesia
2Program Studi Sistem Informasi, Universitas Ahmad Dahlan, Yogyakarta, Indonesia
3Program Studi Teknik Elektro, Universitas Ahmad Dahlan, Yogyakarta, Indonesia Email: 1,*[email protected], 2[email protected], 3[email protected]
Email Penulis Korespondensi: [email protected] Submitted 19-03-2023; Accepted 30-04-2023; Published 30-04-2023
Abstrak
Pengguna Twitter pada januari 2023 meningkat 27,4% dibandingkan periode tahun sebelumnya di seluruh dunia. Pemanfaatan Twitter sebagai layanan jaringan sosial salah satunya digunakan untuk membuat HateSpeech (Ujaran Kebencian). HateSpeech menumbuhkan rasa benci dan permusuhan individu atau kelompok tertentu (suku, agama, ras dan antar golongan) dalam bentuk penghinaan, pencemaran nama baik, penistaan, provokasi, menghasut, dan menyebarkan berita bohong. Solusi untuk menghindari perpecahan antar golongan yang mengancam persatuan bangsa Indonesia perlu dilakukan dengan analisis sentimen untuk mengelompokkan tweet-tweet yang termasuk dalam HateSpeech atau Non-HateSpeech. Penelitian ini bertujuan untuk melakukan analisis sentimen HateSpeech pengguna layanan twitter dengan metode Naïve Bayes Classifier. Dataset yang digunakan dalam penelitian ini sebanyak 5000 data yang diolah dengan tools Python untuk tahap preprocessing (case folding, tokenization, stopword removal, normalization, dan stemming), Labeling, Term Weighting pembobotan dengan Term Frequency (TF), dan Inverse Document Frequency (IDF). Teknik K- Fold Cross Validation dilakukan untuk memvalidasi data dengan membagi data training dan testing ke dalam 3 skenario pengujian yaitu data training 70% dan testing 30%, data training 30% dan testing 70%, dan data training 50% dan testing 50% terhadap Metode Naïve Bayes Classifier. Berdasarkan evaluasi menggunakan Confusion Matrix diperoleh akurasi tertinggi sebesar 80%, precision 100%, recall 80%, dan F1-Score 89% pada skenario pengujian data training 70% dan testing 30%.
Kata Kunci: Analisis Sentimen; HateSpeech; Twitter; Naïve Bayes Classifier Abstract
Twitter users in January 2023 increased by 27.4% over the prior-year period worldwide. One of the uses of Twitter as a social networking service is used to create HateSpeech. HateSpeech fosters hatred and hostility of certain individuals or groups (ethnic, religious, racial and inter-group) in the form of insults, defamation, blasphemy, provocation, incitement, and spreading false news. The solution to avoid divisions between factions that threaten the unity of the Indonesian nation needs to be done with sentiment analysis to group tweets that are included in HateSpeech or Non-HateSpeech. This study aims to analyze the HateSpeech sentiment of twitter service users with the Naïve Bayes Classifier method. The dataset used in this study was 5000 data processed with Python tools for the preprocessing stages (case folding, tokenization, stopword removal, normalization, dan stemming), Labeling, Term Weighting weighting with Term Frequency (TF), and Inverse Document Frequency (IDF). The K-Fold Cross Validation technique is carried out to validate data by dividing training and testing data into 3 test scenarios, namely 70% training data and 30% testing, 30% training data and 70% testing, and 50% training data and 50% testing of the Naïve Bayes Classifier Method. Based on evaluation using Confusion Matrix, the highest accuracy of 80%, precision 100%, recall 80%, and F1-Score 89% was obtained in the training data testing scenario of 70% and testing 30%.
Keywords: Sentiment Analysis; HateSpeech; Twitter; Naïve Bayes Classifier
1. PENDAHULUAN
Laporan We Are Social dan Hootsuite, terdapat 556 juta pengguna Twitter di seluruh dunia pada Januari 2023. Jumlah tersebut meningkat 27,4% dibandingkan pada periode yang sama tahun sebelumnya. Berdasarkan negara, Indonesia berada di peringkat lima dengan 24 juta pengguna [1]. Twitter adalah layanan jejaring sosial dan mikroblog dalam jaringan yang memungkinkan user untuk mengirim dan membaca pesan yang berbasis teks, gambar, video, dan audio.
Layanan Twitter telah dimanfaatkan untuk berbagai keperluan dalam berbagai aspek, contohnya sebagai sarana kampanye politik, protes, sarana pembelajaran, dan sebagai media komunikasi darurat. Selain itu, layanan Twitter juga dimanfaatkan sebagai media untuk membuat HateSpeech (Ujaran Kebencian) yang dapat menumbuhkan rasa benci dan permusuhan individu atau kelompok tertentu.
Jenis-jenis HateSpeech pada layanan Twitter berbagai macam dan didasari oleh motif-motif tertentu, seperti motif suku, agama, ras, dan antar golongan (SARA). HateSpeech tersebut dapat berupa penghinaan, pencemaran nama baik, penistaan, perbuatan tidak menyenangkan, provokasi, menghasut, dan menyebarkan berita bohong. Untuk menghindari perpecahan antargolongan dan memecah belah persatuan bangsa Indonesia masalah tersebut harus dapat ditangani dengan cepat sebelum berkembang menjadi sangat besar dan luas. Oleh karena itu Analisis Sentimen terhadap HateSpeech diperlukan untuk mengelompokkan tweet-tweet tersebut termasuk ke dalam HateSpeech atau Non-HateSpeech.
Analisis sentimen terhadap HateSpeech yang dilakukan secara manual akan memakan waktu dan juga tenaga yang banyak, maka dari itu analisis sentimen terhadap HateSpeech secara otomatis diperlukan untuk mempermudah proses klasifikasi tersebut sehingga kedepannya dapat digunakan oleh pihak yang membutuhkan [2]. Analisis sentimen bertujuan untuk menganalisis opini, sentimen dan emosi yang terdapat pada dokumen atau data. Tugas dasar dari analisis sentimen adalah untuk mengelompokan sifat dari teks yang ada di dalam kalimat maupun pendapat [3].
Memecahkan masalah tersebut dapat menggunakan metode dan algoritma tertentu, berbekal informasi-informasi yang ada sebelumnya, komputer dapat diajarkan untuk dapat menjadi cerdas dan bisa secara otomatis memberikan prediksi dan keputusan untuk suatu permasalahan. Inilah yang disebut dengan machine learning. Salah satu teknik dalam machine learing adalah data mining [4]. Terdapat beberapa teknik algoritma dalam penerapan data mining diantaranya Naïve Bayes classifier [5]. Algoritma yang diterapkan pada penelitian ini adalah metode Naive Bayes Classifier. Metode Naive Bayes Classifier dipilih karena memiliki kecepatan dalam pemprosesan dan akurasi yang cukup tinggi bila digunakan pada data yang banyak, besar, dan beragam [6].
Penelitian terdahulu yang pernah dilakukan tentang Analisis Sentimen menggunakan Metode Naïve Bayes di antaranya adalah [7][8][9][10] Penggunaan Metode Naïve Bayes Classifier pada Analisis Sentimen Facebook Berbahasa Indonesia yang menghasilkan tingkat akurasi yang tinggi [11]. Klasifikasi Ujaran Kebencian pada Cuitan dalam Bahasa Indonesia yang menghasilkan skor akurasi sebesar 98% [12]. Analisis Sentimen Dokumen Twitter Mengenai Dampak Virus Corona Menggunakan Metode Naïve Bayes Classifier yang menghasilkan accuracy data sebesar 67% [13]. Analisis Sentimen Mengenai Covid-19 Menggunakan Metode Naïve Bayes dengan perolehan rata-rata 83,95%
[14][15][16][17][18][19]. Analisis Sentimen Physical Distancing Menggunakan Algoritma Naïve Bayes Classifier dengan perolehan rata-rata 68,59% [20][21][22]. Analisis Sentimen Terhadap Pemilu Menggunakan Naïve Bayes Classifier dengan perolehan rata-rata 70,5% [23][24].
Penelitian ini bertujuan untuk melakukan analisis sentimen HateSpeech [25] pengguna layanan twitter dengan metode Naïve Bayes Classifier berdasarkan 3 proses utama yaitu crawling, preprocessing, dan klasifikasi. Hasil penelitian ini dapat dimanfaatkan sebagai bahan referensi untuk menentukan skenario pengujian terbaik dengan 3 skenario pengujian berdasarkan 10-Fold Cross Validation dan evaluasi menggunakan Confusion Matrix pada pengelompokkan HateSpeech dan Non-HateSpeech pengguna Twitter di Indonesia.
2. METODOLOGI PENELITIAN
2.1 HateSpeech
HateSpeech atau Ujaran Kebencian mengacu pada kalimat serangan terhadap kelompok atau individu tertentu berdasarkan karakteristik yang melekat padanya dan yang dapat mengancam perdamaian sosial. HateSpeech bersifat diskriminatif (bias, fanatik atau tidak toleran), merendahkan, selain itu faktor identitas seperti agama, etnis, kebangsaan, ras, warna kulit, keturunan, dan jenis kelamin juga menjadi faktor adanya HateSpeech.
2.2 Metode Pengumpulan Data
Data pada penelitian ini bersumber dari cuitan masyarakat di Layanan Twitter. Developer Twitter menyediakan Application Programming Interface (API) [26] untuk pengambilan data tersebut. Data yang berhasil ditemukan pada penelitian ini sebanyak 5000 tweet, yang terdiri dari tanggal, nama pengguna, dan tweet. Rentang waktu pengambilannya adalah dari tanggal 21 November 2022 hingga 13 Maret 2023.
2.3 Tahapan Penelitian
Alur dalam membuat program analisis dilakukan dalam beberapa tahap seperti terlihat pada Gambar 1:
Gambar 1. Alur Metode Penelitian
Penjelasan mengenai setiap tahapan alur penelitian pada Gambar 1:
a. Twitter Crawling
Data yang dikumpulkan melalui pengambilan data dari Twitter menggunakan Python [27] dengan memanfaatkan fasilitas twitterscrapper, data yang ditemukan berupa komentar tweet berbahasa Indonesia sebanyak 5000 data yang diambil mulai dari 21 November 2022 hingga 13 Maret 2023 dengan kata kunci terkait “Ujaran Kebencian” dalam bentuk file.csv.
b. Preprocessing
Preprocessing adalah proses menghapus karakter dan kata-kata yang tidak cocok dengan dokumen. Tahap preprocessing akan memfasilitasi dan meningkatkan pemrosesan kata. Data yang telah dihasilkan pertama-tama akan melalui preprocessing, yang bertujuan untuk mengubah data yang tidak terstruktur, masih kasar, dan memiliki noise berubah menjadi bentuk data yang siap diolah [28]. Data yang dihasilkan melalui proses preprocessing diolah untuk digunakan dalam proses klasifikasi. Tahapan dalam Preprocessing yaitu case folding, tokenization, stopword removal, normalization, dan stemming [29].
c. Labeling
Proses ini bertujuan membagi data menjadi dua kelas sentimen yaitu, sentimen HateSpeech, sentimen Non- HateSpeech, dan sentimen netral, namun dalam penelitian ini yang digunakan hanyalah sentimen HateSpeech dan Non- HateSpeech. Cara tersebut sejalan dengan penelitian analisis sentimen.
d. Term Weighting
Term dalam konteks Natural Language Processing (NLP) merujuk pada kata atau frasa tertentu dalam sebuah dokumen atau korpus teks. Dalam analisis teks, istilah dapat merujuk pada kata tunggal seperti “kucing” atau “rumah”, atau dapat berupa frasa yang lebih panjang seperti “jaringan saraf tiruan” atau “teknologi informasi”. Istilah ini sering diidentifikasi dan diberi bobot dalam proses analisis teks untuk membantu menggambarkan makna dan konten dari dokumen atau korpus secara lebih akurat. Metode Term Weighting yang paling umum digunakan adalah metode TF-IDF (term frequency-inverse document frequency) yang mempertimbangkan baik frekuensi suatu istilah dalam sebuah dokumen atau dalam seluruh korpus untuk menghitung bobot yang mencerminkan pentingnya istilah dalam sebuah dokumen atau korpus tersebut. TF-IDF merujuk pada representasi Bag of Word dari stemming dan stopwords removal.
Formula yang digunakan untuk menghitung bobot ditunjukkan pada persamaan 1 dan 2.
𝑇𝐹 − 𝐼𝐷𝐹(𝑡,𝑑) = 𝑇𝐹(𝑡,𝑑) 𝑥 𝐼𝐷𝐹(𝑡) (1)
𝐼𝐷𝐹(𝑡)= 𝑙𝑜𝑔𝐼𝐷𝐹𝑁 (𝑡) (2)
TF(t,d) = jumlah term dalam sebuah dokumen
IDF(t) = jumlah total dokumen/jumlah dokumen yang mengandung term
Menghitung IDF untuk seluruh korpus yang dimiliki dengan menggunakan log(N) = log(2).
e. Metode Naïve Bayes Classifier
Metode Naïve Bayes Classifier adalah jenis algoritma machine learning yang umum dgunakan untuk tugas klasifikasi teks, seperti analisis sentimen. Tujuannya adalah untuk menentukan sentimen atau pendapat yang terungkap dalam teks tertentu, seperti tweet atau ulasan produk. Metode Naïve Bayes Classifier menggunakan teorema bayes untuk menghitung probabilitas bahwa suatu teks tertentu termasuk ke dalam kategori sentimen tertentu misalnya positif atau negatif, namun yang digunakan dalam penelitian ini adalah HateSpeech atau Non-HateSpeech. Atribut yang digunakan untuk mengklasifikasikan suatu instance dikenal sebagai fitur dalam Metode Naïve Bayes Classifier. Pemilihan fitur yang digunakan dalam klasifikasi sangat penting, karena hal ini mempengaruhi akurasi model. Banyak jenis fitur yang digunakan dalam Metode Naïve Bayes Classifier, namun fitur yang digunakan dalam penelitian ini adalah Text Features.
Text Features diekstraksi dari data teks dan biasanya direpresentasikan sebagai bag of words atau n-gram, di mana setiap kata adalah sebuah fitur. Formula yang digunakan dalam Metode Naïve Bayes Classifier untuk analisis sentimen didasarkan pada teorema bayes, seperti yang disajikan pada persamaan 3 [30][31].
𝑃(𝐶|𝑋) = (𝑃(𝑋|𝐶) ∗ 𝑃(𝐶)) / 𝑃(𝑋) (3)
P(C|X) = probabilitas posterior dari kelas C yang diberikan masukan X P(X|C) = probabilitas bersyarat dari masukan X yang diberikan kelas C P(C) = probabilitas prior dari kelas C
P(X) = probabilitas prior dari masukan X
Masukan X dalam analisis sentimen biasanya berupa teks, dan kelas C mewakili kategori sentimen seperi positif, negatif, atau netral dalam teks independen satu sama lain, namun dalam penelitian ini kategori sentimen yang digunakan adalah HateSpeech dan Non-HateSpeech. Kemudian, formula dapat disederhanakan sebagai persamaan 4.
𝑃(𝐶|𝑋) = 𝑃(𝐶) ∗ ∏ 𝑃(𝑋𝑖|𝐶) (4)
∏ 𝑃(𝑋𝑖|𝐶) = produk dari probabilitas bersayarat P(Xi|C) untuk setiap fitur dalam kumpulan data pelatihan, dan menggunakan probabilitas ini untuk mengklasifikasikan teks baru yang belum terlihat.
f. K-Fold Cross Validation
K-fold Cross Validation adalah salah satu Teknik yang digunakan untuk menyortir data ke dalam data training dan data testing. Teknik ini diterapkan karena ditemukan dapat mengurangi bias yang diperoleh dalam mengambil sampel. K adalah jumlah disagregasi data yang digunakan untuk distribusi training dan testing.
g. Confusion Matrix
Confusion Matrix adalah tabel dengan empat kombinasi berbeda dari nilai prediksi dan aktual [32][33]. Evaluasi kinerja ini menggunakan F1 Score dan accuracy, F1 Score adalah perbandingan recall dan precision, sementara accuracy menggambarkan seberapa akurat model dalam mengklasifikasikan dengan benar [34]. Contoh dari Confusion Matrix terdapat pada Tabel 1.
Tabel 1. Confusion Matrix
Predicted Class Actual Class
Negative Positive
Positive True Positive (TP) False Positive (FP) Negative False Negative (FN) True Negative (TN) Diperoleh empat nilai keluaran berdasarkan Tabel 1:
1. Recall
Perhitungan untuk mengetahui seberapa besar persentase kasus yang benar diidentifikasi sebagai benar.
𝑅𝑒𝑐𝑎𝑙𝑙 = 𝑇𝑃
𝑇𝑃+𝐹𝑁 (5)
2. Accuracy
Hasil akurasi yang diklasifikasikan dengan data lainnya untuk mengetahui keakuratan model yang digunakan.
𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 = 𝑇𝑃+𝑇𝑁
𝑇𝑃+𝐹𝑃+𝐹𝑁+𝑇𝑁 (6)
3. Precision
Perbandingan antara hasil klasifikasi TP di klasifikasikan sebagai positif dengan semua prediksi positif.
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 𝑇𝑃
𝑇𝑃+𝐹𝑃 (7)
4. F1 Score
Perbandingan rata-rata precision dan recall yang dibobotkan.
𝐹1 𝑆𝑐𝑜𝑟𝑒 = 2∗𝑟𝑒𝑐𝑎𝑙𝑙∗𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛
𝑟𝑒𝑐𝑎𝑙𝑙+𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 (8)
3. HASIL DAN PEMBAHASAN
3.1 Crawling Data
Penelitian menggunakan metode Naïve Bayes Classifier yang pertama dihasilkan dari proses crawling yaitu mengambil tweet dengan kata kunci terkait “Ujaran Kebencian”. Data crawling dilakukan pada periode November 2022 hingga Maret 2023. Menurut hasil crawling, terdapat 5000 tweet yang digunakan untuk pelatihan dan pengujian. Atribut yang digunakan pada Metode Naïve Bayes Classifier disajikan pada Tabel 2.
Tabel 2. Atribut Naïve Bayes Classifier
No Atribut Tipe Data
1 Text Stemmed Object
2 Label Object
Data crawling merupakan data mentah yang belum dapat dilakukan proses Analisis Sentimen, oleh karena itu diperlukan tahap preprocessing untuk memperoleh data yang terstruktur sehingga dapat dilakukan pembuatan model Machine learning. Dataset 5000 tweet yang akan melalui tahap preprocessing disajikan pada Tabel 3.
Tabel 3. Daftar Dataset HateSpeech
No Date Username Text
0 2023-03-13 16:29:03+00:00
Arsy********** Di masa sekarang sudah benar benar muak terhadap orang yang menyebar ujaran kebencian dan kelemahan didepan orang banyak dan dipermalukan di banyak pikiran orang. Percaya sii hukum karma pasti ada. Buat kedepan harus hati hati.
1 2023-03-13 15:03:47+00:00
Faj******** Pemilu 2024, Boy Rafli: Polarisasi Sosial Terjadi Ketika Praktek Politik Identitas, SARA, Ujaran Kebencian, dan Hoaks Mudah Bertebaran di Tengah Masyarakat https://t.co/xheppSKml9 #BoyRafly #headline
#hoaks #Pemilu2024 2 2023-03-13
15:03:16+00:00
Bin***** Plus, kalau punya social media manager itu, baca dulu Community Guidelines napa. Biar brand engga pakai bikin ujaran kebencian.
https://t.co/Y7o9L3buDj 3 2023-03-13
14:36:36+00:00
Hyu********* go away anon. kalau gak suka bisa skip atau blok sekalian tanpa perlu ujaran kebencian gini. Udah mah baca gratis kagak suruh bayar malah timbal balik gini, mikirlah punya otak gak digunain sayang banget.
Minta maaf gak lu non🤬, lu gak merasa berasalah tah stlh kirim gini?
… … …
4996 2022-11-21 03:59:37+00:00
Sya****** Meme tsb termasuk ujaran kebencian kepada Ibu Negara, dapat di proses tanpa pengaduan
@PoldaJogja https://t.co/BKIeGpKWmf 4997 2022-11-21
03:54:39+00:00
Nye***** Harus dilaporkan !! Ujaran kebencian, erotisme, fitnah dan pencemaran nama baik ada di setiap kontennya jelas merusak moral anak bangsa.
@kemkominfo @KPI_Pusat @PlateJohnny @KPAI_official @SCTV
@OfficialRCTI @Official_MNCTV @TRANSTV_CORP
#KominfoBlokirDenise https://t.co/CeBxizLMwF 4998 2022-11-21
03:45:09+00:00
Aly****** Save generasi bangsa dari konten2 porn*ografi, porn*aksi n ujaran kebencian #KominfoBlokirDenise
4999 2022-11-21 03:35:31+00:00
Don****** @YRadianto Lambat @CCICPolri @DivHumas_Polri semoga Pak
@jokowi @ListyoSigitP berani tegas memberantas ujaran khilafah/kebencian di medsos.
3.2 Preprocessing
Analisis Sentimen mendalam dilakukan setelah melalui langkah-langkah preprocessing yaitu case folding, tokenization, stopword removal, normalization, dan stemming. Proses 5 langkah tersebut dapat dijelaskan mulai dari pemisahan suatu kata dan tanda baca yang berkaitan dengan data pencarian, kemudian dilakukan penyaringan dari data langkah sebelumnya meliputi emoji, link, @, hastag, dan single character hal ini bertujuan agar data yang dihasilkan dapat dikenali dan dideteksi. Hasil tahapan preprocessing disajikan pada Tabel 4.
Tabel 4. Hasil Data Preprocessing
No Date Username Text
0 2023-03-13 16:29:03+00:00 Arsy********** di masa sekarang sudah benar benar muak terhadap orang yang menyebar ujaran kebencian dan kelemahan didepan orang banyak dan dipermalukan di banyak pikiran orang percaya sii hukum karma pasti ada buat kedepan harus hati hati
1 2023-03-13 15:03:47+00:00 Faj******** pemilu boy rafli polarisasi sosial terjadi ketika praktek politik identitas sara ujaran kebencian dan hoaks mudah bertebaran di tengah masyarakat
2 2023-03-13 15:03:16+00:00 Bin***** plus kalau punya social media manager itu baca dulu community guidelines napa biar brand engga pakai bikin ujaran kebencian
3 2023-03-13 14:36:36+00:00 Hyu********* go away anon kalau gak suka bisa skip atau blok sekalian tanpa perlu ujaran kebencian gini udah mah baca gratis kagak suruh bayar malah timbal balik gini mikirlah punya otak gak digunain sayang banget minta maaf gak lu non lu gak merasa berasalah tah stlh kirim gini
… … …
4996 2022-11-21 03:59:37+00:00 Sya****** meme tsb termasuk ujaran kebencian kepada ibu negara dapat di proses tanpa pengaduan
4997 2022-11-21 03:54:39+00:00 Nye***** harus dilaporkan ujaran kebencian erotisme fitnah dan pencemaran nama baik ada di setiap kontennya jelas merusak moral anak bangsa pusat official mnctv corp 4998 2022-11-21 03:45:09+00:00 Aly****** save generasi bangsa dari konten pornografi pornaksi
ujaran kebencian
4999 2022-11-21 03:35:31+00:00 Don****** lambat polri semoga pak berani tegas memberantas ujaran khilafahkebencian di medsos
3.3 Labeling
Tahap ini tweet yang telah melalui tahap preprocessing diberi label menggunakan Pustaka scikit-learn yang tersedia di Python. Pustaka ini digunakan untuk memodelkan dan memprediksi instans kasus baru. Label yang diberikan adalah HateSpeech atau Non-HateSpeech, dimana label HateSpeech adalah label negative dan label Non-HateSpeech adalah label positive. Hasil labeling disajikan pada Tabel 5.
Tabel 5. Hasil Labeling Data HateSpeech dan Non-HateSpeech
No Date Username Text Text Stemmed Label
0 2023-03-13 16:29:03+00
:00
Arsy*****
*****
di masa sekarang sudah benar benar muak terhadap orang yang menyebar ujaran kebencian dan kelemahan didepan orang banyak dan dipermalukan di banyak pikiran orang percaya sii hukum karma pasti ada buat kedepan harus hati hati
['muak', 'orang', 'sebar', 'ujar', 'benci', 'lemah', 'depan', 'orang', 'malu', 'pikir', 'orang', 'percaya', 'sii', 'hukum', 'karma', 'depan', 'hati', 'hati']
Non- HateSpeech
1 2023-03-13 15:03:47+00
:00
Faj******
**
pemilu boy rafli polarisasi sosial terjadi ketika praktek politik identitas sara ujaran kebencian dan hoaks mudah bertebaran di tengah masyarakat
['milu', 'boy', 'rafli', 'polarisasi', 'sosial', 'praktek', 'politik', 'identitas', 'sara', 'ujar', 'benci', 'hoaks', 'mudah', 'tebar', 'masyarakat']
Non- HateSpeech
2 2023-03-13 15:03:16+00
:00
Bin***** plus kalau punya social media manager itu baca dulu community guidelines napa biar brand engga pakai bikin ujaran kebencian
['plus', 'social', 'media', 'manager', 'baca', 'community', 'guidelines', 'napa', 'brand', 'engga', 'pakai', 'ujar', 'benci']
Non- HateSpeech
3 2023-03-13 14:36:36+00
:00
Hyu*****
****
go away anon kalau gak suka bisa skip atau blok sekalian tanpa perlu ujaran kebencian gini udah mah baca gratis kagak suruh bayar malah timbal balik gini mikirlah punya otak gak digunain sayang banget minta maaf gak lu non lu gak merasa berasalah tah stlh kirim gini
['go', 'away', 'anon', 'suka', 'skip', 'blok', 'ujar', 'benci', 'gin', 'udah', 'mah', 'baca', 'gratis', 'kagak', 'suruh', 'bayar', 'timbal', 'gin', 'mikirlah', 'otak', 'digunain', 'sayang', 'banget', 'maaf', 'lu', 'non', 'lu', 'rasa', 'tah', 'stlh', 'kirim', 'gin']
Non- HateSpeech
… … … …
4996 2022-11-21 03:59:37+00
:00
Sya****** meme tsb termasuk ujaran kebencian kepada ibu negara dapat di proses tanpa pengaduan
['meme', 'tsb', 'ujar', 'benci', 'negara', 'proses', 'adu']
Non- HateSpeech 4997 2022-11-21
03:54:39+00 :00
Nye***** harus dilaporkan ujaran kebencian erotisme fitnah dan pencemaran nama baik ada di setiap kontennya jelas merusak moral anak bangsa pusat official mnctv corp
['lapor', 'ujar', 'benci', 'erotisme', 'fitnah', 'cemar', 'nama', 'konten', 'rusak', 'moral', 'anak', 'bangsa', 'pusat', 'official', 'mnctv', 'corp']
Non- HateSpeech
4998 2022-11-21 03:45:09+00
:00
Aly****** save generasi bangsa dari konten pornografi pornaksi ujaran kebencian
['save', 'generasi', 'bangsa', 'konten', 'pornografi', 'pornaksi', 'ujar', 'benci']
Non- HateSpeech 4999 2022-11-21
03:35:31+00 :00
Don*****
*
lambat polri semoga pak berani tegas memberantas ujaran khilafah kebencian di medsos
['lambat', 'polri', 'moga', 'berani', 'berantas', 'ujar', 'khilafahkebencian', 'medsos']
HateSpeech
3.4 K-fold Cross Validation, Naïve Bayes Classification and Confusion Matrix
Data tabel dengan format Excel yang telah diberi labeling HateSpeech dan Non-HateSpeech selanjutnya dilakukan pembagian data terhadap model yang digunakan yaitu K-Fold Cross Validation. Evaluasi rincian penilaian dilakukan
berdasarkan model K-Fold Cross Validation dengan nilai K=10. Model evaluasi ini banyak digunakan terutama untuk klasifikasi teks. Selanjutnya dibuat skenario pengujian seperti yang terlihat pada Tabel 6.
Tabel 6. Skenario Pengujian 10-Fold Cross Validation
No Training (%) Testing (%)
1 70% 30%
2 30% 70%
3 50% 50%
Skenario yang digunakan dalam pengujian ini terbagi menjadi tiga yaitu, data training 70% dan data testing 30%, data training 30% dan data testing 70%, dan data training 50% dan data testing 50%. Klasifikasi Naïve bayes berdasarkan data training 70% dan data testing 30% disajikan pada Tabel 7.
Tabel 7. Hasil Perhitungan Klasifikasi Naïve Bayes terhadap Data Training 70% dan Testing 30%
Tahapan skenario pengujian berdasarkan 5000 dataset, dibagi menjadi tiga skenario pengujian sehingga didapatkan hasil akurasinya. Hasil accuracy pada Tabel 7 didapatkan dengan persamaan 6, perhitungan akurasi terhadap data training 70% dan data testing 30%, diketahui TP = 1200, TN = 7, FP = 1, dan FN = 292.
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 1200 + 7 1200 + 1 + 292 + 7 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 1207
1500 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 0,80
Hasil perhitungan klasifikasi Naïve Bayes tersebut disajikan ke dalam bentuk Confusion Matrix terhadap data training 70% dan testing 30% disajikan pada Gambar 2.
Gambar 2. Confusion Matrix Ujaran Kebencian terhadap Data Training 70% dan Testing 30%
Klasifikasi Naïve bayes berdasarkan data training 30% dan data testing 70% disajikan pada Tabel 8.
Tabel 8. Hasil Perhitungan Klasifikasi Naïve Bayes terhadap Data Training 30% dan Testing 70%
Perhitungan akurasi pada Tabel 8 menggunakan persamaan 6 terhadap data training 30% dan data testing 70%, diketahui TP = 2776, TN = 0, FP = 0, dan FN = 724.
Precision Recall F1-Score Support
0 0,80 1,00 0,89 1201
1 0,88 0,02 0,05 299
Accuracy 0,80 1500
Macro Avg 0,84 0,51 0,47 1500
Weighted Avg 0,82 0,80 0,72 1500
Precision Recall F1-Score Support
0 0,79 1,00 0,88 2776
1 0,00 0,00 0,00 724
Accuracy 0,79 3500
Macro Avg 0,40 0,50 0,44 3500
Weighted Avg 0,63 0,79 0,70 3500
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 2776 + 0 2776 + 0 + 724 + 0 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 2776
3500 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 0,79
Hasil perhitungan klasifikasi Naïve Bayes tersebut disajikan ke dalam bentuk Confusion Matrix terhadap data training 30% dan testing 70% disajikan pada Gambar 3.
Gambar 3. Confusion Matrix Ujaran Kebencian terhadap Data Training 30% dan Testing 70%
Klasifikasi Naïve bayes berdasarkan data training 50% dan data testing 50% disajikan pada Tabel 9.
Tabel 9. Hasil Perhitungan Klasifikasi Naïve Bayes terhadap Data Training 50% dan Testing 50%
Precision Recall F1-Score Support
0 0,80 1,00 0,89 1991
1 0,81 0,03 0,05 509
Accuracy 0,80 2500
Macro Avg 0,77 0,51 0,47 2500
Weighted Avg 0,79 0,80 0,72 2500
Perhitungan akurasi pada Tabel 9 menggunakan persamaan 6 terhadap data training 50% dan data testing 50%, diketahui TP = 1988, TN = 13, FP = 3, dan FN = 496.
𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 1988 + 13 1988 + 3 + 496 + 13 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 2001
2500 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 0,80
Hasil perhitungan klasifikasi Naïve Bayes tersebut disajikan ke dalam bentuk Confusion Matrix terhadap data training 50% dan testing 50% disajikan pada Gambar 4.
Gambar 4. Confusion Matrix Ujaran Kebencian terhadap Data Training 50% dan Testing 50%
Confusion Matrix Ujaran Kebencian dilakukan dengan menggunakan skenario pengujian pada setiap himpunan data. Setelah pengujian menggunakan skenario pengujian, skenario pengujian terbaik diuji validasi terhadap sistem klasifikasi yang dibangun menggunakan validasi silang K-Fold Cross Validation dengan nilai K=10. Hasil klasifikasi yang dibangun menggunakan validasi silang K-Fold Cross Validation dengan nilai K=10 disajikan pada Tabel 10.
Tabel 10. Hasil Skenario Pengujian 10-Fold Cross Validation
No Data (%)
Training Testing Akurasi (%) Rata-rata
1 70 30 80% 0,8186
2 30 70 79% 0,8268
3 50 50 80% 0,8215
Hasil skenario pengujian dengan 10-Fold Cross Validation terhadap Metode Naïve Bayes Classifier di atas diperoleh hasil skenario terbaik yaitu data training 70% dan testing 30% dengan nilai akurasi 80%, kemudian data training 50% dan testing 50% dengan nilai akurasi 80%, dan data training 30% dan testing 70% dengan nilai akurasi 79%.
4. KESIMPULAN
Penelitian analisis sentimen menggunakan metode Naïve Bayes Classifier dilakukan terhadap 5000 dataset Twitter.
Sebelum dilakukan analisis, dilakukan tahap preprocessing (case folding, tokenization, stopword removal, normalization, dan stemming), Labeling, Term Weighting pembobotan dengan Term Frequency (TF), dan Inverse Document Frequency (IDF). Tahap analisis sentimen HateSpeech dengan Metode Naïve Bayes Classifier menggunakan Teknik K-Fold Cross Validation untuk memvalidasi data dan membagi skema penelitian ke dalam 3 skenario pengujian yaitu data training 70%
dan testing 30%, data training 30% dan testing 70%, dan data training 50% dan testing 50%. Berdasarkan evaluasi menggunakan Confusion Matrix diperoleh akurasi tertinggi sebesar 80%, precision 100%, recall 80%, dan F1-Score 89%
pada skenario pengujian data training 70% dan testing 30%. Berdasarkan hasil tersebut disimpulkan bahwa skenario pengujian terbaik menggunakan K-Fold Cross Validation terhadap Metode Naïve Bayes Classifier adalah data training 70% dan testing 30% dengan nilai akurasi 80%, kemudian data training 50% dan testing 50% dengan nilai akurasi 80%, dan data training 30% dan testing 70% dengan nilai akurasi 79%.
REFERENCES
[1] A. C. Mutia, “Pengguna Twitter di Indonesia Capai 24 Juta hingga Awal 2023, Peringkat Berapa di Dunia?,” Katadata Media Network, 2023. https://databoks.katadata.co.id/datapublish/2023/02/27/pengguna-twitter-di-indonesia-capai-24-juta-hingga- awal-2023-peringkat-berapa-di-dunia.
[2] M. Hakiem, M. A. Fauzi, and Indriati, “Klasifikasi Ujaran Kebencian pada Twitter Menggunakan Metode Naïve Bayes Berbasis N-Gram Dengan Seleksi Fitur Information Gain,” J. Pengemb. Teknol. Inf. dan Ilmu Komput., vol. 3, no. 3, pp. 2443–2451, 2019, [Online]. Available: http://j-ptiik.ub.ac.id/index.php/j-ptiik/article/view/4682.
[3] S. Afrizal, H. N. Irmanda, N. Falih, and I. N. Isnainiyah, “Implementasi Metode Naïve Bayes untuk Analisis Sentimen Warga Jakarta Terhadap,” Inform. J. Ilmu Komput., vol. 15, no. 3, p. 157, 2020, doi: 10.52958/iftk.v15i3.1454.
[4] I. Riadi, R. Umar, and Fitriah, “Analisis Data Mining Sistem Inventory Menggunakan Algoritma Apriori,” Decod. J. Pendidik.
Teknol. Inf., vol. 1, no. 1, pp. 33–42, 2021.
[5] A. Yudhana, I. Riadi, and M. R. Djou, “Pengembangan Layanan Kependudukan Dan Pencatatan Sipil Menggunakan Algoritma Naïve Bayes,” JURIKOM (Jurnal Ris. Komputer), vol. 9, no. 4, p. 1062, 2022, doi: 10.30865/jurikom.v9i4.4515.
[6] S. Nurul, J. Fitriyyah, N. Safriadi, E. Esyudha, and P. #3, “JEPIN (Jurnal Edukasi dan Penelitian Informatika) Analisis Sentimen Calon Presiden Indonesia 2019 dari Media Sosial Twitter Menggunakan Metode Naive Bayes,” (Jurnal Edukasi dan Penelit.
Inform., vol. 5, no. 3, pp. 279–285, 2019, [Online]. Available: http://dx.doi.org/10.26418/jp.v5i3.34368.
[7] F. V. Sari and A. Wibowo, “Analisis Sentimen Pelanggan Toko Online Jd.Id Menggunakan Metode Naïve Bayes Classifier Berbasis Konversi Ikon Emosi,” Simetris J. Tek. Mesin, Elektro dan Ilmu Komput., vol. 10, no. 2, pp. 681–686, 2019, [Online].
Available: https://jurnal.umk.ac.id/index.php/simet/article/view/3487.
[8] I. Riadi, R. Umar, and F. D. Aini, “Analisis Perbandingan Detection Traffic Anomaly Dengan Metode Naive Bayes Dan Support Vector Machine (Svm),” Ilk. J. Ilm., vol. 11, no. 1, pp. 17–24, 2019, doi: 10.33096/ilkom.v11i1.361.17-24.
[9] Imam Riadi, Abdul Fadlil, and Izzan Julda D.E Purwadi Putra, “Mask Detection Analysis Using Haar Cascade and Naïve Bayes,”
J. Teknol. Inf. Univ. Lambung Mangkurat, vol. 7, no. 2, pp. 105–114, 2022, doi: 10.20527/jtiulm.v7i2.135.
[10] D. Duei Putri, G. F. Nama, and W. E. Sulistiono, “Analisis Sentimen Kinerja Dewan Perwakilan Rakyat (DPR) Pada Twitter Menggunakan Metode Naive Bayes Classifier,” J. Inform. dan Tek. Elektro Terap., vol. 10, no. 1, pp. 34–40, 2022, doi:
10.23960/jitet.v10i1.2262.
[11] P. S. M. Suryani, L. Linawati, and K. O. Saputra, “Penggunaan Metode Naïve Bayes Classifier pada Analisis Sentimen Facebook Berbahasa Indonesia,” Maj. Ilm. Teknol. Elektro, vol. 18, no. 1, p. 145, 2019, doi: 10.24843/mite.2019.v18i01.p22.
[12] K. Antariksa, Y. S. Purnomo WP, and E. Ernawati, “Klasifikasi Ujaran Kebencian pada Cuitan dalam Bahasa Indonesia,” J.
Buana Inform., vol. 10, no. 2, p. 164, 2019, doi: 10.24002/jbi.v10i2.2451.
[13] N. M. A. J. Astari, Dewa Gede Hendra Divayana, and Gede Indrawan, “Analisis Sentimen Dokumen Twitter Mengenai Dampak Virus Corona Menggunakan Metode Naive Bayes Classifier,” J. Sist. dan Inform., vol. 15, no. 1, pp. 27–29, 2020, doi:
10.30864/jsi.v15i1.332.
[14] M. Syarifuddin, “Analysis of Public Opinion Sentiment Regarding Covid-19 on Twitter Using the Naïve Bayes and Knn Method,” Inti Nusa Mandiri, vol. 15, no. 1, pp. 23–28, 2020.
[15] W. R. Samsir, Ambiyar, Verawardina Unung, edi Firman, “Analisis Sentimen Pembelajaran Daring Pada Twitter di Masa Pandemi COVID-19 Menggunakan Metode Naïve Bayes,” J. Media Inform. Budidarma, vol. 5, no. 1, p. 149, 2021, doi:
10.30865/mib.v5i1.2604.
[16] F. Septianingrum, J. H. Jaman, and U. Enri, “Analisis Sentimen Pada Isu Vaksin Covid-19 di Indonesia dengan Metode Naive Bayes Classifier,” J. Media Inform. Budidarma, vol. 5, no. 4, p. 1431, 2021, doi: 10.30865/mib.v5i4.3260.
[17] N. P. G. Naraswati, R. Nooraeni, D. C. Rosmilda, D. Desinta, F. Khairi, and R. Damaiyanti, “Analisis Sentimen Publik dari Twitter Tentang Kebijakan Penanganan Covid-19 di Indonesia dengan Naive Bayes Classification,” Sistemasi, vol. 10, no. 1, p.
222, 2021, doi: 10.32520/stmsi.v10i1.1179.
[18] E. T. Handayani and A. Sulistiyawati, “Analisis Sentimen Respon Masyarakat Terhadap Kabar Harian Covid-19 Pada Twitter Kementerian Kesehatan Dengan Metode Klasifikasi Naive Bayes,” J. Teknol. dan Sist. Inf., vol. 2, no. 3, pp. 32–37, 2021, [Online]. Available: http://jim.teknokrat.ac.id/index.php/JTSI.
[19] F. Fathonah and A. Herliana, “Penerapan Text Mining Analisis Sentimen Mengenai Vaksin Covid - 19 Menggunakan Metode Naïve Bayes,” J. Sains dan Inform., vol. 7, no. 2, pp. 155–164, 2021, doi: 10.34128/jsi.v7i2.331.
[20] T. Krisdiyanto, “Analisis Sentimen Opini Masyarakat Indonesia Terhadap Kebijakan PPKM pada Media Sosial Twitter Menggunakan Naïve Bayes Clasifiers,” J. CoreIT J. Has. Penelit. Ilmu Komput. dan Teknol. Inf., vol. 7, no. 1, p. 32, 2021, doi:
10.24014/coreit.v7i1.12945.
[21] N. Hardi, Y. Alkahfi, P. Handayani, W. Gata, and M. R. Firdaus, “Analisis Sentimen Physical Distancing pada Twitter Menggunakan Text Mining dengan Algoritma Naive Bayes Classifier,” Sistemasi, vol. 10, no. 1, p. 131, 2021, doi:
10.32520/stmsi.v10i1.1118.
[22] A. Aziz and I. Fitri, “Analisis Sentimen Terhadap Kebijakan Pemerintah … Metode Naïve Bayes,” J. Sains Komput. Inform. (J- SAKTI, vol. 5, no. 2, p. 7806700, 2021.
[23] S. Juanita, “Analisis Sentimen Persepsi Masyarakat Terhadap Pemilu 2019 Pada Media Sosial Twitter Menggunakan Naive Bayes,” J. Media Inform. Budidarma, vol. 4, no. 3, p. 552, 2020, doi: 10.30865/mib.v4i3.2140.
[24] A. Perdana, A. Hermawan, and D. Avianto, “Analisis Sentimen Terhadap Isu Penundaan Pemilu di Twitter Menggunakan Naive Bayes Clasifier,” J. Sisfokom (Sistem Inf. dan Komputer), vol. 11, no. 2, pp. 195–200, 2022, doi: 10.32736/sisfokom.v11i2.1412.
[25] A. R. Syaifullah and Y. Sibaroni, “Hate Speech Hashtag Classification on Twitter Using the Hybrid Classifier Method,”
JURIKOM (Jurnal Ris. Komputer), vol. 9, no. 4, p. 828, 2022, doi: 10.30865/jurikom.v9i4.4548.
[26] I. Fahrur Rozi, A. Taufika Firdausi, and K. Islamiyah, “Analisis Sentimen Pada Twitter Mengenai Pasca Bencana Menggunakan Metode Naïve Bayes Dengan Fitur N-Gram,” J. Inform. Polinema, vol. 6, no. 2, pp. 33–39, 2020, doi: 10.33795/jip.v6i2.316.
[27] M. Hudha, E. Supriyati, and T. Listyorini, “Analisis Sentimen Pengguna Youtube Terhadap Tayangan
#Matanajwamenantiterawan Dengan Metode Naïve Bayes Classifier,” JIKO (Jurnal Inform. dan Komputer), vol. 5, no. 1, pp. 1–
6, 2022, doi: 10.33387/jiko.v5i1.3376.
[28] F. Sidik, I. Suhada, A. H. Anwar, and F. N. Hasan, “Analisis Sentimen Terhadap Pembelajaran Daring Dengan Algoritma Naive Bayes Classifier,” J. Linguist. Komputasional, vol. 5, no. 1, p. 34, 2022, doi: 10.26418/jlk.v5i1.79.
[29] A. I. Tanggraeni and M. N. N. Sitokdana, “Analisis Sentimen Aplikasi E-Government pada Google Play Menggunakan Algoritma Naïve Bayes,” JATISI (Jurnal Tek. Inform. dan Sist. Informasi), vol. 9, no. 2, pp. 785–795, 2022, doi: 10.35957/jatisi.v9i2.1835.
[30] S. M. Salsabila, A. Alim Murtopo, and N. Fadhilah, “Analisis Sentimen Pelanggan Tokopedia Menggunakan Metode Naïve Bayes Classifier,” J. Minfo Polgan, vol. 11, no. 2, pp. 30–35, 2022, doi: 10.33395/jmp.v11i2.11640.
[31] M. A. Djamaludin, A. Triayudi, and E. Mardiani, “Analisis Sentimen Tweet KRI Nanggala 402 di Twitter menggunakan Metode Naïve Bayes Classifier,” J. JTIK (Jurnal Teknol. Inf. dan Komunikasi), vol. 6, no. 2, pp. 161–166, 2022, doi:
10.35870/jtik.v6i2.398.
[32] Vynska Amalia Permadi, “Analisis Sentimen Menggunakan Algoritma Naive Bayes Terhadap Review Restoran di Singapura,”
J. Buana Inform., vol. 11, pp. 141–151, 2020.
[33] N. S. Wardani, A. Prahutama, and P. Kartikasari, “Analisis Sentimen Pemindahan Ibu Kota Negara Dengan Klasifikasi Naïve Bayes Untuk Model Bernoulli Dan Multinomial,” J. Gaussian, vol. 9, no. 3, pp. 237–246, 2020, doi: 10.14710/j.gauss.v9i3.27963.
[34] R. Umar, I. Riadi, and P. Purwono, “Klasifikasi Kinerja Programmer pada Aktivitas Media Sosial dengan Metode Stochastic Gradient Descent,” JOINTECS (Journal Inf. Technol. Comput. Sci., vol. 5, no. 2, p. 55, 2020, doi: 10.31328/jointecs.v5i2.1324.