## Analisis Sentimen Masyarakat terhadap Film Horor Indonesia Menggunakan
Metode SVM dan TF-IDF
Sentiment Analysis of Public towards Indonesian Horror Films Using SVM and TF- IDF Methods
Jesica Emarapenta Br Sinulingga 1* , Hizkya Cesar Kayika Sitorus 2
Program Studi Teknik Informatika, Institut Teknologi Telkom Purwokerto, Purwokerto, Indonesia *E-mail: jesikasinulingga204@gmail.com

## Abstrak
Dalam era digital, opini masyarakat terkait dengan film horor Indonesia sering menjadi perhatian utama di media sosial. Tujuan dari studi ini adalah untuk mengevaluasi pandangan dan perasaan yang diungkapkan oleh masyarakat terkait film horor Indonesia. Metode Support Vector Machine (SVM) dan Term Frequency-Inverse Document Frequency (TF-IDF) digunakan  sebagai  alat  analisis  utama  dalam  penelitian  ini.  Isu-isu  dan  pandangan  masyarakat  terhadap  film  horor diekstraksi dari platform media sosial untuk diidentifikasi sebagai opini pro dan kontra. Penggunaan metode SVM bersama dengan representasi teks menggunakan TF-IDF diharapkan dapat memberikan pemahaman mendalam terhadap respons emosional masyarakat terhadap genre film tertentu. Data yang dianalisis terdiri dari 2281 data. Kemudian, penerapan algoritma Support Vector Machine (SVM) digunakan sebagai metode klasifikasi teks, yang disertai dengan pembobotan kata  menggunakan  TF-IDF.  Hasil  yang diperoleh dari  analisis  ini  adalah  sebesar 82.51% untuk akurasi, 5.28%  untuk presisi, 7.26% untuk recall, dan 6.12% untuk F1 Score. Penelitian ini membuktikan kemampuan metode SVM dan TF-IDF dalam mengklasifikasikan sentimen opini masyarakat terhadap film horor Indonesia dan berpotensi memberikan wawasan tentang dampak sosial dan penerimaan karya film dalam industri hiburan.

## Kata kunci: Algortima SVM, TF-IDF, Film Horor, Analisis Sentimen

## Abstract
In the digital era, public opinions regarding Indonesian horror films often receive significant attention on social media platforms.  The  objective  of  this  study  is  to  assess  the  perspectives  and  sentiments  expressed  by  the  public  concerning Indonesian  horror  films.  The  Support  Vector  Machine  (SVM)  method  along  with  Term  Frequency-Inverse  Document Frequency  (TF-IDF)  is utilized as  the  primary  analytical  tool in  this  research.  Issues  and  public  viewpoints  regarding horror  films  are  extracted  from  social  media  platforms  to  identify  both  pros  and  cons.  Employing  the  SVM  method  in conjunction  with  text  representation  using  TF-IDF  is  expected  to  provide  comprehensive  insights  into  the  emotional responses  of  the  public  toward  specific  film  genres.  The  analyzed  dataset  comprises  2281  entries.  Subsequently,  the application  of  the  Support  Vector  Machine  (SVM)  algorithm  is  employed  for  text  classification,  coupled  with  word weighting using TF-IDF. The outcomes of this analysis exhibit an accuracy of 82.51%, a precision of 5.28%, a recall of 7.26%, and an F1 Score of 6.12%. This study demonstrates the efficacy of the SVM and TF-IDF methods in classifying public  sentiment  toward  Indonesian  horror  films  and  has  the  potential  to  provide  insights  into  the  social  impact  and reception of film works within the entertainment industry.

## Keywords: SVM Algorithm, TF-IDF, Horror Films, Sentiment Analysis
Naskah diterima 07 Jan. 2024; direvisi 29 Jan. 2024; dipublikasikan 01 Apr. 2024. JAMIKA is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

## I. P ENDAHULUAN
Ulasan  mengenai  sebuah  film  adalah  suatu  kebutuhan  yang  penting  bagi  banyak  individu,  karena memberikan wawasan dan informasi mendalam mengenai substansi suatu film. Ulasan ini menjadi alat yang membantu  dalam  memperoleh  gambaran  menyeluruh  mengenai  alur  cerita,  peran  para  aktor,  serta  aspek konflik yang dihadirkan dalam narasi film. Lebih dari itu, ulasan juga memberikan gambaran tentang kelebihan dan  kekurangan  yang  dapat  ditemui  dalam  sebuah  film.  Penelitian  ini  dilakukan  untuk  mengenali, mengelompokkan, dan menelaah pola opini yang diungkapkan oleh masyarakat terkait elemen-elemen spesifik dalam film horor. [1]. Terutama, film horor Indonesia sering menjadi objek ketertarikan yang menarik banyak perhatian.  Oleh  karena  itu,  analisis  terhadap  sentimen  masyarakat  terhadap  film-film  horor  menjadi  krusial dalam memahami preferensi dan respons audiens terhadap karya film tersebut. Minat dan respons masyarakat
terhadap film-film horor sering tercermin dalam opini serta pandangan yang mereka bagikan melalui media sosial, seperti Twitter. Twitter merupakan media yang menjadi tempat bagi ribuan hingga jutaan opini yang disampaikan  dalam  bentuk  tweet  dan  dapat  dimanfaatkan  untuk  mengumpulkan  opini  masyarakat  terhadap suatu  film.  Melihat  banyaknya  opini  yang  terdapat  di  Twitter,  diperlukan  pengelompokan  berdasarkan sentimen yang diungkapkan untuk memperoleh pemahaman terhadap kecenderungan opini tersebut terhadap film, apakah bersifat positif atau negatif [2]. Platform twitter menjadi wadah di mana penonton bisa berbagi perspektif dan merekomendasikan film horor kepada orang lain [3].
Ada  beberapa  algoritma  dalam  machine  learning  yang  sering  diajukan  oleh  para  peneliti  untuk melakukan  analisis  sentimen  seperti Random  Forest yang  merupakan  algoritma  ensemble  yang menggabungkan  hasil  dari  berbagai  pohon  keputusan  secara  acak  untuk  menghasilkan  prediksi  akhir  [4], Multinomial  Naive  Bayes yang  menggunakan  teorema Bayes dengan  asumsi  independensi  fitur  untuk menghitung  probabilitas  kelas  sentimen  [5].  Sementara  itu, Support  Vector  Machine mencari  hyperplane terbaik untuk memisahkan kelas dalam ruang fitur. Berdasarkan beberapa penelitian, Support Vector Machine (SVM) seringkali  dipilih  karena  kemampuannya  yang  unggul  dalam  mencapai  kinerja  optimal  dalam mengklasifikasikan  dan  secara  konsisten  menunjukkan  keunggulan  dalam  akurasi  dibandingkan  metode klasifikasi lainnya. Dikarenakan kemampuan dalam menghasilkan akurasi yang tinggi dan memerlukan biaya komputasi yang rendah, SVM menjadi salah satu metode yang efektif dalam klasifikasi data [6].
Meskipun SVM membutuhkan format input dalam bentuk vektor, yang memerlukan konversi format dokumen  ke  format  yang  sesuai  untuk  pembelajaran  mesin,  penting  untuk  melakukan  ekstraksi  fitur  dari dokumen  teks.  Ini  berperan  penting  dalam  pemilihan  fitur  yang  akan  digunakan  dan  mempengaruhi  model pembelajaran  mesin.  Seringkali,  ekstraksi  fitur  teks  menggunakan  pendekatan N-Gram ,  tetapi  terdapat kekurangan pada pendekatan ini yaitu menghasilkan jumlah fitur yang besar dan tidak semuanya signifikan untuk  proses  klasifikasi.  Alternatif  lain  yang dikenal  adalah  penggunaan  metode Term  Frequency  -  Inverse Document Frequency (TF-IDF) yang dianggap sebagai salah satu metode ekstraksi fitur terbaik untuk analisis teks  [7].  Sebuah  penelitian  sebelumnya  yang  diprakarsai  oleh  Nur  Fitriyah  meneliti  mengenai  Analisis Sentimen  Gojek  di  platform  media  sosial  Twitter  dengan  menerapkan  metode  Klasifikasi  SVM.  Analisis terhadap 1.500 tweet pengguna Gojek pada 17-18 Januari 2019 menunjukkan mayoritas sentimen positif (1.142 tweet  positif,  358  tweet  negatif).  Meskipun  pelabelan  dengan sentiment  scoring tidak  akurat  (172  tweet kesalahan), hasil klasifikasi sentimen menggunakan SVM pada data manual dan sentiment scoring mencapai tingkat  akurasi  keseluruhan  79,19%.  Pemodelan  dengan  kernel  RBF  dan  parameter  tertentu  memberikan akurasi kappa terbaik, yakni 16,52% pada data manual dan 21% pada sentiment scoring [6]. Kemudian pada penelitian yang dilakukan oleh Okta Ihza Gifari dengan judul Analisis Sentimen Review Film Menggunakan TF-IDF dan SVM dengan memperoleh hasil bahwa alasan pemilihan metode ini terletak pada kemampuannya dalam memberikan bobot pada kata-kata serta mengelompokkan data yang berdimensi tinggi. Berdasarkan uji skenario yang dilakukan, terbukti bahwa algoritma TF-IDF dan SVM mampu dioptimalkan pada situasi ulasan film dengan tingkat keakuratan (Accuracy) sebesar 85%, presisi (Precision) mencapai 100%, nilai keberhasilan dalam  mengenali  keseluruhan (Recall) sebesar  70%,  dan  nilai F1-Score sebesar  82%  [8].  Dan  penelitian lainnya oleh Vincentius Westley Dimitrius Thomas yaitu pada analisis sentimen ulasan hotel dalam Bahasa Indonesia, metode SVM dan TF-IDF. Berdasarkan penelitian tersebut, mendapatkan hasil bahwa penggunaan pembobotan  TF-IDF  dengan  parameter  teroptimal  ( min_df= 3, max_df= 0.25, max_features= 5000), slang handling dengan  penambahan  kosa  kata slang dan  implementasi stopword berpengaruh signifikan  terhadap prediksi  SVM,  menghasilkan  tingkat  akurasi  85%.  Melalui  eksperimen,  penelitian  ini  mencapai F1-Score terbaik sebesar 83%, sementara tanpa slang handling, F1-Score sebesar 80%, dan tanpa stopword F1-Score sebesar 82%. Evaluasi kinerja model dengan K-fold menunjukkan nilai akurasi tertinggi pada Fold-7 mencapai 87%.[7].
Penelitian  ini  dilakukan  dengan  tujuan  menganalisis  persepsi  masyarakat  terkait  film  horor menggunakan metode Support Vector Machine (SVM) dan Term Frequency-Inverse Document Frequency (TF- IDF) .  Evaluasi  yang  akan  dilakukan  terhadap  hasil  eksperimen  yang  dilakukan  pada  penelitian  ini menggunakan confusion matrix.

## II. M ETODE P ENELITIAN
Dalam  penelitian  ini,  terdapat  beberapa  langkah  yang  digambarkan  pada  gambar  1.  Tahapan  awal dimulai dari pengumpulan data, kemudian dilanjutkan dengan proses pre-processing, labeling, pembobotan kata menggunakan TF-IDF, penerapan Support Vector Machine (SVM), dan terakhir proses evaluasi.
OJS: https://ojs.unikom.ac.id/index.php/jamika
Gambar 1. Tahapan Penelitian

## Pengumpulan Data
Data yang digunakan dalam penelitian ini adalah opini masyarakat terhadap film horor Indonesia secara umum  tanpa  menentukan  sebuah  judul  film  horror  tertentu  pada  media  social  twitter  dengan  beberapa  kata kunci yaitu “ulasanfilmhorrorindonesia”, “#HororIndonesia”, “Review Film Horor” dan “#filmhororindonesia”.  Dimana  file  dataset  tersebut  disimpan  ke  dalam  format .CSV  (Comma-Separated Values) . Data yang dikumpulkan merupakan data yang dimulai  sejak 24 Desember 2019 sampai  dengan 14 Desember  2023.  Data  diproses  menggunakan  bahasa  pemrograman  Python  dengan  menggunakan  Google Colab sebagai editor teks. Python dikenal sebagai salah satu bahasa pemrograman yang sangat populer dan sering digunakan dalam berbagai aplikasi. Google Colab adalah sebuah platform editor teks berbasis web yang menyediakan  lingkungan  pengembangan  yang  memungkinkan  pengguna  untuk  menulis  dan  mengeksekusi kode  Python  secara  interaktif  dalam  browser  web  [10].  Gambar  2  merupakan  contoh  ulasan  nmasyarakat terhadap film horror di media social Twitter.
Gambar 2. Contoh ulasan masyarakat terhadap film horror pada Twitter

## Pre-Processing
Tahap pre-processing sangat krusial dalam text mining dan data mining karena berperan dalam seleksi data  pada  setiap  dokumen  yang  akan  diproses.  Hasil  dari  proses pre-processing memiliki  dampak  besar terhadap  data  yang  diolah  dan  bisa  memengaruhi  akurasi  klasifikasi  dokumen  [11].  Dalam  tahapan  ini, digunakan pustaka sastrawi yang memuat serangkaian aturan dan algoritma untuk melakukan pemrosesan teks dalam  bahasa  Indonesia.  Sastrawi  adalah  perpustakaan  yang  berfungsi  untuk  melakukan stemming ,  yaitu
OJS: https://ojs.unikom.ac.id/index.php/jamika
pengembalian kata ke bentuk dasarnya, menghilangkan stopword atau kata-kata umum yang tidak memiliki makna khusus, serta tokenisasi yang merupakan pemisahan teks menjadi kata-kata. Dalam bidang text mining maupun data mining tahapan preprocessing sangat berperan penting [10]. Berikut pada gambar 3 menunjukkan tahapan awal hingga akhir pre-processsing data.
Gambar 3. Tahapan Pre-Processing
Berikut proses pre-processing yang dilakukan: a. Cleaning Data
Dalam  proses  Pembersihan  Teks,  terdapat  beberapa  tahapan  yang  salah  satunya  adalah  tahap Case  Folding yang  melibatkan  proses  mengubah  dataset  menjadi  huruf  kecil  [10].  Contoh implementasi dari Case Folding adalah saat kata "Pocong" diubah menjadi "pocong", "HOROR" menjadi  "horor",  atau  "ANGKER"  menjadi  "angker".  Tahapan  ini  umumnya  diikuti  dengan penghapusan tanda baca seperti koma, titik, tanda tanya, tanda seru, serta penghapusan karakter non-huruf seperti angka, hashtag, URL situs web, dan spasi kosong.
b. Tokenization
Tokenisasi adalah langkah krusial dalam analisis leksikal  yang bertujuan untuk  memecah teks atau kalimat menjadi unit-unit kecil yang disebut dengan "token.". Token dapat berupa kata, frasa, atau karakter tergantung pada tingkat granularitas yang diinginkan [3]. Contoh tokenisasi pada kalimat  "Saya  sedang  belajar  pemrograman"  menjadi  "Saya",  "sedang",  "belajar"  dan "pemrograman".
c. Stopword Removal
Tahap stopword  removal bertujuan  untuk  menghapus  kata  yang  sering  muncul  namun  tidak terlalu  penting.  Menghilangkan  kata-kata  umum  yang  tidak  memberikan  kontribusi  signifikan terhadap  analisis.  Misalnya,  "bisa",  "pake",  "di".  Proses  ini  dilakukan  dengan  menggunakan library sastrawi yaitu StopwordRemoverFactory() [7]
d. Stemmed
Tahap  ini,  tujuannya  adalah  untuk  mengonversi  kata-kata  menjadi  bentuk  dasarnya  dengan menghapus imbuhan, awalan, dan akhiran. Proses ini dilakukan dengan bantuan library sastrawi [7]. Sebagai contoh, kalimat "Proses pengolahan teks sangat penting dalam analisis data." diubah menjadi "Proses olah teks penting analisis data.".
e. Normalization
Hasil dari kalimat yang telah dimodifikasi akan diteruskan ke tahap normalisasi kata, di mana kata-kata yang tidak baku akan diubah menjadi bentuk baku [7].
Dalam penelitian ini dilakukan proses pre-processing data , yaitu cleaning text , tokenization , stopword dan stemming serta normalization [12]. Tabel 1 menunjukan hasil pre-processing data yang telah dilakukan. Beberapa  contoh  opini  masyarakat  yang  mendukung  dan  menentang  film  horor  Indonesia  dipilih  sebagai sampel. Dapat diamati bahwa langkah-langkah pra-pemrosesan telah berfungsi sebagaimana mestinya untuk setiap tahapannya.
T ABEL 1 H ASIL P RE -P ROCESSING D ATA Ulasan Cleaning Tokenization Stop Removal Stemmed Normalized Cara gampang buat tau kalo film horor jelek bisa diliat marketing mereka gimana. Kalo masih pake gimmick KeSuRuPaN gini berarti filmnya jelek ya guys. Biasa kesurupannya waktu filmnya udah beres soalnya setan ngerti aturan buat ga berisik di bioskop cara gampang buat tau kalo film horor jelek bisa diliat marketing mereka gimana kalo masih pake gimmick kesurupan gini berarti filmnya jelek ya guys biasa kesurupannya waktu filmnya udah beres soalnya setan ngerti aturan buat ga berisik di bioskop ['cara', 'gampang', 'buat', 'tau', 'kalo', 'film', 'horor', 'jelek', 'bisa', 'diliat', 'marketing', 'mereka', 'gimana', 'kalo', 'masih', 'pake', 'gimmick', 'kesurupan', 'gini', 'berarti', 'filmnya', 'jelek', 'ya', 'guys', 'biasa', 'kesurupannya', 'waktu', 'filmnya', 'udah', 'beres', 'soalnya', 'setan', 'ngerti', 'aturan', 'buat', 'ga', 'berisik', 'di', 'bioskopfoldedhand slightskintone'] ['gampang', 'tau', 'kalo', 'film', 'horor', 'jelek', 'diliat', 'marketing', 'gimana', 'kalo', 'pake', 'gimmick', 'kesurupan', 'gini', 'filmnya', 'jelek', 'ya', 'guys', 'kesurupannya', 'filmnya', 'udah', 'beres', 'setan', 'ngerti', 'aturan', 'ga', 'berisik', 'bioskop'] ['gampang', 'tau', 'kalo', 'film', 'horor', 'jelek', 'liat', 'marketing', 'gimana', 'kalo', 'pake', 'gimmick', 'surup', 'gin', 'film', 'jelek', 'ya', 'guys', 'surup', 'film', 'udah', 'beres', 'setan', 'ngerti', 'atur', 'ga', 'berisik', 'bioskopfoldedhan dslightskintone'] gampang tahu kalau film horor jelek lihat marketing bagaimana kalau pakai gimmick surup gin film jelek ya guys surup film sudah beres setan ngerti atur gak berisik bioskop Gw anti film horor. Tapi kalo ini bisa dibicarakan lah ya. gw anti film horor tapi kalo ini bisa dibicarakan lah ya ['gw', 'anti', 'film', 'horor', 'tapi', 'kalo', 'ini', 'bisa', 'dibicarakan', 'lah', 'ya'] ['gw', 'anti', 'film', 'horor', 'kalo', 'dibicarakan', 'ya'] ['gw', 'anti', 'film', 'horor', 'kalo', 'bicara', 'ya'] gw anti film horor kalo bicara ya @direbahin Blm prnh ntn bioskop film horor:) takut bgt blm prnh ntn bioskop film horor takut bgt ['', 'blm', 'prnh', 'ntn', 'bioskop', 'film', 'horor', 'takut', 'bgt'] ['', 'blm', 'prnh', 'ntn', 'bioskop', 'film', 'horor', 'takut', 'bgt'] ['', 'blm', 'prnh', 'ntn', 'bioskop', 'film', 'horor', 'takut', 'bgt'] blm prnh ntn bioskop film horor takut bgt jujur gua takut banget film horor apa lagi setan cuman kalau ngeliat yang kesurupan begini tuh kayanya gua gk takut malah lucu WKKWKWKW KWKWKWKW KWK WKKWKWKW KWKWKWKW KWWK JADI MAU LIAT ORANG KESURUPAN jujur gua takut banget film horor apa lagi setan cuman kalau ngeliat yang kesurupan begini tuh kayanya gua gk takut malah lucu wkkwkwkwkw kwkwkwkwkw kkwkwkwk wkwkwkwkww k jadi mau liat orang kesurupan ['jujur', 'gua', 'takut', 'banget', 'film', 'horor', 'apa', 'lagi', 'setan', 'cuman', 'kalau', 'ngeliat', 'yang', 'kesurupan', 'begini', 'tuh', 'kayanya', 'gua', 'gk', 'takut', 'malah', 'lucu', 'wkkwkwkwkwkw kwkwkwkwkk wkwkwkwkwkwk wkwwk', 'jadi', 'mau', 'liat', 'orang', 'kesurupan'] ['jujur', 'gua', 'takut', 'banget', 'film', 'horor', 'setan', 'cuman', 'ngeliat', 'kesurupan', 'tuh', 'kayanya', 'gua', 'gk', 'takut', 'lucu', 'wkkwkwkwkwk wkwkwkwkwkkw kwkwkwkwkwkw kwwk', 'liat', 'orang', 'kesurupan'] ['jujur', 'gua', 'takut', 'banget', 'film', 'horor', 'setan', 'cuman', 'ngeliat', 'surup', 'tuh', 'kaya', 'gua', 'gk', 'takut', 'lucu', 'wkkwkwkwkwk wkwkwkwkwkkw kwkwkwkwkwkw kwwk', 'liat', 'orang', 'surup'] jujur gua takut banget film horor setan cuman ngeliat surup tuh kaya gua gk takut lucu wkkwkwkwk wkwkwkwk wkwkkwkwk wkwk wkwkwkww k liat orang surup kamu tipe yg suka nonton film horor atau romance? kamu tipe yg suka nonton film horor atau romance ['kamu', 'tipe', 'yg', 'suka', 'nonton', 'film', 'horor', 'atau', 'romance'] ['tipe', 'yg', 'suka', 'nonton', 'film', 'horor', 'romance'] ['tipe', 'yg', 'suka', 'nonton', 'film', 'horor', 'romance'] tipe yg suka nonton film horor romance

## Labeling
Pelabelan  data  adalah  tahap  di  mana  dataset  dikelompokkan  ke  dalam  kategori-kategori tertentu.  Ini merupakan langkah awal dalam pekerjaan terkait machine learning. Dalam analisis sentimen, fokus utamanya adalah mengelompokkan teks dalam kalimat atau dokumen ke dalam kategori positif atau negatif, serta menilai opini  yang  terkandung  dalam  teks  tersebut.  [13]  .  Setiap  tweet  dalam  file  CSV  dianalisis  sentimennya menggunakan TextBlob.  TextBlob sebuah perpustakaan  Python  yang  berurusan  dengan  informasi  teks  yang memberikan antarmuka pemrograman aplikasi (API) sederhana untuk mengakses aktivitas Pemrosesan Bahasa Alami seperti ekstraksi Frasa Nomina, penandaan Part-of-Speech (PoS) , analisis sentimen, dan lain-lain [14]. Iterasi dilakukan pada setiap tweet, dan berdasarkan nilai polaritasnya, tweet diberi label positif atau negatif. Total tweet yang dianalisis sebanyak 2283 data. Hasil akhirnya adalah jumlah tweet yang terklasifikasi sebagai positif atau negatif yang ditunjukkan pada tabel 2.
T ABEL 2 H ASIL L ABELLING D ATA Sentimen Jumlah Positif 1884 Negatif 399

## Feature Extraction (TF-IDF)
Tahap  ini  dikenal  sebagai  ekstraksi  fitur  atau  vektorisasi,  yang  merupakan  langkah  penting  dalam analisis teks. Proses ini mengonversi kata-kata menjadi representasi numerik, baik dalam bentuk integer atau float, tergantung pada algoritma yang digunakan dalam pembelajaran mesin. Dalam penelitian ini, dua teknik yang umum dan populer untuk vektorisasi teks adalah Count Vectorizer dan TF-IDF Vectorizer [3]. TF-IDF merupakan salah satu teknik untuk menghitung bobot dari setiap kata setelah proses Feature Extraction [15]. TF-IDF memiliki dua tahap utama. Tahap pertama adalah menghitung frekuensi kemunculan sebuah kata pada setiap dokumen. Tahap kedua adalah menghitung bobot term tersebut di seluruh dokumen. Proses  perhitungan  TF-IDF  memungkinkan  penilaian  seberapa  penting  suatu  kata  dalam  sebuah  dokumen dibandingkan dengan keberadaannya di seluruh koleksi dokumen [16]. Berikut merupakan identifikasi 10 kata teratas  yang  paling  sering  muncul.  Visualisasi  dilakukan  dengan  menggunakan  diagram  batang,  yang menampilkan kata-kata teratas pada sumbu x (kata) dan frekuensi kemunculan pada sumbu y (frekuensi) yang ditunjukkan pada gambar 4.
Proses  TF-IDF  menggunakan TfidfVectorizer dari scikit-learn untuk  mengonversi  teks  dari  kolom 'NORMALIZED'  menjadi  representasi  numerik  berdasarkan  bobot  kata-kata  yang  dihitung  menggunakan formula TF-IDF. Bobot kata tersebut kemudian digunakan sebagai fitur dalam algoritma Synthetic Minority Over-sampling  Technique  (SMOTE )  untuk  menangani  ketidakseimbangan  kelas  dalam  kasus  klasifikasi. SMOTE digunakan untuk membuat sampel sintetis dari kelas minoritas (oversampling) agar seimbang dengan kelas mayoritas dengan hasil yang ditunjukkan pada tabel 3.
T ABEL 3
H ASIL I MPLEMENTASI SMOTE Sebelum melakukan SMOTE Sesudah melakukan SMOTE Positif 1882 1882 Negatif 399 1882

## Pemodelan Support Vector Machine (SVM)
Algoritma Support  Vector  Machine  (SVM) didesain  untuk  menemukan hyperplane dengan  margin terbesar yang bisa memisahkan dua kelas data secara optimal. SVM adalah metode pembelajaran mesin yang menggunakan  fungsi-fungsi  linier  dalam  ruang  fitur  yang memiliki  dimensi  tinggi.  Metode  Support  Vector Machine  (SVM)  dikenal  karena  berbagai  keunggulan  yang  dimilikinya  dalam  melakukan  klasifikasi.  Salah satu keunggulannya adalah kemampuannya dalam memisahkan kelas data, terutama dalam ruang berdimensi tinggi.  SVM  efektif  dalam  menangani  kasus  di  mana  terdapat  banyak  variabel,  sementara  tetap  mampu mengatasi masalah overfitting. SVM juga dikenal mampu menangani kasus klasifikasi dengan jumlah sampel kecil  hingga  menengah,  serta  dapat  bekerja  baik  dalam  menangani  masalah  margin  yang  besar.  Proses pembelajaran  SVM  didasarkan  pada  teori  optimasi  dan  menerapkan  prinsip  pembelajaran  statistic  [17]. Tujuannya  adalah  menemukan hyperplane terbaik  yang  memiliki  margin  terbesar  di  antara  kelas  data, digunakan untuk memisahkan data dengan tingkat akurasi paling optimal. SVM menggunakan support vector untuk membangun hyperplane ini, yang memungkinkan pemisahan data dengan ketepatan tinggi antara kelas yang berbeda. SVM dengan kernel linear diinisialisasi dan dilatih menggunakan data latih yang telah diubah ke dalam representasi TF-IDF. Tahapannya yaitu melakukan pembuatan model klasifikasi sentimen dengan SVM.  Data  teks  dan  sentimen  diubah  menjadi  representasi  vektor  TF-IDF  dan  dilatih  menggunakan  SVM dengan  kernel  linear.  Model  yang  sudah  dilatih  disimpan  dalam  file  'SVM_classifier_24.pickle'  untuk digunakan di proses selanjutnya [7]. Jumlah data dengan sentiment positif atau negatif baik untuk data training dan data testing ditunjukkan pada tabel 4.
T ABEL 4 D ATA T RAINING T ESTING S UMMARY Setelah di Training Setelah di Testing Positif 1882 2102 Negatif 399 179

## Evaluasi
Beberapa metrik tersedia untuk menilai kualitas hasil penelitian suatu model klasifikasi. Dalam studi ini, evaluasi dilakukan menggunakan parameter seperti Akurasi, Presisi (Precision) , Recall , dan F1-Score [18]. Hal ini bertujuan untuk mengevaluasi sejauh mana hasil yang dihasilkan oleh model klasifikasi dan seberapa baik kualitas penelitian yang telah dikembangkan [19].
accuracy = (TP + TN) / (TP + TN + FP + FN) * 100 precission = (TP) / (TP + FP) * 100 recall = (TP) / (TP + FN) * 100 F1_score = 2 * (recall * precision) / (recall + precision)
Penilaian  performa  dilakukan  terhadap  sistem  analisis  sentimen  dan  hasil  analisis  sentimen  dari partisipan. Precision, Recall, dan F1-Score memberikan skor dari 0 hingga 1. Nilai yang lebih tinggi mendekati 1 menandakan hasil yang lebih baik dalam evaluasi [20]. Langkah terakhir dalam penelitian ini, yaitu evaluasi, apakah algoritma Support Vector Machine (SVM) merupakan pengklasifikasi teks yang baik  sehingga dapat memperoleh nilai akurasi yang tinggi pada analisis sentimen masyarakat terhadap film horror Indonesia. Proses evaluasi dilakukan menggunakan confusion matrix dengan melihat nilai kurasi eksperimen yang dilakukan.

## III. H ASIL DAN P EMBAHASAN
Pada  penelitian  ini,  dilakukan  analisis  sentimen  terhadap  opini  masyarakat  mengenai  film  horor Indonesia.  Pengolahan  data  dilakukan  menggunakan  Bahasa  pemrograman Python dan  teks  editor Google
Colaboratory .  Data  yang  digunakan  berasal  dari platform media  sosial  Twitter  dan  terdiri  dari  2281  data. Selanjutnya dilakukan preprocessing data, yaitu proses Cleaning Text, Tokenization, Stopword Removal dan Stemming serta normalization untuk  menghilangkan  noise  pada  data.  Data  tersebut  diklasifikasikan menggunakan textBlob menjadi opini positif dan negatif. Proses analisis dilakukan dengan mengekstraksi fitur dari teks menggunakan pendekatan Term Frequency-Inverse Document Frequency (TF-IDF) dengan bantuan TfidfVectorizer dari scikit-learn . Visualisasi dari hasil analisis berupa Word Cloud yang memperlihatkan tweet yang telah melalui tahap pre-processing , dimana gambar 5 merepresentasikan sentimen positif dan sentimen negatif.
Gambar 5. Word Cloud untu Sentimen Positif dan Negatif
Model  klasifikasi Support  Vector  Machine  (SVM) dengan  kernel  linear  diinisialisasi  dan  dilatih menggunakan data latih yang telah mengalami proses ekstraksi fitur TF-IDF. Setelah proses pelatihan, model digunakan  untuk  melakukan  prediksi  pada  data  uji,  dan  hasilnya  dievaluasi  menggunakan  beberapa  metrik evaluasi yang terdapat dalam Classification Report dari scikit-learn yang terlihat pada gambar 6. Tahap ini merupakan langkah awal yang penting dalam proses pengembangan model untuk analisis sentimen berbasis teks.

## Gambar 6. Model Performance Metrics
Selanjutnya mempersiapkan data teks untuk proses klasifikasi. Tahap ini mencakup transformasi teks ke  dalam  representasi  numerik  menggunakan  metode  TF-IDF  dari TfidfVectorizer .  Selanjutnya,  model klasifikasi Support  Vector  Machine  (SVM) diinisialisasi  dengan  beberapa  parameter  yang  telah  ditentukan. Proses pelatihan model SVM dilakukan dengan menggunakan data yang sudah diubah menjadi representasi TF-IDF  sebelumnya.  Setelah  model  dilatih,  hasilnya  disimpan  dalam  format  file pickle untuk  penggunaan selanjutnya  tanpa  perlu  melatih  ulang  model.  Performa  dari  model  klasifikasi  SVM  pada  gambar  7 menunjukkan  sumbu  x  ( horizontal )  merupakan  jumlah  iterasi cross-validation atau  " Runs "  yang  telah dilakukan, sedangkan sumbu y ( vertikal ) merupakan nilai akurasi atau F1 Score yang dihasilkan oleh model pada setiap iterasi tersebut dimana cross validation digunakan untuk untuk menguji efektivitas suatu model dengan melatihnya menggunakan sebagian data input dan mengujinya pada sebagian data input yang berbeda dan belum pernah digunakan sebelumnya.
Gambar 7. Grafik Performa Model SVM
Model klasifikasi Support Vector Machine (SVM) dengan kernel linear dibuat dan dilatih menggunakan data latih yang telah melalui proses vektorisasi sebelumnya. Model ini kemudian digunakan untuk melakukan prediksi sentimen pada data uji, yang telah diubah menjadi vektor menggunakan vektorisasi yang sama dengan data latih. Selanjutnya membuat sebuah list yang berisi kamus dari setiap baris dalam kolom 'NORMALIZED'
dan  nilai  prediksi  ( 'prediction_linear' ).  Proses  dimulai  dengan  inisialisasi  list  kosong  yang  disebut 'result_tweet' . Selanjutnya, dilakukan iterasi melalui indeks dari nilai prediksi ( 'prediction_linear' ). Pada setiap iterasi, dilakukan pengecekan nilai prediksi, jika nilainya adalah 1, maka sentimen hasilnya akan diidentifikasi sebagai  ' positive ',  sedangkan  jika  nilai  prediksinya  adalah  -1,  sentimen  hasilnya  akan  diidentifikasi  sebagai ' negative' .  Kamus  baru  dengan  kunci  'tweet'  yang  mengambil  nilai  dari  kolom  'NORMALIZED'  dan  kunci 'class' yang mengambil nilai dari prediksi, kemudian ditambahkan ke dalam list 'result_tweet' . Proses ini akan menghasilkan  list  kamus  yang  berisi  informasi  sentimen  hasil  prediksi  untuk  setiap  baris  dalam  kolom 'NORMALIZED'.
Lalu mengevaluasi kinerja suatu model klasifikasi yang memprediksi sentimen dari teks. Evaluasi ini melibatkan perhitungan nilai-nilai seperti akurasi ( Accuracy ), recall, F1 Score dan presisi ( Precision ). empat variabel  (TN,  TP,  FN,  FP)  mewakili  nilai  dari  setiap  kategori  dalam confusion  matrix ,  yaitu True  Negative (TN),  True  Positive  (TP),  False  Negative  (FN) dan False  Positive  (FP). Kemudian,  dilakukan  perhitungan persentase  dari  masing-masing  kategori  tersebut  terhadap  total  jumlah  data.  Visualisasi  yang  dihasilkan merupakan pie  chart dengan  label  masing-masing  kategori  dan  persentase  dari  masing-masing  kategori ditunjukkan pada gambar 8.
Gambar 8. Confusion Matrix
Untuk menghitung akurasi (accuracy) dari confusion matrix yang telah diberikan dari perhitungan yang dilakukan menggunakan nilai True Negative(TN) = 1869, False Negative (FN) = 166, False Positive (FP) = 233, dan True Positive (TP) = 13. Dalam kasus ini hasil yang didapat yaitu Accuracy 82.51%, Precision 5.28%, Recall 7.26%, F1 Score 6.12. Nilai presisi mengindikasikan seberapa tepat model dalam mengklasifikasikan data positif, sedangkan recall mengukur kemampuan model untuk menemukan kembali semua instance yang benar positif. Nilai F1-score mencerminkan keseimbangan antara presisi dan recall.   Ini  berarti model telah memprediksi dengan benar sekitar 82,51% dari total sampel yang diamati, hasil akurasi dihitung menggunakan rumus pada persamaan (1):
Accuracy = 𝑇𝑃+𝑇𝑁 𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁 (1)
Accuracy = 13+1869 13+1869+233+166
OJS: https://ojs.unikom.ac.id/index.php/jamika
Accuracy = 0.8251

## IV. K ESIMPULAN
Dalam  penelitian  ini,  berhasil  diciptakan  model  klasifikasi  Analisis  Sentimen  menggunakan  metode Support  Vector  Machine  (SVM) dengan  representasi  teks  berdasarkan Term  Frequency-Inverse  Document Frequency (TF-IDF) . Model ini memperoleh akurasi sebesar 82.51%, Precision 5.28%, Recall 7.26% dan F1 Score 6.12 dalam memprediksi sentimen dari data teks yang diobservasi. Penelitian ini memberikan pandangan berharga  bagi  para  pengambil  keputusan  terkait  pengembangan  industri  film,  menunjukkan  variasi  opini masyarakat terkait film horor Indonesia. Pengetahuan ini dapat menjadi pertimbangan bagi industri film dalam memahami  preferensi  dan  respons  masyarakat  terhadap  karya  film  horor  yang  dihasilkan.  Untuk pengembangan lebih lanjut, disarankan untuk melakukan eksplorasi lebih terhadap pemilihan fitur yang lebih optimal,  peningkatan  pada  proses  pembersihan  data,  serta  eksperimen  dengan  model  atau  parameter  yang berbeda guna meningkatkan performa model analisis sentimen pada data teks.

## U CAPA N T ERIMA K ASIH
Puji dan syukur peneliti panjatkan kepada Tuhan Yang Maha Esa atas limpahan rahmat dan  karunia- Nya yang telah memungkinkan penelitian dengan judul “Analisis Sentimen Opini Masyarakat terhadap Film Horor  Indonesia  Menggunakan  Metode Support  Vector  Machine  (SVM) dan Term  Frequency-Inverse Document  Frequency (TF-IDF) dapat  diselesaikan.  Peneliti  juga  ingin  mengucapkan  terima  kasih  kepada Institut Teknologi Telkom Purwokerto atas dukungan yang diberikan dalam menyelesaikan penelitian ini.
D AFTAR P USTAKA
[1] Razaq. Thaariq, “Analisis Sentimen Review Film Menggunakan Naive Bayes Classifier Dengan Fitur TF-IDF,” Bandung, Apr. 2023.
[2] Y.  Nurtikasari,  Syariful  Alam,  and  Teguh  Iman  Hermanto,  “Analisis  Sentimen  Opini  Masyarakat Terhadap  Film  Pada  Platform  Twitter  Menggunakan  Algoritma  Naive  Bayes,” INSOLOGI:  Jurnal Sains dan Teknologi , vol. 1, no. 4, pp. 411–423, Aug. 2022, doi: 10.55123/insologi.v1i4.770.
[3] M. Alfi, R. Reynaldhi, and Y. Sibaroni, “Analisis Sentimen Review Film pada Twitter menggunakan Metode Klasifikasi Hybrid SVM, Naïve Bayes, dan Decision Tree.”
[4] M.  Asjad  Adna  Jihad  and  W.  Astuti,  “Analisis  Sentimen  Terhadap  Ulasan  Film  Menggunakan Algoritma Random Forest.”
[5] A.  Z.  Amrullah,  A.  Sofyan  Anas,  M.  Adrian,  and  J.  Hidayat,  “Analisis  Sentimen  Movie  Review Menggunakan Naive Bayes Classifier Dengan Seleksi Fitur Chi Square,” Jurnal , vol. 2, no. 1, 2020, doi: 10.30812/bite.v2i1.804.
[6] N. Fitriyah, B. Warsito, D. Asih, and I. Maruddani, “ANALISIS SENTIMEN GOJEK PADA MEDIA SOSIAL TWITTER DENGAN KLASIFIKASI SUPPORT VECTOR MACHINE (SVM),” JURNAL GAUSSIAN , vol. 9, no. 3, pp. 376–390, 2020, [Online]. Available: https://ejournal3.undip.ac.id/index.php/gaussian/
[7] V. W. D. Thomas and F. Rumaisa, “Analisis Sentimen Ulasan Hotel Bahasa Indonesia Menggunakan Support Vector Machine dan TF-IDF,” JURNAL MEDIA INFORMATIKA BUDIDARMA , vol. 6, no. 3, p. 1767, Jul. 2022, doi: 10.30865/mib.v6i3.4218.
[8] O. I. Gifari, M. Adha, I. Rifky Hendrawan, F. Freddy, and S. Durrand, “Analisis Sentimen Review Film  Menggunakan  TF-IDF  dan  Support  Vector  Machine,” JIFOTECH  (JOURNAL  OF INFORMATION TECHNOLOGY , vol. 2, no. 1, 2022.
[9] D.  R.  Alghifari,  M.  Edi,  and  L.  Firmansyah,  “Implementasi  Bidirectional  LSTM  untuk  Analisis Sentimen Terhadap Layanan Grab Indonesia,” Jurnal Manajemen Informatika (JAMIKA) , vol. 12, no. 2, pp. 89–99, Sep. 2022, doi: 10.34010/jamika.v12i2.7764.
[10] R.  Wati,  S.  Ernawati,  and  H.  Rachmi,  “Pembobotan  TF-IDF  Menggunakan  Naïve  Bayes  pada Sentimen Masyarakat Mengenai Isu Kenaikan BIPIH,” Jurnal Manajemen Informatika (JAMIKA) , vol. 13, no. 1, pp. 84–93, Apr. 2023, doi: 10.34010/jamika.v13i1.9424.
[11] A. Brijith, “Data Preprocessing
for
Machine Learning.” [Online]. Available: https://www.researchgate.net/publication/375003512
[12] K.  Maharana,  S.  Mondal,  and  B.  Nemade,  “A  review:  Data  pre-processing  and  data  augmentation techniques,” Global  Transitions  Proceedings ,  vol.  3,  no.  1,  pp.  91–99,  Jun.  2022,  doi: 10.1016/j.gltp.2022.04.020.
[13] F. Fridom Mailo et al. , “Analisis Sentimen Data Twitter Menggunakan Metode Text Mining Tentang Masalah Obesitas di Indonesia,” 2019.
[14] D. Hazarika, G. Konwar, S. Deb, and D. J. Bora, “Sentiment Analysis on Twitter by Using TextBlob for  Natural  Language  Processing,”  in Proceedings  of  the  International  Conference  on  Research  in Management & Technovation 2020 , PTI, Jan. 2020, pp. 63–67. doi: 10.15439/2020km20.
[15] S.  A.  Helmayanti,  F.  Hamami,  and  R.  Y.  Fa’rifah,  “PENERAPAN  ALGORITMA  TF-IDF  DAN NAÏVE BAYES UNTUK ANALISIS SENTIMEN BERBASIS ASPEK ULASAN APLIKASI FLIP PADA GOOGLE PLAY STORE,” Jurnal Indonesia : Manajemen Informatika dan Komunikasi , vol. 4, no. 3, pp. 1822–1834, Sep. 2023, doi: 10.35870/jimik.v4i3.415.
[16] S.  Khairunnisa,  A.  Adiwijaya,  and  S.  Al  Faraby,  “Pengaruh  Text  Preprocessing  terhadap  Analisis Sentimen  Komentar  Masyarakat  pada  Media  Sosial  Twitter  (Studi  Kasus  Pandemi  COVID-19),” JURNAL  MEDIA  INFORMATIKA  BUDIDARMA ,  vol.  5,  no.  2,  p.  406,  Apr.  2021,  doi: 10.30865/mib.v5i2.2835.
[17] “Penggunaan_Algoritma_Support_Vector_Machine_SVM_Un”.
[18] E.  Hokijuliandy,  H.  Napitupulu,  and  F.  Firdaniza,  “Analisis  Sentimen  Menggunakan  Metode Klasifikasi Support Vector Machine (SVM) dan Seleksi Fitur Chi-Square”.
[19] M. Fadli and R. A. Saputra, “KLASIFIKASI DAN EVALUASI PERFORMA MODEL RANDOM FOREST  UNTUK  PREDIKSI  STROKE  Classification  And  Evaluation  Of  Performance  Models
Random Forest For Stroke Prediction,” vol. 12, [Online]. Available:
http://jurnal.umt.ac.id/index.php/jt/index
[20] M. Azhari, Z. Situmorang, and R. Rosnelly, “Perbandingan Akurasi, Recall, dan Presisi Klasifikasi pada  Algoritma  C4.5,  Random  Forest,  SVM  dan  Naive  Bayes,” JURNAL  MEDIA  INFORMATIKA BUDIDARMA , vol. 5, no. 2, p. 640, Apr. 2021, doi: 10.30865/mib.v5i2.2937.