1.4 Tujuan Penelitian
Tujuan penelitian ini adalah sebagai berikut: 1. Untuk merancang suatu aplikasi yang dapat memisahkan kalimat dalam bahasa
Indonesia menjadi beberapa suku kata yang sesuai dengan kata dasarnya. 2. Untuk mengimplementasikan algoritma Winnowing dan Stemming Potter dalam
pendeteksian kemiripan dua dokumen.
1.5 Manfaat Penelitian
Manfaat penelitian ini adalah untuk mengetahui sejauh mana kemiripan satu dokumen dengan dokumen yang lain, dengan cara memisahkan sesuai kata dasarnya. Algoritma
Stemming Potter sendiri untuk memisahkan sesuai suku kata nya. Sehingga dapat diketahui kata asli nya. Dan Winnowing melakukan proses pengecekkan kesamaan
suatu kata document fingerprinting. Dengan adanya penelitian seperti ini, diharapkan dapat mengetahui kecurangan-kecurangan yang terjadi, sehingga para oknum jera dan
tidak ada lagi yang berani atau tega menjiplak hasil karya orang tanpa seijin dari orang tersebut .
1.6 Metodologi Penelitian
Tahapan yang dilakukan dalam penelitian ini adalah: 1.
Studi Literatur Pada tahap ini, mempelajari buku-buku referensi atau sumber-sumber yang
berkaitan dengan skripsi ini, baik dari text book maupun internet.
Universitas Sumatera Utara
2. Perancangan Sistem
Pada tahap ini akan di susun perancangan sistem dengan menerapkan algoritma Stemming Potter sebagai algoritma stemmer untuk pendeteksian
kemiripan dokumen. 3.
Implementasi Sistem Tahap ini merupakan tahap pengimplementasian sistem yang telah dibangun
ke dalam bahasa pemrograman. 4.
Pengujian dan Penganalisaan Sistem Dalam tahap ini dilakukan pengujian aplikasi yang sudah dibangun.
5. Pembuatan laporan skripsi bertujuan untuk dijadikan sebagai dokumentasi
hasil penelitian. 6.
Penyusunan Laporan 7.
Menyusun laporan hasil analisis dan perancangan kedalam bentuk format skripsi.
1.7 Sistematika Penulisan
Sistematika penulisan dalam penyusunan tulisan ini adalah sebagai berikut :
Bab 1 : Pendahuluan
Membahas tentang Latar Belakang, Identifikasi Masalah, Rumusan Masalah, Batasan Masalah, Tujuan Penelitian, Manfaat Penelitian, Metodologi Penelitian
dan Sistematika Penulisan.
Bab 2 : Landasan Teori
Universitas Sumatera Utara
Membahas tentang teori-teori yang berkaitan dengan information retrieval, natural language processing, dan sistem penghitung kemiripan file.
Bab 3 : Analisa dan Perancangan
Bab ini mendeskripsikan fase-fase awal dalam pengembangan suatu sistem, sehingga terdapat gambaran yang jelas terhadap sistem yang akan dibangun.
Bab 4 : Implementasi dan Pengujian
Bab ini akan membahas tentang hasil dari pengimplementasian analisa yang sudah dirancang sebelumnya, sehingga pada bab ini akan ditampilkan perancangan antar
muka serta pengujiannya.
Bab 5
: Kesimpulan dan Saran
Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh dan diharapkan dapat
bermanfaat dalam pengembangan selanjutnya.
Universitas Sumatera Utara
BAB 2
LANDASAN TEORI 2.1 Pengertian Stemming
Stemming merupakan suatu proses atau cara dalam menemukan kata dasar dari suatu kata. Stemming sendiri berfungsi untuk menghilangkan variasi-variasi morfologi yang
melekat pada sebuah kata dengan cara menghilangkan imbuhan-imbuhan pada kata tersebut, sehingga nantinya di dapat suatu kata yang benar sesuai struktur morfologi
bahasa Indonesia yang benar.
Stemming sendiri 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. 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 [5].
Universitas Sumatera Utara
2.2 Stemming Porter
Algoritma yang diimplementasikan dalam aplikasi 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. Algoritma ini terkenal digunakan sebagai stemmer untuk bahasa Inggris.
Porter Stemmer dalam bahasa Indonesia akan menghasilkan keambiguan karena aturan morfologi bahasa Indonesia. Bila dibandingkan, untuk teks berbahasa
Indonesia, Porter stemmer lebih cepat prosesnya daripada algoritma stemming yang lain. Tidak banyak algoritma yang dikhususkan untuk stemming bahasa Indonesia
dengan berbagai keterbatasan didalamnya. Algoritma Porter salah satunya, algoritma ini membutuhkan waktu yang lebih singkat dibandingkan dengan stemming
menggunakan algoritma lainnya [7]. Langkah-langkah algoritma Stemming Porter adalah sebagai berikut:
1. Periksa pada kata yang akan di Stemm jika terdapat partikel “-kah”, “-lah”, “-
pun”, maka hapus partikel yang melekat. 2.
Hapus kata ganti kepemilikan seperti “-ku”, “-mu”, “-nya”, jika ada. 3.
Hapus first order prefiks awalan pertama seperti “-meng”, “-meny”, “-men”, “-mem”, “-me”, “-peng”, “-peny”, “-pen”, “-pem”, “-di”, “-ter”, “-ke”.
4. Hapus second order prefiks awalan kedua seperti “-ber”, “-per”.
5. Hapus sufiks akhiran seperti “-kan”, “-i”, “-an”.
Universitas Sumatera Utara
Tabel 2.1 Kelompok rule pertama : inflectional particles
Tabel 2.2 Kelompok rule kedua :inflectional possesive pronouns
Suffix Replacement
Measure Condition
Additional Condition
examples Ku
NULL 2
NULL Bukuku
buku Mu
NULL 2
NULL bukumu
buku nya
NULL 2
NULL Bukunya
buku Suffix
Replacement Measure
Condition Additional
Condition examples
Kah NULL
2 NULL
Bukukah
buku Lah
NULL 2
NULL Adalah
ada pun
NULL 2
NULL Bukupun
buku
Universitas Sumatera Utara
Tabel 2.3 Kelompok rule ketiga: first order of derivational prefixes
Prefiks Replacement
Measure condition Additional
Condition Examples
Meng NULL
2 NULL
mengukur---ukur Meny
s 2
v… menyapu---sapu
Men NULL
2 NULL
menduga---duga Mem
p 2
v… memilah---pilah
Mem NULL
2 NULL
membaca---baca Me
NULL 2
NULL merusak---rusak
Peng NULL
2 NULL
pengukur---ukur Peny
s 2
v… penyapu---sapu
Pen NULL
2 NULL
penduga---duga Pem
p 2
v… pemilah---pilah
Pem NULL
2 NULL
pembaca---baca Di
NULL 2
NULL diukur---ukur
Ter NULL
2 NULL
tersapu---sapu Ke
NULL 2
NULL kekasih---kasih
Tabel 2.4 Kelompok rule keempat: second order of derivational prefixes
prefiks replacement
Measure condition
Additional condition
examples Ber
NULL 2
NULL Berlari
lari Bel
NULL 2
ajar Belajar
ajar Be
NULL 2
Ker Bekerja
kerja Per
NULL 2
NULL Perjelas
jelas Pel
NULL 2
ajar Pelajar
ajar pe
NULL 2
NULL Pekerja
kerja
Universitas Sumatera Utara
Tabel 2.5 Kelompok rule kelima: derivational suffixes
suffix replacement
Measure condition
Additional condition
examples kan
NULL 2
Prefix Tarikan
tarik Mengambilkan
ambil an
NULL 2
prefix Makanan
makan perjanjian
janji i
NULL 2
V, prefix Tandai
tanda mendapati
dapat Pantai
panta
Stemming adalah proses untuk menggabungkan atau memecahkan setiap varian- varian suatu kata menjadi kata dasar [7]. Stem akar kata adalah bagian dari kata
yang tersisa setelah dihilangkan imbuhannya awalan dan akhiran. Contoh : connect adalah stem dari connected, connecting, connection, dan connections. Metode
stemming memerlukan input berupa term yang terdapat dalam dokumen. Sedangkan outputnya berupa stem.
Ada tiga jenis metode stemming, antara lain :
1.
Successor Variety SV : lebih mengutamakan penyusunan huruf dalam kata
dibandingkan dengan pertimbangan atas fonem. Contoh untuk kata-kata : corpus, able, axle, accident, ape, about menghasilkan SV untuk kata apple :
1.
Karena huruf pertama dari kata “apple” adalah “a”, maka kumpulan kata yang ada substring “a” diikuti “b”, “x”, “c”, “p” disebut SV dari “a”
sehingga “a” memiliki 4 SV.
2.
Karena dua huruf pertama dari kata “apple” adalah “ap”, maka kumpulan kata yang ada substring “ap” hanya diikuti “e” disebut SV dari “ap”
sehingga “ap” memiliki 1 SV.
Universitas Sumatera Utara
2.
N-Gram Conflation : ide dasarnya adalah pengelompokan kata-kata secara
bersama berdasarkan karakter-karakter substring yang teridentifikasi sepanjang N karakter.
3.
Affix Removal : membuang suffix dan prefix dari term menjadi suatu stem.
Yang paling sering digunakan adalah algoritma Porter Stemmer karena modelnya sederhana dan effisien.
1.
Jika suatu kata diakhiri dengan “ies” tetapi bukan “eies” atau “aies”, maka “ies” direplace dengan “y”
2.
Jika suatu kata diakhiri dengan “es” tetapi bukan “aes” atau “ees” atau “oes”, maka “es” direplace dengan “e”
3.
Jika suatu kata diakhiri dengan “s” tetapi bukan “us” atau “ss”, maka “s” direplace dengan “NULL”
Gambar 2.1 Diagram Stemming
Algoritma Stemming
Successor Variety Affix Removal
N-Grams Conflation
Porter Stemmer
Universitas Sumatera Utara
Stemming adalah proses pemetaan dari penguraian berbagai bentuk kata baik itu prefik sufik, maupun gabungan antara prefik dan sufik,menjadi bentuk kata
dasarnya atau stem.Algoritma Stemming yang digunakan adalah Potter Stemmer untuk bahasa Indonesia. Algoritma stemming dapat mengatasi akhiran yang
berupa partikel, akhiran yang menunjukkan kata ganti kepemilikan, prefiks imbuhan, sufiks akhiran, dan gabungan antara prefiks dan sufiks. Sebelum
melakukan proses penghilangan imbuhan pada Potter Stemmer, dilakukan perhitungan measure. Stemming itu proses pemotongan pemangkasan kata untuk
mendapatkan bentuk dasar kata dasar dari kata tersebut. Misal terdapat kata mempermainkan, maka dari kata tersebut bisa dipilah-pilah menjadi mem + per +
main + kan. Secara ilmu bahasa, hal ini mudah dilakukan oleh manusia, karena manusia
sudah punya database memori linguistik yang komplit untuk melakukan parsing komponen-komponen penyusun ejaan : imbuhan dan kata dasar dari suatu kata.
Seperti misalnya, dari kata mengantuk, kita bisa langsung memilah-milah menjadi meng + kantuk bukan meng + antuk atau me + ngantuk. Namun bagaimana jika
kita ingin melakukan automasi proses stemming ini dengan sebuah program? Mampukah program mengenali perubahan morfologi kata ini dengan tepat? Hal ini
bukanlah tidak mungkin. Proses stemming sendiri sudah cukup terkenal, bahkan seringkali kita gunakan tanpa kita sadari. Misal Google? Proses pencariannya
sekarang sudah memakai Stemming pencarian kata fishing juga menghasilkan kata- kata fish, fishy, fisherman dll.Pemeriksaan semua kemungkinan bentuk kata. Setiap
kata diasumsikan memiliki 2 awalan prefiks dan 3 akhiran sufiks. Sehingga bentuknya menjadi :
Universitas Sumatera Utara
Prefiks 1 + Prefiks 2 + Kata dasar + Sufiks 3 + Sufiks 2 + Sufiks 1
Pemotongan dilakukan berurutan : Awalan 1, Awalan 2, Akhiran 1, Akhiran 2, Akhiran 3 kalau ada, dan Kata Dasar
.Setiap tahap pemotongan diikuti dengan pemeriksaan di kamus berisi daftar kata dasar apakah hasil pemotongan itu sudah
berada dalam bentuk dasar. Jika pemeriksaan berhasil maka proses dinyatakan selesai dan tidak perlu melanjutkan proses pemotongan imbuhan selanjutnya.
Universitas Sumatera Utara
Universitas Sumatera Utara
Gambar 2.2 Flowchart Stemmer Porter
Pada proses stemmer porter, pertama-tama masukkan kata yang akan di stem, lalu memeriksa apakah terdapat partikel, jika ada maka hapus partikel, jika tidak maka
lanjutkan memeriksa apakah terdapat kata kepemilikan, jika ada maka hapus, jika tidak maka lanjutkan. Periksa apakah terdapat prefix, jika ada maka hapus, jika tidak
maka lanjutkan memeriksa apakah terdapat sufiks.Jika terdapat sufiks maka hapus. Jika pemeriksaan berhasil maka proses dinyatakan selesai dan tidak perlu melanjutkan
proses pemotongan imbuhan selanjutnya. Dokumen dalam bahasa indonesia mempunyai keunikan tersendiri, karena kata - kata dalam bahasa indonesia dapat
berubah bentuk saat mendapatkan imbuhan. Akibat dari hal proses Stemmer dari dokumen berbahasa Indonesia, yaitu proses mengembalikan kata ke bentuk dasar,
memerlukan teknik tersendiri yang berbeda dengan teknik Stemmer pada bahasa - bahasa lain.
Fungsi Stemmer yang didesain berdasarkan algoritma Porter Stemmer for Bahasa Indonesia adalah inti dari tahap pre-processing yang dibuat. Guna dari fungsi ini
adalah sebagai berikut: 1. Dengan mengembalikan kata menjadi kata dasarnya, akan sangat mengurangi
macam kata yang perlu diperiksa dan dibandingkan dengan tabel Stopword maupun tabel Keyword. Hal ini akan mempercepat proses perbandingan kata serta mengurangi
isi tabel Stopword dan tabel Keyword.
2. Pengembalian kata ke bentuk dasarnya dapat dilihat sebagai pengelompokan beberapa macam kata yang memiliki arti sama atau sejenis dan digeneralisasi menjadi
satu kata saja. Hal ini berguna untuk proses Text Mining selanjutnya, karena akan
Universitas Sumatera Utara
dapat meningkatkan kemungkinan terbentuknya sebuah Rule Assosiasi, atau dapat meningkatkan kualitas Rule Assosiasi yang dihasilkan.
2.3 Winnowing