SKRIPSI
SKRIPSI
TIM PEMBIMBING
Pembimbing I Pembimbing II
Skripsi ini telah diterima sebagai salah satu syarat memperoleh gelar sarjana
komputer pada fakultas ilmu komputer Universitas Muhammadiyah Riau.
Disetujui oleh
Dekan Fakultas Ilmu Komputer
Nim : 180401105
Mengetahui,
Ketua Program Studi
Puji syukur saya persembahkan kepada Tuhan Yang Maha Esa, karena atas
berkat dan rahmat-Nya, saya dapat menyelesaikan skripsi dengan judul
“IMPLEMENTASI ALGORITMA RANDOM FOREST UNTUK
KLASIFIKASI SENTIMEN APLIKASI TIKTOK PADA GOOGLE PLAY
STORE”. Penulisan skripsi ini dilakukan dalam rangka memenuhi salah satu
syarat untuk mencapai gelar Sarjana Komputer program studi Teknik Informatia
pada Fakultas Ilmu Komputer Universitas Muhammadiyah Riau.
Dalam penyusunan skripsi ini banyak pihak yang telah membantu, oleh
karena itu tidak lupa penulis mengucapkan terima kasih banyak kepada:
1. Bapak Dr. Saidul Amin, MA. Selaku Rektor Universitas Muhammadiyah
Riau.
2. Bapak Harun Mukhtar, S.Kom., M.Kom, selaku Dekan Fakultas Ilmu
Komputer.
3. Bapak Soni, S.Kom., M.Kom, selaku Kepala Prodi Teknik Informatika.
4. Ibuk Reny Medikawati Taufiq, S.Kom., M.T selaku dosen pembimbing 1
yang telah membimbing dan banyak memberi saran.
5. Ibuk Hasanatul Fu’adah Amran, S.Pd., MPd selaku dosen pembimbing 2
yang telah membimbing dan banyak memberi saran.
6. Seluruh Dosen Prodi Teknik Informatika Universitas Muhammadiyah Riau.
7. Orang tua saya, serta seluruh teman-teman yang terus mendampingi dan
memberikan semangat.
Dalam penyusunan skripsi ini saya telah berusaha semaksimal mungkin
menyelesaikan skripsi ini menjadi lebih sempurna, apabila masih terdapat
kekurangan maka dengan segala kerendahan hati saya mengharapkan kritik dan
saran yang konstruktif dari semua pihak demi kesempurnaan skripsi ini. Semoga
skripsi ini bermanfaat untuk perkembangan keilmuan dimasa yang akan datang.
Dengan ini saya yang melimpahkan hak cipta dari karya tulis saya kepada
Universitas Muhammadiyah Riau
Aplikasi TikTok diresmikan pada tahun 2016 oleh Zhang Yiminy yang
berasal dari Cina. Aplikasi ini juga sekarang menjadi aplikasi yang sangat
diminati oleh masyarakat, Hampir rata rata pengguna aplikasi Tik Tok berusia di
bawah 18 tahun. Bahkan, banyak diantaranya anak anak pengguna tiktok yang
masih sekolah dasar. Jika melihat sekilas, memang banyak konten di Tik Tok
yang tidak layak untuk anak anak dibawah umur. Berdasarkan permasalahan
tersebut, penulis akan melakukan analisis sentimen terhadap ulasan pengguna
TikTok di Google Play Store mengunakan algoritmat Random Forest. Hasil dari
pengujian ini di dapat kelas positif berjumlah 4538, kelas negatif berjumlah 1028
dan kelas netral berjumlah 4434 dari 10.000 dataset dan Algoritma Random
Forest mendapatkan nilai precision sebesar 0,9554, recall sebesar 0,9542, f1-
score sebesar 0,9547, dan accuracy sebesar 0,9544.
The TikTok app was launched in 2016 by Zhang Yiminy who is from
China. This application is also now an application that is in great demand by the
public. Almost the average user of the Tik Tok application is under 18 years old.
In fact, many of them are children who use tiktok who are still in elementary
school. At first glance, there is indeed a lot of content on Tik Tok that is not
suitable for minors. Based on these problems, the author will conduct a sentiment
analysis on TikTok user reviews on the Google Play Store using the Random
Forest algorithm. The results of this test are 4538 positive classes, 1028 negative
classes and 4434 neutral classes from 10,000 datasets and the Random Forest
Algorithm gets a precision value of 0.9554, recall is 0.9542, f1-score is 0.9547,
and accuracy is 0.9544.
KATA PENGANTAR............................................................................................iv
ABSTRAK..............................................................................................................vi
ABSTRACT...........................................................................................................vii
DAFTAR ISI.........................................................................................................viii
DAFTAR GAMBAR..............................................................................................xi
DAFTAR TABEL..................................................................................................xii
DAFTAR RUMUS...............................................................................................xiii
BAB 1 PENDAHULUAN.......................................................................................1
5.1. Kesimpulan..............................................................................................45
5.2 Saran........................................................................................................45
DAFTAR PUSTAKA............................................................................................46
Rumus 2. 1 𝐴𝑐𝑐𝑢𝑟𝑎𝑐y..............................................................................................7
Rumus 2. 2 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜n..............................................................................................7
Rumus 2. 3 𝑅𝑒𝑐𝑎𝑙 ...................................................................................................7
Rumus 2. 4 𝐹1 – Score .........................................................................................7
Rumus 3. 1 IDF......................................................................................................20
Rumus 3. 2 W.........................................................................................................20
Rumus 3. 3 𝐴𝑐𝑐𝑢𝑟𝑎𝑐y............................................................................................22
Rumus 3. 4 𝑃𝑟𝑒𝑐𝑖𝑠𝑖on............................................................................................22
Rumus 3. 5 𝑅𝑒𝑐𝑎𝑙l.................................................................................................22
Rumus 3. 6 𝐹1 – Score...........................................................................................22
Rumus 4. 1 IDF .....................................................................................................37
Rumus 4. 2 W ........................................................................................................37
menyediakan tombol like yang digunakan untuk menyukai video yang sudah
ditonton. Untuk mendapatkan like banyak penggunggah video tidak segan-segan
untuk melakukan tindakan narcissistic. (Zulqornain and Adikara, 2021)
Aplikasi TikTok ini berupa aplikasi yang dapat membagikan video, tetapi
biasanya juga muncul video yang memiliki unsur vulgar yang dapat dilihat oleh
anak di bawah umur. Oleh karena itu penulis melakukan analisis sentimen pada
ulasan aplikasi TikTok untuk membantu orang tua dalam pemilihan aplikasi untuk
anaknya. Review tersebut dapat dilakukan dengan analisis sentiment dari opini
masyarakat terhadap pengguna aplikasi tiktok, opini masyarakat dikelompokan
menjadi opini negatif, positif dan netral. Analisis sentimen adalah metode untuk
mengekstrak opini dan sentimen dari teks bahasa alami menggunakan metode
komputasi. Opini dan sentimen terkait dengan evaluasi, penilaian, sikap,
pengaruh, emosi, dan suasana hati. Analisis sentimen ini umumnya merupakan
proses klasifikasi teks yang berfokus pada ulasan yang mengungkapkan apakah
ulasan tersebut positif, negatif atau netral (Sola, Suparti and Sudarno, 2021).
Imbalance class adalah kondisi distribusi antar kelas yang tidak seimbang
pada suatu dataset, dimana salah satu kelasnya memiliki jumlah data yang sangat
besar (kelas mayoritas) dibanding kelas lainnya (kelas minoritas). Perbedaan
jumlah data yang besar antar kelas dapat mengakibatkan model klasifikasi sering
tidak dapat memprediksikan kelas minoritas dengan tepat sehingga banyak data
tes yang seharusnya berada pada kelas minoritas diprediksikan salah oleh model
klasifikasi (Sutoyo and Fadlurrahman, 2020).
Untuk mengatasi permasalahan imbalance class, salah satu metode yang
digunakan adalah sampling. Metode sampling melakukan modifikasi terhadap
distribusi data antar kelas mayoritas dan kelas minoritas pada dataset training
untuk menyeimbangkan jumlah data tiap kelas. Salah satu metode sampling yang
sering digunakan adalah Syntetic Minority Over-sampling Technique (SMOTE)
(Sutoyo and Fadlurrahman, 2020).
Confusion Matrix ini cocok untuk perhitungan yang memiliki dataset yang
terdiri dari kelas positif, kelas negative dan kelas netral, Dalam confusion matrix
bisa dilakukan untuk menghitung nilai akurasi, precision, recall dan f1-Score.
Dalam confusion matrix bisa dilakukan untuk menghitung nilai akurasi, precision,
recall dan f1-Score yang dapat dilihat pada persamaan 2.1, Persamaan 2.2,
Persamaan 2.3, dan Persamaan 2.4. (Zulqornain and Adikara, 2021).
Rumus 2. 1 𝐴𝑐𝑐𝑢𝑟𝑎𝑐y = Total Cor rectly Clasified / Actual
Rumus 2. 2 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜n = Kelas /Jumlah Data∗Precision
Rumus 2. 3 𝑅𝑒𝑐𝑎𝑙 = Kelas /Jumlah Data × Recall
Precision x Recall
Rumus 2. 4 𝐹1 – Score = 2×
Precision+ Recall
Keterangan:
TP (True Positive) = Data positif yang terklasifikasi secara benar.
FP (False Positive) = Data negatif yang terklasifikasi menjadi positif.
FN (False Negative) = Data positif yang terklasifikasi menjadi negatif.
TN (True Negative) = Data negatif yang terklasifikasi secara benar.
TikTok merupakan salah satu media sosial paling populer bagi remaja saat
ini. Selain itu, TikTok memiliki fitur-fitur yang menarik, seperti mengedit video,
foto, komentar, filter, dll. Tidak heran, fitur ini sangat membantu dalam menarik
perhatian penggunanya, dan dapat menghabiskan waktu berjam-jam hanya untuk
melihat berbagai macam konten dan informasi yang ada pada konten-konten
tiktok. Fitur-fitur TikTok mendukung dalam meningkatkan kemampuan
berbahasa dengan fitur teks untuk melatih keterampilan membaca dan menulis,
keterampilan mendengarkan dengan fitur suara yang terdapat dalam konten
TikTok, sedangkan keterampilan berbicara dengan merekam suara dan membuat
konten di TikTok (Zulqornain and Adikara, 2021).
Aplikasi ini dibuat oleh Zhang Yimny dari Cina dan secara resmi di
luncurkan pada tahun 2016. di Indonesia TikTok merupakan aplikasi berbagi
video yang paling popular, karena kemudahan dan kepraktisan dalam
penggunaanya. Aplikasi TikTok ini menjadi aplikasi yang paling banyak di unduh
yaitu 45,8 juta kali dan jumlah tersebut mengalahkan media sosial lainnya seperti
WhatsApp, YouTube, Facebook dan bahkan Instagram. Pengguna TikTok di
Indonesia ada 10 juta lebih pengguna aktif dan pengguna tersebut mayoritas dari
anak usia sekolah, anak millennial (Zulqornain and Adikara, 2021).
sempurna.
2 Junda Alfiah Analisis Sentimen Hasil maksimal yang di
Zulqornain, Tanggapan dapatkan dengan
Indriati, Putra Masyarakat Aplikasi menggunakan 100% term
Pandu Adikara Tiktok Menggunakan yang digunakan untuk
(2021) Metode Naïve Bayes pengujian dengan nilai
dan Categorial accuracy sebesar 0,729947,
Propotional nilai precission sebesar
Difference (CPD) 0,746854, nilai recall sebesar
0,926118, dan nilai f-measure
0,824511.
3 Sudianto, Puspa Perbandingan metode Hasil klasifikasi
Wahyuningtias, random forest dan menunjukkan bahwa
Hapsari Warih support vector algoritme Random Forest
Utami, Uli Ahda Machine pada analisis memiliki nilai akurasi sebesar
Raihan, Hasna sentimen twitter (studi 94%. Sedangkan hasil
Nur Hanifah, kasus: kaburnya klasifikasi algoritme SVM
Yehezkiel Selebgram rachel mendapatkan nilai akurasi
Nicholas vennya dari karantina) sebesar 93%. Sehingga dapat
Adanson (2022) disimpulkan analisis sentimen
Twitter pada studi kasus
kaburnya Selegram Rachel
Venya dari karantina bahwa
algoritme Random Forest
mendapatkan hasil terbaik.
4 Evita Fitri, Yuri Analisis Sentimen Hasil dari Random Forest
Yuliani, Susy Terhadap Aplikasi model klasifikasi 97,16%
Rosyida, Windu Ruangguru dengan menggunakan Cross
Gata (2020) Menggunakan Validation dan skor AUC
Algoritma Naive 0,996. Kemudian akurasi
Bayes, Random Forest dengan model dukungan
Dan Support Vector klasifikasi Support Vector
18
Universitas Muhammadiyah Riau
19
Pada gambar 3.1 merupakan kerangka penelitan yang diajukan, dataset akan
di proses pada tahap preprocessing, selanjutnya data akan dibobotkan
menggunakan TF-IDF dan diseimbangkan menggunakan Teknik SMOTE.
Kemudian proses data split dilakukan dengan menggunakan library sklearn.
Dalam proses ini akan membagi data menjadi dua bagian, yaitu data training
sebagai data latih dan data testing sebagai data test. Dataset yang telah dibagi akan
di proses oleh machine learning dengan metode klasifikasi sehingga mendapatkan
hasil prediksi.
Pada tahap ini akan dilakukan proses klasifikasi dengan algoritma yang
digunakan yaitu random forest. Pada tahap ini mesin akan diajari untuk mengenal
pola atau dokumen yang ada agar dapat mengklasifikasi sebuah data ke dalam 3
kelas, yaitu kelas positif, negatif dan netral. Data yang sudah melewati text
preprocessing akan dibagi menjadi 2 bagian yaitu data training dan data testing.
Adapun langkah-langkah algoritma random forest dalam melakukan klasifikasi
adalah sebagai berikut (Afdhal et al., 2022).
1. Buat sampel dengan mengambil data secara acak dari dataset D
2. Gunakan sampel data untuk membangun tree ke-i (i=1,2…k)
3. Ulangi langkah satu dan dua sebanyak k
4. Hitung suara (vote) untuk setiap target yang diprediksi dari setiap tree.
5. Hasil klasifikasi akan didapat dengan menghitung suara terbanyak dari
tree yang dibangun.
Precision x Recall
Rumus 3. 6 𝐹1 – Score = 2×
Precision+ Recall
Keterangan:
TP (True Positif) = Data positif yang terklasifikasi secara benar.
FP (False Positif) = Data negatif yang terklasifikasi menjadi positif.
FN (False Negatif) = Data positif yang terklasifikasi menjadi negatif.
TN (True Negatif) = Data negatif yang terklasifikasi secara benar.
Pada bab ini membahas hasil dari penelitian tentang klasifikasi sentimen
aplikasi tiktok pada google play store menggunakan Algoritma Random forest
dengan tahapan yang sudah dijelaskan pada bab sebelumnya.
23
Hasil dari scrapping data tersebut bisa dilihat pada Gambar 4.3 yang
merupakan sebagian dataset yang diambil menggunakan proses scrapping. Data
diambil menggunakan bahasa pemrograman Phyton dan menggunakan library
pandas dan numpy pada ulasan aplikasi TikTok (Doloksaribu and Samuel, 2022).
Data field yang diambil yaitu username, score, at, content. Kemudian data tersebut
disimpan kedalam file berformat csv agar memudahkan tahapan atau proses
selanjutnya.
kecil. Berikut merupakan kode untuk melakukan tahapan case folding yang dapat
dilihat pada Gambar 4.4 dibawah ini.
Input Program
Output Program
Pada Tabel 4.1 dibawah adalah hasil dari tahapan case folding yang
mengubah huruf capital menjadi huruf kecil yang ada pada dataset.
10 Saya kasih bintang lima karna saya kasih bintang lima karna aplikasi
aplikasi ini sangat membantu bagi ini sangat membantu bagi saya!!!
saya!!!semangat terus ya tiktok semangat terus ya tiktok semoga apk
semoga apk nya lancar teruss nya lancar teruss
4.2.2. Tahapan Cleaning.
Tahapan cleaning bertujuan untuk menghapus karakter yang tidak
memberikan pengaruh terhadap proses klasifikasi sentimen setelah dilakukan
proses case folding, seperti menghapus tanda baca koma (,), titik (.), hastag (#),
mention (@), link, ataupun karakter selain huruf dan angka. Berikut adalah proses
untuk melakukan tahapan cleaning yang dapat dilihat pada Gambar 4.5 dibawah
ini.
Input Program
Output Program
Pada Tabel 4.2 dibawah adalah hasil dari tahapan cleaning yang menghapus
tanda baca koma (,), titik (.), hastag (#), mention (@), link, ataupun karakter
selain huruf dan angka yang ada pada dataset.
Output Program
Pada Tabel 4.3 dibawah adalah hasil dari tahapan tokenizing yang
melakukan pemecahan kata pada kalimat yang ada pada dataset.
Output Program
Pada Tabel 4.4 dibawah adalah hasil dari tahapan normalisasi yang
melakukan pengubahan singkatan, akronim, angka, tanggal, waktu, karakter-
Output Program
Pada Tabel 4.5 dibawah adalah hasil dari tahapan stopword removal yang
melakukan penghilangan kata yang sering muncul namun dianggap tidak
memiliki arti.
Tabel 4. 5 Hasil Proses Stopword Removal
No Sebelum dilakukan Stopword Sesudah dilakukan Stopword
Removal Removal
1 matap ni aplikasi matap, aplikasi
2 gue : (moga aja aplikasi ini tidak semoga, aplikasi
ada)
3 bagus lah Bagus
4 Sangat menghibur di waktu luang menghibur, luang
5 Bagus Bagus
6 Waw Waw
7 Ok Ok
8 Awaaaak Awaaaak
Output Program
Pada Tabel 4.6 dibawah adalah hasil dari tahapan stemming yang melakukan
mengembalikan kata ke bentuk dasarnya.
Input Program
Output Program
Output Program
Input Program
Output Program
berarti term sering muncul maka dapat dianggap term umum sehingga tidak
penting nilainya. Inverse Document Frequency (idf) merupakan frekuensi
berbanding terbalik. Berikut adalah proses untuk melakukan tahapan TF-IDF yang
dapat dilihat pada Gambar 4.13 dibawah ini.
Input Program
Output Program
Output Program
Input Program
Output Program
Pada Tabel 4.7 dibawah adalah hasil dari eksperimen pembagian data
traning dan data testing yang di uji dan di dapat accuracy tertinggi yaitu
perbandingan 90:10.
Tabel 4. 8 Hasil dari eksperimen pembagian data training dan data testing
Output Program
Output Program
Precision x Recall
f1-score =2 x
Precision+ Recall
0 , 9554 x 0,9542
=2x
0 , 9554+ 0,9542
0 , 9116
=2x
1,9096
= 0,9547
5.1. Kesimpulan
Berdasarkan hasil penelitian klasifikasi sentimen aplikasi tiktok pada google
play store dengan dataset berjumlah 10.000 dan memiliki kelas positif, negatif,
dan netral dapat disimpulkan bahwa :
1. Hasil dari klasifikasi sentimen kelas positif berjumlah 4538, kelas negatif
berjumlah 1028 dan kelas netral berjumlah 4434, pada sentiment aplikasi
tiktok kencenderungan pengguna tiktok dapat dikatakan positif.
2. Dari hasil klasifikasi sentiment terhadap aplikasi tiktok pada google play
store masih terdapat hasil negatif, sehingga penguna aplikasi tiktok bagi
anak-anak dibawah umur masih membutuhkan pengawasan orang tua.
3. Algoritma Random Forest mendapatkan hasil yang optimal dalam
melakukan analisis sentiment aplikasi tiktok pada google play store.
Algoritma Random Forest mendapatkan nilai precision sebesar 0,9554,
recall sebesar 0,9542, f1-score sebesar 0,9547, dan accuracy sebesar
0,9544.
5.2 Saran
Dari kesimpulan yang telah dijabarkan, disarankan bagi peneliti lain yang
ingin melakukan perbandingan hasil performa Random Forest dalam penelitian
ini yaitu:
1. Pemilihan fitur lebih divariasikan, seperti melengkapi rule dan
pembobotan kata. Pembobotan kata dapat dicoba menggunakan metode
lain seperti GloVe atau Word2Vec.
2. Pemilihan imbalance data dapat dicoba mengunakan teknik ADASYN
untuk penyeimbangan data yang mungkin lebih optimal. Dikarenakan
ADASYN merupakan sebuah pengembangan dari metode SMOTE.
Dengan menggunakan metode yang lebih mutakhir daripada SMOTE
diharapkan dapat meningkatkan performa dari metode klasifikasi yang
digunakan nantinya
45
46
Sola, F., Suparti and Sudarno (2021) ‘3 1,2,3’, 10, pp. 346–358.
47