ANALISIS DAN PERANCANGAN SISTEM
3.1. Arsitektur Umum
Untuk mendapatkan penyelesaian masalah pada penelitian dibutuhkan beberapa tahapan untuk mendapatkan kesimpulan yang sesuai, yaitu : pengumpulan data terkait, data yang akan digunakan akan di-crawling melalui platform twitter dan diimpor berformat .csv untuk mempermudah proses dalam modeling data dan proses komputasi. Data yang sudah dikumpulkan akan dipreproses melalui 6 tahapan yang terdiri dari punctuation removal, Normalization, Stopword Removal, Case Folding, Stemming, Tokenization. Data akan diberikan nilai bobot vektor untuk menentukan hasil pemodelan selanjutnya berdasarkan angka dari tiap kata dalam dokumen. Setiap kata memiliki nilai yang berbeda berdasarkan corpus yang sudah dilakukan pre-trained mengenai kata kata ujaran kebencian. Data pilihan yang diproses kemudian proses selanjutnya dilakukan pemodelan berdasarkan data training dan menentukan tolak ukur berdasarkan data training dengan metode Multinomial Naive Bayes.
Gambar 3.1 Arsitektur Umum
3.2. Data
Input data akan diambil dari data yang di-crawling. Data mengenai ujaran pada user diambil mulai dari tahun 2020 - 2021 melalui media sosial twitter. Data yang di-crawling terdapat banyak opini yang tidak memiliki konteks yang sesuai dengan label klasifikasi sehingga total data yang dapat digunakan sebanyak 500 ujaran. Data yang sudah terkumpul akan dibagi berdasarkan data latih dan data uji dengan perbandingan 8:2, sehingga mendapatkan jumlah data latih sebanyak 400 dan total 100 data uji.
Ujaran yang digunakan akan dilabel berdasarkan pakar hukum yang memberikan parameter sebagai acuan untuk membuktikan bahwa cuitan yang dilakukan pada user dapat sesuai dengan konteks klasifikasi. Jumlah data berdasarkan kategori dapat diperhatikan pada Tabel 3.1.
Tabel 3.1. Jumlah Data Uji dan Latih
Kategori Ujaran Data Latih Data Uji
Bukan Ujaran Kebencian 100 25
Golongan 100 25
Agama 100 25
Ras 100 25
3.3. Preprocessing
Preprocessing merupakan tahap awal untuk proses pembersihan data yang dapat dimengerti oleh mesin. Data yang akan dibersihkan akan lebih mudah diproses serta menghasilkan hasil yang lebih akurat. Untuk mendapatkan data yang baik perlu dilakukan beberapa proses antara lain Punctuation Removal, Normalization, Stopword Removal, Case Folding, Stemming, Tokenization
3.3.1. Case Folding
Case Folding merupakan proses penyederhanaan kata pada kalimat. Proses ini dilakukan dengan huruf kapital menjadi huruf kecil, menghilangkan angka yang tidak diperlukan, menghapus emoji atau tanda baca, serta menghilangkan karakter spesial dan spasi yang berlebih yang tidak memiliki makna. Proses penyederhanaan mendapatkan kata - kata yang lebih seragam, sehingga teks yang tidak penting dapat dihapus untuk mendapatkan nilai vektor nantinya serta hasil probabilitas yang lebih baik pada kinerja algoritma yang digunakan.
Tabel 3.2. Penerapan proses Case Folding
Kalimat sebelum Case Folding Setelah Case Folding USER USER : DASAR CINA!!! Sampah bgt
kelakuan lo ajg, mau lo siapanya nggak
mending balek ke negara asal lo !!
@satriya;urltwitter.com/dhakwy@12 3hdja/
3.3.2. Punctuation Removal
Proses Punctuation Removal merupakan proses awal digunakan untuk menghindari adanya kegagalan pada proses klasifikasi pada penelitian. Proses ini digunakan untuk menghilangkan missing value atau attribute pada sebuah data, menghapus tanda baca atau simbol, serta menghilangkan duplikasi pada dataset. Noise pada data akan berdampak pada nilai vektor yang akan ditetapkan pada word embedding sehingga akan mengakibatkan nilai yang tidak sesuai dalam proses akhirnya, Contoh pada sebuah data twitter dimana dalam hasil crawl umumnya terdapat url yang tidak diperlukan dan akan mempengaruhi konteks dan makna sebenarnya dalam data, kalimat yang tidak mengandung kecocokan menyebabkan data yang tidak konsisten.
Tabel 3.3. Penerapan proses Punctuation Removal
Sebelum Punctuation Removal Setelah Punctuation Removal user user : dasar cina!!! sampah bgt kelakuan
lo ajg mau lo siapanya nggak berhak memukul orang ye,,, dia juga manusia begok bgt dah.
mending balek ke negara asal lo !!
@satriya;urltwitter.com/dhakwy@123hdja/
user user dasar cina sampah bgt kelakuan lo ajg mau lo siapanya nggak berhak memukul orang ye dia juga manusia begok bgt dah. mending balek ke negara asal lo
3.3.3. Normalization
Normalization proses menormalisasikan data menjadi kata yang lebih terstruktur.
Proses ini memperhatikan berdasarkan dua hal penting yaitu struktur kalimat dan kosakata. Struktur kalimat yang lebih spesifik akan mudah diproses dikarenakan mencapai objek berdasarkan kata kerja atau kata sifat yang sesuai dengan konteks dan kosakata yang akan digunakan untuk korpus perlu diminimalisir, sehingga variasi kata yang lebih sedikit memperoleh hasil yang lebih baik.
Normalisasi pada penelitian ini menggunakan kamus normalisasi dengan format .csv dari (Ibrohim & Budi, 2019) dengan sedikit penambahan yang dilakukan untuk menyesuaikan dengan data pada penelitian ini. Kamus normalisasi berisi kata yang tidak normal diikuti dengan kata yang seharusnya. Pada gambar 3.2 ditunjukkan gambaran kamus normalisasi.
Gambar 3.2 Kamus Normalisasi
Kata – kata yang tidak normal pada data akan dideteksi dengan membandingkan kata pada data dengan kata yang tidak normal pada korpus, selanjutnya akan diganti dengan kata yang normal yang ada pada kamus normalisasi. Jadi, kata seperti “ajg”
akan diubahkan menjadi “anjing”, “blh” menjadi “boleh” dan kata - kata typo yang tidak sesuai dalam Bahasa Indonesia. Tabel 3.4 menunjukkan penerapan proses normalisasi.
Tabel 3.4. Penerapan proses Normalization
Sebelum Normalization Setelah Normalisation dasar cina sampah bgt kelakuan lo ajg
mau lo siapanya nggak berhak memukul orang ye dia juga manusia begok bgt dah. mending balek ke negara asal lo
dasar cina sampah banget kelakuan kamu anjing mau kamu siapanya tidak berhak memukul orang ya dia juga manusia bodoh banget dah. mending balik ke negara asal kamu
3.3.4. Stemming
Stemming adalah tahapan reduksi kata imbuhan menjadi kata dasar yang memiliki makna yang sama. Dalam tahapan ini semua kata bentuk imbuhan akan dihilangkan dan diubah menjadi root atau dasar yang digunakan. Contoh imbuhan antara lain Inflection Suffixes (“-kah”, “mu”, “ku”, “-nya”), imbuhan turunan (“-i”, “-an”, “kan”), imbuhan awalan (“di”, “ke”, “be”). Tiap penggunaan imbuhan tersebut akan dihapus untuk mendapatkan variasi kata yang lebih akurat tanpa harus menghilangkan makna pada kata itu sendiri.
Tabel 3.5. Penerapan proses Stemming
Sebelum Stemming Setelah Stemming
dasar cina sampah banget kelakuan kamu anjing mau kamu siapanya tidak berhak memukul orang ya dia juga manusia bodoh banget dah. mending balik ke negara asal
3.3.5. Stopword Removal
Stopword Removal merupakan proses penyaringan kata hubung yang tidak digunakan.
Kata hubung tidak akan mempengaruhi arti dari sebuah kalimat sehingga sangat berpengaruh untuk membatasi variasi yang digunakan dalam korpus nantinya. Hal ini mempermudah proses klasifikasi dikarenakan hasil penyaringan tersebut menghasilkan kata - kata objektif yang sesuai konteks sehingga dalam proses pemodelan dengan data latih akan lebih mudah diketahui ciri dari tiap kalimat berdasarkan konteks yang dilabel. Kata hubung dalam bahasa indonesia hanya memperjelas konteks yang hanya dipahami oleh manusia untuk mengerti pembahasan yang dibaca. Penelitian ini menggunakan library Natural Language Toolkit (NLTK) yang menyediakan daftar stopword untuk Bahasa Indonesia.
Tabel 3.6. Penerapan proses Stopword Removal
3.3.6. Tokenization
Tokenization merupakan tahap akhir dalam preprocessing dengan melakukan pemotongan tiap kata dalam kalimat. Kata yang dipotong disebut token yang akan dipisahkan berdasarkan tiap frasa yang dibatasi spasi atau white space. Tokenization bertujuan untuk memisahkan kata secara bertahap untuk dilakukan proses penentuan nilai bobot yang akan dilakukan pada proses word embedding dimana tiap token nantinya akan diberi nilai berdasarkan corpus yang sudah disediakan.
Sebelum Stopword Removal Setelah Stopword Removal dasar cina sampah banget laku kamu
anjing mau sudah kamu siapa tidak berhak pukul orang ya dia juga manusia bodoh banget dah. mending balik ke negara asal kamu.
dasar cina sampah banget anjing tidak berhak pukul orang manusia bodoh banget balik negara asal
Tabel 3.7. Penerapan proses Tokenization
Sebelum Tokenization Setelah Tokenization dasar cina sampah banget anjing tidak
berhak pukul orang manusia bodoh banget balik negara asal
“dasar”, ”cina”, ”sampah”, ”banget”,
”anjing”, ”tidak”, ”berhak”, ”pukul”,
”orang”, ”manusia”, ”bodoh”, ”banget”,
”balik”, ”negara”, “asal”