ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA...

89
Team project ©2017 Dony Pratidana S. Hum | Bima Agus Setyawan S. IIP Hak cipta dan penggunaan kembali: Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis dan melisensikan ciptaan turunan dengan syarat yang serupa dengan ciptaan asli. Copyright and reuse: This license lets you remix, tweak, and build upon work non-commercially, as long as you credit the origin creator and license it on your new creations under the identical terms.

Transcript of ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA...

Page 1: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Team project ©2017 Dony Pratidana S. Hum | Bima Agus Setyawan S. IIP 

 

 

 

 

 

Hak cipta dan penggunaan kembali:

Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis dan melisensikan ciptaan turunan dengan syarat yang serupa dengan ciptaan asli.

Copyright and reuse:

This license lets you remix, tweak, and build upon work non-commercially, as long as you credit the origin creator and license it on your new creations under the identical terms.

Page 2: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

IMPLEMENTASI ALGORITMA STEMMING

ENHANCED CONFIX STRIPPING TERMODIFIKASI

PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA DIGITAL

SKRIPSI

Diajukan sebagai salah satu syarat untuk memperoleh gelar Sarjana

Komputer (S.kom.)

Hans Rafael

13110110062

PROGRAM STUDI INFORMATIKA

FAKULTAS TEKNIK DAN INFORMATIKA

UNIVERSITAS MULTIMEDIA NUSANTARA

TANGERANG

2018

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 3: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 4: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 5: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

iv

KATA PENGANTAR

Puji syukur kepada Tuhan Yang Maha Esa, karena atas berkat dan rahmat-Nya,

skripsi dengan judul “Implementasi Algoritma Stemming Enhanced Confix Strippin

Termodifikasi Pada Search Engine Laman FAQ Gramedia Digital” ini dapat

terselesaikan dengan baik. Laporan ini dibuat sebagai salah satu syarat kelulusan mata

kuliah skripsi pada Program Studi Teknik Informatika, Fakultas Teknik Informatika.

Skripsi ini juga bisa diselesaikan karena adanya peran dan dukungan dari

beberapa pihak. Maka dari itu, ucapan terima kasih layak diucapkan kepada:

1. Dr. Ninok Leksono, selaku Rektor Universitas Multimedia Nusantara yang

memberikan kesempatan bagi penulis untuk berprestasi.

2. Seng Hansun, S.Si., M.Cs., selaku Ketua Program Studi Teknik Informatika

Universitas Multimedia Nusantara, yang telah mengajarkan banyak hal selama

berkuliah di UMN.

3. Dr. Ir. P.M. Winarno, M.Sc., selaku dosen pembimbing skripsi yang telah dengan

sabar memberikan masukan dan mendukung penulis dalam menyelesaikan

skripsi dengan baik.

4. Keluarga dan sahabat-sahabat penulis yang selalu mendukung penyelesaian

skripsi.

5. Shelly yang telah mendukung dan memberikan motivasi untuk menyelesaikan

skripsi.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 6: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 7: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

vi

IMPLEMENTASI ALGORITMA STEMMING ENHANCED

CONFIX STRIPPING TERMODIFIKASI PADA SEARCH

ENGINE LAMAN FAQ GRAMEDIA DIGITAL

ABSTRAK

Dalam era digital yang berkembang pesat, tentu tidak lepas dari Web

Search Engine yang menjadi alat praktis untuk mencari informasi yang kita

inginkan tanpa perlu mencari dari tumpukan informasi yang tidak relevan terlebih

dahulu. Kebutuhan dari pengguna website Gramedia Digital yang merasa

pentingnya Web Search Engine tersebut membuat perlu adanya pengembangan

untuk memudahkan pencarian informasi terutama dalam Bahasa Indonesia. Tentu

dalam pengembangannya, Web Search Engine didukung oleh banyak elemen yang

yang dapat mendorong pengambilan informasi yang lebih baik. Salah satunya

adalah Stemming. Stemming yang merupakan elemen yang berada pada awal

proses pencarian informasi. Stemming melakukan penyederhanaan kata menjadi

kata dasarnya sebelum dilakukan pencarian. Menggunakan elemen stemming

terhadap Bahasa Indonesia bukanlah hal yang mudah, karena tatanan Bahasa

Indonesia yang begitu kompleks dan acak. Maka dikembangkanlah aplikasi Web

Search Engine berbahasa Indonesia dengan algoritma Stemming Enhanced Confix

Stripping Termodifikasi untuk menjawab permasalahan tersebut.

Kata kunci: Stemming, Enhanced Confix Stripping Termodifikasi, Search Engine,

Paice Evaluation Method

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 8: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

vii

IMPLEMENTATION OF MODIFIED STEMMING

ENHANCED CONFIX STRIPPING ALGORITHM ON

GRAMEDIA DIGITAL FAQ SEARCH ENGINE SITE

ABSTRACT

In this fast-paced digital era, Web Search Engine become a handy tool to

search for the information that we needed, without the need to search through pile

of other unused information first. The need for Web Search Engine from the user

of Gramedia Digital makes the importance of development of the website to make

the information retrieval from the website easier. There are many things that vital

that can help the development of Web Search Engine in Indonesian language. One

of those things is Stemming. Stemming held an important task to simplify the

query that user give before the information retrieval process. Using stemming for

Indonesian language information retrieval is much of a challenge because the

complex and random language form. So, the implementation of Modified

Enhanced Confix Stripping Stemming algorithm on Gramedia Digital made to

answer the need to solve the problem.

keywords: Stemming, Enhanced Confix Stripping Termodifikasi, Search Engine,

Paice Evaluation Method

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 9: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

viii

DAFTAR ISI

HALAMAN JUDUL ................................................................................................ i

PERNYATAAN TIDAK MELAKUKAN PLAGIAT ........................................... ii

HALAMAN PERSETUJUAN ............................................................................... iii

KATA PENGANTAR ........................................................................................... iv

ABSTRAK ............................................................................................................. vi

ABSTRACT .......................................................................................................... vii

DAFTAR ISI ........................................................................................................ viii

DAFTAR TABEL ................................................................................................... x

DAFTAR GAMBAR ............................................................................................. xi

BAB I PENDAHULUAN ....................................................................................... 1

1.1 Latar Belakang Masalah ........................................................................... 1

1.2 Rumusan Masalah .................................................................................... 5

1.3 Batasan Masalah ....................................................................................... 5

1.4 Tujuan Penelitian ...................................................................................... 6

1.5 Manfaat Penelitian .................................................................................... 6

1.6 Sistematika Penulisan ............................................................................... 6

BAB II TINJAUAN PUSTAKA ............................................................................. 8

2.1 Web Search Engine .................................................................................. 8

2.2 Web Scraping ........................................................................................... 9

2.3 Whoosh ................................................................................................... 10

2.4 Stemming ................................................................................................ 12

2.5 Algoritma Enhanced Confix Stripping Termodifikasi ........................... 13

2.6 Metode Evaluasi Paice ........................................................................... 21

BAB III METODOLOGI DAN PERANCANGAN APLIKASI .......................... 26

3.1 Metodologi Penelitian ............................................................................ 26

3.2 Pengumpulan dan Preprocessing Data ................................................... 27

3.3 Perancangan Sistem ................................................................................ 28

3.2.1 Flowchart ........................................................................................ 28

3.2.2 Tampilan Antarmuka ...................................................................... 34

BAB IV IMPLEMENTASI DAN UJI COBA ...................................................... 36

4.1 Spesifikasi Sistem ................................................................................... 36

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 10: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

ix

4.2 Implementasi Sistem .............................................................................. 36

4.2.1 Implementasi Algoritma.................................................................. 37

4.2.2 Tampilan ......................................................................................... 41

4.3 Skenario Uji Coba .................................................................................. 43

4.4 Analisis ................................................................................................... 48

BAB V SIMPULAN DAN SARAN ..................................................................... 50

5.1 Simpulan ................................................................................................. 50

5.2 Saran ....................................................................................................... 50

Daftar Pustaka ..................................................................................................... 511

LAMPIRAN .......................................................................................................... 53

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 11: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

x

DAFTAR TABEL

Tabel 2.1 Aturan pemenggalan awalan ................................................................. 16

Tabel 2.2 Penambahan dan perubahan aturan pemenggalan awalan .................... 19

Tabel 2.3 Penambahan dan perubahan aturan pemenggalan awalan .................... 20

Tabel 2.4 Kesalahan pada stemming Enhanced Confix Stripping ........................ 20

Tabel 4.1 Hasil stemming kata dari kelompok semantik g11 ............................... 44

Tabel 4.2 Hasil stemming kata dari kelompok semantik g32 ............................... 45

Tabel 4.3 Hasil stemming kata dari kelompok semantik g ................................... 46

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 12: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

xi

DAFTAR GAMBAR

Gambar 1.1 Hasil survey umpan balik layanan FAQ Gramedia Digital (Gramedia,

2017) ................................................................................................................ 4

Gambar 2.1 Source Code pendefinisian schema ................................................... 10

Gambar 2.2 Source code pembuatan index ........................................................... 10

Gambar 2.3 Source code pembukaan index .......................................................... 11

Gambar 2.4 Source code input informasi dokumen ke dalam index..................... 11

Gambar 2.5 Contoh source code tokenization ...................................................... 11

Gambar 2.6 Contoh source code stemming........................................................... 12

Gambar 2.7 Source code pencarian query............................................................. 12

Gambar 3.1 Flowchart Sistem Pencarian .............................................................. 29

Gambar 3.2 Flowchart Stemming ......................................................................... 30

Gambar 3.3 Flowchart Enhanced Confix Stripping Termodifikasi ...................... 32

Gambar 3.4 Flowchart Hilangkan Awalan............................................................ 33

Gambar 3.5 Flowchart Hilangkan Akhiran ........................................................... 33

Gambar 3.6 Flowchart Searching .......................................................................... 34

Gambar 3.7 Rancangan Tampilan Antarmuka Stemmer ...................................... 35

Gambar 3.8 Rancangan Tampilan Antarmuka Search .......................................... 35

Gambar 4.1 Potongan kode Tahap Stemming....................................................... 37

Gambar 4.2 Potongan Kode tahap Enhanced Confix Stripping Termodifikasi .... 39

Gambar 4.3 Potongan Code Aturan ...................................................................... 40

Gambar 4.4 Potongan Kode Searching ................................................................. 40

Gambar 4.5 Tampilan Stemmer ............................................................................ 41

Gambar 4.6 Tampilan Stemmer Memberikan Kata Dasar .................................... 41

Gambar 4.7 Screenshot Tampilan Halaman Utama .............................................. 42

Gambar 4.8 Screenshot Tampilan halaman utama saat pencarian ........................ 43

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 13: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Information retrieval (IR) memiliki pengertian yang sangat luas. Melihat

nomor kartu kredit yang dikeluarkan dari dompet sudah merupakan salah satu

bentuk dari information retrieval. Information retrieval dapat didefinisikan

sebagai aktivitas menemukan materi (biasanya dokumen) tidak terstruktur yang

memenuhi kebutuhan akan informasi pada ruang lingkup yang besar. Dulunya

information retrieval hanya menjadi aktivitas yang ditekuni oleh pustakawan,

notaris, filsuf, dan profesi sejenis lainnya (Manning, 2008).

Kemunculan World Wide Web (WWW) pada 1990 mematahkan persepsi

bahwa area information retrieval hanya berpusat pada bidang perpustakaan dan

ahli informatika saja. Web menjadi penyimpanan universal bagi pengetahuan dan

budaya manusia, menyebabkan revolusi dalam penggunaan komputer, kegiatan

beraktivitas manusia, seperti home shopping dan home banking. Meskipun

terbilang sukses, web pun memiliki masalah baru. Menemukan informasi yang

tepat dan berguna menjadi hal yang sulit karena internet sangat luas dan karena

tidak adanya model data standar yang mendasarinya. Kesulitan ini akhirnya

menjadi alasan berkembangnya teknologi search engine, yaitu information

retrieval system yang digunakan khusus untuk mencari informasi yang tepat dan

berguna pada suatu website tertentu (Baeza-Yates, 2011).

Salah satu bentuk dari search engine ini adalah in-house search engine,

yaitu search engine yang dibuat spesifik untuk melaksanakan information

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 14: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

2

retrieval khusus pada suatu website tertentu saja. Berbeda dengan penggunaan

web search engine popular seperti Google, Bing, atau Yahoo!, in-house search

engine dapat melakukan scraping terhadap website dengan lebih baik, karena

scraper dapat memahami struktur HTML dari website tersebut dengan lebih baik

dan spesifik (Lindsey, 2012).

Stemming adalah salah satu bagian dari aktivitas yang terdapat di dalam

sebuah search engine, Stemming digunakan untuk menyederhanakan kata ke

bentuk kata dasarnya. Tentu proses stemming tiap bahasa berbeda dengan bahasa

lainnya. Stemming pada bahasa indonesia menggunakan kata dasar sebagai

akarnya, sehingga sebagian besar memiliki dependensi terhadap kamus. Prosesnya

pun tergolong rumit secara morfologis karena hampir setiap kata memiliki variasi

imbuhan yang sangat beragam dengan metode penyederhanaan yang berbeda-

beda (Suhartono, 2014).

Penelitian sebelumnya dilakukan oleh Johan Sebastian (2013) yang berjudul

Implementasi Algoritma Stemming Enhanced Confix Stripping Pada Web Search

Engine (Studi Kasus: Situs Sindo Weekly Magazine). Penelitian yang dilakukan

dapat diimplementasikan dengan baik, namun masih terdapat kesalahan yang

terdapat pada algoritma stemming tersebut terhadap beberapa kata yang diberikan.

Algoritma stemming Enhanced Confix Stripping (ECS) yang merupakan algoritma

perbaikan dari Confix Stripping (yang dikembangkan oleh Jelita Asian

berdasarkan algoritma stemming Nazief-Andriani dan Arifin Setiono) dapat

dibuktikan sebagai algoritma terbaik untuk stemming bahasa Indonesia. Algoritma

ECS lalu diperbaiki kembali agar mampu meningkatkan keakuratan stemming

yang pada saat ini disebut sebagai ECS termodifikasi.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 15: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

3

Sesuai dengan perkembangan jaman, informasi yang terdapat pada website-

website semakin banyak sehingga menyebabkan munculnya kebutuhan akan in-

house search engine yang khusus untuk digunakan pengguna di dalam website

untuk mencari informasi tertentu. Gramedia Digital (ebooks.gramedia.com)

adalah salah satu aplikasi berbasis website, Android, dan iOS yang berada di

bawah naungan Kompas Gramedia. Gramedia Digital menyediakan majalah,

buku, dan koran dalam format digital (Digital, 2018). Gramedia Digital memiliki

laman frequently asked question (FAQ) yang merupakan kumpulan pertanyaan

dan jawaban yang sering ditanyakan oleh pengguna. Laman ini ditujukan untuk

memudahkan pengguna mencari tahu informasi mendasar terkait Gramedia

Digital.

Menurut survey umpan balik pelanggan terhadap layanan FAQ yang

dilayangkan melalui email pada tahun 2017 kepada 5000 orang pelanggan, dari 50

orang yang menjawab, 36% setuju dan 18% sangat setuju bahwa sulit untuk

menemukan artikel di halaman FAQ yang sesuai dengan masalah yang dihadapi.

46% setuju, dan 46% lainnya sangat setuju bahwa perlu adanya kotak pencarian,

agar dapat langsung menuliskan masalah dan menemukan artikel terkait

(Gramedia, 2017).

Berdasarkan kekurangan yang terdapat pada FAQ Gramedia Digital, fitur

search engine ditambahkan dengan implementasi stemming Enhanced Confix

Stripping Termodifikasi.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 16: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

4

Gambar 1.1 Hasil survey umpan balik layanan FAQ Gramedia

Digital (Gramedia, 2017)

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 17: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

5

1.2 Rumusan Masalah

Berdasarkan latar belakang yang telah dikemukakan, berikut rumusan

masalah yang diajukan dalam penelitian ini.

1. Bagaimana cara mengimplementasikan algoritma Enhanced Confix Stripping

termodifikasi pada web search engine laman FAQ Gramedia Digital?

2. Bagaimana hasil query yang telah melalui proses stemming dengan

menggunakan algoritma Enhanced Confix Stripping termodifikasi dalam

meningkatkan hasil pencarian?

1.3 Batasan Masalah

Untuk membatasi agar permasalahan yang diteliti tidak meluas dari sasaran

serta tema pokok permasalahan, maka berikut merupakan batasan masalah dalam

penelitian ini.

1. Algoritma stemming ini diimplementasikan hanya untuk Web search engine

laman frequently asked question pada website https://ebooks.gramedia.com.

2. Web search engine akan menggunakan web application sebagai platform-nya.

3. Web search engine akan menggunakan bahasa pemrograman Python dan

library pemrograman Whoosh.

4. Sumber data yang dikelola oleh web search engine berasal dari laman

frequently asked question pada website https://ebooks.gramedia.com.

5. Pencarian yang dilakukan harus bersangkutan dengan laman frequently asked

question dan berupa teks dalam bahasa Indonesia.

6. Variabel penelitian menggunakan metode evaluasi Paice yang berdasarkan

pada nilai understemming index dan overstemming index

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 18: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

6

1.4 Tujuan Penelitian

Berdasarkan rumusan masalah yang telah dikemukakan, tujuan penelitian ini

dijabarkan sebagai berikut.

1. Mengimplementasikan algoritma stemming Enhanced Confix Stripping

termodifikasi ke dalam web search engine laman FAQ Gramedia Digital.

2. Menghasilkan query yang telah melalui proses stemming dengan

menggunakan algoritma Enhanced Confix Stripping termodifikasi untuk

meningkatkan hasil pencarian.

1.5 Manfaat Penelitian

Manfaat yang diharapkan dari perancangan dan pembangunan web search

engine ini adalah sebagai berikut.

1. Memudahkan pengguna website untuk menemukan konten pada laman

frequently asked question.

2. Meningkatkan layanan pencarian informasi website Gramedia Digital.

1.6 Sistematika Penulisan

Sistematika penulisan skripsi ini dijelaskan sebagai berikut.

BAB I PENDAHULUAN

Bab ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan

penelitian, manfaat penelitian, dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Bab ini menjelaskan beberapa teori dan konsep dasar yang mendukung

penelitian ini, yaitu Web Search Engine, Web Scraping, Whoosh, Stemming,

Algoritma Enhanced Confix Stripping Termodifikasi, dan Metode Evaluasi Paice.

BAB III METODOLOGI DAN PERANCANGAN APLIKASI

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 19: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

7

Bab ini berisi metode penelitian, rancangan aplikasi, pengumpulan dan

preprocessing data, dan flowchart.

BAB IV IMPLEMENTASI DAN UJI COBA

Bab ini berisi implementasi sistem, data hasil penelitian yang dilakukan

beserta hasil analisis data tersebut.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi simpulan dari hasil penelitian terhadap tujuan penelitian dan

saran untuk pengembangan penelitian ini lebih lanjut.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 20: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

8

BAB II

TINJAUAN PUSTAKA

2.1 Web Search Engine

Web search engine adalah sebuah program perangkat lunak pencari

informasi yang menemukan, mengupas, mengubah, dan menyimpan informasi

dari dokumen-dokumen web tertentu untuk nantinya digunakan untuk

pengambilan dan penyajian informasi tersebut secara cepat sesuai permintaan

pengguna.

Web search engine biasanya terdiri dari 4 komponen, yaitu:

1. Search Interface

Merupakan tampilan yang akan digunakan oleh pengguna untuk

memasukkan data yang akan dicari oleh web search engine dan

menampilkan daftar hasil pencarian data tersebut.

2. Crawler/Spider

Crawler digunakan untuk menjelahi dokumen-dokumen web, menata ulang

teks dokumen serta atributnya sesuai dengan bentuk yang diinginkan

(scraping), dan kemudian disimpan di dalam indeks web search engine

untuk nantinya dipanggil kembali.

3. Indexer

Indexer digunakan untuk menyusun informasi-informasi yang telah

dikumpulkan dan diolah oleh crawler menjadi indeks dari dokumen web

tersebut. hal ini dilakukan untuk mengoptimalkan kecepatan dan kinerja

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 21: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

9

dalam menemukan dokumen informasi yang relevan untuk pengguna web

search engine.

4. Database

Tempat penyimpanan indeks yang telah dibuat.

2.2 Web Scraping

Web scraping adalah kegiatan mengekstrak data dari website, dapat

dilakukan dengan mengakses WWW dengan menggunakan Hypertext Transfer

Protocol (HTTP), atau web browser (Boeing, 2016). Web scraping dapat

dilakukan secara manual dengan menggunakan aplikasi tertentu, atau secara

otomatis dengan menggunakan web crawler/spider. Web scraping terdiri dari 2

aktivitas, yaitu:

1. Fetching

Fetching adalah kegiatan mengunduh laman dari website yang kita inginkan, yang

biasanya dilakukan oleh web browser disaat kita melihat laman tersebut. Setelah

laman diunduh, data laman dapat disimpan untuk pemrosesan berikutnya.

2. Extracting

Setelah dilakukan fetching, data laman diurai, disusun ulang, atau ditambah

dengan informasi lain sesuai dengan sistematika yang dipakai pelaku web

scraping untuk tujuan penggunaan data selanjutnya.

Maka dari itu, web scraping merupakan salah satu bagian penting dari web

search engine yang dilakukan untuk mengambil data dari laman FAQ untuk

disimpan ke dalam bentuk dokumen yang dapat dimasukkan pada web search

engine nantinya. Dalam pengerjaannya akan menggunakan text pattern matching

dengan memakai regular expression pada bahasa pemrograman Python.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 22: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

10

import os.path from whoosh.index import create_in if not os.path.exists("index"): os.mkdir("index") ix = create_in("index", schema)

2.3 Whoosh

Whoosh adalah web search engine programming library berbahasa Python

yang dibuat oleh Matt Chaput untuk dokumentasi online Houdini 3D software

yang akhirnya dijadikan open-source agar dapat berguna bagi komunitas lain yang

membutuhkan.Whoosh dapat mengindekskan dokumen sistematis maupun tidak

sistematis, dan menemukan dokumen-dokumen pada indeks tersebut yang

didasari pada kriteria pencarian yang sederhana maupun kompleks (Chaput,

2017). Whoosh memiliki fungsi yang terdiri dari beberapa kegiatan utama, yaitu:

1. Mendefinisikan schema

Schema adalah daftar informasi yang terdapat pada index, informasi ini dapat

berupa judul, isi, tanggal pembuatan, url path, dan informasi tambahan lainnya

yang dapat dimasukkan ke dalam index. Schema dibuat dengan import schema.

2. Membuat index

Index dibuat berdasarkan schema, dan berisi informasi dari dokumen-

dokumen yang akan dimasukkan ke dalam index, hal ini dilakukan dengan

menggunakan create_in(nama index). Setelah dibuat, index akan dibuka

dengan open_dir(nama index)

from whoosh.fields import Schema, STORED, ID, KEYWORD, TEXT schema = Schema(title=TEXT(stored=True), content=TEXT, path=ID(stored=True), tags=KEYWORD, icon=STORED)

Gambar 2.1 Source Code pendefinisian schema

Gambar 2.2 Source code pembuatan index

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 23: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

11

3. Mengindekskan dokumen

Setelah index dibuat, informasi dari dokumen-dokumen akan dimasukkan ke

dalam index. Hal ini dilakukan dengan menggunakan index writer, add_document.

4. Tokenization/Analyzer

Tokenization dilakukan dengan menyederhanakan konten yang terdapat di

dalam dokumen agar memudahkan pencarian. Hal ini dapat dilakukan dengan

melakukan penghilangan spasi, merubah semua huruf menjadi huruf kecil,

menghilangkan stopwords (kata-kata tidak penting berulang seperti atau, dan,

adalah, dan lain-lain), melakukan stemming (menghilangkan imbuhan).

Kelemahan pada stemming ini adalah terbatasnya penguraian kata sesuai dengan

library bahasa tertentu, karena penghilangan imbuhan dan menyederhanakan kata

setiap bahasa berbeda.

writer = ix.writer() writer.add_document(title=u"My document", content=u"This is my document!", path=u"/a", tags=u"first short", icon=u"/icons/star.png") writer.add_document(title=u"Second try", content=u"This is the second example.", path=u"/b", tags=u"second short", icon=u"/icons/sheep.png") writer.add_document(title=u"Third time's the charm", content=u"Examples are many.", path=u"/c", tags=u"short", icon=u"/icons/book.png") writer.commit()

>>> from whoosh.analysis import RegexTokenizer >>> tokenizer = RegexTokenizer() >>> for token in tokenizer(u"Hello there my friend!"): ... print repr(token.text) u'Hello' u'there' u'my' u'friend'

from whoosh.index import open_dir ix = open_dir("index")

Gambar 2.3 Source code pembukaan index

Gambar 2.4 Source code input informasi dokumen ke dalam index

Gambar 2.5 Contoh source code tokenization

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 24: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

12

5. Pencarian

Setelah index terisi dengan informasi dokumen, pengguna dapat mulai

mencari dokumen dengan memasukkan input teks sesuai dengan dokumen

yang ingin dicari. Dengan menggunakan qparser, pengguna dapat mengurai

setiap kata pencarian dan menyaring pencarian dokumen melalui field

tertentu, contohnya hanya pada field content.

2.4 Stemming

Stemming merupakan proses mengubah kata pada sebuah dokumen untuk

mendapatkan kata dasarnya dengan aturan tertentu. Stemming dilakukan pada saat

pembuatan indeks dari suatu dokumen (Tahitoe, 2010). Stemming digunakan

untuk meningkatkan jumlah dokumen yang relevan terhadap pencarian.

Implementasi stemming berbeda-beda antar satu Bahasa dengan Bahasa yang lain,

seperti contohnya pada Bahasa Inggris hanya memiliki sufiks, sedangkan pada

Bahasa Indonesia juga terdapat prefix dan konfiks.

>>> with ix.searcher() as searcher: ... query = QueryParser("content", ix.schema).parse("first") ... results = searcher.search(query) ... results[0]

>>> from whoosh.lang.porter import stem >>> stem("rendering") 'render'

Gambar 2.6 Contoh source code stemming

Gambar 2.7 Source code pencarian query

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 25: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

13

2.5 Algoritma Enhanced Confix Stripping Termodifikasi

Algoritma Enhanced Confix Stripping Termodifikasi yang digunakan untuk

memproses kata bahasa Indonesia dikembangkan dari berbagai algoritma

stemming sebelumnya yang dijabarkan sebagai berikut.

2.5.1 Algoritma Nazief dan Adriani

Algoritma stemming Nazief dan Adriani dijelaskan pada makalah yang

tidak diterbitkan di Universitas Indonesia. Algoritma ini didasarkan pada aturan

morfologi menyeluruh yang mengelompokkan imbuhan (afiks) yang diizinkan

dan tidak diizinkan, termasuk awalan (prefiks), sisipan (infiks), akhiran (sufiks),

dan gabungan dari awalan dan akhiran (konfiks) (Jelita Asian H. E., 2007).

Algoritma ini juga mendukung recoding, yang digunakan untuk menyusun

kembali huruf awal yang sebelumnya diduga sebagai imbuhan. Sebagai tambahan,

algoritma ini menggunakan kamus kata dasar yang digunakan untuk memeriksa

hasilnya. Berikut dijelaskan pengelompokan imbuhan yang menjadi dasar dari

algoritma ini.

a. Inflection Suffixes, yaitu kumpulan imbuhan akhiran yang tidak merubah

kata dasarnya, dibagi menjadi dua jenis yaitu sebagai berikut.

• Particles (P), yang merupakan “-lah”, “-kah”, “-tah”, dan “-pun”.

• Possessive Pronouns (PP), yang merupakan “-ku”, “-mu”, dan “-nya”.

b. Derivation Suffixes (DS), yaitu kumpulan imbuhan akhiran yang langsung

diberikan pada kata dasar seperti “-i", “-kan”, dan “-an”.

c. Derivation Prefixes (DP), yaitu kumpulan imbuhan awalan yang langsung

diberikan pada kata dasar, dibagi menjadi dua jenis yaitu sebagai berikut.

• Awalan yang dapat berubah (“me-”, “be-”, “pe-”, dan “te-”).

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 26: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

14

• Awalan yang tidak berubah (“di-”, “ke-”, dan “se-”).

Berdasarkan pengelompokan imbuhan yang telah dibuat dapat digambarkan

sebagai berikut.

[𝐷𝑃 + [𝐷𝑃 + [𝐷𝑃]]] + 𝑘𝑎𝑡𝑎 𝑑𝑎𝑠𝑎𝑟 + [𝐷𝑆] + [𝑃𝑃] + [𝑃] …(5.1)

Dengan didasari pada rumus tersebut, aturan yang terdapat pada algoritma ini

dijelaskan sebagai berikut.

1. Terdapat beberapa gabungan imbuhan yang tidak diizinkan, seperti “be-i”,

“di-an”, “ke-i”, “ke-kan”, “me-an”, “se-i”, “se-kan”, dan “te-an”.

2. Dilarang untuk mengulang imbuhan yang sama.

3. Tidak melakukan stemming jika kata tidak lebih dari dua huruf.

4. Beberapa awalan bisa merubah bentuk asli kata dasar, ataupun awalan yang

telah diberikan sebelumnya pada kata dasar, seperti “me-” yang dapat

menjadi “men-”, “meng-”, “mem-”, dan “meny-“.

Berdasarkan rumus dan aturan diatas, maka algoritma Nazief dan Adriani akan

dijelaskan sebagai berikut.

1. Kata yang belum di stemming akan langsung dicocokkan dengan kamus

kata dasar. Jika cocok maka kata dianggap sebagai kata dasar dan proses

stemming dihentikan.

2. Menghilangkan inflectional suffixes, jika yang berhasil dihilangkan adalah

particle, maka akan kembali dilakukan proses ini untuk menghilangkan possessive

pronoun.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 27: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

15

3. Menghilangkan derivation suffixes (“-i” atau “-an”), jika berhasil

dilanjutkan ke langkah keempat. Jika langkah keempat tidak berhasil akan

dilakukan langkah berikut.

a. Jika “-an” dihilangkan dan huruf terakhir “k”, maka huruf terakhir

tersebut dihilangkan lalu mengulang langkah keempat.

b. Mengembalikan akhiran yang dihilangkan.

4. Menghilangkan derivation prefixes, dibagi menjadi beberapa bagian sebagai

berikut.

a. Jika ada akhiran yang dihilangkan pada langkah ketiga, maka

melakukan pengecekan terhadap gabungan imbuhan yang tidak

diizinkan, jika cocok maka proses dihentikan.

b. Jika awalan cocok dengan awalan sebelumnya, maka proses

dilanjutkan.

c. Jika awalan telah dihilangkan sebanyak tiga kali, maka proses

dilanjutkan.

d. Penghilangan awalan dibagi menjadi beberapa langkah berikut.

i. Jika awalan adalah “di-”, “ke-”, atau “se-”, maka jenis awalan

secara berurutan adalah “di”, “ke”, atau “se”.

ii. Jika awalan adalah “te-”, “be-”, “me-”, atau “pe-”, maka

dilakukan algoritma sesuai dengan aturan pada tabel 2.1 yang

merupakan aturan pemenggalan awalan.

iii. Jika langkah i dan ii tidak cocok maka proses akan dilanjutkan.

e. Jika langkah diatas sudah dilakukan dan masih gagal, maka akan

dilakukan recoding tergantung dari jenis awalannya.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 28: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

16

5. Jika kata dasar masih belum bisa ditentukan, maka algoritma berhenti, dan

me-return kata asli.

Tabel 2.1 Aturan pemenggalan awalan

No. Format Kata Pemenggalan

1 berV... ber-V... | be-rV...

2 berCAP... ber-CAP... dimana C!=’r’ & P!=’er’

3 ber CAerV ... 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’ and P!=‘er’

9 teC1erC2… te-C1erC2… dimana C1!=‘r’

10 me{ l | r | w | y }V… me-{ l | r | w | y }V…

11 mem{ b | f | v }… mem-{ b | f | v }…

12 mempe{ r | l }… mem-pe…

13 mem{ rV | V }… me-m{ rV | V }… | me-p{ rV | V }…

14 men{ c | d | j | z }... men-{ c | d | j | z }...

15 menV... me-nV... | me-tV...

16 meng{ g | h | q }... meng-{ g | h | q }...

17 mengV... meng-V... | meng-kV...

18 menyV... meny-sV...

19 mempV... mem-pV... dimana V!=‘e’

20 pe{ w | y }V... pe-{ w | y }V...

21 perV... per-V... | pe-rV...

23 perCAP... per-CAP... dimana C!=‘r’ and P!=‘er’

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 29: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

17

24 perCAerV... per-CAerV... dimana C!=‘r’

25 pem{ b | f | v }... pem-{ b | f | v }...

26 pem{ rV | V }... pe-m{ rV | V }... | pe-p{ rV | V }...

27 pen{ c | d | j | z }... pen-{ c | d | j | z }...

28 penV... pe-nV... | pe-tV...

29 peng{ g | h | q }... peng-{ g | h | q }...

30 pengV... peng-V... | peng-kV...

31 penyV... peny-sV...

32 pelV... pe-lV... | “pelajar” return ajar

33 peCerV... per-erV... dimana C!={ r | w | y | l | m | n }

34 peCP... pe-CP... dimana C!={ r | w | y | l | m | n }

and P!=‘er’

Pada tabel aturan pemenggalan awalan, terdapat beberapa simbol yang digunakan

yaitu C sebagai huruf konsonan, B sebagai huruf vokal, A sebagai huruf vokal

atau konsonan, P sebagai Partikel atau fragmen.

Pada algoritma ini juga dijelaskan mengenai Prefix disambiguation yang

merupakan kelemahan dari stemming pada umumnya. Hal ini terjadi ketika men-

stemming kata yang ambigu. contohnya, kata “mengaku” dalam aturan nomor 17

untuk awalan “-mengV” dapat menghasilkan “meng-aku” dengan kata dasar aku,

ataupun “meng-kaku” dengan kata dasar kaku. Keduanya merupakan kata yang

terdapat pada kamus kata dasar, dan kita hanya dapat menentukan kata dasarnya

dari konteks kalimat tersebut.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 30: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

18

2.5.2 Algoritma Confix Stripping (CS)

Algoritma ini dikembangkan dari algoritma Nazief dan Adriani dengan

penambahan beberapa perbaikan dari kesalahan stemming algoritma tersebut.

Penambahan aturan yang dilakukan akan dijelaskan sebagai berikut.

1. Menggunakan kamus yang lebih lengkap

2. Penambahan aturan terkait hyphenated word¸ yaitu kata dengan tanda

penghubung (“-“). Kata yang memiliki tanda penghubung akan dipisahkan dan

dianggap benar apabila keduanya memiliki kata dasar yang sama. Sebagai contoh,

kata “berbalas-balasan”, antara “berbalas” dan “balasan” memiliki kata dasar yang

sama yaitu “balas”, maka algoritma akan mengembalikan kata “balas”. Berbeda

dengan “bolak-balik” yang tidak memiliki kata dasar yang sama, algoritma akan

mengembalikan kata “bolak-balik”.

3. Menambahkan awalan “-pun” sebagai particle (inflection suffix), akhiran,

dan aturan tambahan, yang dapat dilihat pada tabel 2.2.

4. Menambahkan rule precedence, yang ditambahkan karena beberapa kasus

yang memiliki awalan dan particle tertentu yang gagal stemming. Sebagai contoh,

kata “bertingkah” yang kata dasarnya “tingkah”. Algoritma sebelumnya akan

menghilangkan akhiran “-kah” terlebih dahulu, dan menghilangkan awalan “ber-“

sehingga mendapatkan kata yang kurang benar yaitu “ting” meskipun terdapat

pada kamus kata dasar. Maka dari itu diberlakukan aturan penghilangan awalan

sebelum akhiran pada kata dengan gabungan awalan dan akhiran “be-“ “-lah”

(contoh: bersekolah), “be-“ “-an” (contoh: “bertahan”), “me-“ “-i” (contoh:

“mencapai”), “di-“ “-i” (contoh: “dimulai”), “pe-“ “-i” (contoh: “petani”), “ter-“

“-i” (contoh: “terabai”) (Jelita Asian B. , 2007).

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 31: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

19

Tabel 2.2 Penambahan dan perubahan aturan pemenggalan awalan

No. Format kata Pemenggalan

Aturan baru

35 terC1erC2… ter-C1erC2… dimana C1!=‘r’

36 peC1erC2… pe-C1erC2… dimana C1!={ r | w | y | l |

m | n }

Aturan yang mengalami perubahan

12 mempe… mem-pe…

16 meng{ g | h | q | k }… meng-{ g | h | q | k } …

2.5.3 Algoritma Enhanced Confix Stripping (ECS)

Algoritma ini dikembangkan dari algoritma Confix stripping dengan

penambahan beberapa perbaikan dari algoritma sebelumnya. Penambahan aturan

akan dijelaskan sebagai berikut.

1. Menambahkan dan merubah beberapa aturan yang terdapat pada aturan

pemenggalan awalan yang dijabarkan pada table 2.3

2. Penambahan langkah tambahan loopPengembalianAkhiran pada algoritma

jika proses recoding gagal. Langkah ini akan dijelaskan sebagai berikut.

a. Mengembalikan kata yang telah di-recoding, dan mengembalikan

semua awalan yang telah dihilangkan. Jika proses menghilangkan awalan

berhasil, maka algoritma dihentikan

b. Mengembalikan akhiran yang telah dihilangkan satu-persatu sambil

dilakukan pengecekan, mulai dari Derivation suffix, Possessive Pronoun,

dan particle. Khusus untuk Derivation suffix akhiran “-kan”, huruf “k”

dicek terlebih dahulu, baru ditambahkan “an”.

c. Melakukan penghilangan awalan.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 32: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

20

d. Melakukan recoding.

Tabel 2.3 Penambahan dan perubahan aturan pemenggalan awalan

No. Format kata Pemenggalan

Aturan yang mengalami perubahan

14 men{ c | d | j | s | z }… men-{ c | d | j | s | z }…

17 mengV… meng-V… | meng-kV… | (mengV-… jika

V=‘e’)

19 mempA… mem-pA... dimana A!= ‘e’

29 pengC… peng-C…

30 pengV… peng-V… | peng-kV… | (pengV-… jika

V=‘e’)

2.5.1 Algoritma Enhanced Confix Stripping Termodifikasi

Algoritma ini dikembangkan dari algoritma Enhanced Confix Stripping

dengan perbaikan terhadap beberapa kesalahan yang dilakukan sebelumnya

(Tahitoe, 2010). Kesalahan yang dilakukan akan dijabarkan pada table 2.4.

Tabel 2.4 Kesalahan pada stemming Enhanced Confix Stripping

Tipe Kesalahan Contoh kata Hasil stemming ECS Koreksi

sisipan kinerja kinerja kerja

overstemming penyidikan idi sidik

understemming mengalami mengalami alam

nama orang umai uma umai

kesalahan aturan pemenggalan

awalan no.18

menyatakan menyatakan nyata

kesalahan aturan pemenggalan

awalan no.31

penyanyi penyanyi nyanyi

Perbaikan yang dilakukan atas kesalahan stemming yang dijabarkan, dapat

dilihat pada lampiran, dan dijelaskan sebagai berikut.

1. Sisipan

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 33: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

21

Sisipan merupakan salah satu imbuhan dalam bahasa Indonesia. karena

tidak adanya aturan ini pada algoritma sebelumnya, maka dilakukan penambahan

aturan stemming sisipan (“-er-“, “-el-“, “-em-“, “-in-“). Aturan ini dilakukan

setelah proses stemming awalan dan akhiran selesai dilakukan.

2. Kesalahan aturan pemenggalan nomor 18 dan 31

Menambahkan aturan 18 menjadi menyV… -> me-nyV… | meny-sV… dan

menambahkan aturan 31 menjadi penyV... -> pe-nyV… | peny-sV...

3. Akhiran serapan Bahasa asing

Menambahkan serapan bahasa asing “-is”, “-isme”, “-isasi” pada aturan

stemming Derivational suffix.

2.6 Metode Evaluasi Paice

Metode evaluasi Paice adalah metode yang digunakan untuk mengevaluasi

kualitas dari hasil algoritma stemming dengan menghitung segala bentuk

kesalahan yang dilakukan selama proses stemming. Algoritma stemming yang

berjalan dengan baik akan mengelompokkan semua kata secara semantik pada

kata dasar yang sama. Tetapi pada dasarnya setiap bahasa memiliki faktor

ketidakteraturan, sehingga algoritma stemming tidak akan bisa terhindar dari

kesalahan meskipun menggunakan daftar kosakata (Tala, 2003).

Terdapat 2 jenis kesalahan yang akan diukur pada metode evaluasi paice,

yaitu sebagai berikut (Paice, 1994).

• Understemming

Terjadi dimana kata tidak dikelompokkan pada kata dasar yang seharusnya

karena kurangnya pemenggalan imbuhan.

• Overstemming

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 34: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

22

Terjadi dimana kata tidak dikelompokkan pada kata dasar yang seharusnya

karena pemenggalan imbuhan yang tidak sesuai, sehingga menyebabkan arti

dari kata tidak sesuai dengan kelompok kata.

Terdapat 3 kelas dari hubungan antar pasangan kata, yaitu sebagai berikut

(Tala, 2003).

• Tipe 0

2 kata yang berbentuk identik dan tergabung dengan mengabaikan

kemungkinan homograf(duplikasi)

• Tipe 1

2 kata yang berbeda bentuk namun memiliki semantik yang sama

• Tipe 2

2 kata yang berbeda bentuk dan memiliki semantik yang berbeda

Perhitungan kesalahan understemming dan overstemming dilakukan

dengan menggunakan UI (understemming) sebagai proporsi pasangan tipe 1 yang

tidak berhasil digabung oleh algoritma stemming, dan OI (overstemming) sebagai

proporsi pasangan tipe 2 yang berhasil digabung oleh prosedur stemming. Setelah

semua kata dikelompokkan secara semantik, dilakukan perhitungan

penggabungan kata untuk kelompok g yang disebut sebagai Desired Merge Total

(DMT) dimana Ng adalah jumlah kata dari kelompok g

𝐷𝑀𝑇𝑔 = 0.5 𝑁𝑔(𝑁𝑔 − 1) …(6.1)

Gabungan nilai dalam semua kelompok pada sampel teks dinamakan Global

Desired Merge Total (GDMT) yang didefinisikan sebagai berikut.

𝐺𝐷𝑀𝑇 = ∑ 𝐷𝑀𝑇𝑔𝑖𝑖∈𝑛𝑔 …(6.2)

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 35: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

23

Dimana 𝑛𝑔 adalah jumlah total kelompok semantik.

Setelah proses stemming, semua kata telah direduksi menjadi kata dasar.

Dalam kelompok yang tidak tergabung secara keseluruhan, akan ada lebih dari

satu bentuk kata dasar dalam kelompok tersebut. Ini berarti tidak semua kata

dalam kelompok tersebut dikelompokkan pada kata dasar yang sama. Algoritma

stemming yang digunakan tidak dapat mengabungkan kata-kata tersebut.

Ketidakmampuan sebuah stemmer dalam menggabungkan kata-kata dalam sebuah

kelompok semantik g pada stem yang sama dapat dihitung dengan menggunakan

rumus Unachieved Merge Total (UMT)

𝑈𝑀𝑇𝑔 = 0.5 ∑ 𝑛𝑔𝑖(𝑁𝑔 − 𝑛𝑔𝑖

)𝑖∈[1..𝑓𝑔] …(6.3)

Dimana 𝑓𝑔 adalah jumlah stem yang berbeda dalam kelompok semantik,

dan 𝑛𝑔𝑖 adalah jumlah kata dalam kelompok tersebut yang telah menjadi stem i.

Nilai total UMT dari semua kelompok dari sampel teks dinamakan Global

Unachieved Merge Total (GUMT)

𝐺𝑈𝑀𝑇 = ∑ 𝑈𝑀𝑇𝑔𝑖𝑖∈𝑛𝑔 …(6.4)

Dan didapatkanlah Understemming Index (UI) dengan rumus sebagai

berikut.

𝑈𝐼 =𝐺𝑈𝑀𝑇

𝐺𝐷𝑀𝑇 …(6.5)

Sebuah stemmer mungkin mengubah banyak pasangan kata yang berasal

dari kelompok-kelompok semantik yang berbeda ke dalam stem yang identik.

Setiap stem mendefinisikan sebuah kelompok stem yang anggotanya mungkin

berasal dari sejumlah kelompok semantik yang berbeda. Jika semua kata dari

kelompok stem tertentu berasal dari kelompok semantik awal yang sama, maka

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 36: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

24

kelompok stem tidak mengandung kesalahan, sebaliknya jika kelompok stem

tertentu berisi anggota yang berasal dari kelompok-kelompok semantik yang

berbeda, ini berarti bahwa telah terjadi kesalahan penggabungan. Jumlah

kesalahan penggabungan dalam sebuah kelompok stem, yang mengandung stem

yang berasal dari 𝑓𝑠 kelompok semantik awal yang berbeda, dinamakan Wrongly-

Merged Total (WMT)

𝑊𝑀𝑇𝑔 = 0.5 ∑ 𝑛𝑠𝑖(𝑁𝑠 − 𝑛𝑠𝑖

)𝑖∈[1..𝑓𝑠] …(6.6)

Dimana 𝑁𝑠 adalah jumlah item dalam kelompok stem, 𝑛𝑠𝑖 adalah jumlah

stem yang berasal dari kelompok semantik awal ke-i. Jumlah wrongly-merged

untuk semua kata-kata dalam sampel teks setelah proses stemming dinamakan

Global Wrongly-Merged Total (GWMT).

𝐺𝑊𝑀𝑇 = ∑ 𝑊𝑀𝑇𝑠𝑖𝑖∈𝑛𝑠 …(6.7)

Dimana 𝑛𝑠 adalah jumlah kelompok stem setelah proses stemming. Setiap

kata dalam kelompok semantik tertentu memiliki kemungkinan untuk

digabungkan dengan kata-kata dari kelompok semantik yang berbeda, yang harus

dihindari. Untuk sebuah kelompok tertentu, nilai ini disebut Desired Nonmerged

Total (DNT).

𝐷𝑁𝑇𝑔 = 0.5 𝑁𝑔(𝑊 − 𝑁𝑔) …(6.8)

Dimana W adalah jumlah total kata dalam sampel teks. Jumlah

kemungkinan untuk semua kata dalam sampel teks dinamakan Global Desired

Non-Merge Total (GDNT)

𝐺𝐷𝑁𝑇 = ∑ 𝐷𝑁𝑇𝑔𝑖∈[1..𝑁𝑔] …(6.9)

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 37: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

25

Dan didapatkanlah Overstemming Index (OI) dengan rumus sebagai

berikut.

𝑂𝐼 =𝐺𝑊𝑀𝑇

𝐺𝐷𝑁𝑇 …(6.10)

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 38: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

26

BAB III

METODOLOGI DAN PERANCANGAN APLIKASI

3.1 Metodologi Penelitian

Metode penelitian yang digunakan dalam penelitian ini adalah sebagai

berikut.

a. Studi Fisibilitas

Studi fisibilitas atau disebut juga sebagai studi kelayakan, dilakukan untuk

mengukur tingkat efektifitas dari web search engine laman FAQ sebagai

sumber informasi untuk membantu menyelesaikan masalah bagi pengguna

website Gramedia Digital. Dalam studi ini dilakukan pengumpulan data dan

informasi. Teknik pengumpulan informasi yang dilakukan adalah survey.

b. Studi Literatur

Tahap studi literatur merupakan studi yang mempelajari teori-teori dasar

yang berhubungan dengan search engine, whoosh library, website scraping,

stemming, dan metode evaluasi Paice. Teori-teori tersebut akan menjadi

acuan atau pedoman dalam pengerjaan laporan ini. Studi literatur dapat

diambil dari berbagai sumber, diantaranya buku, jurnal ilmiah, tugas akhir

dari mahasiswa sarjana maupun pascasarjana dan artikel dari akademisi

secara cetak maupun online.

c. Perancangan Sistem

Sebelum sampai kepada tahap implementasi, dilakukan perancangan sistem

dengan merancang alur kerja sistem dalam bentuk Flowchart, dan

Rancangan tampilan akan digunakan sebagai antarmuka aplikasi.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 39: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

27

d. Implementasi

Pada tahap ini akan dibangun stemmer dan web search engine dengan

mengimplementasikan algoritma stemming Enhanced Confix Stripping

dengan rancangan dan tampilan yang sudah ditetapkan pada proses

perancangan. Implementasi akan menggunakan bahasa pemrograman

Python.

e. Pengujian Sistem dan Evaluasi

Pengujian sistem akan dilakukan untuk menentukan keberhasilan proses

sistem dan dilanjutkan dengan evaluasi keberhasilan Stemmer terhadap Web

Search engine dengan menggunakan metode evaluasi Paice.

3.2 Pengumpulan dan Preprocessing Data

Sebelum melakukan implementasi terhadap sistem, dilakukan pengumpulan

data-data yang diperlukan untuk mendukung proses berjalannya sistem. Data yang

diperlukan berupa kamus kata dasar, yaitu list kata dasar yang berjumlah 30.000

kata, data akan disimpan dalam bentuk txt, dan digunakan untuk mencocokkan

kata yang dicari dengan kata dasar.

Data lain yang dibutuhkan adalah konten FAQ Gramedia Digital, yang

didapat dari melakukan scraping, pada situs Gramedia digital. Teknik scraping

yang dilakukan menggunakan Bahasa pemrograman python, dibantu dengan

BeautifulSoup package menarik data dari dokumen HTML dan XML. Konten

FAQ yang telah melalui proses scraping akan dirubah ke dalam bentuk JSON

sehingga dapat dimasukkan ke dalam index Whoosh, yang digunakan sebagai

corpus untuk pencarian berdasarkan kata dasar.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 40: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

28

Selain itu juga dilakukan penarikan informasi 10.000 judul buku dalam

bentuk JSON dari API Gramedia digital. dokumen ini juga akan diproses dan

dimasukkan ke dalam index Whoosh, yang digunakan sebagai corpus untuk

pencarian berdasarkan kata dasar. Hal ini dilakukan menambahkan data index

yang terbatas pada FAQ saja, sehingga pencarian menjadi lebih relevan.

3.3 Perancangan Sistem

Terdapat flowchart, dan rancangan tampilan yang akan dijelaskan sebagai

berikut.

3.2.1 Flowchart

Alur jalannya Web Search Engine ini akan dijelaskan sebagai berikut.

A. Flowchart Sistem

Gambar 3.1 merupakan penjabaran alur kerja utama dari sistem Web Search

Engine berbasis algoritma stemming secara umum. Dimulai dari menampilkan

halaman utama yang berisi search bar. Pengguna dapat memasukkan query pada

kolom pencarian yang sudah disediakan, dan menekan tombol search yang

terdapat disebelahnya. Masukan dari Pengguna tersebut akan masuk ke dalam

proses stemming yang nantinya akan dijelaskan pada flowchart berikutnya, dan

hasil dari penyederhanaan menjadi kata dasar ini akan dilanjutkan dengan proses

searching.

Proses searching dilakukan untuk mencari kata dasar pada dokumen

sehingga mendapatkan hasil yang relevan. Proses ini akan memberikan keluaran

berupa hasil pencarian, dan menampilkannya pada halaman utama. Hasil

pencarian ini akan berisi judul FAQ/buku dan link dari konten tersebut, yang

relevan dengan masukan pengguna

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 41: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

29

Gambar 3.1 Flowchart Sistem Pencarian

B. Flowchart Stemming

Pada Gambar 3.2 Dijelaskan alur proses stemming secara umum. Proses ini

melakukan pengerjaan kalimat yang masukan dari pengguna, dan

dinormalisasikan. Proses normalisasi dilakukan untuk menyisihkan simbol, dan

merapikan kalimat menjadi huruf kecil secara keseluruhan. Lalu kalimat dipecah

menjadi kata-kata dan dilanjutkan ke proses berikutnya.

Apabila kata memiliki tanda penghubung (‘-‘), maka kata tersebut

merupakan kata hyphenated, kata tersebut pun dipisah berdasarkan kata hubung

dan dilakukan stemming terhadap keduanya. Bila kedua kata tersebut memiliki

kata dasar yang sama, maka kata dasar tersebut akan masuk ke dalam baris hasil

kata dasar. Sebaliknya, bila kedua kata tersebut tidak memiliki kata dasar yang

sama, maka kata asli akan dimasukkan ke baris hasil kata dasar.

Bila kata tidak memiliki tanda penghubung, maka akan langsung dilakukan

proses stemming Enhanced Confix Stripping Termodifikasi yang akan dijelaskan

pada gambar berikutnya. Kata yang dihasilkan oleh proses ini akan dimasukkan

ke dalam baris hasil kata dasar.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 42: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

30

Apabila kata yang dapat diproses dari kalimat tersebut sudah habis, maka

proses ini akan memberikan output berupa baris hasil kata dasar, yang akan

digunakan untuk proses searching nantinya.

Gambar 3.2 Flowchart Stemming

C. Flowchart Enhanced Confix Stripping Termodifikasi

Pada flow chart ini dijelaskan alur algoritma stemming Enhanced Confix

Stripping Termodifikasi yang digunakan untuk stemming kata menjadi kata dasar

pada web search engine. Alur dimulai dengan langsung mengecek apakah kata

tersebut merupakan kata dasar. Bila betul kata akan langsung masuk ke hasil kata

dasar dan alur selesai. Tetapi bila kata belum merupakan kata dasar, akan dicek

apakah kata lebih dari 3, bila tidak berarti kata tidak layak untuk di-stem sehingga

akan langsung masuk ke hasil kata dasar.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 43: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

31

Selanjutnya akan dilakukan pengecekan terhadap aturan kata precedence,

kata ini memiliki imbuhan awalan dan akhiran “be-“ “-lah” (contoh: bersekolah),

“be-“ “-an” (contoh: “bertahan”), “me-“ “-i” (contoh: “mencapai”), “di-“ “-i”

(contoh: “dimulai”), “pe-“ “-i” (contoh: “petani”), “ter-“ “-i” (contoh: “terabai”).

Apabila benar, akan dilakukan penghilangan awalan terlebih dahulu, dan dicek

lagi apakah kata merupakan kata dasar, lalu dilakukan penghilangan akhiran yang

disusul dengan pengecekan kata dasar. Apabila kata tersebut bukan merupakan

kata dasar, kata tersebut akan dikembalikan menjadi bentuk asli.

Kata yang telah dikembalikan akan dilakukan penghilangan akhiran terlebih

dahulu, dan penghilangan awalan. Apabila kata belum merupakan kata dasar akan

dilakukan metode pengembalian akhiran. Sistem akan mengembalikan akhiran

terakhir sebelum dilakukan penghilangan awalan. Apabila terdapat akhiran “-

kan”, kata akan dihilangkan akhiran “-an” terlebih dahulu, baru ditambahkan

kembali menjadi akhiran “-kan”. Setelah itu akan dilakukan penghilangan awalan

kembali, untuk melihat apakah akhirannya memang merupakan bagian dari kata

dasar kata tersebut.

Apabila kata tersebut bukan juga merupakan kata dasar, maka kata awal

akan dikembalikan, dan dianggap sebagai kata dasar. Penjelasan mengenai

hilangkan awalan dan akhiran akan dibahas pada gambar berikutnya

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 44: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

32

Gambar 3.3 Flowchart Enhanced Confix Stripping Termodifikasi

D. Flowchart Hilangkan Awalan

Gambar 3.4 menjelaskan flowchart yang digunakan untuk menghilangkan

awalan dari suatu kata. kata akan dicek jika memiliki awalan yang dapat

dihilangkan, dan terdapat batasan untuk menghapus awalan sebanyak tiga kali.

Lalu secara berturut-turut akan dilakukan penghilangan awalan yang tidak

merubah bentuk kata dasarnya, yaitu “di-“, “ke-“, “se-“. Dilanjutkan dengan

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 45: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

33

penghapusan awalan yang dapat merubah kata dasarnya, yaitu “te-“, “be-“, “me-“,

“pe-“.

Gambar 3.4 Flowchart Hilangkan Awalan

E. Flowchart Hilangkan Akhiran

Pada Gambar 3.5 dijelaskan alur penghilangan akhiran. Alur penghilangan

akhiran lebih sederhana dibandingkan dengan penghilangan awalan. Penghilangan

akhiran memiliki tiga tahap yaitu penghilangan particle, yang dilanjutkan dengan

possessive pronouns, dan terakhir adalah derivational suffixes.

Gambar 3.5 Flowchart Hilangkan Akhiran

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 46: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

34

F. Flowchart Searching

Gambar 3.6 merupakan flowchart searching yang dilakukan dengan

melakukan pencarian dokumen yang relevan dengan baris kata yang didapat dari

proses stemming. Pencarian akan dilakukan dengan keseluruhan baris kata, dan

secara per kata. Dokumen yang telah ditemukan akan memberikan keluaran

sebagai daftar dokumen yang memiliki link dan penjelasan yang relevan dengan

baris kata. Bila tidak ditemukan, pencarian akan dihentikan dan memberikan

keluaran bahwa pencarian tidak ditemukan.

Gambar 3.6 Flowchart Searching

3.2.2 Tampilan Antarmuka

Sistem Web Search Engine yang diimplementasi perlu adanya rancangan

tampilan antarmuka sehingga dapat digambarkan dengan mudah dan jelas pada

saat mengimplementasikannya.

Gambar 3.7 adalah rancangan tampilan dari halaman stemmer yang

memang hanya digunakan untuk melakukan uji coba evaluasi Paice, sehingga

tidak dimasukkan pada aplikasi. Tampilan berisi penjelasan dan kolom yang

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 47: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

35

digunakan untuk memasukkan query yang akan dicari kata dasarnya. Masukan

oleh pengguna dapat berupa kata maupun kalimat, dan mengeluarkan kata dasar

dalam bentuk kata atau kalimat juga.

Gambar 3.7 Rancangan Tampilan Antarmuka Stemmer

Gambar 3.8 adalah tampilan dari halaman utama aplikasi Web Search

Engine. Halaman ini terdiri dari kolom search. Dan baris hasil pencarian yang

relevan terhadap FAQ atau buku yang akan muncul jika pengguna memasukkan

kata/kalimat untuk ke dalam kolom search. Hasil pencarian ini akan berbentuk

judul FAQ atau buku yang bertautan dengan link menuju konten tersebut yang

berada pada Gramedia Digital.

Gambar 3.8 Rancangan Tampilan Antarmuka Search

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 48: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

36

BAB IV

IMPLEMENTASI DAN UJI COBA

4.1 Spesifikasi Sistem

Pada tahap perancangan dan pembangunan sistem, perincian spesifikasi

sistem yang digunakan sebagai berikut.

a. Perangkat Keras

Berikut dijabarkan perangkat keras yang terdapat pada notebook Dell

Inspiron 3421 yang digunakan untuk mengembangkan sistem ini.

• Processor Intel Core i3-3217U 1.8GHz

• RAM 6,00 GB

• NVIDIA GeForce GT 625M

• HDD 470 GB

b. Perangkat Lunak

• Python 3.5

• Virtualenv

• PyCharm

• Beautifulsoup

• Google Chrome atau Mozilla Firefox

• Sistem Operasi: Windows 10 64-bit

4.2 Implementasi Sistem

Aplikasi Web Search Engine diimplementasikan menggunakan Bahasa

pemgrograman python. Aplikasi ini terdiri dari 2 algoritma utama, yaitu stemming

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 49: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

37

dan searching. Stemming digunakan untuk menemukan kata dasar dari suatu kata.

Kata dasar yang telah ditemukan akan digunakan untuk meningkatkan hasil yang

relevan dari searching pada Web Search Engine.

4.2.1 Implementasi Algoritma

A. Potongan Kode Stem

Pada kelas Stem terdapat inisialisasi kamus dan aturan, yang akan menjadi

landasan proses stemming. Kamus berisi kumpulan kata dasar yang digunakan

untuk mencocokkan dengan masukan pengguna yang akan melalui proses

stemming. Aturan berisi kumpulan aturan yang digunakan untuk proses stemming.

Proses dimulai dengan menormalisasikan query yang masuk, dan melakukan

proses split() berdasarkan spasi untuk mendapatkan masing-masing kata.

Kemudian setiap kata akan di Stemming, dan hasilnya akan disatukan kembali

menjadi kalimat dengan kata dasar.

Gambar 4.1 Potongan kode Tahap Stemming

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 50: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

38

Pada kode ini juga akan dilakukan fungsi pembagian antara kata tunggal dan

bertanda penghubung (hyphenated word). Kata tunggal akan langsung masuk ke

proses stemming, sedangkan kata bertanda hubung akan dilakukan pemisahan

terlebih dahulu. hasil dari pemisahan akan dicocokkan, bila hasil kata dasar dari

kedua kata yang dipisah sama, maka kata dasar dimasukkan ke dalam list hasil

kata dasar. Proses ini akan berjalan hingga kata habis.

B. Potongan Kode Enhance Confix Stripping Termodifikasi

Pada kelas Stemming, memiliki fungsi start_stemming_process yang

merupakan salah satu fungsi utama stemming. Pada awalnya langsung dilakukan

pengecekan apabila kata cocok dengan kata dasar yang terdapat pada kamus. Lalu

accept_visitors juga digunakan untuk melaksanakan aturan umum. Jika kata

termasuk dalam aturan is_precedence, kata akan dilakukan penghapusan awalan

terlebih dahulu (remove_prefixes()), setelah itu akan dilakukan penghapusan

akhiran (remove_suffixes()). Jika ternyata aturan precedence tidak terpenuhi, kata

akan dikembalikan ke bentuk awal dan melanjutkan alur program biasa.

Setelah kata dikembalikan ke bentuk awal, kata kembali dilakukan

penghilangan dimulai dari akhiran dan lalu awalan. Terakhir, bila masih gagal,

akan dilakukan loop_pengembalian_akhiran() yang berfungsi untuk

mengembalikan akhiran terakhir sebelum dilakukan penghapusan awalan, dan

dilanjutkan dengan penghapusan awalan. Fungsi ini dilakukan untuk mencegah

overstemming akhiran.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 51: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

39

Gambar 4.2 Potongan Kode tahap Enhanced Confix Stripping Termodifikasi

C. Potongan Kode Aturan

Gambar 4.3 merupakan potongan kode dari kelas aturan. Kelas ini hanya

bertugas untuk memberikan aturan-aturan yang digunakan kepada kelas stem

utama. Terdapat fungsi kata pendek yang digunakan untuk mengukur panjang

kata, bila tidak lebih dari 3, maka kata tidak akan di stem. Fungsi hapus P

(particle), PP (possessive pronouns), dan DS (derivational Suffix), yang

digunakan untuk menghilangkan akhiran. Fungsi aturan prefix1a sampai atuarn

prefix42 yang digunakan untuk menghilangkan awalan. Proses penghilangan

awalan akhiran ini sangat bergantung pada regular expression operations yang

merupakan fungsi python yang berguna untuk memanipulasi string dengan pola-

pola tertentu. Fungsi ini digunakan untuk mencari awalan atau akhiran dengan

pola tertentu, menghapusnya dari kata, dan menambahkannya pada removal, yang

menjadi catatan penghilangan imbuhan.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 52: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

40

Gambar 4.3 Potongan Code Aturan

D. Potongan Kode Searching

Gambar 4.4 merupakan potongan kode dari kelas searching, yang terdapat

fungsi search_index(). Fungsi ini digunakan untuk mencari kalimat input yang

dimasukkan oleh pengguna ke dalam dokumen yang terdapat di dalam index

Whoosh.

Gambar 4.4 Potongan Kode Searching

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 53: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

41

4.2.2 Tampilan

Pada bagian ini dijelaskan bagaimana rancangan dari tampilan aplikasi

setelah dilakukan implementasi pada sistem.

A. Tampilan Stemmer

Stemmer Pada gambar 4.5 digambarkan tampilan dari Aplikasi Stemmer,

Aplikasi stemmer tidak terdapat pada halaman utama. Karena hanya digunakan

untuk mencari kata dasar yang akan dipakai untuk uji coba stemmer, dimana akan

dilakukan evaluasi dengan metode Paice.

Gambar 4.5 Tampilan Stemmer

Setelah pengguna memasukkan kata atau kalimat pada stemmer, aplikasi

akan mengemberikan keluaran berupa kata dasar, atau kata awal apabila tidak bisa

menemukan kata dasar setelah proses pemenggalan dilakukan.

Gambar 4.6 Tampilan Stemmer Memberikan Kata Dasar

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 54: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

42

B. Tampilan Web Search Engine

Pada gambar 4.7 digambarkan tampilan dari halaman utama yang telah

diimplementasikan Web Search Engine dan Stemmer Enhanced Confix Stripping

Termodifikasi. Pada bagian tengah halaman, terdapat kolom pencarian yang dapat

digunakan pengguna untuk melakukan stemming dan pencarian FAQ dan buku

terhadap suatu kalimat atau kata berbahasa Indonesia.

Gambar 4.7 Screenshot Tampilan Halaman Utama

Pada Gambar 4.8 digambarkan halaman utama yang telah diberikan query

oleh pengguna yaitu “Pembayaran”. Pembayaran berhasil di-stem menjadi kata

dasar “bayar” dan dilakukan pencarian pada index FAQ dan buku. Keluaran yang

dihasilkan adalah judul FAQ dan buku yang relevan dengan hasil pencarian. Hasil

dari pencarian ini disertai URL, sehingga pengguna dapat langsung membuka

laman dari FAQ atau buku tersebut.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 55: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

43

Gambar 4.8 Screenshot Tampilan halaman utama saat pencarian

4.3 Skenario Uji Coba

Setelah berhasil melakukan implementasi Stemmer terhadap Web Search

Engine, dilakukan skenario uji coba untuk mengevaluasi metode Stemming

Enhanced Confix Stripping termodifikasi dengan metode evaluasi Paice.

Pengujian ini dilakukan dengan melakukan stemming terhadap sampel kata

berimbuhan. Kumpulan kata akan dikelompokkan berdasarkan kelompok (g)

menurut kata dasarnya. Hasil pengujian secara berurutan adalah mencangkup nilai

Desired Merge Total (DMT), Unachieved Merge Total (UWT), Desired Non-

Merge Total (DNT), dan Wrongly-Merged Total (WWT), untuk mendapatkan

nilai Understemming Index (UI) dan Overstemming Index (OI).

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 56: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

44

Kelompok kata berimbuhan ini akan dibuat dalam bentuk tabel kelompok

semantik, yang dikelompokkan berdasarkan kata dasar. Kata yang dijadikan

sample terdiri dari 100 kelompok g dengan total 500 kata. Akan dijelaskan

perhitungan dalam evaluasi ini dengan contoh sebagai berikut.

Pengambilan kelompok yang memiliki hasil stemming yang gagal, berikut

akan dijelaskan perhitungannya. Dari tabel 4.1 dapat dilihat pada kelompok

semantik g11, kata “bernilai” telah mengalami kegagalan stemming, yang

seharusnya menjadi kata nilai. Perhitungan dari kelompok g11 adalah sebagai

berikut.

Tabel 4.1 Hasil stemming kata dari kelompok semantik g11

Kelompok Kata Awal Hasil

g11

nilai nilai

menilai nilai

bernilai nila

penilaian nilai

dinilai nilai

Jumlah kata pada kelompok semantik 11:

Ng11 = 5

Jumlah kata yang berhasil menjadi kata dasar:

ng11 = 4

DMTg11 = 0,5 Ng11 (Ng11 – 1)

DMTg11 = 0,5 x 5 (5-1)

DMTg11 = 10

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 57: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

45

UMTg11 = 0.5 ∑ 𝑛11𝑖(𝑁11 − 𝑛11𝑖

)𝑖∈[1..𝑓11]

UMTg11 = 0.5 x ( 𝑛111(𝑁11 − 𝑛111

) + 𝑛112(𝑁11 − 𝑛112

))

UMTg11 = 0.5 x (4 (5-4) + 1 (5-1)

UMTg11 = 4

Pada tabel 4.2 terdapat kelompok semantik g32 yang mengalami 2

kegagalan stemming dengan hasil kata yang sama, perhitungannya adalah sebagai

berikut.

Tabel 4.2 Hasil stemming kata dari kelompok semantik g32

Kelompok Kata Awal Hasil

g32

ketik ketik

mengetik etik

pengetik etik

berketik ketik

diketikkan ketik

Jumlah kata pada kelompok semantik 32:

Ng32 = 5

Jumlah kata yang berhasil menjadi kata dasar:

ng32 = 3

DMTg32 = 0,5 Ng32 (Ng32 – 1)

DMTg32 = 0,5 x 5 (5-1)

DMTg32 = 10

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 58: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

46

UMTg32 = 0.5 ∑ 𝑛32𝑖(𝑁32 − 𝑛32𝑖

)𝑖∈[1..𝑓32]

UMTg32 = 0.5 x ( 𝑛321(𝑁32 − 𝑛321

) + 𝑛322(𝑁32 − 𝑛322

))

UMTg32 = 0.5 x (3 (5 – 3) + 2 (5 - 2))

UMTg32 = 6

Setelah melakukan penghitungan UMT dan DMT, selanjutnya dilakukan

penyusunan ulang dari kelompok kata yang telah melalui proses stemming.

Tabel 4.3 Hasil stemming kata dari kelompok semantik g

Kata Awal Hasil Asal Kelompok Ns ns WMT

diminati mati g8 2 1 0,5

mati mati g101

bernilai nila g11 2 1 0,5

nila nila g102

beruang beruang g16 1 1 0

rang rang g103 2 1 0,5

dikurangi rang g16

etik etik g104

3 1 2 mengetik etik g32

pengetik etik g32

Dilihat dari tabel 4.3, setiap kata akan bergabung dengan kata lain yang

memiliki hasil kata dasar yang sama. Selanjutnya akan dihitung WMT dari g101,

g102, g103, yang akan dijelaskan sebagai berikut.

𝑊𝑀𝑇𝑠 = 0.5 ∑ 𝑛𝑠𝑖(𝑁𝑠 − 𝑛𝑠𝑖

)𝑖∈[1..𝑓𝑠]

𝑊𝑀𝑇𝑠1 = 0,5 (1 (2 – 1))

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 59: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

47

𝑊𝑀𝑇𝑠1 = 0,5

Perhitungan dari g104 akan dijelaskan sebagai berikut.

𝑊𝑀𝑇𝑠 = 0.5 ∑ 𝑛𝑠𝑖(𝑁𝑠 − 𝑛𝑠𝑖

)𝑖∈[1..𝑓𝑠]

𝑊𝑀𝑇𝑠 = 0,5 (1 (3 – 1) + 2 (3 – 2))

𝑊𝑀𝑇𝑠 = 2

Selanjutnya akan dilakukan penghitungan DNT adalah sebagai berikut.

W = 504 kata

DNT = 0,5 Ng (W – Ng)

DNT = 0,5 x 5 (504 -5)

DNT =1247,5

DNT jumlah kelompok g1 - g100 = 1247,5 x 100 = 124750

DNT dari masing-masing 101 – 104:

DNT = 0,5 x 1 (504 – 1)

DNT = 251,5

DNT jumlah kelompok g101 - g10 = 251,5 x 4 = 1006

GDNT = 125756

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 60: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

48

4.4 Analisis

Dari data hasil perhitungan DMT dan UMT yang terdapat pada lampiran,

dapat diperoleh dari tiap-tiap nilai yang disebutkan menjadi GDMT dan GUMT.

Dari perhitungan tersebut dapat diperoleh understemming index (UI)

𝐺𝐷𝑀𝑇 = ∑ 𝐷𝑀𝑇𝑔𝑖𝑖∈𝑛𝑔

GDMT = 1000

𝐺𝑈𝑀𝑇 = ∑ 𝑈𝑀𝑇𝑔𝑖𝑖∈𝑛𝑔

GUMT = 22

UI = GDMT / GUMT = 22/1000 = 2,2 x 10-4

OI = GWMT / GDNT = 3,5/125756 = 2,78 x 10-5

Dari hasil pengujian stemming di atas, telah berhasil dilakukan. Nilai

Understemming index berupa 2,2 x 10-4 dan Overstemming index berupa 2,78 x

10-5 yang mendekati nol menunjukkan bahwa stemmer berhasil memproses kata

berimbuhan menjadi kata dasar dengan sedikit kesalahan stemming.

Namun masih terdapat kesalahan stemming, seperti kata “nilai” menjadi

“nila”, kata “uang” menjadi “beruang”, kata “ketik” menjadi “etik”. Contoh

kesalahan stemming tersebut sebenarnya tidak jauh dari keambiguan yang

terrdapat dalam proses stemming. Karena sesuai dengan berjalannya proses

algoritma stemming, terdapat kelemahan sistem yang tidak bisa membaca konteks

dari kalimat/kumpulan kata tersebut. Meskipun pada saat di stem, memang benar

bahwa kata beruang, etik, dan nila merupakan kata dasar. Namun terkadang tidak

sesuai dengan maksud kalimat terdapat pada konteks apa.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 61: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

49

Pengembangan pada algoritma stemming dilakukan untuk mengerucutkan

kesalahan pada saat stemming, namun tidak menutup kemungkinan terjadinya

kesalahan

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 62: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

50

BAB V

SIMPULAN DAN SARAN

5.1 Simpulan

Dari hasil penelitian yang dilakukan, dapat disimpulkan sebagai berikut.

1. Metode Stemming Enhanced Confix Stripping Termodifikasi telah berhasil

diimplementasikan pada Web Search Engine. Aplikasi ini dapat menampilkan

kata dasar yang benar, dan menampilkan informasi FAQ dan buku yang relevan

dengan query pencarian.

2. Algoritma Enhanced Confix Stripping Termodifikasi telah berhasil

melakukan uji dengan menggunakan 100 kelompok kata. Dari hasil evaluasi Paice

didapatkan Understemming index berupa 2,2 x 10-4 dan Overstemming index

berupa 2,78 x 10-5 .

5.2 Saran

Aplikasi Web Search Engine yang dibuat memiliki kekurangan dan

keterbatasan. Saran untuk pengembangan aplikasi ini adalah sebagai berikut.

1. Mengembangkan algoritma stemming dengan menambahkan nilai konteks

penulisan kata. Penambahan Elemen konteks dalam algoritma disebabkan

adanya ambiguitas dari kata yang bisa memiliki beberapa kemungkinan kata

dasar. Penambahan elemen ini akan menambahkan tingkat akurasi stemming

dari kata yang ambigu.

2. Menggunakan algoritma tambahan lainnya, seperti Page Rank, dan Link

Popularity untuk mengurutkan hasil pencarian dari yang paling akurat.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 63: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

51

DAFTAR PUSTAKA

Baeza-Yates, R. (2011). Modern Information Retrieval: The Concepts and

Technology Behind Search. Santiago, Chile: Addison Wesley Longman.

Broder, A. Z. (1997). Syntactic clustering of the web. Computer Networks and

ISDN Systems, 1157-1166.

Chaput, M. (2017, June 30). Whoosh Documentation release 2.7.4. Diambil

kembali dari https://whoosh.readthedocs.io/en/latest/:

https://media.readthedocs.org/pdf/whoosh/latest/whoosh.pdf

Cording, P. H. (2011). Algorithms for Web Scraping. Diambil kembali dari

Danmarks Tekniske Universitet:

www2.imm.dtu.dk/pubdb/views/edoc_download.php/6183/pdf/imm6183.p

df

Digital, G. (2018). Bantuan. Diambil kembali dari Gramedia Digital:

https://ebooks.gramedia.com/

Dinda. (2017). Pentingnya Search Engine untuk laman FAQ. (H. Rafael,

Pewawancara)

Dunning, T. (1994). Statistical Identification of Language. Mexico: New Mexico

State University.

Gramedia. (2017). Survey Umpan Balik Pelanggan Terhadap Pelayanan

Frequently Asked Question. Jakarta: Gramedia Digital.

Jarvelin, K. (2000). IR evaluation methods for retrieving highly relevant

documents. Athens: University of Tampere.

Jelita Asian, B. (2007). Effective Techniques for Indonesian Text Retrieval.

Melbourne: RMIT University.

Jelita Asian, H. E. (2007). Stemming Indonesian. ACM Transactions on Asian

Language Information Processing (TALIP), 1-33.

Jurafsky, D. (2014). Speech and Language Processing. New Jersey: Prentice Hall,

Pearson Education International.

Lindsley, D. (2012). Pycon US - Building A Python-Based Search Engine. Santa

Clara, California, United States of America.

Manning, C. D. (2008). An Introduction to Information Retrieval. Cambridge:

Cambridge University Press.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 64: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

52

RIJSBERGEN, C. J. (1979). Information Retrieval. Butterworths, London:

Glasglow University Press.

Satria, R. (2017). Customer Support Report 2017 Bulan Januari dan Februari.

Jakarta: SCOOP.

Sebastian, J. (2013). Implementasi Algoritma Stemming Enhanced Confix

Stripping Pada Web Search Engine (Studi Kasus: Situs Sindo Weekly

Magazine). Tangerang: Universitas Multimedia Nusantara.

Suhartono, D. (2014). Lemmatization Technique in Bahasa: Indonesian language.

JOURNAL OF SOFTWARE, vol. 9, no.5, May, 1202.

Tahitoe, A. D. (2010). Implementasi modifikasi enhanced confix stripping

stemmer untuk bahasa indonesia dengan metode corpus based stemming.

Surabaya: Institut Teknologi Sepuluh Nopember.

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 65: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

53

LAMPIRAN

1. Gambar Screenshot perbaikan kesalahan stemming Enhanced Confix

Stripping

2. Tabel hasil stemming

3. Data Riwayat Hidup

4. Form bimbingan skripsi (scan)

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 66: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Gambar Screenshot perbaikan kesalahan stemming Enhanced Confix

Stripping

Gambar 1 Screenshot Contoh Kata Sisipan

Gambar 2 Screenshot Contoh Kata dalam aturan 18

Gambar 3 Screenshot Contoh Kata dalam aturan 31

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 67: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Gambar 4 Screenshot Contoh kata Derivational Suffix (is|isme|isasi)

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 68: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya

Kelompok Kata Awal Hasil Ng ng DMT UMT

g1

bicara Bicara

5 5 10 0

berbicara Bicara

pembicaraan Bicara

membicarakan Bicara

dibicarakan Bicara

g2

wujud Wujud

5 5 10 0

perwujudan Wujud

mewujudkan wujud

terwujud wujud

diwujudkan wujud

g3

tarik tarik

5 5 10 0

ditarik tarik

menarik tarik

penarik tarik

tarikkan tarik

g4

sapu sapu

5 5 10 0

menyapu sapu

penyapu sapu

tersapu sapu

disapu sapu

g5

gagal gagal

5 5 10 0

penggagalan gagal

digagalkan gagal

menggagalkan gagal

kegagalan gagal

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 69: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g6

jelas jelas

5 5 10 0

menjelaskan jelas

penjelasan jelas

dijelaskan jelas

kejelasan jelas

g7

tembus tembus

5 5 10 0

menembus tembus

tertembus tembus

ditembus tembus

penembus tembus

g8

minat minat

5 4 10 4

diminati mati

berminat minat

peminatan minat

peminat minat

g9

harga harga

5 5 10 0

menghargai harga

penghargaan harga

dihargai harga

berharga harga

g10

murah murah

5 5 10 0

pemurah murah

bermurah murah

dimurahi murah

termurah murah

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 70: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g11

nilai nilai

5 4 10 4

menilai nilai

bernilai nila

penilaian nilai

dinilai nilai

g12

wakil wakil

5 5 10 0

perwakilan wakil

mewakili wakil

diwakili wakil

diwakilkan wakil

g13

hasil hasil

5 5 10 0

berhasil hasil

menghasilkan hasil

penghasil hasil

dihasilkan hasil

g14

dekat dekat

5 5 10 0

didekati dekat

pendekatan dekat

berdekatan dekat

mendekatkan dekat

g15

tingkat tingkat

5 5 10 0

meningkatkan tingkat

ditingkatkan tingkat

peningkatan tingkat

tingkatan tingkat

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 71: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g16

kurang kurang

5 4 10 4

mengurangi kurang

kekurangan kurang

dikurangi rang

kurangi kurang

g17

tampar tampar

5 5 10 0

ditampar tampar

menampar tampar

penamparan tampar

tamparan tampar

g18

untung untung

5 5 10 0

menguntungkan untung

diuntungkan untung

keuntungan untung

beruntung untung

g19

ajak ajak

5 5 10 0

mengajak ajak

diajak ajak

pengajak ajak

terajak ajak

g20

kumpul kumpul

5 5 10 0

mengumpulkan kumpul

dikumpulkan kumpul

terkumpul kumpul

kumpulan kumpul

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 72: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g21

raih raih

5 5 10 0

meraih raih

diraih raih

peraih raih

teraih raih

g22

tempat tempat

5 5 10 0

ditempati tempat

menempatkan tempat

penempatan tempat

ditempatkan tempat

g23

uang uang

5 4 10 4

keuangan uang

menguangkan uang

beruang beruang

diuangkan uang

g24

belanja belanja

5 5 10 0

berbelanja belanja

membelanjakan belanja

belanjaan belanja

perbelanjaan belanja

g25

gerak gerak

5 5 10 0

Menggerakkan gerak

penggerak gerak

digerakkan gerak

menggerakkan gerak

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 73: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g26

pilih pilih

5 5 10 0

memilih pilih

pemilihan pilih

terpilih pilih

dipilih pilih

g27

cari cari

5 5 10 0

pencarian cari

mencarikan cari

pencari cari

dicarikan cari

g28

tua tua

5 5 10 0

tertua tua

menua tua

penuaan tua

setua tua

g29

sama sama

5 5 10 0

persamaan sama

menyamakan sama

bersama sama

persamaan sama

g30

rebut rebut

5 5 10 0

merebut rebut

direbutkan rebut

perebutan rebut

diperebutkan rebut

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 74: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g31

bisnis bisnis

5 5 10 0

pebisnis bisnis

berbisnis bisnis

membisniskan bisnis

dibisniskan bisnis

g32

ketik ketik

5 3 10 6

mengetik etik

pengetik etik

berketik ketik

diketikkan ketik

g33

bantu bantu

5 5 10 0

bantuan bantu

dibantu bantu

pembantu bantu

membantu bantu

g34

proses proses

5 5 10 0

prosesan proses

diproses proses

berproses proses

memproses proses

g35

terus terus

5 5 10 0

diteruskan terus

meneruskan terus

seterusnya terus

keterusan terus

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 75: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g36

selenggara selenggara

5 5 10 0

diselenggarakan selenggara

menyelenggarakan selenggara

terselenggara selenggara

berselenggara selenggara

g37

juara juara

5 5 10 0

Kejuaraan juara

menjuarai juara

berjuara juara

dijuarai juara

g38

latih latih

5 5 10 0

melatih latih

pelatih latih

latihan latih

dilatih latih

g39

teladan teladan

5 5 10 0

meneladani teladan

keteladanan teladan

diteladani teladan

teladannya teladan

g40

tentu tentu

5 5 10 0

penentuan tentu

ditentukan tentu

menentukan tentu

ketentuan tentu

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 76: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g41

lulus lulus

5 5 10 0

lulusan lulus

diluluskan lulus

berkelulusan lulus

meluluskan lulus

g42

bersih bersih

5 5 10 0

membersihkan bersih

dibersihkan bersih

kebersihan bersih

pembersih bersih

g43

cipta cipta

5 5 10 0

pencipta cipta

menciptakan cipta

diciptakan cipta

ciptaan cipta

g44

peran peran

5 5 10 0

berperan peran

diperankan peran

peranan peran

memerankan peran

g45

sesuai sesuai

5 5 10 0

penyesuaian sesuai

disesuaikan sesuai

menyesuaikan sesuai

berkesesuaian sesuai

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 77: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g46

lantik lantik

5 5 10 0

dilantik lantik

melantik lantik

pelantikan lantik

terlantik lantik

g47

kembang kembang

5 5 10 0

perkembangan kembang

dikembangkan kembang

mengembangkan kembang

pengembang kembang

g48

cinta cinta

5 5 10 0

mencintai cinta

dicintai cinta

percintaan cinta

kecintaan cinta

g49

sekolah sekolah

5 5 10 0

bersekolah sekolah

menyekolahkan sekolah

disekolahkan sekolah

persekolahan sekolah

g50

adil adil

5 5 10 0

peradilan adil

mengadili adil

pengadilan adil

keadilan adil

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 78: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g51

capai capai

5 5 10 0

mencapai capai

pencapaian capai

tercapai capai

dicapai capai

g52

tari tari

5 5 10 0

tarian tari

penari tari

menarikan tari

ditarikan tari

g53

milik milik

5 5 10 0

memiliki milik

dimiliki milik

pemilik milik

kepemilikan milik

g54

siram siram

5 5 10 0

siraman siram

menyirami siram

disiram siram

tersiram siram

g55

tahu tahu

5 5 10 0

pengetahuan tahu

diketahui tahu

mengetahui tahu

berpengetahuan tahu

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 79: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g56

tembak tembak

5 5 10 0

penembak tembak

ditembak tembak

menembak tembak

tertembak tembak

g57

butuh butuh

5 5 10 0

kebutuhan butuh

dibutuhkan butuh

membutuhkan butuh

sebutuhnya butuh

g58

usaha usaha

5 5 10 0

pengusaha usaha

mengusahakan usaha

diusahakan usaha

berusaha usaha

g59

tinggal tinggal

5 5 10 0

peninggalan tinggal

meninggal tinggal

ditinggal tinggal

tertinggal tinggal

g60

mahal mahal

5 5 10 0

dimahalkan mahal

kemahalan mahal

termahal mahal

memahalkan mahal

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 80: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g61

jauh jauh

5 5 10 0

Menjauhi jauh

dijauhi jauh

berjauhan jauh

kejauhan jauh

g62

serbu serbu

5 5 10 0

diserbu serbu

menyerbu serbu

penyerbuan serbu

serbuan serbu

g63

tanam tanam

5 5 10 0

tanaman tanam

menanam tanam

ditanam tanam

penanaman tanam

g64

dingin dingin

5 5 10 0

pendingin dingin

kedinginan dingin

terdingin dingin

mendinginkan dingin

g65

manfaat manfaat

5 5 10 0

bermanfaat manfaat

dimanfaatkan manfaat

memanfaatkan manfaat

pemanfaatan manfaat

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 81: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g66

tambah tambah

5 5 10 0

menambahkan tambah

bertambah tambah

ditambahkan tambah

tambahan tambah

g67

resmi resmi

5 5 10 0

meresmikan resmi

peresmian resmi

diresmikan resmi

keresmiannya resmi

g68

beda beda

5 5 10 0

membedakan beda

dibedakan beda

berbeda beda

pembedaan beda

g69

main main

5 5 10 0

permainan main

mainan main

bermain main

memainkan main

g70

ukur ukur

5 5 10 0

diukur ukur

terukur ukur

pengukuran ukur

mengukur ukur

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 82: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g71

tema tema

5 5 10 0

bertema tema

ditemakan tema

menemakan tema

bertemakan tema

g72

putus putus

5 5 10 0

memutuskan putus

diputuskan putus

keputusan putus

terputusnya putus

g73

masalah masalah

5 5 10 0

bermasalah masalah

dipermasalahkan masalah

mempermasalahkan masalah

permasalahan masalah

g74

umum umum

5 5 10 0

pengumuman umum

diumumkan umum

mengumumkan umum

umumnya umum

g75

tegur tegur

5 5 10 0

menegur tegur

ditegur tegur

teguran tegur

penegur tegur

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 83: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g76

tampil tampil

5 5 10 0

menampilkan tampil

penampilan tampil

ditampilkan tampil

bertampilan tampil

g77

merah merah

5 5 10 0

memerah merah

dimerahkan merah

pemerah merah

kemerahan merah

g78

muda muda

5 5 10 0

termuda muda

kemudaan muda

memuda muda

semuda muda

g79

hitung hitung

5 5 10 0

menghitung hitung

dihitung hitung

perhitungan hitung

penghitung hitung

g80

beri beri

5 5 10 0

pemberi beri

memberi beri

pemberian beri

diberi beri

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 84: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g81

tulis tulis

5 5 10 0

menulis tulis

ditulis tulis

penulis tulis

tertulis tulis

g82

pesan pesan

5 5 10 0

dipesankan pesan

berpesan pesan

pesanan pesan

pesankan pesan

g83

lomba lomba

5 5 10 0

perlombaan lomba

melombakan lomba

dilombakan lomba

memperlombakan lomba

g84

harus harus

5 5 10 0

keharusan harus

seharusnya harus

mengharuskan harus

diharuskan harus

g85

ulang ulang

5 5 10 0

ulangan ulang

mengulangi ulang

diulang ulang

pengulangan ulang

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 85: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g86

daftar daftar

5 5 10 0

pendaftaran daftar

mendaftar daftar

terdaftar daftar

didaftarkan daftar

g87

tarif tarif

5 5 10 0

bertarif tarif

menarifkan tarif

ditarifkan tarif

bertarifkan tarif

g88

nikmat nikmat

5 5 10 0

penikmat nikmat

kenikmatan nikmat

dinikmati nikmat

nikmati nikmat

g89

tetap tetap

5 5 10 0

ditetapkan tetap

menetapkan tetap

ketetapan tetap

penetapan tetap

g90

kirim kirim

5 5 10 0

kiriman kirim

terkirim kirim

pengirim kirim

dikirimi kirim

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 86: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g91

daya daya

5 5 10 0

pemberdayaan daya

diberdayakan daya

terperdaya daya

berdaya daya

g92

datang datang

5 5 10 0

berdatangan datang

didatangkan datang

kedatangan datang

pendatang datang

g93

gandeng gandeng

5 5 10 0

bergandengan gandeng

menggandeng gandeng

digandeng gandeng

penggandengan gandeng

g94

kenal kenal

5 5 10 0

terkenal kenal

mengenal kenal

dikenal kenal

perkenalan kenal

g95

kejar kejar

5 5 10 0

mengejar kejar

dikejar kejar

terkejar kejar

pengejaran kejar

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 87: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Tabel kelompok semantik dan hasil perhitungannya (lanjutan)

Kelompok Kata Awal Hasil Ng ng DMT UMT

g96

kerja kerja

5 5 10 0

pekerjaan kerja

dipekerjakan kerja

pengerjaan kerja

bekerja kerja

g97

guru guru

5 5 10 0

berguru guru

perguruan guru

digurui guru

menggurui guru

g98

sukses sukses

5 5 10 0

kesuksesan sukses

disukseskan sukses

tersukses sukses

menyukseskan sukses

g99

angkut angkut

5 5 10 0

angkutan angkut

pengangkut angkut

diangkut angkut

mengangkut angkut

g100

ajar ajar

5 5 10 0

belajar ajar

pengajar ajar

diajarkan ajar

pembelajaran ajar

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 88: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

DAFTAR RIWAYAT HIDUP

A. Data Pribadi

1. Nama : Hans Rafael

2. Tempat, Tanggal Lahir : Jakarta, 27 September 1995

3. Jenis Kelamin : Laki-laki

4. Kewarganegaraan : Indonesia

5. Agama : Katholik

6. Status : Belum Menikah

7. Alamat : Blok N1/33, Taman Harapan Baru, Bekasi Barat

8. Telepon : 082112438998

9. Email : [email protected]

B. Latar Belakang Pendidikan

1. (2013-Sekarang): Program Kuliah Sarjana Komputer Universitas

Multimedia Nusantara

2. (2010-2013) : SMA Santo Yoseph

3. (2007-2010) : SMP Cahaya Harapan

4. (2001-2007) : SD Cahaya Harapan

C. Pengalaman Kerja

1. Internship sebagai web developer pada Elven Digital tahun 2016.

D. Kemampuan

1. Bahasa pemograman C, C++, C#, Java.

2. Pemrograman web (HTML, CSS, Javascript, XML, AJAX, dan PHP).

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018

Page 89: ENHANCED CONFIX STRIPPING TERMODIFIKASIkc.umn.ac.id/4979/1/SKRIPSI.pdf · vi IMPLEMENTASI ALGORITMA STEMMING ENHANCED CONFIX STRIPPING TERMODIFIKASI PADA SEARCH ENGINE LAMAN FAQ GRAMEDIA

Implementasi Algoritma Stemming..., Hans Rafael, FTI UMN, 2018