Stem kata bahasa Indonesia berdasarkan Porter Stemmer, dengan menggunakan algoritma yang dipaparkan dalam paper A Study of Stemming Effects on Information Retrieval in Bahasa Indonesia, oleh Fadillah Z Tala.
English translation is available here.
Tambahkan baris ini di Gemfile aplikasi anda:
gem 'indonesian_stemmer'
Kemudian jalankan:
$ bundle
Atau instal sendiri seperti ini:
$ gem install indonesian_stemmer
require 'rubygems'
require 'indonesian_stemmer'
IndonesianStemmer.stem('mendengarkan') # => "dengar"
'beriman'.stem # => "iman"
Atau mencobanya langsung dari web: indonesian-stemmer.adindap.com.
Gem ini masih dalam tahap pengembangan dan penyempurnaan. Meskipun sudah banyak upaya dalam pemilihan kata dan penanganan kata-kata yang ambigu, jangan mengandalkan gem ini untuk analisa ilmiah atau proyek lainnya. Berikut adalah masalah-masalah yang diketahui atau kasus-kasus yang tidak ditangani oleh gem ini dengan benar:
- Kata-kata turunan yang memiliki kata dasar yang berbeda. Contohnya
memasak
yang memiliki 2 kata dasar yang sama, yaitupasak
danmasak
. Saat ini kami mutuskan untuk mengeluarkan hasil kata dasar berdasarkan kata yang lebih umum digunakan (menurut pendapat kami). Dalam contoh ini, katamasak
yang kami pilih. - Kata-kata turunan yang berasal dari kata dasar yang hanya mengandung 1 suku kata. Contohnya
mengebom
yang berasal dari katabom
. - Tidak menangani awalan se-, semua bentuk sisipan.
Jika ada masalah lain di luar hal-hal di atas, silahkan buat tiket baru
Awalnya, gem ini merupakan implementasi dari sistem penganalisa untuk bahasa Indonesia, dari proyek Apache Lucene, ke dalam bahasa Ruby. Gem ini sudah mengalami beberapa perubahan algoritma dalam mengenali awalan kata, terutama terhadap kata-kata yang ambigu.
- Situs Resmi Kamus Bahasa Indonesia
- Untuk mencari dan memverifikasi kata indonesia, Kateglo Bahtera
- Artikel Wikipedia yang berjudul Prefiks dalam Bahasa Indonesia
- Fork proyek ini
- Buat branch untuk fitur anda (
git checkout -b my-new-feature
) - Commit perubahan-perubahan yang anda buat (
git commit -am 'Tambahkan fitur baru'
) - Push ke branch itu (
git push origin my-new-feature
) - Ajukan Pull Request baru
Setelah bersyukur kepada Allah Subhanahu Wa Ta'ala, kami ingin mengucapkan terima kasih kepada:
- Fadillah Z Tala & Apache Lucene sehingga kami dapat mulai membuat gem ini
- Penyedia Kateglo Bahtera, karena telah menyediakan API nya sehingga saya bisa memilih & memisahkan kata-kata ambigu, dan akhirnya memeriksa validitas hasil kata.