Advertise

Ekstraksi Fitur (Fiture Extraction) pada Teks

 



Dalam Machine Learning berbasis teks (misalnya untuk klasifikasi email spam, analisis sentimen, chatbot, atau pencarian dokumen), komputer tidak bisa memahami teks secara langsung seperti manusia.
Yang dilakukan adalah mengubah teks menjadi angka atau representasi numerik yang bisa diproses algoritma.
Proses mengubah teks menjadi angka ini disebut ekstraksi fitur pada teks.

Bagi yang belum membaca artikel sebelumnya, alangkah baiknya membacanya terlebih dahulu dengan mengklik link berikut :

Feature Extraction: Pengertian, Cara Kerja, dan Contohnya

Intinya:

Ekstraksi fitur pada teks = Mengambil ciri-ciri penting dari teks → ubah jadi angka → masukkan ke model machine learning.

 

Mengapa Ekstraksi Fitur pada Teks Diperlukan?

  • Komputer tidak memahami kata secara langsung, hanya angka.
  • Teks itu kompleks: panjang, variasi kata banyak, dan ada kata tidak penting.
  • Kita butuh mengambil fitur (ciri penting) supaya model lebih fokus dan lebih akurat.


Tahapan Ekstraksi Fitur pada Teks

  1. Preprocessing Teks (Persiapan)
    Sebelum ekstraksi fitur, teks biasanya dibersihkan:

  • Ubah semua huruf jadi lowercase.
  • Hapus tanda baca & angka.
  • Hilangkan kata-kata umum yang tidak penting (stopwords, seperti “dan”, “yang”, “ke”).
  • Lakukan stemming atau lemmatization (mengubah kata ke bentuk dasar, misalnya “berlari” → “lari”).
     2. Representasi Teks Menjadi Fitur

         Setelah bersih, teks diubah menjadi angka menggunakan berbagai metode. Ada beberapa pendekatan umum:

Metode Populer Ekstraksi Fitur pada Teks

1. Bag-of-Words (BoW)

Metode paling sederhana. Kita menghitung berapa kali setiap kata muncul dalam teks.

Contoh:
  • Dokumen 1: “Saya suka apel”
  • Dokumen 2: “Saya makan apel”Vocabulary (kata unik): {Saya, suka, makan, apel}

Representasi:

  • Dokumen 1: [1, 1, 0, 1]
  • Dokumen 2: [1, 0, 1, 1]

Angka menunjukkan jumlah kemunculan kata.

Kelebihan: sederhana dan mudah dipahami.
Kekurangan: tidak memperhatikan urutan kata.


2. TF-IDF (Term Frequency – Inverse Document Frequency)

Metode ini menghitung kata yang penting pada sebuah dokumen dibandingkan dokumen lain.
Kalau sebuah kata muncul di banyak dokumen, nilainya lebih kecil (kata umum seperti “dan” dianggap tidak penting).

Contoh:
Kata “diskon” hanya muncul di beberapa email, sedangkan “halo” muncul di semua email.
TF-IDF memberi bobot lebih besar pada “diskon” (kata unik) dibandingkan “halo” (kata umum).

Kelebihan: lebih baik untuk analisis dokumen besar.
Kekurangan: masih berbasis hitungan kata.


3. Word Embedding (misalnya Word2Vec, GloVe, FastText)

Metode ini mengubah kata menjadi vektor angka yang menggambarkan makna kata.
Kata-kata yang mirip makna (misalnya “rajin” dan “gigih”) akan memiliki vektor yang mirip.

Kelebihan:

  • Memahami makna kata.
  • Menangkap hubungan semantik antar kata.

Contoh:

  • “Raja” – “Pria” + “Wanita” ≈ “Ratu” (hasil perhitungan vektor).

4. Sentence Embedding / Document Embedding (BERT, Transformer)

Ini versi lebih canggih. Model ini mengubah kalimat atau paragraf menjadi vektor angka yang memperhatikan konteks kata.
Digunakan dalam teknologi terbaru seperti Google Search, ChatGPT, dan analisis sentimen.


Contoh Sederhana Ekstraksi Fitur Teks

Kita ingin mengklasifikasi email menjadi spam atau bukan spam.
Data mentah (teks email):

  • Email 1: “Gratis hadiah sekarang”
  • Email 2: “Diskusi rapat besok”

Langkah ekstraksi fitur:

  • Buat vocabulary: {gratis, hadiah, sekarang, diskusi, rapat, besok}
  • Ubah jadi angka (BoW):
            Email 1: [1, 1, 1, 0, 0, 0]
            Email 2: [0, 0, 0, 1, 1, 1]

Algoritma machine learning bisa langsung mengenali bahwa email dengan kata “gratis” atau “hadiah” lebih cenderung spam.


Kesimpulan

  • Ekstraksi fitur pada teks adalah proses mengubah teks menjadi angka yang mewakili ciri pentingnya.
  • Ada berbagai metode: Bag-of-Words, TF-IDF, Word Embedding, hingga model berbasis Transformer.
  • Tanpa ekstraksi fitur, algoritma machine learning akan kesulitan memahami teks.


                                                          

Post a Comment

0 Comments