## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472

## Klasifikasi Emosi Pada Data Text Bahasa Indonesia Menggunakan Algoritma BERT, RoBERTa, dan Distil-BERT
Faishal Basbeth * , Dhomas Hatta Fudholi
Fakultas Teknologi Industri, Program Studi Informatika, Universitas Islam Indonesia, Yogyakarta, Indonesia Email: 1,* faishal.basbeth@students.uii.ac.id, 2 hatta.fudholi@uii.ac.id Email Penulis Korespondensi: faishal.basbeth@students.uii.ac.id
Abstrak− Studi terdahulu dalam konteks analisis sentimen telah dilakukan dalam berbagai jenis domain teks, termasuk ulasan produk, film, berita, dan opini. Analisis sentimen berfokus untuk mengenali valensi orientasi positif atau negatif. Dalam analisis sentimen, hal yang kurang dieksplorasi namun dibutuhkan dalam analisis adalah pengenalan jenis emosi / klasifikasi emosi. Penelitian ini dilakukan memiliki kontribusi pada pengetahuan penerapan distilBERT terhadap data Bahasa Indonesia yang masih tergolong baru dan keberhasilan fine-tuning dan hyperparameter-tuning yang telah diterapkan pada distilBERT dengan berbagai  macam  perbandingan  metode.  Klasifikasi  emosi  dapat  membantu  memberikan  keputusan  yang  tepat  pada  sebuah perusahaan, pemerintahan, dan strategi pemasaran. Klasifikasi emosi menjadi bagian dari analisis sentimen yang memiliki label emosi lebih detail dan mendalam. Dari berbagai urgensi tersebut, penelitian ini membangun dan melakukan fine-tuning model distilBERT  untuk  membantu  mengklasifikasi  emosi  dari  kalimat  bahasa  Indonesia.  Klasifikasi  emosi  pada  data  bahasa Indonesia  menggunakan  model  distilBERT  masih  tergolong  baru.  Penelitian  ini  terdiri  dari 4  langkah  :  pengumpulan  data, preprocessing data, hyperparameter-tuning dan fine-tuning, dan perbandingan hasil dari berbagai model yang telah diterapkan pada  penelitian  ini  :  BERT,  RoBERTa,  dan  distilBERT.  DistilBERT  mendapatkan  hasil  akurasi  training  tertinggi  =  94,76, akurasi testing tertinggi didapat oleh distilBERT-frezee = 86,67, dan f1-score tertinggi didapat oleh distilBERT-frezee = 87. Pada  distilBERT-frezee  penyebab  utama  model  mendapatkan  hasil  yang  signifikan  adalah  hyperparameter  dropout  yang menurunkan nilai f1-socre sebanyak 3 jika tidak digunakan, dan penyebab kedua adalah frezee-layer yang menurunkan nilai f1-score sebanyak 1 jika tidak digunakan.
Kata Kunci: Analisis Sentimen; Klasifikasi Emosi; DistilBERT; Fine-Tuning; Bahasa Indonesia
Abstract− Previous studies in the context of sentiment analysis have been conducted in various types of text domains, including product reviews, movies, news, and opinions. Sentiment analysis focuses on recognizing the valence of positive or negative orientations.  In  sentiment  analysis,  something  that  is  less  explored  but  is  needed  in  analysis  is  the  recognition  of  types  of emotions / classification of emotions. This research has contributed to knowledge of the applicationof distilBERT to Indonesian Language data which is still relatively new and the success of fine-tuning and hyperparameter-tuning that has been applied to distilBERT  with  various  comparison  methods.  Emotion  classification  can  help  provide  the  right  decisions  in  a  company, government, and marketing strategy. Emotion classification is part of sentiment analysis which has more detailed and in-depth emotion labels. From these various urgencies, this research builds and fine-tuning distilBERT model to help classify emotions from an Indonesian sentence. Emotion classification in Indonesian language data using the distilBERT model is still relatively new.  This  research  consists  of  4  steps:  data  collection,  data  preprocessing,  hyperparameter-tuning  and  fine-tuning,  and comparison  of  results  from  various  models  that  have  been  applied  in  this  research:  BERT,  RoBERTa,  and  distilBERT. DistilBERT got the highest training accuracy = 94.76, the highest testing accuracy was obtained by distilBERT-frezee = 86.67, and the highest f1-score was obtained by distilBERT Modif = 87. In distilBERT-frezee the main cause of the model getting significant results is the dropout hyperparameter which reduces the f1-score value by 3 if it is not used, and the second cause is the freeze-layer which reduces the f1-score value by 1 if it is not used.
Keywords : Sentiment Analysis; Emotion Classification; DistilBERT; Fine-Tuning; Indonesian Language

## 1. PENDAHULUAN
Analisis sentimen adalah bagian penelitian dalam bidang penambangan data. Analisis tersebut masuk ke dalam ranah  komputasi  opini  dan  subjektif  teks.  Analisis  sentimen  yang  berfokus  untuk  mengenali  valensi  orientasi positif  atau  negatif,  memiliki  keterbatasan.  Dalam  konteks  pembelajaran  yang  lebih  mendalam  area  tersebut kurang  mengeksplorasi  pengenalan  jenis  emosi  dan  kekuatan  atau  intensitasnya.  Klasifikasi  emosi  dapat dimasukkan ke dalam analisis sentimen yang mencari dan mengekstrak emosi halus dari ucapan/suara, gambar, dan teks [1]. Klasifikasi emosi ini dapat mengungkapkan opini masyarakat terkait suatu isu dalam pesan berbasis teks. Pengamatan terhadap opini publik tersebut sangat berharga untuk mengevaluasi produk, layanan, dan berita suatu lembaga dan perusahaan [2]. Seperti ulasan dari suatu produk, pelayanan dalam hotel, dan berita penting yang ada dalam  negara. Salah satu  faktor penyebab  yang dapat memberikan  nilai baik pada perusahaan adalah sebuah  penilaian  yang  diungkapkan  oleh  kustomer  pada  media  sosial  dengan  berbasis  teks.  Mengarah  pada klasifikasi emosi berbasis teks, maka dibutuhkan sebuah data teks. Ada banyak bahasa yang digunakan di dunia, dan pada penelitian ini menggunakan Bahasa Indonesia. Bahasa Indonesia termasuk dalam 10 besar bahasa yang paling banyak digunakan di dunia, seperti kalimat yang digunakan dalam media sosial. Pengembangan penelitian dalam membangun model klasifikasi emosi Bahasa Indonesia termasuk lambat [3]. Beberapa penelitian klasifikasi emosi  Bahasa  Indonesia  menggunakan  model  BERT  [3]  [4],  model  RoBERTa  [5],  dan  model  ALBERT  [3]. Berdasarkan  hasil  reviu  literatur,  model  distilBERT  masih  jarang  dieksplorasi  dalam  domain  klasifikasi  emosi Bahasa Indonesia.

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
Dengan adanya berbagai perkembangan teknologi informasi yang modern seperti Deep Learning, semakin banyak pula penelitian yang dilakukan pada domain klasifikasi emosi. Penelitian  [6] mengatakan bahwa model deep learning yang sering digunakan untuk membangun model klasifikasi emosi adalah LSTM pada tahun 2015, BERT  pada  tahun  2018,  ALBERT  dan  RoBERTa  pada  tahun  2019.  LSTM  adalah  jenis  RNN  yang  memiliki kinerja yang lebih baik dalam klasifikasi teks. Penelitian [7] memperkenalkan model baru yaitu BLSTM-2Pooling dan  BLSTM-2DCNN  yang  memperpanjang  model  BLSTM-2Pooling.  Kedua  model  tersebut  dapat  menahan dimensi langkah waktu dan juga dimensi vektor. Hasil BLSTM-2DCNN lebih maksimal dari BLSTM-2Pooling. LSTM masih dirasa sulit untuk memahami semantik dari data teks [8]. Dengan kekurangan tersebut, penelitian [9] yang  berjudul  “BERT:  Pre-training  of    Deep  Bidirectional  Transformers  for  Language  Understanding”, mengatakan bahwa BERT termasuk model representasi berbasis fine-tuning method pertama yang mencapai hasil state-of-the-art untuk tugas NLP. Kelebihan dari BERT adalah mengurangi sekuensial yang searah kiri ke kanan seperti  RNN  Dengan  menggunakan  dua  arah  (bidirectional)  dan  arsitektur  Transformer,  penelitian  [10] Menganalisa bahwa lapisan terakhir / layer 9-12 pada BERT mendapatkan nilai eror terendah dari layer 1-8 dan proses pre-trained dapat secara signifikan  meningkatkan  kinerja model. Penerapan  model BERT juga  memiliki keunggulan  dalam  pengelolaan  daripada  model  tradisional  [11].  BERT  memiliki  model  “Masked  Language Model” (MLM) dan “Next Sentece Prediction” (NSP). MLM dan NSP bertujuan untuk mengurangi kendala dalam memahami  makna  semantik  seperti  LSTM.  Penelitian  [12]  menjelaskan  bahwa  BERT  secara  signifikan  masih kurang  terlatih,  dan  penelitian  [12]  memberikan  pembaruan  pada  BERT  dengan  model  bernama  RoBERTa. Penelitian [13] membandingkan hasil model LSTM, BERT, dan RoBERTa. Dari tiga model tersebut, RoBERTa mendapatkan  hasil  terbaik  [14].  Akan  tetapi  model  RoBERTa  membutuhkan  waktu  training  model  yang  lebih lama, memiliki lebih banyak data, dan tidak menggunakan model NSP seperti BERT [12]. Model RoBERTa masuk dalam  model  yang  berkomputasi  mahal  dan  memiliki  waktu  training  model  yang  lebih  lama  [12].  Dengan kekurangan tersebut, Penelitian [15] membuat model baru bernama “ALBERT” yang berfungsi untuk mengatasi masalah dalam pembangunan model yang memiliki kekurangan/keterbatasan GPU/TPU dan waktu training model yang  lama.  Model  ALBERT  menggunakan  model  block  attention,  memiliki  parameter  yang  lebih  sedikit  dari BERT dan RoBERTa, memiliki hasil f1-score yang lebih baik dari BERT, dan kecepatan training model lebih baik dari BERT dan RoBERTa. Dari munculnya model ALBERT dengan kelebihan utama training model dengan cepat, tetapi  pada  penelitian  [16]  menjelaskan  pada  hasil  perbandingan  model  ALBERT  dan  distilBERT,  distilBERT mendapatkan  hasil  f1-score  lebih  baik  dari  ALBERT.  distilBERT  sendiri  juga  termasuk  model  yang  memiliki kelebihan  :  pengurangan  sebesar  40% di  ukuran  model,  penaikan  kecepatan  60%,  dan pencapaian  kemampuan hingga  97%  dalam  kemampuan  pemahaman  bahasa  [17].  Pada  Penelitian  [18]  menjelaskan  bahwa  model distilBERT  mendapatkan  hasil  f1-score  terbaik  dari  model-model  lainnya.  Penelitian  [4]  yang  menggunakan model IndoBERT pada klasifikasi fake-news Bahasa Indonesia menjelaskan bahwa model tersebut menghasilkan hasil  overfitting,  dan  mengatakan  bahwa  model  distilBERT  dapat  mengatasinya.  Penelitian  [19]  menjelaskan bahwa  (distilbert-base-uncased)  meskipun  memiliki  sedikit  lapisan  dan  parameter,  distilBERT  unggul  dalam semua hal lainnya dalam algoritma Transformer.
Pada  tahun  2023,  penelitian  [2]  memperkenalkan  penelitian  baru  tentang  analisis  sentimen,  penelitian tersebut  mengusulkan  klasifikasi  dalam  bentuk  hybrid  analisis  sentimen,  memanfaatkan  gabungan  BERT  dan variannya untuk melatih embedding. Data yang didapat diolah dalam berbagai macam preprocessing seperti data cleaning, case folding, normalization, steaming, dan stopwords. Penelitian [2] memiliki 14975 data teks dengan 2 label  yaitu  positif  dan  negatif,  label  positif  sebesar  66%  dan  label  negatif  sebesar  34%.  Pada  penelitian  ini menghasilkan  model  DistilBERT  +  BiLSTM-TCN  dengan  berbagai  proses  seperti  data  teks  diolah  dan mendapatkan kata yang berbentuk vektor, lalu diolah dengan lapisan tersembunyi yang dimiliki, dan mendapatkan hasil  pooler  /  token  klasifikasi  dan  diproses  lebih  lanjut  oleh  fungsi  aktifasi  tanh.  Kemudian  output  pooler dilanjutkan  dengan  proses  Bi-LSTM  dan  TCN,  Bi-LSTM  dan  TCN  dieksploitasi  untuk  meningkatkan  prediksi sentimen dan nilai f1-score yang didapat adalah 82.
Pada penelitian [20] juga memperkenalkan penelitian baru tentang analisis senteimen, penelitian tersebut mengusulkan model baru untuk meningkatkan kinerja language model / model bahasa yang disempurnakan dengan jaringan  syaraf,  dan  mengevaluasi  dengan  3  model  seperti  model  BERT,  RoBERTa,  dan  distilBERT.  analisis sentimen  yang  dibangun  memiliki  2  label  false-rumor  638  dan  true  rumor  1067,  pada  penelitian  ini  distilbert mendapatkan nilai f1-score 86. Berdasarkan penelitian mengenai analisis sentimen yang menggunakan distilBERT yang masih jarang dilakukan dan mendapatkan nilai yang cukup bagus, maka pada penelitian ini akan membuat model distilBERT dengan perbedaan menggunakan beberapa fine-tuning yang digunakan.
Dalam pembangunan model distilBERT klasifikasi emosi Bahasa Indonesia pada penelitian ini dilakukan dengan  proses  fine-tuning,  karena  fine-tuning  dapat  secara  signifikan  meningkatkan  kinerja  model  [10].  Pada proses fine-tuning dalam penelitian ini ada 2 proses pelatihan : proses pelatihan pertama dilakukan  frezee-layer dan  hanya  menggunakan  layer  klasifikasi  dalam  pemodelan,  disini  dibutuhkan  pengaturan  hyperparameter kernel_initializer agar mendapatkan parameter awalan secara acak, bias_initializer zeros agar memiliki nilai bias 0, dan dropout untuk mencegah overfitting pada model. Proses pelatihan pertama digunakan untuk manambahkan parameter baru pada layer klasifikasi tentang data Bahasa Indonesia [21], karena pada model distilBERT masih belum memiliki bobot pada data Bahasa Indonesia. Proses pelatihan kedua dilakukan menggunakan semua layer

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
yang ada pada distilBERT dan layer yang telah diperbaharui. Batasan masalah yang digunakan pada penelitian ini hanya menggunakan 5 label : Fear, Anger, Sadness, Love, Happy, dan hanya menggunakan klasifikasi single label.
Dari  berbagai  urgensi  tersebut,  pada  penelitian  ini  dibangun  model  distilBERT  untuk  membantu mengklasifikasikan emosi dari sebuah kalimat Bahasa Indonesia. Penelitian ini memberi dua luaran utama, yaitu model klasifikasi, dan karya ilmiah yang dipublikasikan pada jurnal Sinta 3. Model klasifikasi emosi di bangun dengan  data  Bahasa  Indonesia  menggunakan  distilBERT.  Arsitektur  yang  dibangun  memberikan  proses  fine- tuning dan hyperparameter-tuning, yang akan dibandingkan kualitasnya dengan model BERT lainnya.

## 2. METODOLOGI PENELITIAN

## 2.1 Tahapan Penelitian
Penelitian ini memiliki beberapa tahapan dalam metode penelitian. Tahapan penelitian dapat dilihat pada Gambar 1.  Gambar  1  menunjukkan  tahapan  Metode  penelitian  yang  dilakukan  dimulai  dari  pengumpulan  data, preprocessing  data,  pemodelan  (BERT,  RoBERTa,  distilBERT),  Pelatihan  (BERT,  RoBERTa,  distilBERT), hingga matriks evaluasi. Pengambilan data menjelaskan tantang sumber data yang digunakan. Preprocessing data menjelaskan  tentang  pengelolahan  data  agar  dapat  dengan  mudah  digunakan  dalam  pemodelan.  Pemodelan menjelaskan tentang 3 model yang digunakan dalam penelitian ini dan diolah pada kasus klasifikasi emosi. Matriks Evaluasi menjelaskan tentang evaluasi dari model untuk melihat kualitas dari model yang telah di proses.

## Gambar 1. Alur Metodologi Penelitian

## 2.2 Pengumpulan Data
Pada penelitian ini, data yang digunakan berasal dari indo4B [3] yang diambil dari situs Twitter. Twitter adalah situs  yang  digunakan  untuk  mencari  informasi  sosial  seperti  berita  terkini  dan  opini  sosial.  Informasi  dari microblogging-twitter termasuk ke dalam konten yang kaya akan berbagai kalimat. Maka dari itu pada penelitian ini menggunakan sebuah data teks dari Twitter. Label emosi yang akan diklasifikasikan pada penelitian ini adalah Fear, Anger, Sadnes, Love, dan Happy. Label emosi yang digunakan mengacu kepada penelitian Shaver. Analisis emosi menggunakan leksikon emosi untuk fitur klasifikasi. Dasar leksikon adalah keseluruhan kata terkecil yang terdapat pada bahasa, dan rata-rata analisis emosi pada Bahasa Indonesia bukan berbasis leksikon. Ada berbagai macam leksikon emosi pada Bahasa Inggris, namun hanya ada satu leksikon emosi untuk Bahasa Indonesia yang dikembangkan oleh Shaver, pada penelitian [22] dan penelitian [3] juga menggunakan label emosi yang mengacu pada penelitian Shaver,  dan pada pelabelan data ada 2 ahli bahasa yang diminta untuk melabeli setiap data [22]. Maka dari itu pada penelitian ini menggunakan label emosi yang mengacu pada penelitian Shaver.

## 2.3 Preprocessing Data
Preprocessing adalah tahap mendasar dari aplikasi deep learning, yang berdampak signifikan terhadap kinerja deep learning. Untuk mendapatkan sebuah model yang tepat diperlukan tahap preprocessing. Preprocessing pada data text ini menggunakan cara penghapusan simbol / filtering (@username, retweet, #hastags, emoticon, URL), case folding : membuat sebuah huruf pada kata menjadi huruf kecil, tokenization : membuat sebuah kata menjadi sebuah token, steaming : mengubah kata yang berimbuhan menjadi kata dasar, slangword : mengubah kata singkatan atau kata yang tidak jelas dan juga bahasa gaul menjadi kata yang baku, whitespace : menghapus spasi, dan stopword : menghapus kata penghubung [23]. Gambar 2 menunjukkan urutan tahap preprocessing. Pada preprocessing akhir, akan mengubah label menjadi model one hot vector.

## Gambar 2. Urutan Tahap Preprocessing

## 2.4 Algoritma BERT
BERT pertama dikenalkan pada penelitian [9]. BERT adalah representasi model berbasis fine-tuning pertama yang mencapai hasil state-of-the-art untuk tugas NLP [10]. BERT adalah model dengan pembelajaran dua arah yang bertujuan untuk mempelajari hubungan kontekstual antar kata menggunakan arsitektur Transformer. Input yang digunakan  dalam  model  BERT  adalah  sebuah  kalimat  yang  di  dirubah  menjadi  sebuah  vector  per  kata  dalam kalimat tersebut, biasa disebut token. Token pada model BERT memiliki model token embeddings yang berbeda
Start Pengumpulan Data Preprocessing Data Model BERT, RoBERTa, distilBERT Pelatihan  BERT, RoBERTa, distilBERT Matriks Evaluasi End Stopword Whitespace Slangword Steaming Tokenizing Filtering Casefolding

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
pada transfomer, yaitu dengan menggunakan Possisional Embeddings untuk mewakili posisi token dalam urutan. Token pertama setiap urutan adalah token klasifikasi khusus [CLS], diikuti oleh token dari teks pertama, lalu token pemisah  [SEP],  setelah  itu  token  teks  kedua,  dan  diulang  sampai  selesai  [24].  Setelah  token  terbentuk,  token dimasukkan kedalam encoder, pada proses encoder ada (multi-head-attention dan add-norm) dan (feed-forward dan  add-norm)  [9].  Multi-head-attention  berguna    untuk  membantu  encoder  untuk  fokus  pada  suatu  kata  dan melihat konteks kata secara keseluruhan dari input  [25]. BERT memiliki 12 lapisan encoder dan menggunakan fungsi aktifasi softmax [9], fungsi aktifasi adalah distribusi probabilitas dari hasil kerugian  [26]. Fungsi aktifasi softmax  memiliki  atribut z i ,  atribut z i adalah  distribusi  output  dari z i dan  memiliki  atribut Z j ,  atribut Z j juga termasuk  dari  hasil  distribusi  output Z j .  Fungsi  aktifasi  softmax  dapat  dilihat  di  persamaan  1,  Gambar  3 menunjukkan gambaran umum pada model BERT.
p i = exp (zi) ∑ exp(Zj) j=1 (1)
Gambar 3. Gambaran Umum Model BERT
Pada model BERT tidak menggunakan model bahasa tradisional dari kiri ke kanan, tetapi menggunakan 2 arah dari kiri ke kanan dan kanan ke kiri. Untuk dapat merepresentasikan dua arah ini bisa digunakan dengan cara Masked language model (MLM). MLM hanya menutupi token input secara acak 15% untuk prediksi, jika token ke i dipilih, akan diubah menjadi token [MASK] 80%, token acak sebanyak 10%, token yang tidak diubah 10%. Token  yang  tidak  diubah  digunakan  untuk  mengatasi  kelemahan  pada  fase  fine-tuning,  karena  token  [MASK] hanya digunakan saat pre-training. Pada cara berikutnya digunakan model next sentence prediction (NSP), untuk memahami hubungan antara kalimat A dan kalimat B. 50% dari kalimat B adalah label IsNext (kalimat sebenarnya berikutnya) dan 50% dari kalimat B diberi label NotNext (kalimat acak dari corpus) [9]. Pada loss function BERT menggunakan 3 macam loss function : masked language modelling loss (MLML), next sentence prediction loss (NSPL), dan cross entropy. Cross entropy berfungsi untuk mengukur  perbedaan antara 2 distribusi probabilitas untuk serangkaian peristiwa / variabel acak. Setelah loss dihitung maka dilakukan backpropagation pada model BERT.  MLML  dapat  dilihat  di  persamaan  2  (MLML  memiliki  atribut x\Mx ,  adalah  data  yang  mewakili  versi bertopeng dari x dan memiliki atribut Mx yang mewakili kumpulan posisi token bertopeng pada x), NSPL dapat dilihat di persamaan 3 (NSPL memiliki atribut d ∈ {1,0} , dimana d = 1 yang menyatakan, apakah kalimat tersebut berurutan / tidak), cross entropy dapat dilihat di persamaan 4 (cross entropy memiliki atribut ti dan S i , dimana ti dan S i adalah probabilitas dari hasil klasifikasi model).
L MLM (x) = − 1 ⌊Mx⌋ ∑ logP i∈Mx (xi/x\Mx) (2) L NSP (x,y) = −logP(d/x, y)
(3)
L ce =   ∑ ti i ∗ log (S i ) (4)

## 2.5 Algoritma RoBERTa
Munculnya model RoBERTa terinpirasi setelah keluarnya model BERT pada penelitian [9]. Pada penelitian [12] melakukan  beberapa perubahan  pada  proses  pre-training  untuk  meningkatkan  kinerja  model.  RoBERTa  adalah pendekatan pre-training BERT yang dioptimalkan dengan kuat, dengan modifikasi pada hyperparameter dan word embedding. Input yang digunakan sama dengan model BERT tetapi pada model RoBERTa tidak menggunakan Segment  Embeding  (token_type_ids).  Model  RoBERTa  juga  tidak  menggunakan  NSP,  dan  pada  MLM  model RoBERTa menggunakan masking dinamis. RoBERTa memiliki kelebihan data yang kaya, data BOOKS + Wiki 16GB dan  additional data 160GB. Selain itu  step  pre-training  dilakukan lebih lama,  mulai 100k, 300k, sampai 500k. Setiap step training memiliki peningkatan hasil.

## 2.6 Algoritma DistilBERT
DistilBERT  dalah  teknik  bagaimana  membuat  model  BERT  menjadi  lebih  kecil,  tetapi  memiliki  kualitas  yang serupa dengan model yang besar, distilBERT dapat diistilahkan seperti 2 model yang berjalan yaitu model guru

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
dan  model siswa,  model  guru adalah  model  yang besar dan dilatih dengan berbagai  macam  fitur  yang lengkap seperti dasarnya (model yang telah dilatih sebelumnya). Model siswa adalah model yang menyaring pengetahuan model  guru  dan  meneruskan  untuk  melatih  jaringan  siswa  agar  sesuai  dengan  hasil  model  guru  dan  menjaga validitas  hasil,  model  siswa  menggunakan  jenis  pelatihan  distillation.  Model  siswa  juga  menghapus  sementara pada fitur  token-type-embedding, pooler,  dan next sentence prediction [17]. Gambar 4 menunjukkan gambaran umum pada model distilBERT.

## Gambar 4. Gambaran Umum Model DistilBERT
Pada Gambar 4 model guru dan siswa di training brersama, model guru memiliki 12 lapisan encoder dan model siswa mengambil ½ bagian dari 12 encoder guru yang terbaik antara lapisan encoder 1 dan 2, 3 dan 4, dst. Pada model guru menghasilkan 1 prediksi yang disebut soft label dan pada model siswa menghasilkan 2 prediksi yang disebut soft prediction dan hard prediction. soft label digunakan untuk label kebenaran pada model siswa dengan  prediksi  soft  prediction.  hard  predictions  adalah  prediksi  dari  model  siswa  yang  ditajamkan.  nilai tertingginya adalah 1 dan yang lainnya dibekukan menjadi 0, pada  hard prediction menghitung prediksi dengan ground truth.
DistilBERT  menggunakan  fungsi  aktifasi  softmax  temperature  (T)  dimana  T  mengontrol  kelancaran distribusi output, Pada model guru diberikan T>1 untuk  hasil soft label, pada model siswa diberikan T>1 untuk hasil soft prediction dan pada model siswa diberikan T=1 untuk hasil hard prediction. Pada hasil soft label dan soft prediction  di  atur  T>1  dikarenakan  jika  T=1  model  hampir  selalu  menghasilkan  jawaban  yang  benar,  yang memiliki pengaruh kecil pada cross entropy selama transfer pengetahuan dari model guru ke model siswa, karena probabilitasnya  sangat  mendekati  0.  Fungsi  aktifasi  softmax  temperature  memiliki  atribut 𝑧 𝑖 ,  atribut 𝑧 𝑖 adalah distribusi output dari 𝑧 𝑖 dan memiliki atribut 𝑍 𝑗 , atribut 𝑍 𝑗 juga termasuk dari hasil distribusi output 𝑍 𝑗 . Atribut utama  dari  softmax  temperature  adalah  T,  dimana  T  adalah  parameter  temperature  yang  mengatur  kelancaran distribusi output, softmax T dapat dilihat di persamaan 5.
𝑝 𝑖 = 𝑒𝑥𝑝 (𝑧𝑖/𝑇) ∑ 𝑒𝑥𝑝(𝑍𝑗/𝑇) 𝑗=1
(5)
Pada loss function distilBERT menggunakan 3 macam loss function : kombinasi linier dari distillation loss (KL-divergence dan cross entropy), masked language modelling loss (MLML), dan cosine embedding loss (CEL). KL-divergence digunakan untuk menghitung loss antara soft labels dan soft predictions. Cross entropy digunakan untuk menghitung loss antara hard predictions dan ground truth, MLML digunakan untuk menghitung loss dari prediksi  kata  yang  bertopeng  dari  kata  aslinya  [9],  dan  CEL  digunakan  untuk  menyelaraskan  arah  vektor tersembunyi  siswa  dan  guru.  Setelah  hasil  loss  dihitung  maka  dilakukan  backpropagation,  pada  proses backpropagation model guru dibekukan, dan hanya memperbarui bobot pada model siswa [17]. Masked language modelling  loss  di  persamaan  2,  cross  entropy  di  persamaan  4,  Distillation  loss  dapat  dilihat  di  persamaan  6 (distillation loss  memiliki atribut 𝑑𝑙 yang menghitung hasil dari KL-divergence, KL-divergence sendiri didapat oleh soft labels dan soft prediction, atribut  adalah atribut yang memberi bobot pada distillation loss dan student loss, dan atribut 𝑠𝑙 adalah atribut yang dihasilkan dari cross entropy dari hard prediction dan ground tuth), KL- divergence  di  persamaan  7  (KL-divergence  memiliki  atribut 𝑝(𝑥) yang  berarti  distibusi  dasar  dan  atribut 𝑞(𝑥) yang berarti distribusi sampel), cosine embedding loss di persamaan 8 (cosine embedding loss  memiliki atribut 𝑇(𝑥) yang berarti perhitungan dari cosine model guru dan atribut 𝑆(𝑥) yang berarti perhitungan dari cosine model siswa).
𝑑𝑖𝑠𝑡𝑖𝑙𝑙𝑎𝑡𝑖𝑜𝑛 𝑙𝑜𝑠𝑠 = 𝑑𝑙  (1 −  ) + 𝑠𝑙   (6)
𝐷 𝐾𝐿 = (𝑝(𝑥)||𝑞(𝑥) =   ∑ 𝑃(𝑥)𝑙𝑛 𝑥∈𝑋 𝑝(𝑥) 𝑞(𝑥) (7) 𝐿 𝑐𝑜𝑠𝑖𝑛𝑒 =  1 − 𝑐𝑜𝑠(𝑇(𝑥), 𝑆(𝑥)) (8)

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472

## 2.7 Pelatihan
Pada  fase  pelatihan  model  dibutuhkan  pengaturan  parameter.  Pada  penelitian  ini,  digunakan  bert-base-uncased model yang menggunakan encoder  dengan 12 Transformer blocks, 12 self-attention head, dan hidden size 768. Panjang token menggunakan  dengan panjang 512 token [9] dan vocab_size = 30522. Arsitektur model RoBERTa menggunakan roberta-base model yang menggunakan encoder dengan 12 Transformer blocks, 12 self-attention head,  dan  hidden  size  768.  Panjang  token  menggunakan  512  token  dan  vocab_size  =  50265.  Arsitektur  model distilBERT sama seperti model BERT, tetapi jumlah lapisan dikurangi ½. Model distilBERT akan mengambil ½ bagian dari 12 Transformer blocks pada BERT. Dari ½ bagian itu, lapisan Transformer  blocks ke 1 atau ke 2, dipilih lapisan yang terbaik. Pemilihan lapisan itu dilakukan seterusnya sampai lapisan ke 12. Pada penelitian ini digunakan  model  distilbert-base-uncased  yang  menggunakan  encoder  dengan  6  Transformer  blocks,  12  self- attention head, dan  hidden size  768. Panjang token  menggunakan dengan panjang 512 token dan  vocab_size = 30522.
Pada proses fine-tuning dalam penelitian ini ada 2 proses pelatihan : proses pelatihan pertama dilakukan freeze-layer  dan  hanya  menggunakan  layer  klasifikasi  dalam  pemodelan,  disini  dibutuhkan  pengaturan hyperparameter  kernel_initializer  agar  mendapatkan  parameter  awalan  secara  acak,  bias_initializer  zeros  agar memiliki nilai bias 0, dan dropout untuk mencegah overfitting pada model. Proses pelatihan pertama digunakan untuk manambahkan parameter baru pada layer klasifikasi tentang data Bahasa Indonesia [21], karena pada model distilBERT  masih  belum  memiliki  bobot  pada  data  Bahasa  Indonesia.  Proses  pelatihan  kedua  dilakukan menggunakan semua layer yang ada pada distilBERT dan layer yang telah diperbaharui.
Hyperparameter terbaik pada model yang digunakan ditentukan sesuai dengan fluktuasi gradient. batch size {16,…, 320} dan learning rates {0.01,…, 0.20} akan dilakukan penyesuaian [27]. Selain itu, ada penentuan epoch. epoch  adalah  jumlah  pengulangan  proses  learning  yang  dilakukan  [28].  Untuk  optimizer,  digunakan  Adam optimizer dengan 𝛽_1 = 0.9 and 𝛽_2 = 0.999 [10].

## 2.8 Matriks Evaluasi
Untuk evaluasi model dalam penelitian ini, digunakan metode  confusion  matrix, confusion  matrix adalah salah satu metode pengukuran keputusan dalam kasus  supervised machine learning. Confusion matrix berisikan hasil kelas  predisksi  dan  hasil  kelas  yang  sebenarnya,  ini  menghitung  semua  kemungkinan  kasus  klasifikasi  [29]. Confusion  matrix  yang digunakan pada penelitian ini adalah  multiclass confusion  matrix. Multiclass confusion matrix cocok untuk mengatasi masalah dalam penelitian ini, karena kelas dalam penelitian ini lebih dari 2 kelas. Ada 4 kombinasi berbeda dari nilai prediksi dan nilai aktual yaitu  True Positive, True Negative, False Positive, dan  False  Negative  [30].  Dalam  kasus  multiclass  confusion  matrix,  menghasilkan  analisis  yang  berfokus  pada kelas  tertentu  berdasarkan  karakteristik  yang  diberikan  [31].  Hasil  dari  multiclass  confusion  matrix  berisikan Accuracy, Recall, Precision, dan F1-Score.

## 3. HASIL DAN PEMBAHASAN

## 3.1 Pengumpulan Data
Dalam  membangun  model  pada  penelitian  ini  terdapat  4987  data  text  yang  terbagi  pada  5  label  dan  membagi menjadi 3 bagian yaitu, data Training 80%, data Validation 10%, dan data Test 10%. Contoh dan pembagian data per label dapat dilihat pada Tabel 1.
Tabel 1. Contoh dan Pembagian Data per Label
Text Label Training  Test  Total [USERNAME]  [USERNAME]  Bcs  doi  w  anak  pelayaran,  tp  emg beneran  sih  ditinggal  5  bulan  gt,  ketemu  cm  3  hari  dri  5  bulan  itu Parahnya atasannya yg udh beristri main cewek gtu, kan ngeri :( Fear 597 94 691 [USERNAME] [USERNAME] [USERNAME] [USERNAME]
[USERNAME] [USERNAME] [USERNAME] [USERNAME] Sampaikan juga informasi kegiatan dana desa, jangan hanya kirim hastag dan mantion saja Anger 1259 88 1347
Kapan bandara [USERNAME] 1 di Ambon ada perbaikan dan mungkin renofasi.  Melihat  ada  banyak  perkembangan  bandara  di  daerah  lain rasanya sudah amat ketinggalan sebagai bandara internasional . [URL] Sadness 982 89 1071
[USERNAME]  Apaa  eh  sengajanya  tu  ,  sayang  dah  baca  b  ku  sayang sudah take note already . Baby love you unconditionally. Baby cinta b right and treat my king well arasso? . Kiss sini MUAHHHH! Love 631 78 709 [USERNAME]  Wuish  [USERNAME]  saya  tungguin  nih  film  nya... Bikin  film  superhero  trus  kirim  ke  negara  tetangga  lagi.  Biar  film indonesia jadi trend. Happy 1068 101 1169

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
Pada Tabel 1 menjelaskan tentang pembagian data per label yang digunakan dalam penelitian ini, ada 5 label yang digunakan : fear, anger, sadness, love, happy. Untuk label fear memiliki data training 597, test 94, dan total keseluruhan label  fear 691, pada kalimat yang dimiliki oleh label  fear memiliki makna kalimat yang telah diungkapkan oleh seseorang dengan rasa takut. Untuk label anger memiliki data training 1259, test 88, dan total keseluruhan label  anger 1347,  pada kalimat  yang dimiliki oleh label  anger  memiliki  makna kalimat  yang telah diungkapkan oleh seseorang dengan rasa marah. Untuk label sadness memiliki data training 982, test 89, dan total keseluruhan 1071, pada kalimat yang dimiliki oleh label sadness memiliki makna kalimat yang telah diungkapkan oleh seseorang dengan rasa sedih. Untuk label love memiliki data training 631, test 78, dan total keseluruhan 709, pada kalimat yang dimiliki oleh label love memiliki makna kalimat yang telah diungkapkan oleh seseorang dengan rasa cinta. Untuk label happy memiliki data training 1068, test 101, dan total keseluruhan 1169, pada kalimat yang dimiliki oleh label happy memiliki makna kalimat yang telah diungkapkan oleh seseorang dengan rasa bahagia.

## 3.2 Preprocessing Data
Pada tabel 2 menunjukkan bahwa data tersebut memiliki kata yang tidak baku, karena kata dalam Bahasa Indonesia dibangun dengan morfologi yang kaya. Permasalahan ini dapat diatasi dengan melakukan  preprocessing dengan memfilter kata yang tidak diperlukan dan tidak baku. Hasil dari preprocessing dapat dilihat pada Tabel 2.

## Tabel 2. Hasil Preprocessing
Original Text Preprocessing
TAMSIL  ISLAM  NUSANTARA.  Karena  kau  cuma  tiang  yang dipancang  tergesa-gesa  kemarin  sore  dan  pangkalmu  cuma  dangkal- dangkal  saja  ditanam,  maka  engkau  jadi  takut  setengah  mati  pada angin. Bahkan semilir yang segar pun kau caci dan kau kutuki
tamsil  islam  nusantara  tiang  pancang gesa  gesa  kemarin  sore  pangkal dangkal  dangkal  tanam  engkau  takut mati angin milir segar caci kutuk
Efek  pintu  tol  slipi  arah  semanggi  ditutup,  macet  parah  di  sini.  Pak polisi  bukan  ngatur  malah  jagain  jalur  busway  [USERNAME] [USERNAME] [USERNAME] [URL]
efek  pintu  tol  arah  semanggi  tutup macet parah polisi atur jaga jalur bus Para raja dan sultan yang tergabung dalam Forum Silaturrahmi Kraton Nusantara  merasa  bangga  dan  terharu  mendapat  undangan  dari Presiden [USERNAME] ke Istana. Menurut mereka Presiden benar2 memperhatikan budaya Nusantara [URL]
raja sultan gabung forum silaturrahmi kraton nusantara bangga haru undang presiden  istana  presiden  perhatian budaya nusantara Buat  saya,  apa  yang  dilakukan  Via  Valen  simbol  perlawanan  yang perlu didukung, apapun profesinya  wanita tetap  harus dihormati dan dihargai [URL]" valen  simbol  lawan  dukung  apa profesi wanita hormat harga SEBAB  MUNDUR  ADALAH  SEBUAH  PENGHIANATAN, DIBELAKANG  PAGAR  TRIBUN  KAMI  TERUS  BERSUARA UNTUK  BANGKITKAN  SEMANGAT  PEMAIN  DILAPANGAN! INI SUARA KAMI. mundur penghianatan belakang pagar tribun suara bangkit semangat pemain lapang suara
Pada  Tabel  2,  hasil  preprocessing  tersebut  telah  menunjukkan  bahwa  preprocessing  tersebut  telah melakukan  secara  bertahap  dan  alur  yang  telah  dibuat.  Pertama  melakukan  preprocessing  casefolding,  pada casefolding  akan  menghasilkan  perubahan  pada  huruf  besar  menjadi  huruf  kecil,  casefolding  dilakukan  karena pada penelitian ini menggunakan model uncased, pada model uncased model tersebut akan mengelola data yang menggunakan huruf kecil semua. Kedua dilakukan preprocessing filtering, pada filtering akan menghapus berbagai kata yang telah dipilih pada penelitian ini, pilihan kata tersebut adalah @username, retweet, #hastags, emoticon, dan  URL,  karena  kata  tersebut  termasuk  kata  yang  memiliki  makna  sederhana  untuk  kasus  klasifikasi  emosi. Ketiga  dilakukan  preprocessing  tokenizing,  pada  tokenizing  akan  mengubah  seluruh  kata  pada  data  menjadi sebuah token /  vektor, perubahan  kata  menjadi sebuah vektor digunakan agar kata  tersebut dapat diolah dalam beberapa  model  preprocessing  yang  lain.  Keempat  dilakukan  preprocessing  steaming,  pada  steaming  akan mengubah kata  yang  memiliki makna imbuhan  menjadi kata dasar,  steaming dilakukan agar dari berbagai kata yang  ada  pada Bahasa  Indonesia  yang  memiliki  kata  yang  kaya  dan  beragam  menjadi  kata  dasar  yang  penting untuk  dikelola  oleh  model  klasifikasi  emosi.  Kelima  dilakukan  preprocessing  slangword,  pada  slangword  akan mengubah  kata  yang  tidak  jelas  atau  kata  yang  aneh  seperti  singkatan  dan  bahasa  gaul  menjadi  kata  dasar, slangword  dilakukan  agar  pengelolahan  kata  menjadi  lebih  jelas  dan  tepat.  Keenam  dilakukan  preprocessing whitespace,  pada  whitespace  akan  menghapus  spasi  yang  banyak  atau  tidak  berguna  pada  data,  whitespace dilakukan agar pengelolahan data dalam model akan lebih rapi. Ketujuh dilakukan preprocessing stopword, pada stopword akan menghapus kata depan, pada stopword dilakukan agar pengelolahan data dalam model lebih tepat pada kata dasar penting pada klasifikasi emosi.
Pada  Tabel  2  hasil  preprocessing  filtering  adalah  :  [USERNAME],  [URL],  tanda  baca,  dsb.  Hasil preprocessing steaming adalah : tergesa : gesa, pangkalmu : pangkal, kutuki : kutuk, dihormati : hormat, dihargai : harga, dsb. Hasil preprocessing stopword adalah : dan, dari, apa, dsb. Dan Hasil preprocessing slangword adalah :  dicolong,  wejangan,  seneng,  misqin,  mah,  ngapus,  alus,  ciwi,  ngoceh,  gblk,  dsb.  Pada  label  juga  dilakukan preprocessing dengan menggunakan one hot vector, seperti pada Tabel 3.

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
Tabel 3. Hasil One Hot Vector Pada Label
Label One Hot Vector Anger [0] [1., 0., 0., 0., 0.,] Fear [1] [0., 1., 0., 0., 0.,] Happy [2] [0., 0., 1., 0., 0.,] Love [3] [0., 0., 0., 1., 0.,] Sadness [4] [0., 0., 0., 0., 1.,]
Pada Tabel 3 menjelaskan tentang pengolahan data label yang diolah dengan  one hot vector, ada 5 label yang  di  proses  :  anger,  fear,  happy,  love,  sadness,  dengan  total  5  label  yang  dimiliki  maka  setiap  label  diubah menjadi  anger[0],  fear[1],  happy[2],  love[3],  sadness[4],  dan  yang  terakhir  label  tersebut  diubah  dalam  bentuk angka yang bermodel matriks beserta urutan yang telah dimiliki, urutan tersebut memberikan angka 1 pada matriks dan memberikan 5 angka setiap matriks, dikarenakan ada 5 label yang digunakan. Maka one hot vector pada setiap label  menghasilkan  :  anger[0]  =  [1.,0.,0.,0.,0],  fear[1]  =  [0.,1.,0.,0.,0],  happy[2]  =  [0.,0.,1.,0.,0],  love[3]  = [0.,0.,0.,1.,0], dan sadness[4] = [0.,0.,0.,0.,1].

## 3.3 Hyperparameter-Tuning dan Fine-Tuning
Dalam pembangunan model dilakukan beberapa eksperimen arsitektur fine-tuning dan hyperparameter-tuning, ada 3 model yang akan dilakukan eksperimen arsitektur  fine-tuning dan hyperparameter-tuning : BERT, RoBERTa, distilBERT.  Pada  Tabel  4  menampilkan  eksperimen  arsitektur  fine-tuning  dan  hyperparameter-tuning  yang digunakan pada setiap model.
Tabel 4. Arsitektur Fine-tuning dan Hyperparameter-tuning Setiap Model
Model Batch Size Dropout Att Dropout Epoch Training Frezee Learning Rate Kernel Initializer Bias Initializer BERT 16 - - 10 1x - 1e-5 - - RoBERTa 16 - - 10 1x - 1e-5 - - distilBERT 16 - - 10 1x - 1e-5 - - distilBERT- frezee 16 0.2 0.2 10 2x √ 1e-5 42 zeros
Pada Tabel 4 menjelaskan tentang arsitektur fine-tuning dan hyperparameter setiap model, pada penelitiam ini menggunakan 4 model : BERT, RoBERTa, distilBERT, distilBERT-frezee, pada pembentukan model ada 9 hyperparameter  yang  digunakan  :  batch  size,  dropout,  att  dropout,  epoch,  training,  frezee,  learning  rate,  kernel initializer, dan bias initializer. Hyperparameter yang pasti digunakan pada setiap model = batch size dengan ukuran 16,  epoch  dengan  ukuran  10,  learning  rate  dengan  ukuran  1e-5.  Sedangkan  hyperparameter  dropout  =  0.2,  att dropout  =  0.2,  freeze  =  true,  kernel  initializer  =  42,  dan  bias  initializer  =  zeros  hanya  digunakan  pada  model distilBERT-frezee karena bertujuan untuk pembentukan model dengan proses  freeze yang melakukan training 2 kali.

## 3.4 Skor Evaluasi Model
Untuk  menghasilkan  skor  evaluasi  model,  ada  beberapa  tahapan  yang  dilakukan  pada  penelitian  ini,  yaitu  : pengumpulan data, preprocessing data, hyperparameter-tuning, dan fine-tuning. Dari beberapa tahapan yang telah dilakukan maka distilBERT dapat melatih dengan representasi 2 arah dari data  text seperti model BERT, tetapi memiliki ukuran yang lebih kecil dan kualitas yang serupa dengan cara menjalankan 2 model, yaitu model guru dan model siswa, model guru adalah model yang besar dan dilatih dengan berbagai macam fitur, sedangkan model siswa adalah model yang menyaring pengetahuan model guru dengan menghilangkan fitur token-type-embedding, pooler, dan next sentence prediction. Pada proses training pada distilBERT memiliki tugas dengan memahami dan mempelajari  data  teks  berlabel  dengan  tugas  masked  language  model.  Oleh  karena  itu  distilBERT  dapat mempelajari data teks dengan tugas klasifikasi emosi pada label yang telah ditentukan.
Hasil akurasi eksperimen arsitektur fine-tuning dan hyperparameter-tuning model dapat dilihat di Tabel 5, setiap model dilatih dan dievaluasi untuk mendapatkan hasil terbaik, akurasi training tertinggi didapat oleh model distilBERT = 94,76 dengan ukuran batch size 16, dropout  -, att dropout  -, epoch 10, learning rate 1e-5, kernel initializer -, dan bias initializer -. Akurasi training terendah didapat oleh model distilBERT-frezee = 82,23 dengan ukuran  batch  size  16,  dropout  0.2,  att  dropout  0.2,  epoch  10,  learning  rate  1e-5,  kernel  initializer  42  dan  bias initializer zeros.
Hasil  akurasi  training  masih  belum  dapat  memberikan  keputusan  bahwa  model  tersebut  sudah  berjalan setara  dengan  akurasi  yang  dihasilkan,  maka  dari  itu  dibutuhkan  data  tes  untuk  menguji  akurasi  pada  model tersebut.  Akurasi  testing  tertinggi  didapat  oleh  model  distilBERT-frezee  =  86,67  dengan  ukuran  batch  size  16, dropout 0.2, att dropout 0.2, epoch 10, learning rate 1e-5, kernel initializer 42, dan bias initializer zeros. dan akurasi testing terendah didapat oleh model RoBERTa = 77,78 dengan ukuran batch size 16, dropout -, att dropout -, epoch 10, learning rate 1e-5, kernel initializer -, dan bias initializer -.

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
Tabel 5. Hasil Akurasi Eksperimen Arsitektur fine-tuning dan Hyperparameter Model
Model Batch Size Dropout Att Dropout Epoch Frezee Train Learning Rate Kernel Initializer Bias Initializer Acc Train Acc Test BERT 16 - - 10 - 1x 1e-5 - - 94,12  83,11 RoBERTa 16 - - 10 - 1x 1e-5 - - 83,64  77,78 distilBERT 16 - - 10 - 1x 1e-5 - - 94,76  84,44 distilBERT- frezee 16 0.2 0.2 10 √ 2x 1e-5 42 zeros 82,23  86,67
Pembangunan  model  yang  telah  dilakukan  memiliki  total  parameter  yang  berbeda.  parameter  tertinggi didapat  oleh  model  RoBERTa  =  124649477  dan  parameter  terendah  didapat  oleh  model  distilBERT  dan distilBERT-frezee  =  66366725.  Sedangkan  rata-rata  waktu  pelatihan  model,  RoBERTa  mendapatkan  waktu pelatihan  tertinggi  =  218,1s  839,6ms/step  dan  distilBERT  mendapatkan  waktu  pelatihan  terendah  =  113s 436,4ms/step. Hasil total parameter dan waktu pelatihan keseluruhan model dapat dilihat pada Tabel 6.
Tabel 6. Total Parameter dan Time/Step Training
Model Parameter Rata-Rata time/step Training Accuracy Testing BERT 109486085 216,5s 830,5ms/step 83,11 RoBERTa 124649477 218,1s 839,6ms/step 77,78 distilBERT 66366725 113s 436,4ms/step 84,44 distilBERT-frezee 66366725 114,6s 441,4ms/step 86,67
Pada  model  distilBERT  Modif,  kesalahan  terbesar  pada  prediksi  label  anger  didapat  pada  label  happy, karena  kalimat  yang  mengandung  makna  amarah  bisa  mengarah  pada  kebahagiaan,  seperti  amarah  yang dilampiaskan  dengan  kalimat  bahagia  seperti  “ kakean  tertawa  hihi  definisi  senang  sp  sebentar  doang  blok bodoh ”. Pada label fear didapat pada label anger, karena kalimat yang mengandung makna takut bisa mengarah pada amarah, seperti  ketakutan  yang dilampiaskan dengan  amarah seperti  “ minum obat sakit iya awas besok masuk ”.  Pada  label  happy  didapat  pada  label  love,  karena  kalimat  yang  mengandung  makna  bahagia  bisa mengarah pada rasa cinta, seperti kebahagiaan yang berlebihan akan mengarah pada rasa cinta “ jam berangkat hati hati iya sayang teteh hanna sayang pokok kirim kabar whatsapp sesal kirim foto foto bapakk jaga teteh hanna loh lancar selamat sehat pulang rumah iya funn ”. Begitu sebaliknya pada label love didapat pada label happy karena kalimat yang mengandung makna cinta akan mengarah pada kebahagiaan, seperti rasa cinta yang diungkap dengan kebahagiaan “ ramadhan malam mulia ribu selamat lailatul qadar orang iman rindu ”, dan pada label sadness didapat pada label anger karena kalimat yang mengandung makna sedih dengan rasa kesal akan mengarah pada amarah, seperti rasa sedih dengan anggapan amarah “ habis hilang iya bilang tahap bangun sahur zone sial tayo tayo kakak gila ”. Hasil prediksi per label pada setiap model dapat dilihat pada Gambar 5.
(BERT) (RoBERTa) (distilBERT) (distilBERT-frezee)
Gambar 5. Hasil Prediksi per Label Setiap Model
Hasil akhir pada penelitian ini menghitung dengan metode  confusion matrix, hasil dari confusion matrix dilakukan  sebuah  perbandingan  setiap  model  pada  nilai  f1-score,  dapat  dilihat  pada  Gambar  6.  Nilai  f1-score tertinggi didapat pada model distilBERT-frezee = 87, dan nilai f1-score terendah didapat pada model RoBERTa = 78. Dari 3 model yang digunakan dalam penelitian ini : model BERT, RoBERTa, distilBERT, dan distilBERT- frezee. Model BERT, RoBERTa, distilBERT mendapatkan hasil akurasi yang cukup baik pada saat training dan f1-score yang cukup baik pada saat testing. Tetapi pada model distilBERT-frezee mendapatkan hasil akurasi yang cukup baik pada saat training dan f1-score yang baik pada saat testing.
(BERT) (RoBERTa)
(distilBERT) (distilBERT-frezee)
Gambar 6. Hasil F1-Score Setiap Model
Penyebab  utama  model  distilBERT-frezee  mendapatkan  nilai  f1-score  yang  baik  dikarenakan  model distilBERT-frezee memiliki hyperparameter-tuning dropout = 0.2 dan hyperparameter-tuning att-dropout = 0.2. hyperparameter-tuning  dropout  =  0.2  dan  hyperparameter-tuning  att-dropout  =  0.2  jika  tidak  digunakan  dalam model distilBERT-frezee akan menurunkan nilai  f1-score sebanyak 3 pada saat proses testing. Penyebab kedua dikarenakan  model  distilBERT-frezee  memiliki  frezee-layer.  Frezee-layer  jika  tidak  digunakan  dalam  model

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
distilBERT-frezee  akan  menurunkan  nilai  f1-score  sebanyak  1.  Hasil  f1-score  setiap  model  distilBERT-frezee dapat dilihat pada Tabel 7.
Tabel 7. Hasil F1-Score Setiap Model distilBERT-frezee
Model Dropout Att Dropout Frezee Training F1-Score distilBERT-frezee - - √ 2x 84 distilBERT-frezee 0.2 0.2 - 1x 86 distilBERT-frezee 0.2 0.2 √ 2x 87
Hasil f1-score tertinggi pada distilBERT-frezee per label didapat oleh label  fear = 95, dan nilai f1-score terendah per label didapat oleh label happy = 83. Label fear memiliki hasil yang bagus dikarenakan pada data label fear mayoritas kata utama pada label fear disebabkan oleh kata “TAKUT”, sedangkan pada label happy memiliki mayoritas  kata  yang  banyak  seperti  “SELAMAT”,  “TERTAWA”,  “BAHAGIA”  dsb.  Berdasarkan  Tabel  8 penelitian  ini  telah  berkontribusi  dalam  mengklasifikasi  emosi  dengan  data  Bahasa  Indonesia  menggunakan distilBERT yang merupakan salah satu model klasifikasi emosi Bahasa Indonesia keluaran baru dari kumpulan distilBERT dan menghasilkan nilai f1-score yang cukup baik.
Tabel 8. Perbandingan hasil penelitian dengan penelitian sebelumnya Referensi Data Model F1-Score [32] 4 kelas, 7699 text Bahasa Indonesia Distilbert-base-uncased 68 [33] 4 kelas, 18396 text Bahasa Indonesia CNN + DistilBERT 61 [20] 5 kelas, 1705 text Bahasa Indonesia DistilBERT 86 [2] 2 kelas, 14975 text Bahasa Indonesia  DistilBERT + BiLSTM-TCN 82 Penelitian yang diusulkan 5 kelas, 4987 text Bahasa Indonesia distilBERT-frezee 87

## 4. KESIMPULAN
Bahasa Indonesia termasuk dalam 10 besar bahasa yang paling banyak digunakan di dunia, seperti kalimat yang digunakan  dalam  media  sosial,  pada  media  sosial  juga  menampilkan  banyak  kalimat  yang  bermakna  tentang penilaian  produk,  berita  terkini,  dan  opini  sosial.  Dari  berbagai  data  yang  ada  tersebut,  melalui  penelitian  ini kedepannnya  dapat  digunakan  untuk  mengelola  berbagai  macam  data  Bahasa  Indonesia  untuk  mengklasifikasi emosi  dari  makna  kalimat  tersebut.  Emosi  yang  diklasifikasikan  adalah  emosi  :  takut,  marah,  sedih,  cinta,  dan bahagia. Pada penelitian ini, telah menerapkan model BERT, RoBERTa, distilBERT, dan distilBERT-frezee pada kasus  klasifikasi  emosi  pada  data  Bahasa  Indonesia.  Hasil  pada  penelitian  ini  menunjukkan  bahwa  model distilBERT-frezee meningkatkan hasil f1-score secara signifikan. Semua hasil f1-score dibandingkan dan terlihat bahwa hasil terbaik diperoleh oleh model distilBERT-frezee = 87. Pada distilBERT-frezee penyebab utama model mendapatkan  hasil  yang signifikan adalah  hyperparameter  dropout  yang  menurunkan nilai  f1-socre sebanyak 3 jika tidak digunakan, dan penyebab kedua adalah proses frezee-layer yang menurunkan nilai f1-score sebanyak 1 jika tidak digunakan. Penelitian lebih lanjut dapat dikembangkan dengan memodifikasi distilBERT dalam model distillation  yang  digunakan,  model  distillation  dalam  distilBERT  menggunakan  struktur  adverdisal  distillation. Pada  adversial  distillation  mempunyai  tujuan  untuk  model  siswa  meniru  model  guru  dengan  baik,  dan  hanya menggunakan 1 guru. Ada berbagai macam model mengenai distillation seperti model multi-teacher distillation, pada multi-teacher distillation juga mempunyai tujuan yang sama seperti adverdisal distillation tetapi pada multi- teacher distillation menggunakan lebih dari 1 guru.

## REFERENCES
[1]  F. A. Acheampong, H. Nunoo-Mensah, and W. Chen, “Transformer Models for Text-based Emotion Detection: A Review of BERT-based Approaches,” Springer, 2021, doi: https://doi.org/10.1007/s10462-021-09958-2.
[2]  C. H. Lin and U. Nuha, “Sentiment analysis of Indonesian datasets based on a hybrid deep-learning strategy,” J Big Data, vol. 10, no. 1, Dec. 2023, doi: 10.1186/s40537-023-00782-9.
[3]  B.  Wilie  et  al.,  “IndoNLU:  Benchmark  and  Resources  for  Evaluating  Indonesian  Natural  Language  Understanding,” ArXiv, Sep. 2020, doi: https://doi.org/10.48550/arXiv.2009.05387.
[4]  S. M. Isa, G. Nico, and M. Permana, “INDOBERT FOR INDONESIAN FAKE NEWS DETECTION,”  ICIC Express Letters, vol. 16, no. 3, pp. 289–297, Mar. 2022, doi: 10.24507/icicel.16.03.289.
[5]  Y. K. Wiciaputra, J. C. Young, and A. Rusli, “Bilingual text classification in english and indonesian via transfer learning using XLM-RoBERTa,” International Journal of Advances in Soft Computing and its Applications, vol. 13, no. 3, pp. 72– 87, 2021, doi: 10.15849/ijasca.211128.06.
[6]  S.  Haque,  Z.  Eberhart,  A.  Bansal,  and  C.  McMillan,  “Deep  Learning  Based  Text  Classification:  A  Comprehensive Review,”  IEEE  International  Conference  on  Program  Comprehension,  vol.  2022-March,  pp.  36–47,  2022,  doi: https://doi.org/10.48550/arXiv.2004.03705.
[7]  P. Zhou, Z. Qi, S. Zheng, J. Xu, H. Bao, and B. Xu, “Text Classification Improved by Integrating Bidirectional LSTM with Two-dimensional Max Pooling,” ArXiv, Nov. 2016, doi: https://doi.org/10.48550/arXiv.1611.06639.

## JURNAL MEDIA INFORMATIKA BUDIDARMA
ISSN 2614-5278 (media cetak), ISSN 2548-8368 (media online) Available Online at https://ejurnal.stmik-budidarma.ac.id/index.php/mib DOI: 10.30865/mib.v8i2.7472
[8]  G.  Liu  and  J.  Guo,  “Bidirectional  LSTM  with  attention  mechanism  and  convolutional  layer  for  text  classification,” Neurocomputing, vol. 337, pp. 325–338, Apr. 2019, doi: 10.1016/j.neucom.2019.01.078.
[9]  J.  Devlin,  M.-W.  Chang,  K.  Lee,  and  K.  Toutanova,  “BERT:  Pre-training  of  Deep  Bidirectional  Transformers  for Language Understanding,” ArXiv, Oct. 2018, doi: http://arxiv.org/abs/1810.04805.
[10] C. Sun, X. Qiu, Y.  Xu, and X. Huang, “How to Fine-Tune BERT  for Text Classification?,”  Springer, May 2019, doi: 10.1007/978-3-030-32381-3_16.
[11] S.  González-Carvajal  and  E.  C.  Garrido-Merchán,  “Comparing  BERT  against  traditional  machine  learning  text classification,” ArXiv, May 2020, doi: https://doi.org/10.48550/arXiv.2005.13012.
[12] Y.  Liu  et  al.,  “RoBERTa:  A  Robustly  Optimized  BERT  Pretraining  Approach,”  ArXiv,  Jul.  2019,  doi: https://doi.org/10.48550/arXiv.1907.11692.
[13] A. Murarka, B. Radhakrishnan, and S. Ravichandran, “Detection and Classification of mental illnesses on social media using RoBERTa,” ArXiv, Nov. 2020, doi: https://doi.org/10.48550/arXiv.2011.11226.
[14] Y. Guo, X. Dong, M. A. Al-Garadi, A. Sarker, C. Paris, and D. Mollá-Aliod, “Benchmarking of Transformer-Based Pre- Trained  Models  on  Social  Media  Text  Classification  Datasets,”  ACL  Anthology,  2020,  doi: https://aclanthology.org/2020.alta-1.10.
[15] Z.  Lan  et  al.,  “ALBERT:  A  LITE  BERT  FOR  SELF-SUPERVISED  LEARNING  OF  LANGUAGE REPRESENTATIONS,” ICLR, 2020, doi: https://doi.org/10.48550/arXiv.1909.11942.
[16] R. Qasim, W. H. Bangyal, M. A. Alqarni, and A. Ali Almazroi, “A Fine-Tuned BERT-Based Transfer Learning Approach for Text Classification,” J Healthc Eng, vol. 2022, 2022, doi: 10.1155/2022/3498123.
[17] V. Sanh, L. Debut, J. Chaumond, and T. Wolf, “DistilBERT, a distilled version of BERT: smaller, faster, cheaper and lighter,” ArXiv, Oct. 2020, doi: https://doi.org/10.48550/arXiv.1910.01108.
[18] Y. Arslan et al., “A Comparison of Pre-Trained Language Models for Multi-Class Text Classification in the Financial Domain,” ACM, pp. 260–268, Apr. 2021, doi: 10.1145/3442442.3451375.
[19] F. Sriyono and A. Nasiri, “Detecting Hate Speech In Twitter Using Long Short-Term Memory And Naïve Bayes Method,” Jurnal Ilmiah Indonesia, vol. 7, no. 2, 2022, doi: http://dx.doi.org/10.36418/Syntax- Literate.v7i2.6313.
[20] R. Anggrainingsih, G. M. Hassan, and A. Datta, “Evaluating BERT-based Pre-training Language Models for Detecting Misinformation A R T I C L E I N F O,” 2022.
[21] B. Wei, J. Li, A. Gupta, H. Umair, A. Vovor, and N. Durzynski, “Offensive Language and Hate Speech Detection with Deep Learning and Transfer Learning,” Aug. 2021, [Online]. Available: http://arxiv.org/abs/2108.03305
[22] M. Dong, “Emotion Classification on Indonesian Twitter Dataset,” IEEE, 2018, doi: 10.1109/IALP.2018.8629262.
[23] A. F. Hidayatullah and M. R. Ma’Arif, “Pre-processing Tasks in Indonesian Twitter Messages,” in  Journal of Physics: Conference Series, Institute of Physics Publishing, Mar. 2017. doi: 10.1088/1742-6596/801/1/012072.
[24] Z. Shaheen, G. Wohlgenannt, and E. Filtz, “Large Scale Legal Text Classification Using Transformer Models,”  ArXiv, Oct. 2020, doi: https://doi.org/10.48550/arXiv.2010.12871.
[25] A. Vaswani et al., “Attention Is All You Need,” Jun. 2017, [Online]. Available: http://arxiv.org/abs/1706.03762
[26] A. F. T. Martins, A. M. Com, and R. F. Astudillo, “From Softmax to Sparsemax: A Sparse Model of Attention and Multi- Label Classification,” PMLR, vol. 48, 2016.
[27] F.  He,  T.  Liu,  and  D.  Tao,  “Control  Batch  Size  and  Learning  Rate  to  Generalize  Well:  Theoretical  and  Empirical Evidence,” 2019.
[28] W. Hastomo, A. S. Bayangkari Karno, N. Kalbuana, A. Meiriki, and Sutarno, “Characteristic Parameters of Epoch Deep Learning to Predict Covid-19 Data in Indonesia,” in Journal of Physics: Conference Series, IOP Publishing Ltd, Jun. 2021. doi: 10.1088/1742-6596/1933/1/012050.
[29] J. Xu, Y. Zhang, and D. Miao, “Three-way confusion matrix for classification: A measure driven view,” Inf Sci (N Y), vol. 507, pp. 772–794, Jan. 2020, doi: 10.1016/j.ins.2019.06.064.
[30] F. Rahmad, Y. Suryanto, and K. Ramli, “Performance Comparison of Anti-Spam Technology Using Confusion Matrix Classification,”  in  IOP  Conference  Series:  Materials  Science  and  Engineering,  IOP  Publishing  Ltd,  Aug.  2020.  doi: 10.1088/1757-899X/879/1/012076.
[31] I. Markoulidakis, I. Rallis, I. Georgoulas, G. Kopsiaftis, A. Doulamis, and N. Doulamis, “Multiclass Confusion Matrix Reduction Method and Its Application on Net Promoter Score Classification Problem,” Technologies (Basel), vol. 9, no. 4, p. 81, Nov. 2021, doi: 10.3390/technologies9040081.
[32] Hidayaturrahman,  E.  Dave,  D.  Suhartono,  and  A.  M.  Arymurthy,  “Enhancing  argumentation  component  classification using contextual language model,” J Big Data, vol. 8, no. 1, Dec. 2021, doi: 10.1186/s40537-021-00490-2.
[33] K. Mutisari Hana, S. Al Faraby, and A. Bramantoro, “Multi-label Classification of Indonesian Hate Speech on Twitter Using Support Vector Machines,” 2020. [Online]. Available: https://github.com/okkyibrohim/id-multi-label-hate-speech- and-