Information Retrieval : Tutorial Stemming Porter untuk Bahasa Indonesia

Share :

Hmm, Tutorial kali ini saya akan membahas tentang Stemming. Hehe.. tutorial ini sebenarnya merupakan bagian dari tugas yang diberikan pada matakuliah “Sistem Temu Balik Informasi” atau kalau dalam bahasa inggris disebut juga “Information Retrieval System” atau kalau dalam istilah ilmu komputer sering disebut “Information Retrieval” atau biasa disingkat “IR”. šŸ™‚

Hehe.. lalu apa sih hubungannya IR dengan Stemming, kenapa harus ada stemming dan bagaimana proses stemming itu sendiri? Ok. sebelum kita bahas tutorialnya kita bahas dulu apa itu stemming. Ok.. mari… šŸ˜€


Oke, jadi Stemming merupakan suatu proses untuk menemukan kata dasar dari sebuah kata. Proses stemming dilakukan dengan menghilangkan semua imbuhan (afiks) baik yang terdiri dari awalan (prefiks) sisipan (infiks) maupun akhiran (sufiks) dan kombinasi dari awalan dan akhiran (konfiks). Stemming ini digunakan untuk mengganti bentuk dari suatu kata menjadi kata dasar sesuai dengan struktur morfologi bahasa indonesia yang baik dan benar.

Nah, lalu apa hubungan IR dengan stemming?, ok. Jadi stemming merupakan bagian dari proses Information Retrieval. Secara umum ada dua proses utama dalam IR, yaitu Indexing dan Searching. Proses Indexing terdiri dari 4 subproses antara lain : Word Token (mengubah dokumen menjadi kumpulanĀ term dengan cara menghapus semua karakter dalam tanda baca yang terdapat pada dokumen dan mengubah kumpulanĀ term menjadiĀ lowercase), StopWord Removal (Proses penghapusan kata-kata yang sering ditampilkan dalam dokumen seperti:and, or, not dan sebagainya), Stemming (Proses mengubah suatu kata bentukan menjadi kata dasar) dan Word Weighting (Proses pembobotan setiapĀ term di dalam dokumen). Nah, Stemming ini masuk dalam subproses indexing yang akan kita bahas tutorialnya… šŸ™‚

Ada banyak algoritma yang digunakan untuk melakukan proses stemming, khususnya stemming bahasa indonesia. Algoritma-algoritma tersebut antara lain : Algoritma Nazief dan Andriani, algoritmaĀ Arifin dan Setiono, algoritmaĀ IdrisĀ dan Mustofa,Ā algoritma Vega, algoritma Ahmad, Yussof dan Sembok, Porter dsb. Algoritma yang diimplementasikan dalam tutorial ini menggunakan algoritma Porter. Ā 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. Berikut Flowchart untuk algoritma Porter untuk bahasa Indonesia:

Untuk lebih jelasnya mengenai proses stemming porter untuk bahasa indonesia ini silakan download slide Porter Bahasa Indonesia yang pernah saya presentasikan dikelas. Ā Kebetulan algoritma ini saya implementasikan menggunakan PHP dengan database MYSQL yang bisa anda download sourcecode-nya disini: Porter Stemmer PHP . Selamat belajar dan mencoba, semoga bermanfaat .. šŸ™‚

This entry was posted on Saturday, March 17th, 2012 at 11:58 am and is filed under Programming. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

21 Responses to “Information Retrieval : Tutorial Stemming Porter untuk Bahasa Indonesia”

  1. andhie Says:

    thx ya gan bantu bgt buat referensi ^^

  2. admin Says:

    @mas andhie : Sama2 mas, semoga membantu.. šŸ™‚

  3. ToPu Says:

    Wkwkwk, nggolek porter malah kesasar nang kene….
    Piye mas, pdf-e wis dadi rung???
    ow yo jo lali mampir nang webQ yo.., belakangan kiy Q jarang nulis dadi artikele sih sitik, hehehehe….

  4. admin Says:

    @Topu : Terimakasih atas kunjunangannya mas.. :), hmm. untuk yang PDF sedang dalam tahap pengembangan… berhubung dukungan server yang belum memenuhi, maka untuk sementara baru menerima dokumen word (.doc) & plain text (.txt)

  5. alif Says:

    mas, ijin download.. dan mau tanya, apa ada variasi coding yang telah sampean lakukan pada porter for bahasa indonesia????

  6. admin Says:

    @mas alif : monggo mas… šŸ™‚ , coding yang saya tulis mengacu pada algoritma “stemming porter untuk bahasa indonesia” yang ada pada slide yang saya sertakan, memang ada sedikit penyesuaian karena stemming porter bahasa inggris berbeda dengan bahasa indonesia.

  7. alif Says:

    mas,ini inputanya hanya kata ya???saya pengenya inputanya beberapa kalimat, trus, di token 1 per satu katanya..lalu baru di porter..gmana caranya mas???ni ada tugas…mkcc

  8. admin Says:

    @alif : hmm.. insyaAllah nanti akan saya bahas inputan berupa kalimatnya.. ditunggu aja ya šŸ™‚

  9. Information Retrieval: Tutorial Stemming Porter untuk Bahasa Indonesia Bagian II | KabulKurniawan.Com Says:

    […] artikel yang pernah saya tulis sebelumnya tentang salah satu implementasi proses Stemming yaitu Stemming Porter untuk bahasa Indonesia . Di postingan tersebut telah dibahas bagaimana melakukan stemming pada sebuah kata untuk […]

  10. alif Says:

    alhamdulillah sudah bisa mas..terima kasih..entar kalo ada pertanyaan, saya tany lagi ya mas..semoga sampean sehat selalu…amien

  11. Meisya Fitri Says:

    mau tanya,,
    1. gmn membedakan kata dengan awalan ber dan beutk mencari kata dasarnya
    contoh
    berencana
    berakhir
    berkerja
    2. apa kata yang menggunakan awalan bel dan pel hanya belajar dan pelajar??
    Mohon bantuannya…

    meisyathedream.wordpress.com

  12. reza Says:

    mas gimana cara melakukan stemming pada dokumen web(html.htm) karena pada dokumen web terdapat gambar?

  13. Damar Says:

    saya sangat berterima kasih mas atas tulisan yg sangat bermanfaat ini.
    kalau untuk algoritma Paice/husk gimana mas implementasinya? menurut saya ini agak sulit. šŸ™‚

  14. Damar Says:

    saya sangat berterima kasih mas atas tulisan yg sangat bermanfaat ini.
    kalau untuk algoritma Paice/husk pada bahasa Inggris gimana mas implementasinya? menurut saya ini agak sulit.
    regards šŸ˜€
    Damar

  15. Damar Says:

    saya sangat berterima kasih mas atas tulisan yg sangat bermanfaat ini.
    kalau untuk algoritma Paice/husk pada bahasa Inggris gimana mas implementasinya? menurut saya ini agak sulit.
    regards šŸ˜€
    adjie_thejack@yahoo.com
    Damar

  16. fiqi Says:

    wah, mirip seperti Tugas Akhir saya, tapi saya dengan membandingkan beberapa algoritma luar yang disadur ke dalam bahasa indonesia..
    nice artikel.. šŸ™‚

  17. Oguds Says:

    Menurut saya, kodingnya buruk ya… kenapa perlu akses ke database? Bila ada ribuan kata dan ribuan artikel, ini akan sangat lama. Kinerja PHP juga kurang bagus untuk proses dalam jumlah banyak. Lagipula, hasil percobaannya bagaimana? Tingkat akurasinya bagaimana?

    Coba cek tugas serupa yang pernah saya buat: http://oguds.wordpress.com/2007/10/20/algoritma-stemmer-bahasa-indonesia/.

  18. pstemmer Says:

    artikel yang bagus, membuat algoritma stemming memang susah,
    btw sementara coba download dulu yang ini

    http://persadasoft.ucoz.com/Download/Persada_Stemmer_v1.1.zip

  19. na2ng Says:

    slam knal. bila di dlam vb6 sintacnya sperti ap mas?

  20. may moen Says:

    bisa g postkan juga tentang standard test collection??? tolong bantuannya..

    Terimakasih.

  21. Halra Says:

    makasih mas kabul untuk tutorial tentang Stemming Porter untuk Bahasa Indonesia,
    sangat berguna sekali untuk menambah wawasan saya

Leave a Reply

CommentLuv badge