Taufik Ari Arnandan : Stemming dan Stoplist

STEMMING

      Stemming  merupakan  suatu  proses  yang  terdapat  dalam  sistem  IR  yang mentransformasikan  kata-kata yang  terdapat  dalam  suatu  dokumen  ke  kata-kata akarnya (root word) dengan menggunakan aturan-aturan tertentu. Sebagai contoh, kata bersama, kebersamaan, menyamai, akan distem ke root wordnya yaitu “sama”.

      Algoritma  stemming  untuk  bahasa  yang  satu  berbeda  dengan  algoritma stemming  untuk  bahasa  lainnya.  Sebagai  contoh  bahasa  Inggris  memiliki  morfologi yang  berbeda  dengan  bahasa  Indonesia  sehingga  algoritma  stemming  untuk  kedua bahasa  tersebut  juga  berbeda.

      Proses  stemming  pada  teks  berbahasa  Indonesia lebih  rumit/kompleks  karena  terdapat  variasi  imbuhan  yang  harus  dibuang  untuk mendapatkan root word (kata dasar) dari sebuah kata.

Algoritma Nazief & Adriani

Algoritma Nazief & Adriani yang dibuat oleh Bobby Nazief dan Mirna Adriani ini memiliki tahap-tahap sebagai berikut:

  1. Pertama cari kata yang akan diistem dalam kamus kata dasar. Jika ditemukan maka diasumsikan kata adalah root word. Maka algoritma berhenti.
  2. Inflection  Suffixes  (“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya”) dibuang. Jika berupa particles (“-lah”, “-kah”, “-tah” atau “-pun”) maka langkah ini diulangi lagi  untuk  menghapus  Possesive  Pronouns  (“-ku”, “-mu”, atau “-nya”), jika ada.
  3. Hapus Derivation  Suffixes  (“-i”, “-an” atau “-kan”). Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a.
  • Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut   adalah   “-k”, maka “-k” juga ikut dihapus. Jika  kata  tersebut    ditemukan  dalam  kamus  maka algoritma berhenti. Jika tidak   ditemukan maka lakukan langkah
  • Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan,   lanjut ke langkah 4
  1. Hilangkan derivation prefixes DP {“di-”,“ke-”,“se-”,“me-”,“be-”,“pe”, “te-”} dengan iterasi maksimum adalah 3 kali:
    • Langkah 4 berhenti jika: Terjadi  kombinasi  awalan  dan  akhiran  yang  terlarang
    • Awalan  yang  dideteksi  saat  ini  sama  dengan  awalan  yang  dihilangkan sebelumnya.
  2. Apabila  setelah  langkah  4  kata  dasar  masih  belum  ditemukan,  maka  proses recoding  dilakukan  dengan  mengacu  pada  aturan  pada  Tabel  2.  Recoding dilakukan  dengan  menambahkan  karakter  recoding  di  awal  kata  yang dipenggal.

     6. semua  langkah  telah  selesai  tetapi  tidak  juga  berhasil  maka  kata  awal diasumsikan sebagai root word.

 Kelebihan :

  • Memperhatikan kemungkinan  adanya  partikel-partikel  yang mungkin mengikuti suatu kata berimbuhan.
  • Proses stemming  dokumen  teks  berBahasa  Indonesia menggunakan Algoritma  Nazief  dan  Adriani  memiliki  prosentase  keakuratan  (presisi)  lebih besar dibandingkan dengan stemming menggunakan Algoritma Porter

 Kelemahan :

  • nyamarataan makna variasi kata
  • Jumlah  database  kata  dan  kata  dasarnya  harus  besar.  Kesalahan  terjadi  bila kata  tidak  ditemukan  di  database  dan  kemudian  dianggap  kata  dasar,Padahal bukan.
  • Lamanya  waktu  yang  diperlukan  dalam  proses  pencarian  kata  di  dalam kamus.

      Evaluasi hasil stemming dilakukan secara manual dengan melakukanpengamatan secara langsung terhadap hasil stemming. Untuk menilai apakah hasil stemming yang dilakukan benar atau salah, digunakan Kamus Besar Bahasa Indonesia (KBBI). KBBI berbeda dengan kamus kata dasar yang digunakan sebagai acuan proses stemming. Pada KBBI, setiap kata yang terdapat di dalamnya tidak hanya berupa kata dasar. Selain kata dasar, pada KBBI juga disertakan berbagai variasi bentuk kata dasar tersebut dengan berbagai macam imbuhan.

Algoritma Arifin dan Setiono

     Jika kata dasar dari sebuah kata turunan tidak dapat ditemukan setelah menghilangkan prefix dan suffix nya maka algoritma ini akan mencoba mengembalikan semua imbuhan yang telah dihilangkan tadi untuk dikombinasikan dengan kata hasil stemming dari kata turunan yang kata dasarnya tidak ditemukan pada kamus.

Implementasi – Arifin and Setiono mengajukan skema algoritma yang sedikit lebih sederhana dibandingkan algoritma Nazief and Adriani tetapi yang menjadi kesamaan diantara kedua algoritma tersebut adalah kedua algoritma tersebut menggunakan kamus dan sama-sama menyediakan fungsi recoding.

     Langkah-langkah penghilangan imbuhan-imbuhan yang diterapkan pada algoritma ini adalah dengan menghilangkan prefix/awalan terlebih dahulu baru kemudian menghilangkan suffix/akhiran pada kata turunan yang akan dilakukan stemming. Jika kata turunan yang sudah dilakukan proses stemming yaitu penghilangan prefix kemudian suffix telah berhasil dilakukan, namun tidak dapat ditemukan kata dasarnya pada kamus maka semua imbuhan yang telah dihilangkan tadi dikembalikan untuk kemudian dikombinasikan dengan kata hasil stemming tadi guna mengurangi terjadinya overstemming.

Algoritma Vega

Pada algoritma ini, tidak ada fungsi untuk memeriksa kata dasar dari suatu kata.

Implementasi – algoritma Vega tidak menggunakan kamus. Urutan penghilangan imbuhan yang melekat pada kata untuk algoritma Vega ini, sama seperti urutan penghilangan imbuhan yang diterapkan pada algoritma Arifin dan Setiono.

     Urutan penghilangan imbuhan yang melekat pada kata untuk algoritma Vega ini, sama seperti urutan penghilangan imbuhan yang diterapkan pada algoritma arifin&setiono. Kata yang akan di-stemming, pertama kali diperiksa apakah kata tersebut memiliki awalan, jika kata tersebut memiliki awalan maka langsung dilakukan penghilangan awalan tersebut. Selanjutnya kata tersebutdiperiksa apakah memiliki akhiran, jika iya maka akan dilakukan penghilangan akhiran. Selanjutnya kata tersebutdiperiksa apakah memiliki partikel, jika iya maka akan dilakukan penghilangan partikel. Selanjutnya kata tersebutdiperiksa apakah memiliki possive pronoun (kata ganti kepunyaan), jika iya maka akan dilakukan penghilangan. Pada algoritma ini, tidak ada fungsi untuk memeriksa kata dasar dari suatu kata. Yang dilakukan adalah melakukan pengecekan apabila kata tersebut memiliki imbuhan awalan, akhiran, partikel, possive pronoun, sisipan. Jika iya, langsung dilakukan penghilangan imbuhan tersebut.

Algoritma Porter

Implementasi- Stemming khusus bahasa Inggris yang ditemukan oleh Martin Porter 1980. Mekanisme algoritma dalam mencari kata dasar suatu kata berimbuhan dengan membuang imbuhan-imbuhan (atau lebih tepatnya akhiran) pada kata–kata bahasa Inggris karena dalam bahasa Inggris tidak mengenal awalan. Karena bahasa Inggris datang dari kelas yang berbeda, beberapa modifikasi telah dilakukan untuk membuat Algoritma Porter sehingga dapat digunakan sesuai dengan bahasa Indonesia. Implementasi Porter Stemmer for Bahasa Indonesia berdasarkan English Porter Stemmer yang dikembangkan oleh W.B. Frakes pada tahun 1992. Karena bahasa Inggris datang dari kelas yang berbeda, beberapa modifikasi telah dilakukan untuk membuat Algoritma Porter dapat digunakan sesuai dengan bahasa Indonesia.

Tahapan

  1. Hapus Particle,
  2. Hapus Possesive Pronoun.
  3. Hapus awalan pertama. Jika tidak ada lanjutkan ke langkah 4a, jika ada cari maka lanjutkan ke langkah 4b.
  4. (a) Hapus awalan kedua, lanjutkan ke langkah 5a. (b)Hapus akhiran, jika tidak ditemukan maka kata tersebut diasumsikan sebagai root word. Jika ditemukan makalanjutkan ke langkah 5b.
  5. (a) Hapus akhiran. Kemudian kata akhir diasumsikan sebagai root word. (b) Hapus awalan kedua. Kemudian kata akhir diasumsikan sebagai root word.

 

STOPWORD / STOPLIST

    Filtering adalah tahap pengambilan dari hasil token, yaitu kata-kata apa saja yang akan digunakan untuk merepresentasikan dokumen. Filtering adalah tahap pemilihan kata-kata penting dari hasil token, yaitu kata-kata apa saja yang akan digunakan untuk mewakili dokumen.

   Stoplist atau stopword adalah kata-kata yang tidak deskriptif (tidak penting) yang dapat dibuang dengan pendekatan bag-of-words. Kita memiliki database kumpulan kata-kata  yang  tidak  deskriptif (tidak penting), kemudian kalau hasil tokenisasi itu ada yang merupakan kata tidak penting dalam database tersebut, maka hasil tokenisasi itu dibuang. Contoh  stopwords adalah i’m, you, one, two, they, are, to, the, in, dst.

Presentasi :

Download

sumber :

ALGORITMA_STEMMING

stemming

http://malifauzi.lecture.ub.ac.id/files/2016/02/Text-Pre-Processing-v2.pptx

http://silubislagibelajar.blogspot.co.id/2013/01/metode-steemming.html