Tahapan dalam Text Mining
Sebelum membahas Stoplist dan Stemming, kita perlu memahami tahapan dalam Text Mining. Pada saat proses Text Mining setelah dilakukan tokenizing, atau pemisahan kalimat berdasarkan pada kata yang ada, kemudian dilakukan proses filtering. Di proses inilah algortima Stoplist digunakan untuk membuang kata kata yang kurang penting. Setelah itu hasilnya akan berupa list kata yang akan menjadi kunci index atau index term dari dokumen. Namun masih berupa kata yang mempunyai awalan dan akhiran. Proses Stemming dilakukan untuk mengembalikan kata yang ada ke bentuk dasarnya.
Pembahasan kita kali ini hanya pada Stoplist dan Stemming sehingga Tagging dan Analizing tidak kita bahas sekarang.
- Tokenizing
Tokenizing adalah tahap pemotongan kalimat berdasarkan tiap kata yang menyusunnya.
- Filtering
Filtering adalah tahap mengambil kata-kata dari hasil token, jika menggunakan algoritma stoplist maka membuang kata-kata yang termasuk dalam stopword list (list kata kata yang kurang penting).
- Stemming
Stemming adalah tahapan untuk mencari kata dasar dari hasil filtering.
- Tagging
Tagging adalah tahap mencari bentuk awal dari tiap kata lampau, karena dalam bahasa indonesia tidak ada kata lampau maka tidak dibahas disini.
- Analyzing
Analyzing merupakan tahap untuk menentukan seberapa jauh keterkaitan antar kata kata antar dokumen sehingga tidak dibahas terlebih dahulu disini.
Stoplist
Merupakan fitur yang dimiliki sistem information retrival dimana term/kata-kata yang di anggap umum akan diabaikan dalam proses indexing.
Contoh: dan, atau, adalah, yang
Stemming
Proses mentrasformasikan kata kata dalam dokumen menjadi kata akarnya (root word) atau kata dasar atau proses penghilangan imbuhan kata.
Stem (akar kata) adalah bagian dari kata yang tersisa setelah dihilangkan imbuhannya(awalan dan akhiran).
Contoh: ajar adalah stem dari belajar, diajar dan pelajaran.
Konsep Stemming: Algoritma Porter
Langkah-langkah algoritma pada algoritma Porter adalah sebagai berikut:
- Hapus Particle.
- Hapus Possesive Pronoun.
- Hapus awalan pertama.
Jika tidak ada lanjutkan ke langkah 4a, jika ada cari maka lanjutkan ke langkah 4b. - a. Hapus awalan kedua, lanjutkan ke langkah 5a.
b. Hapus akhiran, jika tidak ditemukan maka kata tersebut diasumsikan sebagai root word. Jika ditemukan maka lanjutkan ke langkah 5b. - a. Hapus akhiran. Kemudian kata akhir diasumsikan sebagai root word.
b. Hapus awalan kedua. Kemudian kata akhir diasumsikan sebagai root word.
Aturan Inflectional Particle
Aturan Inflectional Possesive Pronoun
Aturan First Order Derivational Prefix
Aturan Second Order Derivational Prefix
Penerapan Algoritma Porter pada Bahasa Pemrograman.
Konsep Stemming: Algoritma Nazief dan Adriani
Algoritma yang dibuat oleh Bobby Nazief dan Mirna Adriani ini memiliki tahap-tahap sebagai berikut:
- Cari kata yang akan distem dalam kamus. Jika ditemukan maka diasumsikan bahwa kata tesebut adalah root word. Maka algoritma berhenti.
- 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.
- Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a.
a. 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 3b.
b. Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke langkah 4. - Hapus Derivation PrefixJika pada langkah 3 ada sufiks yang dihapus maka pergi ke langkah 4a, jika tidak pergi ke langkah 4b.
a. Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan. Jika ditemukan maka algoritma berhenti, jika tidak pergi ke langkah 4b.
b. For i = 1 to 3, tentukan tipe awalan kemudian hapus awalan. Jika root word belum juga ditemukan lakukan langkah 5, jika sudah maka algoritma berhenti.
Catatan: jika awalan kedua sama dengan awalan pertama algoritma berhenti. - Melakukan Recoding.
- Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal diasumsikan sebagai root word. Proses selesai.
Presentasi:
Download
Program:
https://github.com/ditdot/irp
Sumber:
[1] http://tessy.lecturer.pens.ac.id/kuliah/dm/6Text%20Mining.pdf
[2] https://yudiagusta.files.wordpress.com/2009/11/196-201-knsi09-036-perbandingan-algoritma-stemming-porter-dengan-algoritma-nazief-adriani-untuk-stemming-dokumen-teks-bahasa-indonesia.pdf
[3] https://tartarus.org/martin/PorterStemmer/