Referensi para programer

Advertisements

Breaking

Tuesday 25 April 2017

Algoritma Stemming Porter Bahasa Indonesia



Pagi guys, semoga selalu diberi kesehatan dan keberkahan di hari ini. Aaammiinn 😊
Buat temen-temen semua yang lagi pusing nih, galau ngga nemu - nemu koding buat bikin project tentang Temu Balik Informasi (Information Retrieval). Temen - temen bisa mencontoh koding dibawah ini yang bisa dijadikan referensi. yups, sebelum kita lihat koding alangkah lebih baiknya kita mengenal dulu apa itu Stemming, dan algoritma porter.

Stemming adalah  teknik untuk menjadikan kata-kata dalam sebuah dokumen yang berupa teks menjadi kata dasar. Pada proses stemming berbeda dalam tiap bahasa, karena pada setiap bahasa yang digunakan disebagian negara memiliki aturan-aturan berbeda saat meggunakan kata berimbuhan dalam penggunaanya.

Pada proses stemming merupakan pengelolaan keyword menjadi keyword yang utuh yaitu dengan menghilangkan imbuhan seperti diantaranya “yang”, “di”,”ke”,”me”, “meng”, dan “kan”. Penguraian dari suatu kata menjadi bentuk kata dasarkan (stem). Tahapan pada proses stemming :
1. Token hasil tokenizing diperiksa apakah mengandung imbuhan atau tidak
2. Jika terdapat imbuhan maka akan dilakukan pembuangan imbuhan, terus berulang sampai tidak mengandung imbuhan.
3. Jika tidak mengandung imbuhan maka akan ditampilkan
Pada gambar dibawah ini menunjukan tahapan yang dilakukan sistem dalam mencari kata dasar dari sebuah file dokumen yang diinputkan.

Algoritma Porter ditemukan oleh Martin Porter 1980. Algoritma tersebut digunakan untuk stemming Bahasa Inggris, kemudian karena proses stemming bahasa Inggris berbeda dengan bahasa Indonesia, maka dikembangkan algoritma Porter khusus untuk bahasa Indonesia (Porter Stemmer for Bahasa Indonesia) oleh W.B Frakes pada tahun 1992.
Langkah-Langkah Algortima pada Porter Stemmer.
1. Menghapus Partikel seperti: kah, lah, tah
2. Menghapus Kata ganti (Possesive Pronoun), seperti ku, mu, nya
3. Menghapus awalan pertama. Jika tidak ditemukan, maka lanjut ke langkah 4a, dan jika ada maka lanjut ke langkah 4b.
4. a. Menghapus Awalan kedua, dan dilanjutkan pada langkah 5a
b. Menghapus akhiran, jika tidak ditemukan maka kata tersebut diasumsikan sebagai kata dasar (rootword). Jika ditemukan maka lanjut ke langkah 5b.
5. a. Menghapus akhiran dan kata akhir diasumsikan sebagai kata dasar (root word).
b. Menghapus awalan kedua dan kata akhir diasumsikan sebagai kata dasar (root word)


 Nah, udah pada tau kan apa itu algoritma porter, sekarang next kita lanjut ke kodingnya :
berikut adalah koding stemminya :

nah itu adalah langkah-langkah dalam algoritma porter, di atas ada
include "koneksi.php" --> itu untuk memasukan koneksi.php kedalam proses stemming. karena saya menggunakan database. untuk databasenya akan saya posting di next post. tunggu postingan saya berikutnya :D
dalam penggunaanya kita bisa memanggil functionya dengan koding berikut :
print_r(hapuspartikel($kata)); --> maka akan tampil hasil stemming kata kita inputkan
untuk memasukan inputan bisa temen - temen baca lagi postingan HTML saya sebelumnya di
Baca juga : source code stoplist tanpa database
Sekian postingan saya kali ini, jangan lupa like fanspage and share ilmu ini, Happy coding :)

No comments:

Post a Comment