Tulis aja dulu, siapa tahu orang lain butuh :-)

SISTEM TEMU-KEMBALI INFORMASI "ENHANCED CONFIX STRIPPING PORTER"

BAB I
PENDAHULUAN

1.1   Latar Belakang
Pencarian informasi berupa dokumen teks atau yang dikenal dengan istilah Information Retrieval (IR) merupakan proses pemisahan dokumen-dokumen yang dianggap relevan dari sekumpulan dokumen yang tersedia. Bertambahnya jumlah dokumen teks yang dapat diakses di internet diikuti dengan meningkatnya
kebutuhan pengguna akan perangkat pencarian informasi yang efektif dan efisien, menyebabkan diperlukannya pengembangan dari teknologi IR. Efektif berarti user mendapatkan dokumen yang relevan dengan query yan diinputkan oleh user. Efisien berarti waktu pencarian yang sesingkat-singkatnya. Salah satu penerapan dari Information Retrieval (IR) adalah Search Engine. Dengan adanya Search Engine, dokumen yang dicari dapat ditemukan sesuai dengan kebutuhan.
Dalam perkembangannya, kurang lebih ada sekitar 35 imbuhan resmi yang disebutkan dalam Kamus Besar Bahasa Indonesia. Imbuhan-imbuhan in terdiri dari prefiks (awalan), sufiks (akhiran), konfiks, maupun infiks (sisipan). Satu hal yang unik dari Bahasa Indonesia adalah kecenderungan pemakaian imbuhan secara bebas dan imbuhan-imbuhan tersebut dapat dikombinasikan satu dengan lainnya.
Seperti halnya bahasa-bahasa lainnya, Bahasa Indonesia juga memiliki struktur sehingga bahasa tersebut dapat dipahami oleh banyak orang. Dalam Bahasa Indonesia, terdapat huruf-huruf, kata-kata, dan kalimat-kalimat dimana kumpulan huruf-huruf membentuk kata, kumpulan kata membentuk kalimat kumpulan kalimat membentuk paragraf, dan seterusnya. Pada penerapannya dalam tulisan, banyak orang yang masih salah saat menuliskan kata-kata dalam bahasa Indonesia sesuai dengan kata dasarnya.
Dalam Information Retrieval (IR), stemming merupakan bagian dari preprocesing yang dimana fungsinya agar menemukan kata dasar dari sebuah kata dengan menghilangkan semua imbuhan. Untuk penentuan pemisahan dari imbuhan yang terdapat pada suatu kata maka pada stemming ini memiliki beberapa algoritma yang sesuai. Salah satu metode yang digunakan pada stemming Bahasa Indonesia adalah ECS (Enhanced Confix Stripping) dan Porter Stemmer. ECS adalah stemming yang sudah teruji keakuratannya tetapi prosesnya lambat dan Porter Stemmer merupakan metode stemming  paling cepat dalam pemrosesan data namun hasilnya tidak seakurat ECS.

1.2   Rumusan Masalah
Adapun rumusan masalah dari makalah ini yaitu :
a.       Bagaimana algoritma stemming ECSP (Enhanced Confix Strippng Porter)?
b.      Bagaimana tahapan pada stemming ECSP (Enhanced Confix Strippng Porter)?
c.       Bagaimana contoh implementasi beberapa kata pada stemming ECSP (Enhanced Confix Strippng Porter)?
d.      Apa saja kelebihan dan kekurangan pada stemming ECSP (Enhanced Confix Strippng Porter)?

1.3   Tujuan
Adapun tujuan dari makalah ini yaitu :
a.       Untuk mengetahui algoritma stemming ECSP (Enhanced Confix Strippng Porter)
b.      Untuk memahami tahapan pada stemming ECSP (Enhanced Confix Strippng Porter)
c.       Untuk mengetahui contoh implementasi beberapa kata pada stemming ECSP (Enhanced Confix Strippng Porter)
d.      Untuk memahami kelebihan dan kekurangan pada stemming ECSP (Enhanced Confix Strippng Porter)




BAB II
PEMBAHASAN

2.1 Pengertian
Stemming adalah suatu proses pengembalian suatu kata berimbuhan ke bentuk dasarnya. Metode pada stemming bahasa indonesia adalah ECS ( Enhanced Confix Stripping) dan porter stemmer. ECS adalah metode stemming yang sudah teruji keakuratannya tetapi prosesnya lambat dan porter stemmer merupakan metode stemming paling cepat dalam proses data namun hasilnya tidak seakurat ECS.
Kombinasi Enhanced Confix Stripping (ECS) dan porter stemmer telah diimplikasikan dalam sebuah Stemmer pengembangan yaitu Enhanced Confix Stripping Porter (ECSP). ECSP merupakan hasil perpaduan algoritma dan rule ECS dengan Porter.

2.2 Algoritma ECSP (Enhanced Confix Stripping Porter)
Aturan  pemenggalan awalan ECSP
Aturan ke-
Imbuhan
Perubahan Imbuhan
1
BerV...
BerV...|be-rV...
2
BerCAP...
Ber-CAP...dimana C!=’r’ dan P!=’er’
3
BerCAerV...
Ber-CaerV...dimana C!=’r’
4
Belajar...
Bel-ajar...
5
BeC1erC2
Be-C1erC2...dimana C1!={‘r’|’l’}
6
TerV...
Ter-V...|te-rV...
7
TerCerV
Ter-CerV...dimana C!=’r’
8
TerCP...
Ter-CP...dimana C!=’r’dan P!=’er’
9
TeClerC2...
Te-ClerC2...dimana C1!=’r’
10
Me{l|r|w|y}V...
Me-{1|r|w|y}V...
11
Mem{b|f|v}...
Mem-{b|f|v}...
12
Mempe
Mem-pe...
13
Mem{rV|V}...
Me-m{rV|V}...| Me-p{rV|V}...
14
Men{c|d|j|z|s}...
Men-{c|d|j|z|s}...
15
MenV...
Me-nV...| me-tV...
16
Meng{g|h|q|k}...
Meng-{{g|h|q|k}...
17
MengV...
Meng-V...| meng-kV...|


(mengV-...jika V=”e”)
18
MenyV...
Meny-sV...
19
MempA...
Mem-pA...dimana A!=’e’
20
Pe{w|y}V...
Pe-{w|y}V...
21
PerV...
Per-V...| pe-rV...
22
PerCAP...
Per-CAP... dimana C!=’r’ dan P!=’er’
23
PerCAerV...
Per-CAerV... dimana C!=’r’
24
Pem{b|f|v}...
Pem-{b|f|v}...
25
Pem{rV|V}...
Pem{rV|V}... | Pe-p{rV|V}...
26
Pen{c|d|j|z}...
Pen-{c|d|j|z}...
27
PenV...
Pe-nV... | pe-tV...
28
PengC
Peng-C
29
PengV...
Peng-V... | peng-kV... | (pengV-... jika V=”e”)
30
PenyV...
Peny-sV...
31
PelV...
PelV... kecuali pada kata ‘pelajar’
32
PeCerV...
Per-erV... dimana C!={r|w|y|l|m|n}
33
PeCP...
Pe-CP... dimana C!={r|w|y|l|m|n} dan P!=’er’
34
terClerC2...
Ter-ClerC2... dimana C1!=,,r”
35
peClerC2...
Pe-ClerC2... dimana C1!={r|w|y|l|m|n}

Keterangan simbol huruf:
C: huruf onsonan         
V: huruf vokal
A: huruf vokal atau konsonan
P : partikel atau fragmen dari suatu kata, misalnya “er”
Algoritma yang dikembangkan penulis untuk ECSP Stemmer adalah sebagai berikut
1.       Melakukan pengecekan jumlah karakter/huruf dalam kata inputan,jika kata yang akan di stem mempunyai jumlah karakter/huruf <6,maka kata tersebut tergolong tidak berimbuhan dan secara langsung akan di return oleh Stemmer.Algoritma ini disebut cek non affiks.
2.       Pengecekan ilegal affiks (kata imbuhan yang tidak diperbolehkan). Contoh ilegal affiks pada aturan Bahasa Indonesia yaitu :ke-..-i|-kan,se-..-i|kan,peng-..-..-i|kan,tar-..-an
3.       Menghapus kata ganti kepunyaan yang berada di depan seperti: ku-,kau-,dan serapan awalan asing seperti : adi-,antar-,dwi-,eka-,infra-,maha-,manca-,multi-,nara-,pasca-,pari-,pramu-,pra-,sapta-,semi-,swa-,tri-,ultra-
4.       Menghapus inflectional particle P (-lah,-kah,-tah,-pun) dan kata ganti kepunyaan atau possessive prounon PP (-ku,-mu,-nya)
5.       Menghapus awalan
Ø  Menghapus awalan yang tidak bermofologi seperti (di-,ke-,se-).
Ø  Menghapus awalan bermofologi (be-,te-,pe-,me-). Lakukan recording sesuai dengan tabel pemenggalan imbuhan ECSP dan yang sudah dikembangkan dari aturan pemenggalan awalan ECS dan Porter Stemmer ,yaitu :
Modifikasi dan tambahan aturan pemenggalan awalan ECS yang dilakukan ECSP
Aturan ke-
Imbuhan
Perubahan imbuhan
11
Mem{b|f|v|p}
Mem-{b|f|v|p}
13
Mem{rV|V}..
Me-p{rV|V}...
14
Men{c|d|j|z|s|t}...
Men-{c|d|j|z|s|t}...
30
Peng{a|i|u|o}...
Peng-{a|i|u|o}...
37
CIPC2V...
CIP-C2V...dimana C1=C2 dan P=’e’
38
Me-mV/C...
Mem-V/C
39
PemV...
Pem-p-V...
40
Pe{c|t|s|z}
Pe-{c|t|s|z}...

Keterangan simbol huruf:
C:huruf konsonan,
P:partikel atau fragmen dari suatu kata,misalnya”er”,
V:huruf vokal .
6.       Menghapus akhiran (-i,-kan,-an).
7.       Menghapus akhiran serapan asing seperti (-wati,-wan,-isme,-is,-iah,-isasi,-er,-wi,-in,-logi).
8.       Menghapus infik atau sisipan dengan aturan pemenggalan yaitu :
Aturan pemenggalan sisipan ECSP
Aturan ke-
Imbuhan
Perubahan imbuhan
1
{g|j|l} {el} V
{g|j|l}-{el}-V
2
{c|j|k|g} {em} V
{c|j|k|g}-{em}-V
3
{s|g|k} {er} V
{s|g|k}-{er}-V
4
{k|s|t} {in} V
{k|s|t}-{in}-V

Aturan infiks diatas terkadang dapat menimbulkan terjadinya overstemming pada kata-kata yang dianggap pola infiks. Kata-kata bentuk sisipan yng kuantitasnya sedikit,akan langsung dimasukan dalam rule hapus sisipan.
9.       Hasil terakhir dari akan direturn sebagai kata dasar.

// Algoritma cek non Affiks
If (preg_match(‘/^[a-z] {1,6}$/’,$kata)){
Return $kata;
}
//Cek_Rule_ilegal_Affiks
If(preg_match(‘/^(kel)[[:alpha:]]+(i|kan)$/’,$kata)){
Return $kata;
}
If(preg_match(‘/^(se)[[:alpha:]]+(i|kan)$/’,$kata)){
Return $kata;
}
If(preg_match(‘/^(peng)[[:alpha:]]+(i|kan)$/’,$kata)){
Return $kata;
}
If(preg_match(‘/^(ter)[[:alpha:]]+(i|kan)$/’,$kata)){
Return $kata;
}

//fungsi hapus Infiks/sisipan
Function hapus_infiks ($kata){
           $kataAsal = $kata;
           If (preg_match(‘/^( g | j | I | s) (el)\S{1,}/’,$kata,$match)){
                    $_kata=preg_replace(‘/el/’,”,$match[0]);
                             {
                             Return $_kata;
                     }
            }
           Return $kataAsal;
}

// fungsi hapus kata ganti depan dan awalan asing
Function hapus_pp_depan_awalan_asing($kata){
           $kataAsal = $kata;
If (preg_match(‘/^( ku | kau | mono | ultra | ekstra | hiper | sin) /’,$kata
$kata_=preg_replace(‘/^( ku | kau | mono | ultra | ekstra | hiper | sin) /’,”,$kata;
                     Return $kata_;
            }
Return $kataAsal;
}

// fungsi hapus akhiran
Function hapus_akhiran($kata){
            $kataAsal = $kata;
If (preg_match(‘/( an | kan | i)$/’,$kata)){
$_kata=preg_replace(‘/(an | kan | i)$/’,”,$kata);
             if (preg_match(‘/^[a-z]{1,3}$/’,$_kata)){//cek jumlah kata <4, maka return kata asli
                     return $kata;
             }
            Return $_kata;
        }
Return $kataAsal;
}

//penggalan fungsi hapus awalan
if(preg_match(‘/^(be)\S{1,}/’,$kata)){ //identifikasi tipe awalan
            if(preg_match(‘/^(be)[r](s)\S{1,}/’,$kata)){
            $_kata=preg_replace ((‘/^(be) /’,$kata);
                 {
                 Return $_kata;
           }
      }
                              if(preg_match(‘/^(ber)[aiueo]\S{1,}/’,$kata)){
                 $_kata=preg_replace ((‘/^(ber)/’,’,$kata);
                             {
                             Return $_kata;
                    }
               $_kata=preg_replace ((‘/^(ber)/’,’r’,$kata);
                            {
                            Return $_kata;
                    }
            }
           if(preg_match(‘/^(ter)[aiueo]\S{1,}/’,$kata)){    
                 $_kata=preg_replace ((‘/^(ter)/’,’,$kata);
                             {
                             Return $_kata;
                    }
               $_kata=preg_replace ((‘/^(ter)/’,’r’,$kata);
                            {
                            Return $_kata;
                    }
            }
 Return $kataAsal;
}


2.3 Tahapan ECSP (Enhanced Confix Stripping Porter)
          Gambar diatas menjelaskan tahapan sistem yang digunakan untuk proses ECSP (Enhanced Confix Stripping Porter).






2.4  Contoh Implementasi ECSP (Enhanced Confix Stripping Porter)
Berikut ini adalah term-term pada ECS dan Porter stemmer yang telah diperbaiki ECSP yaitu:
1.       Hasil perbaikan dengan menambahkan serapan awalan asing.
Term
ECSP
mahasiswa
siswa
paripurna
purna
antibiotik
biotik
caturtunggal
tunggal
swadaya
daya
poligami
poligam
prasangka
sangka
adipati
pati
demoralisasi
demoral


2.       Hasil perbaikan dengan menambahkan serapan akhiran asing
term
ECSP
honorer
honor
manusiawi
manusia
modernisme
modern
alamiah
alam
relawan
rela
mukminin
mukmin
finalisasi
final
standarisasi
standar
teknologi
tekno

3.       Perbaikan dengan menambahkan dan revisi aturan ECS
term
ECSP
ECS
pemungutan
pungut
mungut
dedaunan
daun
dedaunan
pemadaman
padam
madam
mengurangi
kurang
urang
menandai
tanda
tanda
memangkas
mangkas
mangkas
mengunjungi
kunjung
unjung
Mengembangkan
kembang
Kembang

4.       Hasil perbaikan term bentuk dasar kata gabungan
Term
ECSP
ditindaklanjuti
tindaklanjut
diujicoba
ujicoba
kewarganegaraan
warganegara
keanekaragaman
anekaragam
ditandatanganinya
tandatangan
berkerjasama
kerjasama
Berterimakasih
terimakasih
dibagihasilkan
bagihasil
dibebantugaskan
bebantugas

5.       Hasil perbaikan dengan menambahkan reduksi sisipan (infiks)
Term
ECSP
temurun
turun
geletar
getar
cemerlang
cerlang
reruntuh
runtuh
leluhur
luhur
kinerja
kerja
tinambah
tambah
gelembung
gembung
telunjuk
tunjuk

6.       Hasil perbaikan dengan menambahkan reduksi pronoun depan
Term
ECSP
kubelikannya
beli
kurasakannya
rasa
kupukuli
pukul
kaudengarkannya
dengar
kuperdengarkannya
dengar
2.5 Kelebihan dan Kekurangan ECSP (Enhanced Confix Stripping Porter)
Kelebihan:
1.       Dapat memperbaiki kesalahan-kesalahan stemmer dalam total term yang ada.
2.       Dalam hal kecepatan, ECSP dapat mengalahkan ECS dan porter dengan hasil selisih 6,7572 detik.
3.       ECSP dapat mereduksi 67% dari totalterm dapat mengalahkan keakuratan Porter Stemmer yang hanya dapat mereduksi 61% dari total term.
Kekurangan:
1.       ECSP tidak menggunakan algoritma pengecekan kamus kata dasar, sehingga dapat dimungkinkan selisih keakurasian kata kurang memuaskan.

BAB III
PENUTUP

3.1      Kesimpulan
ECSP (Enhanced Confix Stripping Porter) merupakan hasil perpaduan algoritma dan rule ECS dengan Porter. ECSP dapat memperbaiki kesalahan-kesalahan stemmer dalam total term yang ada. Dalam hal kecepatan, ECSP dapat mengalahkan ECS dan porter dengan hasil selisih 6,7572 detik. ECSP dapat mereduksi 67% dari total term  dan dapat mengalahkan keakuratan Porter Stemmer yang hanya dapat mereduksi 61% dari total term. Namun, ECSP tidak menggunakan algoritma pengecekan kamus kata dasar, sehingga dapat dimungkinkan selisih keakurasian kata kurang memuaskan.

3.2      Saran
Diharapkan untuk pembaca dapat mengembangkan stemming ECSP (Enhanced Confix Stripping Porter).

DAFTAR PUSTAKA

Alif, Muhammad. Penerapan kombinasi Metode Enhanced Confix Stripping dan Porter Stemmer terhadap Konten Bahasa Indonesia pada Research Indonesia Search Ingine. Skripsi Jurusan Teknik Informatika, Fakultas Teknik Universitas Trunojoyo Madura (UTM). 2012





Share:

1 comment:

  1. mau nanya maksudnya recording itu apa ya??
    aku liat katanya "rRecoding dilakukan dengan menambahkan karakter recoding di awal kata yang dipenggal karakter recoding adalah huruf kecil setelah tanda hubung (‘-’) dan terkadang berada sebelum tanda kurung."
    maksdnya apa ya??
    terimakashi

    ReplyDelete

ARCHIEV

VISITORS

free counters

FRIENDS

Blog Archive