BAB IV HASIL DAN ANALISA HASIL
4.1 Hasil Penelitian
Pada penelitian ini, data uji yang digunakan ialah data tweet twitter sejumlah 1000 buah data yang terbagi menjadi 500 data berlabel sentimen positif dan 500 data berlabel sentimen negatif. Tahap dimulai dengan diinputkannya data tweet ke dalam sistem. Lalu selanjutnya akan dilanjutkan dengan tahapan preprocessing, Tahap prepocessing meliputi beberapa bagian diantaranya ialah case folding, tokenisasi, stemming, normalisasi dan stopword filtering. Pada bagian case folding, data terlebih dahulu akan di ubah menjadi bentuk lowercase atau huruf kecil. Dilanjutkan dengan proses pada bagian tokenisasi, pada bagian ini data akan dipecah dan diubah menjadi potongan-potongan kecil kata yang biasa disebut dengan token. Bagian ini dilakukan guna untuk menghilangkan white-space yang ada pada data teks. Dan setelah itu akan dilanjutkan oleh bagian stemming. Pada bagian stemming, token akan ditransformasikan menjadi bentuk kata paling dasarnya. Hal ini dilakukan untuk menghilangkan imbuhan dan morfologi bahasa yang masih melekat pada kata hasil tokenisasi. Untuk tahap selanjutnya ialah normalisasi kata. Normalisasi kata digunakan untuk menghilangkan duplikasi dan menyeragamkan kata yang memiliki makna sama namun penulisannya berbeda, kesalahan penulisan, penyingkatan kata ataupun penggunaan bahasa gaul. Bagian ini berarti data akan diubah menjadi bentuk normalnya, bagian ini berfungsi untuk penanganan penggunaan kata yang tidak baku, perulangan kata, kesalahan penulisan kata, penggunaan bahasa baku dan lain sebagainya. Dan setelah itu, bagian
pre-processing yang terakhir ialah filtering stopword. Tahap ini merupakan tahap
penyaringan guna menghilangkan daftar kata yang memiliki arti yang tidak begitu penting. Setelah tahapan pre-processing selesai, selanjutnya akan masuk ke tahapan ekstraksi ciri. Tahapan ini diimplementasikan menggunakan pendekatan lexical based
feature extraction dengan berdasarkan pada kamus kata sentiment word indonesia yang
telah disiapkan sebelumnya. Proses ini akan berfungsi sebagai tahap ekstraksi dan pelabelan. Setiap data akan diberi label kata perkata, apakah positif, negatif ataupun netral berdasarkan pada daftar kata sentiment word yang digunakan. Setalah data selesai dilabeli, tahap selanjutnya ialah melakukan klasifikasi. Tahap ini dimulai dengan
dilakukannya pemberian poin kepada masing-masing data hasil ekstraksi ciri, +1 untuk kata positif, -1 untuk kata negatif dan 0 untuk kata netral. Setelah itu data akan diperiksa apakah memiliki shifter berupa sejenis kata tidak atau pun kata tapi. Kemudian akan dilanjutkan dengan dilakukannya perhitungan poin keputusan yang bertujuan memutuskan orientasi sentimen mana yang lebih dominan, jika poin lebih dari 0 maka prediksi berlabel positif, jika poin kurang dari 0 maka prediksi berlabel negatif dan jika sama dengan 0 maka prediksi label netral. Untuk penghitungan akurasi akan menggunakan teknik confussion matrix yaitu jumlah prediksi benar dibagi dengan jumlah seluruh data kemudian dikalikan dengan 100%.
Berikut ini ialah beberapa langkah percobaan yang akan dilakukan 1. Percobaan pengujian hasil
Pengujian dilakukan dengan menggunakan data yang disebutkan diatas, sejumlah 1000 data tweet twitter dengan komposisi 50% data berlabel sentimen positif dan 50% data berlabel sentimen negatif. Sistem dijalankan dan hasil yang diperoleh untuk data tersebut dapat dilihat pada tabel 4.1.
Tabel 4.1 Tabel Hasil Pengujian
Prediksi Persentase Evaluasi Model
TP TN FP FN
503 Positif 50,3 % 409 0 94 0
341 Negatif 34,1 % 0 311 0 30
156 Netral 15,6 % 0 0 95 61
Tabel 4.1 menunjukan mengenai hasil pengujian yang dilakukan oleh sistem. Kolom jumlah prediksi dan persentase menunjukan pembagian klasifikasi sentimen oleh sistem dan presentasenya dari seluruh data, sedangkan kolom evaluasi model menunjukan jumlah label penyusun yang merupakan komposisi dari klasifikasi. Berikut ialah bentuk visualisasi hasil klasifikasinya seperti ditunjukan pada gambar 4.1.
Gambar 4.1 Visualisasi Hasil Pengujian
Gambar 4.1 menujukan visualisasi hasil pengujian dan presentase pembagian klasifikasi dari data yang digunakan. Warna merah mewakili hasil klasifikasi sentimen positif, warna oren mewakili hasil klasifikasi sentimen negatif dan warna coklat untuk mewakili hasil klasifikasi netral. Masing-masing dari setiap hasil klasifikasi ini sebenarnya memiliki label asli yang adalah penyusunnya. Seperti yang ditunjukan pada tabel 4.1, 503 data hasil klasifikasi positif sebenarnya tersusun dari 409 data berlabel positif dan 94 data berlabel negatif dengan presentase 81,3% banding 18,7%. Sedangkan untuk 341 data hasil klasifikasi negatif sebenarnya tersusun dari 30 data berlabel positif dan 311 data berlabel negatif dengan presentase 8,8% banding 91,2%. Dan untuk 156 data hasil klasifikasi netral sebenarnya tersusun dari 61 data berlabel positif dan 95 data berlabel negatif dengan presentase 39,1% banding 60,9%. Untuk visualisasi komposisi labelnya dapat dilihat pada gambar 4.2.
Gambar 4.2 Komposisi Label Prediksi
Untuk gambar 4.2, warna merah merupakan perwakilan dari data dengan komposisi label positif, sedangkan oren merupakan data dengan komposisi label negatif. Seperti yang telah diterangkan sebelumnya, angka numerik merupakan representasi dari jumlah penyusun asli dan presentasenya.
Jika kita melihat dari urutan area label datanya dan komposisi prediksinya, maka akan diperoleh hasil seperti ditunjukan tabel di bawah ini.
Tabel 4.2 Tabel Pengujian Label
Data Komposisi Prediksi
Positif Negatif Netral
500 Positif 409 30 61
500 Negatif 94 311 95
Tabel 4.2 menunjukan hasil pengujian jika dilihat dari urutan area label datanya. 1000 data tweet yang terdiri dari 500 data positif dan 500 data negatif diklasifikasi dan dipenuhi areanya dengan klasifikasi positif, negatif dan netral. 409 hasil klasifikasi positif, 30 hasil negatif dan 61 klasifikasi netral memenuhi area data label positif. Sedangkan sisanya, 94 hasil klasifikasi positif, 311 hasil negatif dan 95 klasifikasi netral memenuhi area data label negatif. Untuk visualiasi sebarannya dapat dilihat seperti tertera pada gambar dibawah ini.
Gambar 4.3 Peta Sebaran Pengujian Data
Gambar 4.2 menunjukan visualisasi hasil pengujian jika dilihat berdasarkan urutan label areanya. Warna biru merupakan perwakilan kumpulan data berlabel negatif dan warna oren merupakan perwakilan kumpulan data berlabel positif. Warna merah pada kumpulan data berwarna biru menunjukan jumlah klasifikasi positif pada data berlabel negatif dan warna kuningnya merupakan hasil klasifikasi netral. Sedangkan warna merah pada kumpulan data berwarna oren menunjukan jumlah klasifikasi negatif pada data berlabel positif dan kuning ialah klasifikasi netralnya.
Maka, hasilnya dapat disimpulkan menjadi, dari 500 data berlabel positif, 409 datanya benar diklasifikasi, sedangkan 91 data lainnya gagal untuk diklasifikasi dengan benar. Sedangkan untuk 500 data belabel negatif, 311 datanya berhasil diklasifikasi dengan benar dan 189 data lainnya gagal. Maka dapat disusun menjadi sebuah tabel seperti ditunjukan pada tabel 4.3.
Tabel 4.3 Tabel Prediksi Pengujian
Dataset yang tepat di prediksi Dataset yang salah di prediksi True Positif 409 TP False Positif 91 FP True Negatif 311 TN False Negatif 189 FN
Total Benar 720 Total Salah 380
Tabel diatas menunjukan prediksi pengujian. Data positif yang berhasil diprediksi dengan tepat ialah 451 data dan data negatif yang berhasil diprediksi dengan tepat ialah 311 data dan membuat total keberhasilan
prediksinya menjadi 720 data dari 1000. Pengujian menunjukan evaluasi seperti yang akan ditunjukan pada tabel 4.4 dibawah ini.
Tabel 4.4 Tabel Evaluasi Hasil
Hasil Prediksi Jumlah Data 1000 Data
Prediksi Benar 720 Data Prediksi Salah 380 Data Akurasi 72,00 % Akurasi = TP + TN x 100% TP + TN + FP + FN = 409 + 311 x 100% 409 + 311 + 91 +189 = 720 x 100% 1000 = 72%
Tabel 4.4 menunjukan hasil evaluasi sistem berupa nilai akurasi yang diperoleh dari hasil pengujian data ini. Untuk visualisasi keberhasilannya dapat dilihat pada gambar 4.3
Gambar 4.4 Peta Sebaran Akurasi
Pada gambar 4.3, kolom kuning merupakan perwakilan data yang berhasil diprediksi dengan benar, sedangkan warna merah mewakili data yang salah diprediksi klasifikasinya.
2. Percobaan pengujian pengaruh tahap pre-processing
Percobaan yang kedua dilakukan ialah percobaan pengujian tahap
pre-processing. Pengujian tahap pre-processing dilakukan dikarenakan adanya
kelemahan pada tahap pre-processing yang dilihat pada saat pengujian dan pengamatan pecobaan pertama. Tujuannya dilakukannya pengujian ini yaitu untuk mencoba melihat peranan dan pengaruh tahap pre-processing terhadap hasil akhir klasifikasi pada sistem yang dibangun. Desain pengujiannya ialah pengujian dengan atau tanpa mengikutsertakan salah satu bagian
pre-processing tertentu.
a) Pengujian tanpa normalisasi
Normalisasi digunakan untuk menyeragamkan kata yang memiliki makna sama namun penulisannya berbeda. Pengujian hasil dicobakan dengan tanpa menggunakan tahapan normalisasi untuk melihat seberapa besar pengaruhnya pada hasil klasifikasi. Visualisasi hasil pengujiannya dapat dilihat pada gambar dibawah ini.
Gambar 4.5 Peta Sebaran Pengujian Tanpa Normalisasi
Visualisasi pengujian menggunakan warna biru untuk mewakilkan area data berlabel negatif dan warna oren untuk mewakilkan data berlabel positif. Untuk warna merah ialah prediksi yang berlawanan sentimen dengan label pada area data. Sedangkan warna kuning ialah perwakilan hasil prediksi netral. Untuk beberapa perbedaan hasil pengujian sebelum dan sesudah di normalisasi dapat kita lihat pada tabel dibawah ini :
Data : (Negatif) Setuju, SANGAT TIDAK LAYAK. Tapi Surya Paloh juga tdk layak, RT @Metro_TV : Ical gak Layak Jadi Presiden bit.ly/ IaeyQk
Tanpa Pre-processing : (Positif)
setuju tidak layak tapi surya paloh tdk layak rt ical gak layak presiden
Dengan Pre-Processing : (Negatif)
setuju tidak layak tapi surya paloh tidak layak rt ical tidak layak presiden
Keterangan :
Sebelum dilakukan normalisasi kata tdk yang merupakan shifter tidak terdeteksi dan mengakibatkan hasil klasifikasi salah.
Data : (Negatif) @sarahafshol gerindra dan pdi. Partai2 besaaaaar >,< susah kemungkinan prabowo ga menang kalo gini mah haha
Tanpa Pre-processing : (Positif)
gerindra pdi partai besaaaaar susah kemungkinan prabowo ga menang kalo gini mah haha
Dengan Pre-Processing : (Negatif)
gerindra pdi partai besaaaaar susah kemungkinan prabowo tidak menang mah haha
Keterangan :
Sebelum dilakukan normalisasi kata ga yang merupakan shifter tidak terdeteksi dan mengakibatkan hasil klasifikasi salah.
Data : (Negatif) @Prabowo08 rakyat jg lg bingung pak, siapa yg bisa ngelola kekayaan negara ini, semua pada nggak amanah pak
Tanpa Pre-processing : (Positif)
rakyat jg lg bingung pak siapa yg ngelola kekayaan negara ini semua
nggak amanah pak
Dengan Pre-Processing : (Negatif)
rakyat bingung pak siapa yang ngelola kekayaan negara ini semua
tidak amanah pak
Keterangan :
Sebelum dilakukan normalisasi kata nnggak yang merupakan shifter tidak terdeteksi dan mengakibatkan hasil klasifikasi salah.
Untuk hasil evaluasi pengujian akurasinya dapat dilihat pada tabel dibawah ini.
Tabel 4.5 Tabel Evaluasi Pengujian Tanpa Normalisasi
Dataset yang tepat di prediksi Dataset yang salah di prediksi True Positif 405 TP False Positif 95 FP
True Negatif 295 TN False Negatif 205 FN Total Benar 700 Total Salah 300
Akurasi 70,00 %
b) Pengujian tanpa filtering stopword
Filtering stopword ialah tahap pembuangan daftar kata yang tidak
penting dan yang tidak deskriptif di dalam teks. Pengujian hasil juga dicobakan dengan tanpa menggunakan tahap filtering stopword. Hal ini dilakukan untuk melihat seberapa besar pengaruh tahapan ini pada hasil klasifikasi. Untuk visualisasi hasil pengujiannya dapat dilihat dari gambar visualisasi dibawah ini.
Gambar 4.6 Peta Sebaran Pengujian Tanpa Stopword
Visualisasi pengujian diatas menggunakan warna biru untuk mewakilkan area data berlabel negatif dan warna oren untuk mewakilkan data berlabel positif. Untuk warna merah ialah prediksi yang berlawanan sentimen dengan label pada area data. Sedangkan warna kuning ialah perwakilan hasil prediksi netral. Untuk beberapa perbedaan hasil
pengujian sebelum dan sesudah di filtering dapat kita lihat pada tabel dibawah ini :
Data : (Negatif) ARB ini gk akan menang di Pilpres.berani tarohan??
Tanpa Pre-processing : (Positif)
arb ini tidak akan menang di pilpres berani tarohan
Dengan Pre-Processing : (Negatif) arb tidak menang pilpres berani tarohan Keterangan :
Sebelum dilakukan filtering, terdapat kata “akan” yang berada diantara shifter dan kata bersentimen, hal ini menyebabkan shifter menjadi tidak terdefinisi. Setelah kata akan dihilangkan maka shifter terdeteksi dan hasil klasifikasi benar.
Data : (Negatif) RT @phanphann: "@detikcom: Program - program Jokowi Belum Memuaskan Warga http://t.co/1RxVHIiZuR via @detik_tv" bawel dah
Tanpa Pre-Processing : (Negatif)
Program program jokowi belum memuaskan warga via bawel deh
Dengan Pre-Processing : (Positif)
Program program jokowi memuaskan warga via bawel deh Keterangan :
Kata belum justru dihilangkan pada proses stopword yang menyebabkan justru hasil klasifikasi menjadi salah.
Data : (Positif) @iskan_dahlan kapan ada pemimpin yang bisa merubah pola pikir bangsanya supaya bisa maju,jujur,cerdas tapi tetap bersahaja dlm berlaku.
Tanpa Pre-Processing : (Negatif)
kapan ada pemimpin yang bisa merubah pola pikir bangsanya
supaya bisa maju jujur cerdas tapi tetap bersahaja dalam berlaku
Dengan Pre-Processing : (Positif)
pemimpin yang merubah pola pikir bangsanya supaya maju jujur cerdas tapi tetap bersahaja berlaku
Beberapa kata dalam kaimat itu telah dihilangkan namun tidak merubah hasil klasifikasinya. Hal ini dikarenakan kata-kata yang dihilangkan dalam stopword merupakan kata yang tidak deskriptif dan dapat dihilangkan, yang mana pada saat ekstraksi akan diberi label netral.
Untuk hasil evaluasi pengujian akurasinya dapat dilihat pada tabel dibawah ini.
Tabel 4.6 Tabel Evaluasi Pengujian Tanpa Stopword
Dataset yang tepat di prediksi Dataset yang salah di prediksi True Positif 410 TP False Positif 90 FP True Negatif 306 TN False Negatif 194 FN Total Benar 716 Total Salah 284
Akurasi 71,60 %
c) Pengujian tanpa stemming
Stemming ialah tahap pengubahan kata menjadi bentuk kata dasar atau
kata yang lebih mudah dipahami. Pengujian hasil juga dicobakan dengan tanpa menggunakan tahap stemming. Hal ini dilakukan untuk melihat seberapa besar pengaruh tahap ini pada hasil klasifikasi.
Gambar 4.7 Peta Sebaran Pengujian Tanpa Stemming
Visualisasi pengujian menggunakan warna biru untuk mewakilkan area data berlabel negatif dan warna oren untuk mewakilkan data berlabel positif. Untuk warna merah ialah prediksi yang berlawanan sentimen
dengan label pada area data. Sedangkan warna kuning ialah perwakilan hasil prediksi netral. Untuk beberapa perbedaan hasil pengujian sebelum dan sesudah di stemming dapat kita lihat pada tabel dibawah ini :
Data : (Negatif) Elektabilitas Hatta Rajasa Rendah Karena Dianggap Bakal LIndungi SBY bit.ly/JT8Fke
Tanpa Pre-processing : (Netral)
elektabilitas hatta rajasa rendah dianggap bakal lindungi sby
Dengan Pre-Processing : (Negatif)
elektabilitas hatta rajasa rendah anggap bakal lindung sby Keterangan :
Ketika distemming, kalimat diatas menjadi salah mengklasifikasi, hal ini dikarenakan kata lindungi yang merupakan sentimen positif disimpan di kamus sentimen dengan kata “lindungi” bukan dengan kata “lindung”. Data : (Positif) Masih ada Harapan di Badan nya @wiranto1947 untuk 2014 yang Lebih Baik.
Tanpa Pre-Processing : (Negatif)
harapan badan nya untuk yang lebih baik
Dengan Pre-Processing : (Netral)
harap badan nya untuk yang lebih baik
Keterangan :
Ketika kalimat distemming, kata “harapan” menjadi hanya kata “harap”, hal ini membuat kata “harapan” yang seharusnya kata bersentimen positif menjadi tidak berhasil terdefinisi dikarenakan perbedaan penulisan kata dengan kata dikamus yang ditulis sebagai “harapan” bukan “harap”.
Untuk hasil evaluasi pengujiannya dapat dilihat pada tabel dibawah ini.
Tabel 4.7 Tabel Evaluasi Pengujian Tanpa Stemming
Dataset yang tepat di prediksi Dataset yang salah di prediksi True Positif 395 TP False Positif 105 FP True Negatif 314 TN False Negatif 186 FN
Total Benar 709 Total Salah 291
Akurasi 70,90 %