LANDASAN TEORI
berulang, dengan maksud membuat target merasa tidak nyaman (Berne, et al.,
2013) (Wong-Lo & Bullock, 2014). Perbedaan yang menonjol antara keduanya
adalah ketiadaan perbedaan posisi atau kekuatan (Hoff & Mitchell, 2009) antara
pelaku dan target karena perundungan siber dapat dilakukan dengan mudah
bahkan dari ruangan yang sangat pribadi. Perbuatan ini dilakukan dengan
teks, surel, menulis komentar menghina seseorang di website atau media sosial,
hate speech (ucapan kebencian). Pada kenyataannya, kedua hal ini merupakan dua
7
8
hal yang berbeda. Perundungan merupakan suatu aksi atau serangkaian aksi
negatif yang seringkali agresif dan manipulative, dilakukan oleh satu atau lebih
orang terhadap orang lain atau beberapa orang selama kurun waktu tertentu,
juga menyadari bahwa aksi ini akan berulang menimpanya. Sedangkan ucapan
kebencian adalah tindakan komunikasi yang dilakukan oleh suatu individu atau
kelompok dalam bentuk provokasi, hasutan, ataupun hinaan kepada individu atau
kelompok yang lain dalam hal berbagai aspek seperti ras,warna kulit, etnis,
gender, cacat, orientasi seksual, agama, dan lain-lain. Dalam arti hukum, ucapan
karena dapat memicu terjadinya tindakan kekerasan dan bersikap prasangka dari
tentang Informasi dan Transaksi Elektronik (―UU ITE‖) yang berbunyi: ―Setiap
di lingkungan. Hal tersebut disebabkan karena media sosial dapat diakses dengan
mudah oleh seluruh pengguna internet di dunia tanpa mengenal ruang dan waktu,
9
orang dapat berkomentar selama 24 jam karena jaringan internet seolah tidak
pernah beristirahat; pesan berbentuk foto, video ataupun tulisan tidak dapat
dengan mudah terhapus, bahkan berkemungkinan para pemakai media sosial lain
juga telah menyimpan pesan tersebut (Hinduja & Patchin, 2008). (Juvonen &
Gross, 2008) juga menjelaskan para remaja enggan memberitahu orang tua
saksi. Berdasarkan hasil penelitian yang dilakukan oleh Muhammad Alam Akbar
intimidatif.
defensif.
belah pihak.
tatanan tata krama yang sesuai dengan norma sosial), dan cara
2013) antara lain: flaming (menerima pesan kasar dan vulgar), harassment
2.2 Corpus
Corpus adalah kumpulan teks yang memiliki kesamaan subjek atau tema
(Wicaksono, Irawan, & Rukmi, 2014). Menurut (Abusalah, Tait, & Oakes, 2005),
corpus adalah repositori dari kumpulan materi bahasa alami, seperti teks, paragraf,
dan kalimat dari satu atau banyak bahasa. Corpus pada penelitian ini akan
Text mining adalah salah satu teknik yang dapat digunakan untuk
melakukan klasifikasi, dimana text mining merupakan variasi dari data mining
yang berusaha menemukan pola yang menarik dari sekumpulan data tekstual yang
berjumlah besar (Feldman, 2007). Text mining, mengacu pada proses mengambil
(perkiraan umum mengatakan lebih dari 80%) saat ini disimpan sebagai teks, text
text mining yang khas meliputi kategorisasi teks, text clustering, ekstraksi
menggali nilai tambah dari sekumpulan data berupa pengetahuan yang selama ini
tersembunyi dibalik data atau tidak diketahui secara manual (Han, 2006). Data
mining adalah suatu teknik menggali informasi berharga yang terpendam atau
tersembunyi pada suatu koleksi data (database) yang sangat besar sehingga
ditemukan suatu pola yang menarik yang sebelumnya tidak diketahui. Data
mining sendiri berarti usaha untuk mendapatkan sedikit barang berharga dari
sejumlah besar material dasar, dimana data mining memiliki akar yang panjang
learning, statistik dan database (Witten, Frank, & Hall, 2011). Masalah-masalah
yang sesuai untuk diselesaikan dengan teknik data mining dapat dirincikan
2.4.1 Klasifikasi
13
mengelompokan sejumlah teks kedalam kelas yang memiliki persamaan sifat atau
pola. Klasifikasi juga dapat diartikan sebagai sebuah proses penemuan model atau
fungsi yang menggambarkan dan membedakan kelas data atau konsep yang
bertujuan agar bisa digunakan untuk memprediksi kelas dari objek yang label
kelasnya tidak diketahui (Tan, Steinbach, & Kumar, 2006). Untuk melakukan
acuan, biasa disebut data training. Dari data training yang ada kemudian dapat
dibentuk suatu model untuk klasifikasi data atau class label. Dari model tersebut
diketahui kelasnya. Hasil klasifikasi ini digunakan untuk mengetahui akurasi dari
Proses klasifikasi teks dapat dibagi ke dalam dua fase, yaitu (Darujati, 2012):
dokumen teks. Langkah pertama yang dilakukan pada fase ini adalah
frekuensi kata. Nilai numerik yang diperoleh dapat berupa berapa kali
suatu kata muncul di dalam dokumen, 1 jika kata ada di dalam dokumen
atau 0 jika tidak ada (biner), atau jumlah kemunculan kata pada awal
dan machine learning yang dapat diterapkan pada fase ini, di antaranya
dipelajari.
k himpunan bagian yang mutually exclusive atau ―fold (lipatan)‖, D1, D2,..., Dk ,
15
yang masing – masing kurang lebih berukuran sama. Pelatihan dan pengujian
dilakukan sebanyak k kali. Pada iterasi ke-i, partisi digunakan sebagai data tes,
dan partisi sisanya digunakan bersama untuk melatih model. Dalam iterasi
pertama, yaitu himpunan bagian D2, ..., Dk secara bersama bertindak sebagai data
pelatihan untuk memperoleh model pertama, yang diuji pada D1; iterasi kedua
dilatih pada himpunan bagian D1, D3, ..., Dk dan diuji pada D2; dan seterusnya
seperti dicontohkan pada Gambar 2.1. Dalam penelitian ini digunakan 10-fold (K-
oleh Vapnik, Boser dan Guyon pada tahun 1992. Dewasa ini SVM telah berhasil
Konsep dasar SVM dapat dijelaskan sebagai usaha mencari hyperplane terbaik
yang berfungsi sebagai pemisah 2 kelas pada input space (Joachims, 1998).
16
Pembuatan model berdasarkan masukan dari data latih dari masing-masing kelas
dilakukan oleh SVM. Model inilah yang kemudian dapat dipakai untuk
inti dari proses pembelajaran pada SVM. Gambar 2.3 mengilustrasikan bidang
pemisah terbaik ialah bidang pemisah yang menghasilkan nilai margin terbesar.
Nilai margin merupakan jarak antara bidang pemisah dengan elemen terluar dari
kedua kelas.
Gambar 2.3 SVM Berusaha Menemukan Bidang Pemisah Terbaik (Manning, 2008)
Menurut (Manning, 2008), fungsi pemisah yang dicari adalah fungsi linear
sebagai berikut:
dengan ⃑⃑⃑ adalah bobot yang merepresentasikan posisi hyperplane pada bidang
normal, ⃑ adalah vektor data masukan, dan adalah bias yang merepresentasikan
posisi bidang relatif terhadap pusat koordinat. Teknik ini berusaha menemukan
dari formula | ⃑⃑⃑|. Hal ini sama dengan meminimalkan fungsi ⃑⃑⃑ ⃑⃑⃑ dengan
2008).
berdimensi lebih tinggi. Usaha mencari bidang pemisah antara kedua kelas pada
ruang vektor baru adalah langkah selanjutnya. Pada Gambar 2.4 diilustrasikan
Gambar 2.4 Penerapan Kernel pada SVM dalam Transformasi ke Dimensi Lebih Tinggi (Gijsberts, 2007)
18
antaranya linear, polinomial, Radial Basis Function (RBF), dan sigmoid. Menurut
(Hsu, Chang, & Lin, 2003) fungsi kernel yang direkomendasikan untuk diuji
pertama kali ialah fungsi kernel RBF karena memiliki performa yang sama
dengan SVM linear pada parameter tertentu, memiliki perilaku seperti fungsi
kernel sigmoid dengan parameter tentu dan rentang nilainya kecil [0,1]. Penelitian
ini menggunakan kernel RBF. Menurut (Manning, 2008), fungsi kernel untuk
dengan ⃑ adalah vektor data latih dan ⃑ adalah vektor data uji. Setelah
(Chang & Lin, 2011) telah memperkenalkan LIBSVM sebagai library untuk
SVM. LIBSVM dewasa ini menjadi salah satu perangkat lunak SVM yang paling
LIBSVM meliputi pemodelan SVM terhadap data latih dan pengujian data uji
terhadap model SVM. Penggunaan kernel dalam support vector classification juga
telah dikembangkan, serta mendukung penerapan kernel RBF pada SVM. Dengan
19
2.5.2 HyperPipes
memiliki 2 kelebihan yaitu sangat cepat dalam operasi nya dan dapat menangani
data yang memiliki banyak atribut. Algoritma HyperPipes tidak dapat menangani
data yang berkelas numerik (Waikato, 2010). Ini menjadi masalah ketika terdapat
proses yang bersifat diskrit. Inilah yang menjadi ide dasar untuk menciptakan
sebuah pipe untuk setiap kelas dataset. Selama pelatihan, pipe untuk setiap
kelasnya terus melacak nilai atribut yang ditemui pada data training tetapi tidak
menghitung jumlahnya. Kemudian ketika menguji, pipe ini dapat digunakan untuk
sebagai berikut:
- Pelatihan (Training)
Pipe dibangun untuk setiap kelas di pelatihan dan setiap pipe ditandai
dengan kelas yang dimiliki. Kemudian untuk setiap pipe yang dibangun,
dataset dilatih satu per satu. Untuk setiap nilai pada corpus, jika nilai nya
diketahui dan tidak ada sebelumnya pada dataset maka nilai atribut
20
berbagai nilai-nilai untuk atribut. Jika nilainya diluar kisaran pipe maka
minimum atau maksimum baru). Selama nilai nya diskrit, algoritma ini
tidak digunakan.
setiap kelas. Untuk menentukan pipa mana yang paling sesuai, terdapat
antara corpus dan pipe. Corpus dikelompokan pada kelas yang paling
dikelompokan pada kelas dari last pipe yang memiliki banyak kesesuaian.
Sebagai contoh, jika terdapat pipe 1, pipe 2, pipe 3, dan pipe 4 dan jumlah
kesesuaian dari setiap pipe: 7,0,7 dan 4, maka corpus akan dikelompokan
pada pipe 3.
dataset yang belum diklasifikasikan (pre-classified dataset) . Setiap data dari item
21
berdasarkan dari nilai dari setiap atribut. Klasifikasi dapat dilihat sebagai mapping
dari sekelompok set dari atribut dari kelas tertentu. Decision Tree
mengklasifikasikan data yang diberikan menggunakan nilai dari atribut (Ian &
Eibe, 2005).
Tree atau pohon keputusan. Algoritma ini ditemukan oleh J. Ross Quinlan,
membuat pohon dengan percabangan awal adalah atribut yang paling signifikan,
dapat dilihat pada Gambar 2.5. Maksudnya signifikan adalah yang paling bisa
cukup ideal. Maksudnya ideal adalah setiap cabang terdiri dari hijau saja atau
merah saja. Memang, untuk cabang ―full‖ tidak satu warna (hijau saja atau merah
saja). Tapi, pemilihan atribut patron jelas lebih baik daripada atribut type. Untuk
menentukan atribut mana yang lebih dahulu dipergunakan untuk membuat cabang
Java) pada Weka (Waikato, 2013). Algoritma C4.5 digunakan untuk pemisah
obyek (Mohamed, Salleh, & Omar, November, 2012). Tree atau pohon keputusan
banyak dikenal sebagai bagian dari Graph, yang termasuk dalam irisan bidang
ilmu otomata dan teori bahasa serta matematika diskrit. Tree sendiri merupakan
graf tak-berarah yang terhubung, serta tidak mengandung sirkuit (Munir, 2010).
Secara umum algoritma C4.5 untuk membangun pohon keputusan adalah sebagai
4. Ulangi proses untuk setiap cabang sampai semua kasus pada cabang
Untuk memilih atribut sebagai akar, didasarkan pada nilai gain tertinggi dari
berikut:
∑ ….. (5)
23
Keterangan:
S = himpunan kasus
A = atribut
|S| = jumlah kasus dalam S Rumus dasar dari entropy tersebut adalah sebagai
berikut:
∑ ….. (6)
Keterangan:
S = himpunan kasus
A = fitur
n = jumlah partisi S
2.6.1 RStudio
social scientists, dan lainnya yang butuh statistical analysis, data visualization,
dan predictive modeling (Danneman & Heimann, 2014). R Studio adalah salah
dalam menangani big data. R banyak digunakan dalam Distributed Storage and
2.6.2 RapidMiner
RapidMiner adalah salah satu aplikasi yang digunakan untuk data mining
(Burget, Karasek, Smekal, Uher, & Dostal, 2010). RapidMiner merupakan sebuah
environment untuk machine learning, data mining, dan text predictive analytic.
RapidMiner banyak digunakan untuk text mining dari proses analisis teks, extract
2.6.3 WEKA
dan kluster. Terdapat sebuah workbench yang merupakan graphical user interface
yang dapat digunakan untuk akses fungsi yang disediakan, seperti loading data
dari beberapa sumber (file CSV dan LibSVMs format), url serta databases).
25
Fold untuk prediksi. Aplikasi ini dapat digunakan untuk simulasi dan evaluasi
evaluasi model dan feature space. Performance metric terdiri dari akurasi, recall,
precision, dan F-measure. Model dikatakan baik jika memiliki nilai akurasi >
60%. Nilai akurasi merupakan nilai ukur performance dari model dalam
mengklasifikasi dataset. Model dikatakan baik jika sebuah data yang bernilai
positif diprediksi positif oleh model. Begitu juga untuk data yang bernilai negatif,
model yang baik memprediksi nilai data tersebut negatif. Confusion matrix
merupakan sebuah tabel yang menggambarkan kelas dari sebuah data dan prediksi
yang dilakukan oleh model, dapat dilihat pada Tabel 2.1. Jika data berkelas Yes
lalu diprediksi berkelas No oleh model maka nilai confusion matrix –nya false
negative (FN).
Predicted Class
Actual Class = Yes Class = No
Class Class = Yes True Positive False Negative
(TP) (FN)
Class = No False Positive True Negative
(FP) (TN)
26
perhitungan akurasi pada konsep data mining (Mayadewi & Rosely, 2015).
recall. Dalam confusion matrix, true positive (dengan benar memperkirakan nilai
positif) dan true negative (dengan benar memperkirakan nilai negatif) merupakan
pengamatan yang benar. Dalam penelitian ini, kami ingin meminimalkan false
2.7.1 Akurasi
dengan nilai aktual. Akurasi dalam klasifikasi adalah persentase ketepatan record
data yang diklasifikasikan secara benar setelah dilakukan pengujian pada hasil
..... (7)
2.7.2 Precision
sesuai dengan query yang diberikan dengan total kumpulan dokumen yang
….. (4)
27
2.7.3 Recall
sebuah informasi. Recall dapat juga diartikan sebagai proporsi kasus positif yang
….. (5)
2.7.4 F-Measure
recall dan precission pada suatu keadaan dapat memiliki bobot yang berbeda.
Ukuran yang menampilkan timbal balik antara recall dan precission adalah F-
Measure yang merupakan bobot harmonic mean, recall dan precission. Berikut
rumus F-Measure:
..... (6)
dalam 3 label; seksualitas, ras, dan budaya. Lalu corpus akan dilatih
PROFANITY
CYBER
SUBTLETY
BULLYING
NEGATIVITY
RACE/ PHYSICAL
SEXUALITY INTELLIGENCE
CULTURE ATTRIBUTES
Gambar 2.6 Kelas yang Digunakan untuk Melatih Corpus (Dinakar, Reichart, & Lieberman, Modeling the
detection of Textual Cyberbullying, 2011)
b. TF-IDF
yang positif.
stereotypical utterances.
Hasil yang diperoleh dari Bag of Words (BoW) supervised learning algorithm
Tabel 2.2 Nilai Akurasi dari Setiap Algoritma yang Digunakan (Dinakar, Reichart, & Lieberman, Modeling
the detection of Textual Cyberbullying, 2011)
Race 66% 0.52 0.78 68% 0.55 0.78 63% 0.48 0.65 67% 0.63 0.71
Intelligence 72% 0.46 0.46 70% 0.51 0.51 70% 0.51 0.56 72% 0.58 0.77
Multi-class classifier
Mixture 63% 0.57 0.44 63% 0.60 0.50 61% 0.58 0.45 56% 0.63 0.65
Keterangan:
A : Accuracy
F : F1
K : Kappa
Mixture : A merge set of instance from the three cluster of sexuality, race,
and intellgence
terjadi pada media sosial. Corpus yang digunakan berasal dari crawling twitterR
dengan pencarian kata berdasarkan tabel kata cyber bullying yang dikemuka
Tabel 2.3 Kata Perundungan di Media Sosial Menurut Penelitian Margono (Margono, Yi, & Raikundalia,
January, 2014)
(Cacat)
Sarap Sompret
Udik Bajingan
Kampungan Bejad
Gambar 2.7.
Gambar 2.7 Metode yang Digunakan untuk Deteksi Cyber Bullying (Farisia, 2016)
Rstudio dengan twitteR API dan fungsi laply. Data yang diperoleh adalah 1063
32
data training (November 2015), 650 data training (Mei 2016), 1300 data debat
capres, dan 117 data Cina. Data yang diperoleh akan dibersihkan lalu diberi label
Indonesia (UI). Label yang akan diberikan pada data, ada 3 kelas: positif, netral
Data yang bersentimen positif akan dibuang. Data lainnya akan dibersihkan
dengan langkah preprocessing yang terdapat pada Gambar 2.7. Proses detailnya
Tabel 2.5 Praproses Teks yang Dilakukan pada Proses Deteksi Cyber Bullying
kapital menjadi huruf kecil) Kalian cocok, sesama cocok, sesama cocok
cocok.
encode, retweet dan username, serta cocok, sesama cocok sesama cocok
dengan excell)
brengsek cocok
brengsek viccent22_cocok
brengsek brengsek
7 Create TDM, data dibuka pada Jumlah term dihitung dan dibentuk matriks
Setelah proses preprocessing maka data akan di- training. Data training ‗bukan
cyber bullying‘ lebih banyak 37% (198 baris) daripada data ‗cyber bullying‘. Hasil
evaluasi klasifikasi pada data training adalah SVM tidak dapat banyak belajar dari
pelatihan ini, model yang dihasilakn buruk, dapat dilihat pada Tabel 2.6. Hal ini
dikarenakan hanya satu data diantara kelas 0 dan 1. Akibatnya terdapat 2 kondisi
Tabel 2.6 Tingkat Akurasi dari Setiap Metode Klasifikasi terhadap Data Training dan Testing
Training Testing
Setelah proses training maka dilakukan proses validasi silang, nilai validasi silang
diantara 2-10. Validasi silang dilakukan agar tidak terjadi overfitting pada model
karena sudah melalui proses optimasi. Berikut nilai validasi yang optimal untuk
setiap klasifikasi: J.48 (k=9), Hyperpipes (k=7), dan SVM (k=8). Proses validasi
silang dilanjutkan dengan proses testing. Data training ‗cyber bullying‘ hanya
39% dari total data. Berikut tabel nilai akurasi dari proses training.
35
Proses training dengan data sumber lain (data debat capres dan cina), data
Tabel 2.7 Tingkat Akurasi dari Setiap Metode Klasifikasi terhadap Data Source yang Lain
Ketika kata cina dimasukan ke dalam training (data training cyber bullying 38%,
lebih kecil dari bukan cyber bullying dan nilai k yang digunakan 9) maka hasil
Tabel 2.8 Hasil dari Setiap Metode Klasifikasi setelah Kata Cina Dimasukan ke dalam Proses Training
Klasifikasi Keterangan
HyperPipes Hanya bagus untuk kata kunci yang sama dengan data training
SVM
Dari penelitian terlihat bahwa penggunaan klasifikasi HyperPipes dan SVM tidak
memiliki hasil yang baik. Hal ini dikarenakan faktor data yang digunakan tidak
baik. Data yang digunakan pada data training memiliki karakter sedikit
tersebut. Karakter dari algoritma HyperPipes dan SVM, keduanya bertumpu pada
36
frekuensi kemunculan dan jarak antara data. Hal ini berbeda dampaknya terhadap
Tabel 2.9 Tabel Karakter dari Setiap Data yang Digunakan pada Proses Klasifikasi
3. Nilai akurasi Tree J.48 86.24%, HyperPipes baik hanya pada data training
yang berasal dari sumber yang sama dengan data training. Penambahan
kata baru yang sesuai dengan data uji baru dapat menaikkan akurasi 36%.
SVM belum mampu mempelajari karena luas area dibawah kurva ROC
(2016)
Support Vector Machine (SVM). Dimana corpus nya berasal dari Libsvm dalam
bentuk kalimat, sepenggal kata, atau ekspresi khusus dalam Hindi, baik yang
berkonten kata maupun ekspresi umum (hastag, emoticons, antonim, sinonim, dan
tanda baca) yang dapat diartikan sebagai sarkasme (―markers”) maupun kalimat
//Data Pre-processing
tersebut.
kami menghitung
(| | ) ….. (7)
dimana equals the number of times ―w― appears in ―d‖, |D| adalah
polaritas dari setiap kalimat yang dimasukan = +ve, jika total nilai +ve dari
respectively.
Langkah 9: Classify sentences as per rules given in tabel 2.9 and return
appropriate class.
39
Tabel 2.10 Classes of Sarcastic Sentences yang Digunakan oleh (Desai N. a., 2016)
Polarity
Positve
Negative
Langkah 10: if sentence has at least one of the following feature cue words
[akuarasi: 67.05%])
40
Emoticons
+Polarity
Tabel 2.12 Fitur yang Digunakan pada 250 Kalimat Tanpa Markers (Desai N. a., 2016)