• Tidak ada hasil yang ditemukan

Analisa Kombinasi Algoritma Stemming Dan Algoritma Soundex Dalam Pencarian Kata Bahasa Indonesia

N/A
N/A
Protected

Academic year: 2023

Membagikan "Analisa Kombinasi Algoritma Stemming Dan Algoritma Soundex Dalam Pencarian Kata Bahasa Indonesia"

Copied!
7
0
0

Teks penuh

(1)

Analisa Kombinasi Algoritma Stemming Dan Algoritma Soundex Dalam Pencarian Kata Bahasa Indonesia

Irwan Zuhri Simanjuntak

Fakultas Ilmu Komputer dan Teknologi Informasi, Program Studi Teknik Informatika, Universitas Budi Param, Medan, Indonesia Email: irwanzuhri20@gmail.com

Email Penulis Korespondensi: irwanzuhri20@gmail.com

Abstrak−Algoritma Stemming yaitu suatu teknik pencarian bentuk dasar dari suatu term. Yang dimaksud dengan term itu sendiri adalah tiap kata yang berada pada suatu dokumen teks. Algoritma Stemming digunakan dalam penelitian iniuntuk proses penentuan kata dasar dari sebuah kata. Untuk menentukan kata dasar dari kata berimbuhan ini dengan menghilangkan semua imbuhan (afiks) baik yang terdiri dari awalan (prefiks), sisipan (infiks), akhiran (sufiks) dan awalan-akhiran (konfiks) pada kata berimbuhan dengan algoritma Stemming. Algoritma Soundex merupakan algoritma yang mengevaluasi setiap huruf dari kata yang dimasukkan dan memberikan nilai numerik. Fungsi utama dari algoritma ini adalah mengubah setiap kata menjadi kode fonetik dengan panjang empat karakter. Fonetik adalah ilmu yang menyelidiki bunyi bahasa tanpa melihat bunyi itu sebagai pembeda makna dalam suatu bahasa.

Kata Kunci: Prefiks; Infiks; Sufiks; Konfiks; Pencarian Kata; Stemming: Soundex

Abstract−A stemming algorithm is a baic formative searchtechnique of a term. The term it self refers to each word in a text document. The algorithm stemming is used in this study for the elemental process of a word. To establish the root this prefix by eliminating all good prefix (prefix), insert (infyx), end (sufics) and prefix (konfix) of the word stemming. The soundex algoritm is an algorithm that evaluates each letter of the word entered and gives numerical value. The key function of this algorithm is to change each word into a phonetic code with the length of four characters. Phonetics are the sciences that delve into the sounds of language without seeing them as differentiating meanings in a language.

Keywords: Prefix; Inffix; Sufics; Confix, Word Search; Soundex;

1. PENDAHULUAN

Bahasa Indonesia merupakan bahasa Nasional yang digunakan di Negara Republik Indonesia (NKRI). Pada pesatnya perkembangan arus globalisasi, modrenisasi, ilmu pengetahuan, dan teknologi. Bahasa Indonesia harus dapat menjadi sebuah instrumen dalam melakukan komunikasi. Dalam melakukan komunakasi menggunakan bahasa Indonesia biasanya menggunakan beberapa imbuhan.

Bahasa Indonesia kaya akan imbuhan, ada kurang lebih 35 imbuhan yang disebutkan dalam Kamus Besar Bahasa Indonesia. Imbuhan-imbuhan ini dapat berupa prefix (awalan), surfix (akhiran), konfix maupun infix (sisipan), yang diserap dari bahasa Jawa. Pemakaian imbuhan dalam kata bahasa Indonesia dapat digunakan pada semua kata, dan imbuhan-imbuhan tersebut dapat dikombinasikan dengan satu dan lainnya secara bebas, seperti afiksasi, reduplikasi, dan lainnya.

Maka dari itu dalam kasus ini digunakan Algoritma Stemming dan Algoritma Soundex. Dimana algoritma stemming digunakan untuk melakukan teknik pencarian bentuk dasar dari suatu term, dan yang dimaksud term itu sendiri adalah tiap kata yang berada pada suatu dokumen teks. Stemming dilakukan unuk menghilangkan atau menghapus imbuhan awalan pertama, sisipan dan akhirannya. Sedangkan algoritma Soundex digunakan untuk melakukan pengkodean terhadap sebuah kata yang telah dihilangkan imbuhannya menjadi kata dasarnya.

Pada penelitian yang pernah dilakukan oleh Julianto Wibowo, Jurnal Riset Komputer (JURIKOM), Volume : 3, Nomor: 5, Oktober 2016, yang menjelaskan tentang cara kerja algoritma Stemming berupa dalam pengambilan langkah pemotongan pertama pada semua akhiran terlebih dahulu dan selanjutnya dilakukan pemotongan awalan serta pengecekan database kata dasar pada awal dan akhir proses stemming[1]. Penelitian lainnya dilakukan oleh Ika Purwanti

Ningrum, Muh. Yamin, Samsul, Seminar Nasional APTIKOM (SEMNASTIKOM), Hotel Lombok Raya Mataram, 28-29 Oktober 2016, yang menjelaskan pengembangan algoritma yang dilakukan dengan menambahkan klasifikasi huruf dengan jumlah sebanyak 9 klasifikasi terbukti lebih baikdaripada algoritma awal yang hanya memiliki 7 klasifikasi dengan hasil pemberian kata saran yang berkurang tanpa menghilangkan kata saran yang diinginkan[2].

Berdasarkan uraian diatas, penulis akan menerapkan kombinasi algoritma Stemming dan algortima Soundex sebagai solusi dari pemisahan kata untuk mencari kata dasarnya.

2. METODOLOGI PENELITIAN

2.1 Tahapan Penelitian

Dalam melakukan penelitian agar mendapat hasil seperti yang diharapkan, maka diperlukan tahapan penelitian.

Dimana tahapan penelitian yang akan dilakukan yaitu:.

a. Studi literatur

(2)

Tahap ini akan melakukan pencarian referensi dengan cara mengumpulkan materi kata-kata yang memakai imbuhan dari paper, jurnal, dan buku. Memahami dan mempelajari referensi tersebut untuk menyelesaikan permasalahan sebagai penulisan skripsi.

b. Pengumpulan Data

Dalama proses ini pengumpulan data ini dilakukan pegumpulan dataset kata dasar Bahasa Indonesia.

c. Analisis Sistem

Analisis pada sistem dilakukan berdasarkan hasil observasi dari pengumpulan data. Analisa kebutuhan sistem dilakukan unuk menentukan fitur-fitur apa saja yang nantinya akan diterapkan pada sistem..

d. Implementasi sistem

Implementasi ini merupakan proses penerjemahan dari tahap perancangan ke dalam bentuk aplikasi dengan menggunakan VB.Net 2008 dan database menggunakan MySql. Setelah itu dilakukan pengujian terhadap aplikasi apakah telah memenuhi kriteria atau tidak.

e. Implementasi sistem (Implementation system)

Implementasi ini akan dilakukan dengan algoritma Grille Chiper dan Cardan Grille.

2.2 Algoritma Stemming

Stemming merupakan proses untuk mendapatkan root/stem atau kata dasar dari suatu kata dengan cara memisahkan masing-masing kata dari kata dasar dan imbuhannya baik awalan (prefiks) maupun akhiran (sufiks). Sebagai contoh, kata bersama, kebersamaan, menyamai, akan di stem ke root word nya 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. Pada teks berbahasa Inggris, proses yang diperlukan hanya proses menghilangkan sufiks. Sedangkan pada teks berbahasa Indonesia lebih rumit/kompleks karena terdapat variasi imbuhan yang harus dibuang untuk mendapatkan root word dari sebuah kata [10].

Efektifitas algoritma stemming dapat dipengaruhi oleh beberapa factor:

a. Kesalahan dalam proses pemenggalan imbuhan dari kata dasarnya. Kesalahan ini dapat berupa: Overstemming, Understemming, Unchange dan Spelling exception.

b. Kekurangan dalam perumusan aturan penambahan imbuhan pada kata dasar.

c. Jumlah total aturan imbuhan yang didapat berhubungan dengan efektifitas proses temu kembali.

Pada umumnya kata dasar pada bahasa Indonesia terdiri dari kombinasi:

Keterangan :

- DP: derivational prefix - DS: derivational suffix - PP: prossesive pronoun

Algoritma Stemming ini memiliki tahap-tahap sebagai berikut:

a. Cari kata yang akan diistem dalam kamus. Jika ditemukan maka diasumsikan kata adalah root word. Maka algoritma berhenti.

b. 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.

c. Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a :

1. 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.

2. Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke langkah 4.

d. Hapus Derivation Prefix. Jika pada langkah 3 ada sufiks yang dihapus maka pergi ke langkah 4a, jika tidak pergi ke langkah 4b :

1. Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan. Jika ditemukan maka algoritma berhenti, jika tidak pergi ke langkah 4b.

2. 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.

e. Melakukan Recoding.

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

2.3 Algoritma Soundex

DP + DP + ROOT WORD + DS + PP

(3)

Algoritma Soundex merupakan algoritma yang mengevaluasi setiap huruf dari kata yang dimasukkan dan memberikan nilai numerik. Fungsi utama dari algoritma ini adalah mengubah setiap kata menjadi kode fonetik dengan panjang empat karakter. Fonetik adalah ilmu yang menyelidiki bunyi bahasa tanpa melihat bunyi itu sebagai pembeda makna dalam suatu bahasa. Sebuah string yang berbeda namun mempunyai cara pengucapan yang sama, akan memiliki kode fonetis yang sama. Algoritma Soundex dibuat berdasarkan pengucapan dalam bahasa Inggris. Untuk mendukung pencocokan string berdasarkan bahasa Indonesia, pada tahun 1997 oleh Primasari, algoritma Soundex dikembangkan ke dalam bahasa Indonesia dengan mengganti pengelompokan konsonannya ke dalam faktor penyusun konsonan bahasa Indonesia[2].

Algoritma Soundex menerapkan serangkaian aturan ke string untuk menghasilkan kode empat karakter. Langkah- langkah encoding adalah sebagai berikut :

a. Huruf pertama dari kode soundex adalah huruf pertama dari string yang dikodekan.

b. Setelah huruf pertama dalam string, jangan enkode huruf vokal atau huruf H,W dan Y. Huruf-huruf ini dapat mempengaruhi kode dengan hadir tetapi tidak dikodekan secara langsung.

c. Tetapkan digit angka satu dan enam untuk semua huruf setelah yang pertama menggunakan pemetaan berikut:

1. B, F, P, V

2. C, G, J, K, Q, S, X, Z 3. D, T

4. L 5. M,N 6. R

d. Jika digit yang berdekatan sama, hapus semua kecuali satu dari digit tersebut kecuali vokal, H,W atau Y ditemukan di antara mereka dalam teks asli. Kode C# yang diuraikan di bawah ini menggunakan placeholder sementara untuk huruf-huruf yang tidak daat dikodekan ini untuk menghindari penghapusan yang salah dari digit pencocokan yang berdekatan. NB: Bagian “Variasi” di bagian akhir artikel menjelaskan versi alternatif dari aturan ini.

e. Paksa kode untuk menjadi empat karakter panjang dengan padding dengan karakter nol atau dengan pemotongan.

3. HASIL DAN PEMBAHASAN

3.1 Analisa Masalah

Analisa merupakan suatu tindakan untuk mengetahui lebih jauh tentang obyek yang akan diteliti . Pada bab ini akan menguraikan proses analisis terhadap pencarian kata bahasa Indonesia menggunakan Algoritma Stemming dan Algoritma Soundex. Sebelum dilakukan pengembangan dan perancangan sistem, terlebih dahulu dilaksanakan analisis kebutuhan – kebutuhan pokok pencarian kata Bahasa Indonesia dengan Algoritma Stemming dan Algoritma Soundex yang akan dibangun.

Pencarian kata bahasa Indonesia dirancang menggunakan algoritma Stemming dan algoritma Soundex sebagai solusi dalam pencarian kata bahasa Indonesia. Oleh karena itu pada implementasi kombinasi algoritma Stemming dan algoritma Soundex dalam pencarian kata bahasa Indonesia diharapkan dapat menyelesaikan masalah tersebut, dimana dalam kombinasi algoritma Stemming dan algoritma Soundex penyajian sistem pencarian lebih sedikit karena adanya proses seleksi sampai ditemukan kata itu sendiri.

Dalam pengkombinasian ini, algroritma Stemming berperan untuk menghilangkan semua imbuhan pada kata, dan algortima Soundex berperan melakukan pengkodean kata dasar terhadap kata yang telah dihilangkan imbuhannya pada algoritma Stemming.

Gambar 1. Skema Studi Literatur 3.2 Analisa Pencarian Kata

Kata dasar merupakan satuan bahasa terkecil yang memiliki makna, kata tersebut belum mengalami penambahan atau perubahan bentuk yang mengakibatkan perubahan makna. Dengan pengertian lain bahawa kata dasar ialah kata yang belum di beri imbuhan dan kata yang menjadi dasar awal pembentukan kata yang lebih besar. Kata dasar ialah kata yang paling sederhana yang belum memiliki imbuhan, juga dapat dikelompokkan sebagai bentuk asal “tunggal” dan bentuk dasar “kompleks”.

(4)

3.3 Kombinasi Algoritma Stemming Dan Algoritma Soundex Dalam Pencarian Kata Bahasa Indonesia Pada bagian sebelumnya Algoritma stemming yang telah diuraikan, oleh karena itu ada menambahkan cara pada proses stemming agar dapat kata dasar dari kata berimbuhan. Penambahannya berupa pembagian kata berimbuhan yang dikelompokkan menjadi empat bagian sesuai dengan imbuhan yang dimiliki oleh kata berimbuhan tersebut.

Dibawah ini adalah salah satu contoh kata yang akan diproses menggunakan Stemming untuk menghilangkan setiap kata yang memiliki imbuhan yaitu “Memperlihatkan”

Adapun rumusan dari algoritma Stemming ini:

Keterangan:

a. Derivation prefiks I = Mem b. Derivation prefiks II = per c. Root word = lihat

d. Derivation sufiks = kan

Adapun proses dari tahap pemotongan kata pada kata berimbuhan diatas dapat dilihat dari penjelasan pada table dibawah ini :

Tabel 1. Tahapan Algoritma Stemming

Tahap Proses Kata Asal Hasil Potong Kata Akhir

1 Cek Database Memperlihatkan - Memperlihatkan

2 Buang Partikel (-kan) Memperlihatkan Memperlihat Memperlihat 3 Buang Awalan I (-mem) Memperlihat Perlihat Perlihat 4 Buang Awalan II (-per) Perlihat Lihat Lihat

5 Cek Database Lihat - Lihat

Cara Stemming diatas dilakukan juga pada kata yang memiliki imbuhan, lalu setelah semua kata berimbuhan melalui proses Stemming, maka hasil tersebut yang sebelum nya “Memperlihatkan” akan menjadi “Lihat” ,setelah itu akan digunakan algoritma berikutnya yaitu algoritma Soundex untuk melakukan pengkodean kata yang bisa digunakan sebagai kata dasar dari kata berimbuhan yang telah di proses di algoritma Stemming.

Proses pencocokan dengan algoritma Soundex, yaitu dengan mengkonversi semua kata menjadi kode Soundex. Kemudian dilakukan pengkodean berdasarkan kode Soundex, adapun aturan-aturan dalam melakukan pengkodean Soundex yang ditampilakan penjelasan dibawah ini dan langsung memasukkan kata yang telah di dapat dari hasil Stemming di atas yaitu “Lihat”, maka cara nya adalah sebagai berikut:

a. Ubah semua huruf menjadi UPPERCASE

L i H A T

L I H A T

Lihat = LIHAT

b. Pertahankan huruf pertama lalu semua huruf vokal tidak dikode kan sesuai aturan pengkodean.

L I H A T

L T

LIHAT = LT

c. Ganti setiap huruf menjadi kode sesuai aturan pengkodean

L I H A T

L 3

LT = L3

d. Jika pengkodean tidak mencapai empat karakter, maka dilakukan penambahan angka nol (0) sesuai dari ketentuan Soundex

L I H A T

L 3

L3 = L300

DP + DP + ROOT WORD + DS + PP

(5)

Maka kode Soundex untuk kata “lihat” adalah “L300”. Dari “L3” menjadi “L300” karena ada penambahan angka “0” 2 (dua) digit. Kode soundex terdiri dari 4 (empat) digit, karena digitnya kurang dari 4 (empat) maka harus ditambah dengan angka “0”. Kemudian hal yang sama juga dilakukan terhadap semua kata.

3.4 Pemodelan Visual Menggunkan UML

Penulis menggunakan UML untuk mendesain dan merancang aplikasi pencarian kata bahasa Indonesia, karena UML menyediakan bahasa pemodelan visual yang memungkinkan bagi pengembang sistem untuk membuat cetak biru atas visi dalam bentuk yang baik, mudah dimengerti serta dilengkapi dengan mekanisme yang efektif untuk sharing (berbagi) dan mengkomunikasikan rancangan yang lain. Adapun UML yang digunakan adalah use case diagram dan activity Diagram.

a. Use Case Diagram

Use case diagram menguraikan kebutuhan (requirement) yang diharuskan atau diwajib user (pengguna), dan sangat berfungsi didalam memilih struktur model dan orginasi dari sebuah system. Use case diagram mendefinisikan suatu komunikasi antara satu atau lebih aktor dengan system informasi yang akan dirancang. Use case diagram difungsikan untuk mengetahui kegunaan apa saja yang ada di dalam sebuah system. Gambar use case diagram pada aplikasi pencarian kata bahasa Inonesia dapat dilihat pada gambar 3 :

Gambar 3. Use Case Diagram Kombinasi Stemming dan Soundex b. Activity Diagram

Activity Diagram (diagram aktifitas) adalah sebuah diagram yang menjelaskan logika prosedural dan jalur kerja program aplikasi yang dibuat baik dari sisi user (pengguna) maupun dari sisi sistem. Diagram aktifitas digambarkan mulai dari halaman utama program aplikasi sampai dengan selesai, seperti yang dilihat pada gambar dibawah ini:

1. Activity diagram form Menu Utama

Gambar 4. Activity diagram form menu utama

(6)

2. Activity Diagram Sub Menu File

Gambar 5. Activity Diagram Sub Menu File 3. Activity Diagram Form Pencarian Kata

Gambar 6. Activity Diagram Form Pencarian Kata

4. KESIMPULAN

Adapun kesimpulan yang diperoleh dari penelitian ini dimana terbentuknya sebuah kata berimbuhan terjadi karena memberikan imbuhan awal dan di akhir sebuah kata. Tahap pengerjaan algoritma Stemming berupa pengambilan langkah pemotongan pertama pada awal kata terlebih dahulu dan selanjutnya dilakukan pemotongan semua akhiran serta melakukan pemeriksaan database kata dasar pada awal dan akhir proses Stemming. Pengkodean kata dapat dilakukan dengan mencocokkan pattern yang ada dengan kode sesuai.Algoritma Soundex dapat diterapkan dalam perancangan pengkodean kata dasar sehingga dapat memudahkan pengguna untuk mencari kata yang ingin diganti sesuai kode fonetis soundex. Perancangan aplikasi penentuan kata dasar dari kata berimbuhan Bahasa Indonesiadengan algoritma Stemmingdan melakukan pengkodean Soundex menggunakan visual basic Net. 2008 dengan MySql..

REFERENCES

[1] A. Penentuan, K. Dasar, and D. Kata, “PADA KALIMAT BAHASA INDONESIA DENGAN ALGORITMA,” JURIKOM, vol. 3, pp. 346–350, 2016.

[2] I. P. Ningrum and M. Yamin, “PENGEMBANGAN ALGORITMA SOUNDEX PADA SPELL CHECKER,” vol. 3, no. 1, pp. 28–29, 2016.

(7)

[3] S. B. M, “Metode Perancangan Arsitektur,” 2012.

[4] S. Nafisah, “Java for Mobile Programing,” Java Mob. Programing, 2003.

[5] R. S. Pressman, “Software Engineering,” Softw. Eng., vol. 7, 2010.

[6] DosenPendidikan, “Kata Dasar,” DosenPendidikan.com, 2014. https://www.dosenpendidikan.co.id/kata-dasar/.

[7] MateriBelajar, “Imbuhan – Pengertian, Jenis-Jenis Dan Awalan ( Prefiks ),” MateriBelajar.co.id.

https://www.materi.carageo.com/imbuhan/.

[8] R. Teguh dan Sudiadi, “Teknik Riset Operasional,” Tek. Ris. Oper., 2104.

[9] P. Setiawan, “Riset operasi - Pengertian, Tahapan, Model, Definisi, Tujuan, Contoh,” Parta Setiawan, 2019.

https://www.gurupendidikan.co.id/riset-operasi/.

[10] H. Koryati, E., Mandala, R., Munir, R., “Sistem Stemming Otomatis Untuk Kata Dalam Bahasa Indonesia.,” Semin. Nas.

Apl. Teknol. Iformasi, 2004.

Referensi

Dokumen terkait

Tujuan penulisan dalam penelitian adalah membuat aplikasi stemming porter Bahasa Indonesia supaya efektif dan mampu menangani proses stemming (mencari kata

Sistem pencarian turunan kata pada Al-Quran menggunakan metode light stemming dan clustering telah berhasil dibuat beserta penulisan query yang sesuai untuk pembicara

Peneliti menggunakan metode stemming yaitu Porter Stemming yang digunakan untuk mengolah kata-kata berimbuhan menjadi kata dasar.. Selanjutnya diproses lebih lanjut

Abstrak – Ekstraksi kata dasar atau stemming pada Bahasa Indonesia adalah proses yang kompleks di mana beberapa partikel awal dan beberapa partikel akhiran dari

Algoritma yang digunakan untuk mencari kata dasar antara bahasa satu dengan bahasa lain akan berbeda, karena setiap bahasa memiliki aturan sendiri dalam proses pembentukan

IMPLEMENTASI ALGORITMA STEMMING PORTER TERMODIFIKASI PADA APLIKASI PLUGIN PENDETEKSI KESALAHAN PENULISAN KATA BERBAHASA INDONESIA Oleh Marsel Widjaja 10110110090 telah diujikan

Untuk plagiasi berbasis parafrase yang merubah struktur kalimat, baik algoritma Winnowing murni maupun algoritma Winnowing- Stemming menunjukkan kinerja yang lebih

Untuk plagiasi berbasis parafrase yang merubah struktur kalimat, baik algoritma Winnowing murni maupun algoritma Winnowing-Stemming menunjukkan kinerja yang lebih