• Tidak ada hasil yang ditemukan

Deteksi Kemiripan Dokumen Teks Menggunakan Algoritma Manber

N/A
N/A
Protected

Academic year: 2016

Membagikan "Deteksi Kemiripan Dokumen Teks Menggunakan Algoritma Manber"

Copied!
75
0
0

Teks penuh

(1)

DETEKSI KEMIRIPAN DOKUMEN TEKS MENGGUNAKAN

ALGORITMA

MANBER

SKRIPSI

IQBAL MAULANA DJAFAR

091402012

PROGRAM STUDI S1 TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

(2)

DETEKSI KEMIRIPAN DOKUMEN TEKS MENGGUNAKAN

ALGORITMA MANBER

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah

Sarjana Teknologi Informasi

IQBAL MAULANA DJAFAR

091402012

PROGRAM STUDI S1 TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

(3)

ii

PERSETUJUAN

Judul : DETEKSI KEMIRIPAN DOKUMEN TEKS

MENGGUNAKAN ALGORITMA MANBER

Kategori : SKRIPSI

Nama : IQBAL MAULANA DJAFAR

Nomor Induk Mahasiswa : 091402012

Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Sarah Purnamawati, ST., M.Sc Dr. Erna Budhiarti Nababan, M.IT

NIP 19830226 2010122 003 NIP

Diketahui/disetujui oleh

Program Studi S1 Teknologi Informasi

Ketua,

M. Anggia Muchtar, ST., MM.IT

(4)

PERNYATAAN

DETEKSI KEMIRIPAN DOKUMEN MENGGUNAKAN

ALGORITMA MANBER

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya Saya sendiri, kecuali beberapa

kutipan dan ringkasan yang masing- masing telah disebutkan sumbernya.

Medan,

Iqbal Maulana Djafar

(5)

iv

PENGHARGAAN

Alhamdulillah segala puji dan syukur saya sampaikan kehadirat Allah SWT beserta

Nabi Besar Muhammad SAW yang telah memberikan rahmat, hidayah-Nya sehingga

Saya dapat menyelesaikan skripsi ini untuk memperoleh gelar Sarjana Program Studi

S-1 Teknologi Informasi Universitas Sumatera Utara.

Ucapan terima kasih penulis sampaikan kepada:

1. Bapak M. Anggia Muchtar, ST., MM.IT dan M. Fadly Syahputra, B.Sc.,

M.Sc.IT selaku Ketua dan Sekretaris Jurusan Teknologi Informasi Universitas

Sumatera Utara, serta seluruh dosen serta pegawai di Program Studi S-1

Teknologi Informasi.

2. Ibu Dr. Erna Budhiarti Nababan, M.IT selaku pembimbing pertama dan Ibu

Sarah Purnamawati, ST., M.Sc selaku pembimbing kedua Saya yang telah

banyak meluangkan waktunya dan memberikan saran yang bermanfaat dalam

menyelesaikan skripsi ini.

3. Bapak M. Anggia Muchtar, ST., MM.IT dan Bapak Dedy Arisandi, ST.,

M.Kom yang telah bersedia menjadi dosen penguji dan telah memberikan

saran-saran yang baik bagi penulis dalam meyelesaikan skripsi ini.

4. Ayahanda Drs. Djafar Djuned dan Bunda Husna Yaini Djuned yang telah

memberikan dukungan dan motivasi dalam menyelesaikan skripsi ini.

5. Teman-teman seperjuangan stanbuk 2009 yang banyak memberikan semangat

maupun bantuan dalam menyelesaikan skripsi ini.

Dan yang terakhir, penulis mengucapkan terima kasih kepada semua pihak

yang sudah membantu dalam penyelesaian tugas akhir ini meskipun tidak dapat

disebutkan satu per satu. Terima kasih atas saran, motivasi, dan bantuan yang telah

(6)

ABSTRAK

Dokumen teks sering dijadikan sebagai objek penjiplakan atau tindak plagiat karena

perkembangan teknologi yang semakin pesat tentu akan memudahkan tindakan

tersebut untuk dilakukan. Oleh karena itu, dirancang sistem berbasis web untuk

mendeteksi kemiripan dokumen teks menggunakan algoritma Manber. Sistem juga

dibangun dengan mengimplementasikan teknik Stemming P orter dan Synonym

Recognition untuk mengatasi teknik penjiplakan seperti Technical Disguise dan

Disguised P lagiarism. Perbedaan hasil yang didapatkan dengan menggunakan teknik

tersebut mencapai 15% dibandingkan tanpa penggunaannya.

Kata Kunci: Plagiat, Kemiripan, Stemming P orter, Synonym Recognition, Algoritma

(7)

vi

SIMILARITY DETECTION OF DOCUMENT TEXT USING

MANBER ALGORITHM

ABSTRACT

Document text is an object that often used in plagiarism case because the rapid of

technology development makes this action more easily to do. In this research, a web

based system is designed to detect similarity of document text using Manber

Algorithm. Stemming Porter and Synonym Recognition are also implemented to

overcome some of plagiarism technique like Technical Disguised and Disguised

Plagiarism. The difference result is about 15% compared without using those

techniques.

Keyword: Plagiarism, Similarity, Stemming Porter, Synonym Recognition, Manber

(8)

DAFTAR ISI

Hal.

PERSETUJUAN ii

PERNYATAAN iii

PENGHARGAAN iv

ABSTRAK v

ABSTRACT vi

DAFTAR ISI vii

DAFTAR TABEL x

DAFTAR GAMBAR xi

BAB 1 PENDAHULUAN 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 4

1.5 Manfaat Penelitian 4

1.6 Metodologi Penelitian 4

1.7 Sistematika Penulisan 5

BAB 2 TINJAUAN PUSTAKA 7

2.1 Keaslian Dokumen Teks 7

2.2 Penjiplakan 7

2.3 Kemiripan Dokumen Teks 8

2.4 Text Mining 9

2.5 Algoritma Manber 9

2.5.1 P enghapusan Noise Dan Whitespace 10

2.5.2 Metode N-Gram 11

2.5.3 Rolling Hash 12

(9)

viii

2.5.5 P ersamaan Jaccard Coefficient 13

2.6 Stemming 14

2.7 Synonym Recognition 15

2.8 Penelitian Terdahulu 15

BAB 3 ANALISIS DAN PERANCANGAN 18

3.1 Data Yang Digunakan 18

3.2 Flowchart Sistem 18

3.3 Activity Diagram 22

3.4 Stemming 23

3.5 Synonym Recognition 28

3.6 Algoritma Manber 29

3.7 Deteksi Kemiripan Teks Secara Manual 31

3.8 Perancangan Database Dan Interface Sistem 33

3.8.1 Database Sistem 33

3.8.2 Interface Sistem 34

BAB 4 IMPLEMENTASI DAN PENGUJIAN 37

4.1 Implementasi 37

4.1.1 Spesifikasi Hardware Dan Software Yang Digunakan 37

4.1.2 Database Tabel Kata Dasar 38

4.1.3 Database Tabel Kata Sinonim 38

4.1.4 Tampilan Awal 39

4.1.5 Tampilan Hasil 40

4.1.6 Stemming 41

4.1.7 Synonym Recognition 42

4.1.8 Algoritma Manber 43

4.2 Pengujian Sistem 44

4.2.1 P engujian Tampilan Sistem 44

4.2.2 P engujian P roses Stemming 46

4.2.3 P engujian Synonym Recognition 48

4.2.4 P engujian Deteksi Kemiripan Teks 49

(10)

4.2.6 P engujian Dengan Metode Lainnya 52

BAB 5 KESIMPULAN DAN SARAN 53

5.1 Kesimpulan 53

5.2 Saran 54

DAFTAR PUSTAKA 55

(11)

x

DAFTAR TABEL

Hal.

Tabel 2.1 Penelitian Terdahulu 17

Tabel 3.1 Bubuhan Kata Stemming Porter 23

Tabel 3.2 Penambahan Bubuhan Kata 24

Tabel 3.3 Rules Peleburan Huruf 25

Tabel 3.4 Rancangan Tabel Kata Dasar 33

Tabel 3.5 Rancangan Tabel Kata Sinonim 34

Tabel 4.1 Rancangan Pengujian Tampilan Sistem 44

Tabel 4.2 Hasil Pengujian Tampilan Sistem 45

Tabel 4.3 Rancangan Pengujian Rules 46

Tabel 4.4 Hasil Pengujian Rules 47

Tabel 4.5 Rancangan Pengujian SynonymRecognition 48

Tabel 4.6 Hasil Pengujian Synonym Recognition 48

Tabel 4.7 Rancangan Pengujian Kemiripan Teks 49

Tabel 4.8 Hasil Pengujian Kemiripan Teks 51

Tabel 4.9 Rancangan Pengujian Nilai N 51

Tabel 4.10 Hasil Pengujian Nilai N 51

Tabel 4.11 Rancangan Pengujian Dengan Metode Lainnya 52

(12)

DAFTAR GAMBAR

Hal.

Gambar 3.1 F lowchartP reprocessing 19

Gambar 3.2 F lowchart Text Transformation 20

Gambar 3.3 F lowchart F eature Selection & P atter Discovery 21

Gambar 3.4 Diagram Activity 22

Gambar 3.5 Proses Stemming 26

Gambar 3.6 Proses Synonym Recognition 28

Gambar 3.7 Proses Algoritma Manber 30

Gambar 3.8 Rancangan Tampilan Awal Sistem 35

Gambar 3.9 Rancangan Tampilan Hasil Sistem 36

Gambar 4.1 Database Tabel Kata Dasar 38

Gambar 4.2 Database Tabel Kata Sinonim 38

Gambar 4.3 Tampilan Awal Sistem 39

Gambar 4.4 Tampilan Hasil Sistem 40

Gambar 4.5 Hasil Implementasi Stemming 42

Gambar 4.6 Hasil Implementasi Synonym Recognition 43

Gambar 4.7 Hasil Proses Algoritma Manber 43

Gambar 4.8 Hasil Akhir Algoritma Manber 44

Gambar 4.9 Pengujian Stemming Dan Rules 47

Gambar 4.10 Pengujian Synonym Recognition 48

Gambar 4.11 Hanya Menggunakan Algoritma Manber 49

(13)

v

ABSTRAK

Dokumen teks sering dijadikan sebagai objek penjiplakan atau tindak plagiat karena

perkembangan teknologi yang semakin pesat tentu akan memudahkan tindakan

tersebut untuk dilakukan. Oleh karena itu, dirancang sistem berbasis web untuk

mendeteksi kemiripan dokumen teks menggunakan algoritma Manber. Sistem juga

dibangun dengan mengimplementasikan teknik Stemming P orter dan Synonym

Recognition untuk mengatasi teknik penjiplakan seperti Technical Disguise dan

Disguised P lagiarism. Perbedaan hasil yang didapatkan dengan menggunakan teknik

tersebut mencapai 15% dibandingkan tanpa penggunaannya.

Kata Kunci: Plagiat, Kemiripan, Stemming P orter, Synonym Recognition, Algoritma

(14)

SIMILARITY DETECTION OF DOCUMENT TEXT USING

MANBER ALGORITHM

ABSTRACT

Document text is an object that often used in plagiarism case because the rapid of

technology development makes this action more easily to do. In this research, a web

based system is designed to detect similarity of document text using Manber

Algorithm. Stemming Porter and Synonym Recognition are also implemented to

overcome some of plagiarism technique like Technical Disguised and Disguised

Plagiarism. The difference result is about 15% compared without using those

techniques.

Keyword: Plagiarism, Similarity, Stemming Porter, Synonym Recognition, Manber

(15)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Teknologi komputer sudah berkembang pesat dan menjadi sebuah kebutuhan bagi

setiap orang. Tentu perkembangan ini memiliki banyak dampak dalam kehidupan.

Salah satu dampak positifnya adalah untuk membantu dan memudahkan kerja

manusia. Sebagai contoh yaitu dalam melakukan suatu pendeteksian.

Banyak manfaat yang dapat diambil dengan adanya proses pendeteksian,

seperti pendeteksian kemiripan dokumen teks. Deteksi kemiripan dokumen teks

merupakan sebuah upaya yang dilakukan untuk menghindari tindakan plagiarisme

sehingga keaslian dari dokumen teks akan tetap terjaga.

Plagiarisme atau penjiplakan dapat diartikan sebagai sebuah tindakan imitasi

atau pemalsuan baik dari segi bahasa maupun ide dari orang lain dengan

merepresentasikan hal tersebut sebagai hasil karyanya sendiri (Hariharan, 2012).

Plagiarisme dalam bahasa latin diartikan sebagai pencurian, sehingga seseorang yang

melakukan tindak penjiplakan dapat diartikan pula sebagai seorang pencuri.

Ada banyak teknik penjiplakan pada dokumen teks, beberapa diantaranya

adalah copy paste, penulisan kembali sebuah naskah dengan mengubah struktur

penulisannya, pengutipan ide orang lain tanpa mengubah tulisan, dan penjiplakan

dengan cara mengubah bahasa dokumen ke bahasa lainnya tentunya tanpa menuliskan

sumber ide berasal. Oleh sebab itu, penjiplakan menjadi masalah utama dalam ruang

lingkup pendidikan. Hal ini didasarkan pada penelitian yang telah dilakukan oleh

(16)

tindak plagiat, baik plagiat dengan cara mencontek tugas biasa maupun tugas akhir.

Tentunya ini akan merugikan kedua belah pihak, baik pelaku dan korban penjiplakan

khususnya.

Penjiplakan pada tingkat pendidikan biasanya terjadi akibat deadline dari suatu

pekerjaan ataupun dari sifat malas yang dimiliki. Adapun tindak penjiplakan yang

sering dilakukan oleh pelajar adalah jenis copy paste, artinya dokumen teks dijiplak

tanpa mengubah isi teks maupun jenis peringkasan dengan cara menutupi bagian yang

disalin. Di dalam dunia pendidikan, suatu karya ilmiah dikatakan sebagai hasil plagiat

atau penjiplakan apabila kutipan yang dilakukan dijiplak secara utuh dan tidak disertai

penyebutan referensi secara benar (Purwitasari, et al. 2009).

Pendeteksian plagiat dapat dilakukan baik secara manual dengan mengecek

langsung dokumen teks ataupun secara semi-otomatis dengan bantuan sistem

komputer. Meskipun pendeteksian secara manual merupakan cara yang paling akurat

dalam mendeteksi plagiat, namun cara ini sangat tidak efektif dan efisien, baik dari

segi waktu, tenaga, maupun biaya. Pencegahan merupakan upaya terbaik untuk

menghalangi munculnya plagiarisme, yaitu dengan menekankan moral masyarakat

dan sistem pendidikan akan bahaya plagiarisme. Cara ini akan memberikan efek

jangka panjang, sehingga diharapkan tindak penjiplakan dapat berkurang ataupun

dituntaskan hingga selesai (Salmuasih, 2013). Pendeteksian plagiarisme pada

dokumen teks dapat dilakukan dengan cara membandingkan kemiripan antara isi

dokumen teks yang akan diuji dengan dokumen teks pembandingnya, dimana

dokumen teks pembanding yang digunakan sudah dinyatakan valid sehingga terhindar

dari tindak penjiplakan.

Pendeteksian kemiripan dokumen teks berbahasa Indonesia secara

semi-otomatis cukuplah sulit untuk dilakukan karena bahasa Indonesia tidak memiliki

rumus bentuk baku yang permanen (Triawati, 2009) ditambah dengan penggunaan

imbuhan, kata ganti orang, dan sinonim kata yang sangat banyak dan memiliki ragam

bentuk serta makna. Tentu hal ini akan semakin memudahkan terjadinya tindak plagiat

dan kesulitan dalam pendeteksiannya.

Salah satu penelitian terdahulu mengenai pendeteksian kemiripan dokumen

teks, yaitu Ramadhani, et al. (2013) yang selain menggunakan algoritma Winnowing,

juga membandingkan algoritma tersebut dengan algoritma Manber. Kesimpulan yang

(17)

3

perbedaan hasil similaritas sebesar 4-7% dengan responden yang mencari kesamaan

dokumen secara manual. Meskipun dari segi keakuratan Winnowing lebih unggul,

namun waktu proses algoritma tersebut lebih lama dari algoritma Manber.

Oleh karena itu, dibutuhkan sebuah sistem untuk mendeteksi kemiripan

dokumen teks dengan tingkat keakuratan dan waktu proses yang baik. Adapun

algoritma yang diimplementasikan ke dalam sistem adalah algoritma Manber.

Algoritma ini memiliki waktu proses yang sangat cepat dan ketepatan yang cukup

baik. Algoritma Manber merupakan salah satu dari tiga metode fingerprint selain

Winnowing dan Rabin-Karp. Secara umum, algoritma Winnowing dan Manber

memiliki prinsip kerja yang hampir sama dengan perbedaan, yaitu pada proses

pemilihan fingerprint dokumennya. Proses stemming dan Synonym Recognition juga

akan diimplementasikan ke dalam sistem untuk meningkatkan keakuratan dalam

pendeteksian kemiripan dokumen teks serta mengatasi beberapa teknik penjiplakan.

1.2 Rumusan Masalah

Penjiplakan merupakan perbuatan yang secara sengaja ataupun tidak sengaja

dilakukan dengan cara mengutip sebagian atau seluruh karya orang lain, tanpa

menyatakan sumber secara tepat dan memadai. Salah satu objek yang sering dijadikan

sebagai media penjiplakan adalah dokumen teks. Untuk melihat keaslian dokumen

teks dapat diuji dengan cara membandingkan kemiripan isi dokumen teks. Oleh

karena itu, diperlukan pendekatan untuk mendeteksi kemiripan suatu dokumen teks

dengan dokumen teks lain sehingga tindakan penjiplakan dapat dideteksi dan

dihindari.

1.3 Batasan Masalah

Agar penelitian dapat sesuai dengan permasalahan yang akan diselesaikan, maka

diperlukan beberapa batasan, yaitu sebagai berikut:

1. Hanya menguji dokumen teks, tidak menguji dokumen berupa gambar ataupun

suara.

(18)

3. Pengujian dilakukan pada file dengan format pdf.

4. Hanya memperhatikan tulisan, tidak termasuk makna kalimat.

5. Tidak memperhatikan kesalahan dalam penulisan kata (typo).

6. Tidak memperhatikan adanya penulisan sumber rujukan.

7. Pendeteksian pada plagiarisme jenis Technical Disguise, Disguised, dan Copy

& P aste P lagiarism.

1.4 Tujuan

Tujuan dari penelitian ini adalah mendeteksi kemiripan satu dokumen teks uji dengan

satu dokumen teks pembanding menggunakan algoritma Manber disertai penggunaan

teknik stemming dan Synonym Recognition.

1.5 Manfaat

Adapun manfaat dari penelitian ini adalah:

1. Mengefektifkan serta mengefisiensikan waktu, tenaga, dan biaya dalam

mendeteksi kemiripan dokumen teks.

2. Menambah pengetahuan atau wawasan mengenai penjiplakan dan cara untuk

mendeteksi tindakan tersebut.

3. Sebagai bahan untuk pengembangan penelitian selanjutnya.

1.6 Metodologi Penelitian

Adapun metodologi pada penelitian ini adalah:

1. Studi Literatur

Dilakukan pengumpulan referensi melalui berbagai macam buku, jurnal,

(19)

5

2. Pengumpulan Data

Dilakukan pengumpulan data dan informasi yang akan diperlukan dalam

penelitian.

3. Analisis dan Perancangan

Dilakukan analisis terhadap studi literatur untuk mengetahui penyelesaian

permasalahan deteksi kemiripan dokumen dan melakukan perancangan sistem.

4. Implementasi

Perancangan sistem yang telah dibuat akan diimplementasikan ke dalam

aplikasi yang dibuat dengan menggunakan bahasa pemrograman PHP dan

database MySQL.

5. Pengujian

Uji coba produk dan evaluasi. Melakukan uji coba program yang telah dibuat.

Kemudian melakukan evaluasi terhadap kekurangan program.

6. Penyusunan Laporan

Dokumentasi dari hasil analisis dan implementasi dari sistem yang dibangun.

1.7 Sistematika Penulisan

Skripsi ini disusun dengan sistematika penulisan, sebagai berikut:

Bab 1: Pendahuluan

Pada bab ini dibahas mengenai latar belakang penulisan, rumusan masalah, batasan

masalah, tujuan, manfaat, metodologi penelitian, dan sistematika penulisan skripsi.

Bab 2: Landasan Teori

Pada bab ini dibahas mengenai teori-teori yang digunakan dalam pengerjaan skripsi.

Teori-teori yang terdapat pada bab ini mencakup algoritma secara umum dan teknik

(20)

Bab 3: Analisis Dan Perancangan Sistem

Pada bab ini dibahas mengenai analisis algoritma dan teknik pendukungnya dalam

mendeteksi persentase kemiripan dokumen serta perancangan sistem berdasarkan hasil

analisis yang dilakukan.

Bab 4: Pengimplementasian Dan Pengujian Sistem

Pada bab ini dibahas mengenai implementasi dari sistem dan melakukan pengujian

terhadap kinerja dari sistem yang dibentuk.

Bab 5: Kesimpulan Dan Saran

Pada bab ini berisi tentang kesimpulan yang didapat dari pembuatan skripsi dan

(21)

BAB 2

TINJAUAN PUSTAKA

Pada bab ini, akan dibahas landasan teori mengenai pendeteksian kemiripan dokumen

teks yang mengkhususkan pada pengertian dari keaslian dokumen, plagiarisme,

kemiripan dokumen, dan penjelasan mengenai algoritma yang digunakan yaitu

algoritma Manber serta teknik pendukung berupa stemming dan Synonym

Recognition. Pada akhir bab ini akan dipaparkan penelitian-penelitian terdahulu

mengenai pendeteksian kemiripan dokumen teks.

2.1 Keaslian Dokumen Teks

Keaslian sebuah dokumen teks merupakan naskah yang berasal dari ide pengarang

tanpa adanya penambahan ide dari pengarang lainnya. Jika pun ada, nama pengarang

harus dicantumkan di dalam referensi serta tidak menuliskan secara utuh kutipan ide

tersebut melainkan menuliskannya ke dalam bahasa sendiri. Hal ini dilakukan untuk

menghindari tindak plagiarisme.

2.2 Penjiplakan

Penjiplakan atau plagiarisme adalah teknik peniruan atau penyalinan ide orang lain

tanpa menuliskan referensi darimana ide tersebut berasal, artinya secara tidak

langsung penulis sudah menglaim bahwa ide tersebut berasal dari idenya sendiri.

Tidak adanya keinginan ataupun kemudahannya dalam menyalin hasil karya atau ide

(22)

Berdasarkan hasil penelitian yang dilakukan oleh Gipp & Meuschke (2011),

dijelaskan bahwa teknik plagiat memiliki ragam bentuk, diantaranya:

1. Copy & P aste P lagiarism, yaitu menyalin seluruh kata tanpa adanya

perubahan konten dari naskah aslinya.

2. Disguised P lagiarism, yaitu menutupi beberapa bagian yang telah disalin dari

naskah aslinya dengan menggunakan konten bermakna sama.

3. Technical Disguise, yaitu menyembunyikan serta melakukan peringkasan pada

beberapa konten dari naskah yang telah disalin.

4. Undue P araphrasing, yaitu mengubah susunan serta bahasa yang digunakan

(dari bahasa yang satu ke bahasa lainnya) dengan menggunakan gaya

penulisannya sendiri tanpa menuliskan sumber aslinya.

5. Translated P lagiarism, yaitu mengubah dari bahasa satu ke bahasa lainnya

tanpa menuliskan sumber aslinya.

6. Idea P lagiarism, yaitu menggunakan ide orang lain tanpa menuliskan sumber

darimana ide berasal.

2.3 Kemiripan Dokumen Teks

Pendeteksian plagiarisme pada dokumen teks dilakukan dengan cara membandingkan

isi dari dokumen yang akan diuji dengan dokumen yang dijadikan sebagai

pembandingnya. Adapun syarat dokumen pembanding adalah sudah dinyatakan

keasliannya sehingga pengujian kemiripan dokumen menjadi valid.

Dalam menentukan hasil akhir pendeteksian kemiripan dokumen teks,

biasanya digunakan persentase similaritas sehingga pembacaan hasil akhir menjadi

lebih mudah. Adapun teknik pendeteksian kemiripan dokumen teks menurut Stein &

Eissen (2006) adalah:

1. Perbandingan Teks Lengkap, yaitu membandingkan seluruh kata yang terdapat

di dalam dokumen teks.

2. Kesamaan Kata Kunci, yaitu membandingkan seluruh kata yang merupakan

perwakilan isi dokumen.

3. F ingerprint, yaitu membandingkan rangkaian pembentuk teks dengan panjang

(23)

9

2.4 Text Mining

Text Mining diartikan sebagai penambangan data berupa teks yang bersumber dari

dokumen untuk mencari kata-kata yang merupakan perwakilan isi atau pembentuk

dokumen teks sehingga penganalisisan dapat dilakukan.

Berikut ini merupakan tahapan umum pada proses Text Mining, yaitu

(Nugroho, 2011):

1. Text P reprocessing, yaitu pemrosesan awal yang ditujukan untuk membentuk

teks menjadi data siap olah pada proses selanjutnya.

a. Case F olding, yaitu pengubahan seluruh karakter yang merupakan huruf

kapital menjadi huruf kecil.

b. F iltering, yaitu pengambilan kata-kata yang penting sesuai dengan kondisi

yang diinginkan.

c. Tokenizing, yaitu tahap pemecahan kalimat yang di-input berdasarkan kata

yang menyusunnya, biasanya dipisah oleh karakter whitespace.

2. Text Transformation, yaitu pembentukan teks yang mengacu pada proses

untuk mendapatkan representasi dokumen yang sesuai.

a. Stemming, yaitu pencarian kata dasar dari setiap kata hasil tokenizing.

b. Synonym Recognition, yaitu pengubahan kata yang memiliki makna yang

sama dengan penulisan berbeda.

3. F eature Selection, yaitu pengurangan dimensi teks sehingga nantinya akan

dihasilkan kata-kata yang merupakan dasar dari isi teks.

4. P attern Discovery, yaitu penemuan pola atau pengetahuan dari keseluruhan

teks.

2.5 Algoritma Manber

Algoritma Manber merupakan salah satu dari tiga algoritma yang menggunakan

fingerprint dalam proses penyelesaian permasalahannya, selain algoritma Winnowing

dan Rabin-Karp. Penggunaan fingerprint ini ditujukan agar dapat mengidentifikasi

penjiplakan termasuk bagian-bagian kecil yang mirip dalam dokumen pada dokumen

(24)

Setiap algoritma memiliki penyelesaian permasalahan yang berbeda, namun

algoritma Manber dan Winnowing memiliki langkah penyelesaian yang hampir sama.

Adapun perbedaan algoritma Manber dari algoritma Winnowing adalah sebagai

berikut (Kurniawati & Wicaksana, 2008):

1. Jumlah langkah yang lebih sedikit sehingga waktu pemrosesan dokumen

menjadi lebih cepat.

2. Tidak memberikan informasi dimana posisi fingerprint berada.

3. Pemilihan fingerprint yang berbeda. Pada Algoritma Manber, fingerprint

dipilih dari setiap nilai hash yang memenuhi persyaratan H mod P = 0, di mana H adalah nilai hash dan P adalah nilai pembagi yang digunakan, sementara pada Algoritma Winnowing dipilih nilai hash minimum dalam setiap window.

Adapun secara singkat, konsep dasar algoritma Manber dimulai dari tahap awal

baik penghapusan noise dan whitespace hingga hasil akhirnya berupa persentase

adalah :

1. Penghapusan noise dan whitespace.

2. Pembentukan rangkaian gram dengan panjang N karakter.

3. Penghitungan nilai hash dari setiap gram menggunakan fungsi hash.

4. Pemilihan beberapa nilai hash menjadi fingerprint dokumen.

5. Menentukan persentase kemiripan antar dokumen menggunakan persamaan

Jaccard Coefficient.

2.5.1 P enghapusan Noise & Whitespace

Banyak algoritma atau metode yang dapat digunakan untuk mendeteksi kemiripan

dokumen teks. Ada beberapa persyaratan yang harus dipenuhi oleh algoritma

pendeteksi kemiripan dokumen teks (Pratama, 2012), yaitu:

1. Whitespace Insensitivity, artinya dalam melakukan pendeteksian terhadap

dokumen teks, algoritma tidak boleh dipengaruhi oleh spasi, jenis huruf

(kapital atau normal), tanda baca dan sebagainya. Oleh sebab itu, dilakukan

penghapusan terhadap karakter yang tidak relevan tersebut sehingga nantinya

(25)

11

2. Noise Surpression, artinya dalam melakukan pendeteksian, algoritma harus

dapat menghindari adanya kata yang tidak penting, misal: “di”, “ke”, dan

sebagainya. Panjang kata yang ditengarai harus cukup untuk membuktikan

bahwa kata-kata tersebut telah dijiplak dan bukan merupakan kata yang umum

digunakan.

3. P osition Independence, artinya pendeteksian tidak boleh bergantung pada

posisi kata sehingga apabila posisi kata berbeda maka pendeteksian tetap dapat

dilakukan.

2.5.2 Metode N-Gram

Algoritma yang menggunakan fingerprint seperti algoritma Manber memiliki satu

metode utama yaitu metode N-Gram. Metode N-Gram merupakan metode yang

berfungsi untuk memecah kata ataupun kalimat menjadi sebuah rangkaian dengan

panjang N karakter. Sebagai contoh :

“KEMEJA”

Dengan menggunakan nilai N = 2, maka akan dihasilkan :

“KE”, “EM”, “ME”, “EJ”, “JA”

Metode N-Gram memunyai peran yang cukup penting karena merupakan

langkah awal dalam proses pembentukan fingerprint. Dengan kata lain, metode

N-Gram memiliki pengaruh terbesar pertama pada hasil akhir yang dikeluarkan.

Pengaruh dari nilai N pada metode N-Gram yaitu semakin kecil nilai N yang

digunakan akan semakin besar pula persentase yang dihasilkan nantinya. Namun,

tidak selalu dengan menggunakan nilai N = 1, hasil yang didapatkan lebih baik.

Alasannya adalah jika kalimat terdiri dari huruf yang sama dengan kalimat

bandingnya, maka akan menghasilkan persentase kemiripan sebesar 100%. Sebagai

contoh :

“RAMAH” : “R”,”A”,”M”,”H” “MARAH” : “M”,”A”,”R”,”H”

Didapatkan 4 huruf yang sama, sehingga menghasilkan persentase sebesar 100%.

Oleh karena itu, penggunaan N-Gram harus disesuaikan dengan kondisi dari teks yang

(26)

2.5.3 Hash

Hash merupakan teknik untuk mengubah sebuah string menjadi nilai unik dengan

panjang tertentu yang nantinya akan berfungsi sebagai penanda string tersebut

(Pratama, et al. 2012)

Hash terdiri dari dua elemen, yaitu fungsi hash dan nilai hash. Hubungan

kedua elemen tersebut adalah rangkaian gram yang dihasilkan dari proses N-Gram

kemudian diolah menggunakan fungsi hash sehingga terbentuklah rangkaian nilai

hash yang nantinya akan dipilih menjadi fingerprint dokumen (Purwitasari, et al.

2009).

Fungsi hash yang digunakan pada algoritma Manber adalah fungsi hash yang

mengubah setiap karakter pada rangkaian string ke dalam bentuk kode ASCII dan

memrosesnya ke dalam persamaan (2.1) berikut :

k

ini dapat dikatakan pula sebagai rangkaian pembentuk atau dasar dari dokumen

tersebut. F ingerprint berasal dari rangkaian nilai hash yang sudah memenuhi

persyaratan.

F ingerprint merupakan tujuan pertama dari algoritma yang menggunakan

fingerprint sebagai langkah penyelesaiannya. Masing-masing algoritma memiliki cara

yang berbeda dalam memilih fingerprint. Pada algoritma Manber, pemilihan

fingerprint dilakukan dengan cara mengecek apakah nilai hash memenuhi persamaan

(27)

13

Ada tiga faktor yang mempengaruhi pemilihan fingerprint, yaitu :

1. Nilai N pada metode N-Gram, perubahan panjang karakter yang terbentuk

akan mengubah fingerprint yang dipilih.

2. Basis pada fungsi hash, tentunya perubahan basis akan mengubah nilai hash

yang dihasilkan serta fingerprint yang dipilih.

3. Nilai pembagi pada persamaan (2.2). Perubahan pada nilai pembagi akan

mengubah nilai hash yang akan dipilih menjadi fingerprint. Penggunaan nilai

pembagi ini harus disesuaikan dengan kondisi dokumen teks.

2.5.5 P ersamaan Jaccard Coefficient

Persamaan Jaccard Coefficient merupakan persamaan yang digunakan untuk

mengukur nilai similaritas atau kemiripan. Banyak hal yang dapat diukur nilai

similaritasnya, seperti similaritas dokumen teks. Oleh karena itu, persamaan ini

diimplementasikan ke dalam algoritma Manber sebagai pengukur persentase

similaritas dokumen teks. Persamaan Jaccard Coefficient dapat ditulis sesuai dengan

persamaan (2.3) berikut:

(28)

2.6 Stemming

Stemming adalah teknik pencarian kata dasar dari setiap kata hasil tokenizing. Di

dalam bahasa Indonesia, stemming digunakan untuk menghilangkan bubuhan yang

melekat pada kata dasar baik imbuhan (awalan, akhiran, sisipan), partikel, dan kata

ganti orang. Sebagai contoh :

“mempermainkannya” = “mem” + ”per” + “main” + “kan” + “nya” Kata “mempermainkannya” merupakan hasil gabungan dari :

1. Satu kata dasar (root word) : “main”

2. Dua imbuhan awal (prefiks) : “mem” dan “per”

3. Satu imbuhan akhir (sufiks) : “kan”

4. Satu kata ganti orang (possessive pronoun) : “nya”

Stemming lebih susah diimplementasikan ke dalam teks berbahasa Indonesia

karena bahasa Indonesia tidak memiliki rumus bentuk baku yang permanen (Triawati,

2009). Banyak penelitian mengenai teknik stemming, salah satunya adalah Stemming

P orter yang akan digunakan pada penelitian ini. Secara singkat langkah penyelesaian

pada Stemming P orter adalah sebagai berikut:

1. Menghapus partikel,

2. Menghapus kata ganti (possessive pronoun),

3. Menghapus awalan pertama. Jika tidak ditemukan, maka lanjut ke langkah 4a,

dan jika ada, maka lanjut ke langkah 4b,

4. a. Menghapus awalan kedua, dan dilanjutkan pada langkah 5a,

b. Menghapus akhiran, jika tidak ditemukan, maka kata diasumsikan sebagai

kata dasar. Jika ditemukan lanjut ke langkah 5b,

5. a. Menghapus akhiran dan kata akhir diasumsikan sebagai kata dasar.

b. Menghapus awalan kedua dan kata akhir diasumsikan sebagai kata dasar.

Pendeteksian kemiripan dokumen sangat bergantung pada proses stemming,

artinya jika proses stemming tidak berjalan dengan baik, maka hasil yang didapatkan

juga tidak akan sesuai. Oleh karena itu, stemming menjadi salah satu kunci untuk

(29)

15

2.7 Synonym Recognition

Synonym Recognition atau pengenalan kata bersinonim adalah teknik yang digunakan

untuk mengenali kata dengan penulisan berbeda namun memiliki makna yang sama.

Teknik penjiplakan dokumen teks tidak lepas dari penggunaan kata bersinonim

sehingga dokumen teks hasil penjiplakan berbeda secara penulisan dari dokumen teks

aslinya meskipun makna yang dihasilkan tetaplah sama. Jenis penjiplakan tersebut

dapat digolongkan ke dalam Disguised P lagiarism dan Technical Disguise. Jenis

penjiplakan ini sangat sulit dideteksi oleh sistem yang tidak mengimplementasikan

teknik Synonym Recognition.

Di dalam bahasa Indonesia, hampir setiap kata memiliki sinonim, tentu hal ini

semakin menyulitkan pendeteksian. Apabila sistem penyimpan kata hanya memiliki

sedikit kata bersinonim, maka semakin kecil pula keakuratan pendeteksian. Hal ini

juga dipersulit dengan adanya penulisan kata bersinonim yang sama meskipun

maknanya berbeda, serta sinonim kata yang menggunakan imbuhan.

Synonym Recognition merupakan kunci kedua terpenting setelah stemming.

Hal ini diakibatkan karena banyaknya kata sinonim yang berasal dari kata dasar,

meskipun beberapa sinonim kata memang memiliki imbuhan. Apabila proses

stemming tidak berjalan dengan baik, maka pengenalan kata bersinonim juga menjadi

tidak sesuai, dan berdampak pada berkurangnya keakuratan pendeteksian.

2.8 Penelitian Terdahulu

Pendeteksian kemiripan dokumen teks sudah banyak dilakukan oleh peneliti-peneliti

sebelumnya, baik dengan menggunakan algoritma pendeteksi kemiripan teks yang

berbeda, teknik pendukung yang berbeda maupun pengimplementasian dalam bentuk

yang berbeda, dan lain sebagainya.

Heriyanto (2011) menggunakan algoritma exact match dalam melakukan

penelitiannya. Algoritma exact match tidak memerdulikan proses stemming sehingga

apabila ada kata yang memiliki awalan dan akhiran, maka tidak dianggap sama. Kata

dasar ditambah dengan awalan dan akhiran akan berarti kata yang berbeda-beda. Hal

(30)

Ramadhani, et al (2013) menggunakan algoritma Winnowing, dimana

algoritma ini memiliki langkah yang hampir sama dengan algoritma Manber. Sesuai

dengan kesimpulan yang dituliskan bahwa keakuratan pendeteksian cukup baik, yaitu

memberikan selisih perbedaan sebesar 4-7% dengan responden yang mencari

kesamaan dokumen secara manual, namun kecepatan proses algoritma masih kalah

dari algoritma Manber, meskipun dari segi keakuratan Winnowing lebih unggul.

Salmuasih (2013) yang menggunakan algoritma Rabin-Karp dan konsep

similarity menyimpulkan bahwa penggunaan teknik stemming sangat berpengaruh

pada persentase hasil yang didapatkan, serta perlu ditambahkan teknik pengenalan

sinonim. Modulo yang digunakan dalam penelitiannya tidak berpengaruh pada hasil

persentase, namun berpengaruh pada waktu proses.

Goenawan, et al (2005) menyimpulkan bahwa algoritma Edit Distance lebih

tepat digunakan untuk mencari kecocokan antara dua string. Dimana dalam proses

perbandingannya , string kedua dimanipulasi sehingga pada akhirnya serupa dengan

string pertama. Dalam proses pengubahan string tersebut, dibuat sebuah tabel dua

dimensi dengan baris sesuai dengan panjang string terpanjang dan jumlah kolom

sebanyak panjang string terpendek. Keunggulan algoritma Edit Distance yaitu dapat

melihat perbedaan di antara dua string dengan cepat dan akurat.

Dani, et al (2006) lebih meneliti pada kompleksitas waktu algoritma

Levenshtein Distance dan pendeteksian pada kemiripan kode program. Disimpulkan

bahwa kemiripan antar kode program yang diimplementasi dengan bahasa

pemrograman yang berbeda, sebelumnya dapat dilakukan proses deteksi bahasa dan

konversi ke dalam satu bahasa standar yang dipilih. Dalam kata lain, diperlukan

pengubahan bahasa pemrograman satu ke bahasa lain tanpa mengubah inti dari

program tersebut atau dapat disebut sebagai sinonim bahasa pemrograman.

Oleh karena itu, diperlukan sebuah pengembangan sistem menggunakan

algoritma dengan kompleksitas waktu yang baik serta menambahkan teknik stemming

dan Synonym Recognition. Penelitian sebelumnya dapat dipaparkan secara ringkas

(31)

17

Tabel 2.1 Penelitian Terdahulu

No. Nama (Tahun) Metode Kelebihan Kelemahan

1. Heriyanto (2011) Exact Match Waktu proses

algoritma yang relatif

singkat

Edit Distance Dapat melihat

perbedaan di antara

dua string dengan

cepat dan akurat

Maksimal string yang

dapat digunakan

kemiripan skala besar

maupun pada data

yang banyak

mengalami

(32)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini akan dibahas mengenai beberapa hal, diantaranya data yang digunakan,

flowchart dan activity diagram sistem serta analisis perancangan sistem baik dalam

mengimplementasikan algoritma Manber serta teknik stemming dan Synonym

Recognition maupun tampilan sistem.

3.1 Data Yang Digunakan

Ada beberapa data yang diperlukan dalam melakukan pendeteksian pada dokumen

teks sesuai dengan algoritma dan teknik yang digunakan pada penelitian ini, yaitu :

1. Data uji dan pembanding, berupa data dengan format pdf atau teks biasa yang

di-input secara manual.

2. Data mengenai kata dasar yang berasal dari Kamus Besar Bahasa Indonesia

(KBBI) dan disimpan ke dalam satu tabel MySql. Tabel terdiri atas id kata

dasar dan kata dasar.

3. Data mengenai sinonim kata yang bersumber dari Kamus Tesaurus Indonesia

dan disimpan ke dalam satu tabel Mysql. Terdiri atas id kata sinonim, sinonim,

dan kata.

3.2 F lowchart Sistem

F lowchart sistem menggambarkan tahapan dari penyelesaian masalah yang dilakukan

(33)

19

gambaran dan membantu pengguna untuk lebih memahami rancangan sistem yang

akan dibuat.

F lowchart sistem yang dirancang akan menjelaskan bagaimana proses

pendeteksian kemiripan dokumen teks dilakukan. Pendeteksian dimulai dari

peng-input-an teks kemudian tahap P reprocessing (Gambar 3.1), Text Transformation

(Gambar 3.2), F eature Selection, dan tahap terakhir yaitu pattern discovery yang

terangkum dalam satu algoritma, yaitu algoritma Manber (Gambar 3.3) berikut:

START

(34)

DB

(35)

21

(36)

3.3 Activity Diagram

Activity Diagram sistem menggambarkan urutan aktivitas dari sistem yang dirancang.

Aktivitas sistem digambarkan secara umum artinya tetap terstruktur namun tidak

secara mendetail seperti pembuatan F lowchart. Activity Diagram diharapkan dapat

membantu pemahaman proses rancangan sistem, baik interface maupun aktivitas yang

dilakukan oleh sistem dengan lebih ringkas.

Activity Diagram yang dibuat akan menampilkan bagaimana aktivitas pada

interface dan proses kerja sistem yang dirancang, seperti pada Gambar 3.4:

INTERFACE SISTEM

Stemming

Sinonim

Algoritma Manber Input File Pdf / Teks, N-Gram, dan

Modulo

Output : Hasil Proses Stemming, Sinonim, Rangkaian Gram, Fingerprint, Dan Similaritas

Gambar 3.4 Diagram Activity

Berdasarkan Gambar 3.4, maka proses dimulai dengan user meng-input kedua file pdf

ataupun teks yang akan dibandingkan beserta nilai N yang digunakan sebagai panjang

(37)

23

yang sudah diterima sistem, diproses menggunakan teknik stemming, kemudian

dilanjutkan dengan proses Synonym Recognition, dan diakhiri dengan menggunakan

algoritma Manber. Output yang diterima oleh user adalah :

1. Hasil stemming,

2. Hasil Synonym Recognition,

3. Hasil Noise Reduction,

Proses stemming yang digunakan adalah Stemming P orter. Berdasarkan penelitiannya

mengenai perbandingan Stemming P orter dengan Stemming Nazief & Adriani, Agusta

(2009) menyimpulkan bahwa Stemming P orter memiliki waktu proses yang sangat

cepat namun tingkat keakuratannya lebih kecil daripada Stemming Nazief & Adriani

yang menggunakan kamus kata dasar. Meskipun keakuratan kata dasar yang

dihasilkan dengan menggunakan Stemming Nazief & Adriani sangat baik, namun hal

ini berbanding terbalik dengan waktu prosesnya yang sangat lama. Oleh karena itu,

maka digunakanlah Stemming P orter dengan menambahkan kamus kata dasar,

sehingga nantinya akan menghasilkan proses stemming yang cepat dan akurat.

Pada Tabel 3.1, dipaparkan mengenai bubuhan yang akan dideteksi pada

proses Stemming P orter (Agusta, 2009), yaitu :

Tabel 3.1 Bubuhan Kata Stemming Porter

(38)

4. Awalan 2 ber-, bel-, be-, per-, pel-, pe-

5. Akhiran -kan, -an, -i

Ada satu imbuhan lainnya, yaitu sisipan. Kata sisipan sangat jarang digunakan dan

memiliki arti yang cenderung sama sehingga sisipan akan digabung ke dalam proses

Synonym Recognition.

Ada beberapa kasus dimana keakuratan kata dasar yang terbentuk tidak sesuai

dengan kata yang berasal dari kamus jika menggunakan bubuhan kata pada Tabel 3.1,

salah satu contohnya adalah :

“sepengetahuanku”

Kata “sepengetahuanku” merupakan hasil gabungan dari :

1. Satu kata dasar : “tahu”

2. Satu imbuhan akhir : “an”

3. Satu kata ganti orang : “ku”

Berdasarkan contoh di atas, terdapat beberapa imbuhan yang tidak tercantum pada

Tabel 3.1 sehingga tidak menghasilkan kata dasar yang sesuai dan masih banyak

kasus lainnya. Oleh karena itu, dibentuk satu bubuhan kata yang lebih sesuai pada

Tabel 3.2 berikut :

Tabel 3.2 Penambahan Bubuhan Kata

No. Jenis Bubuhan

1. Partikel -kah, -lah, -tah, -pun

2. Kata Ganti Orang -ku, -mu, -nya

3. Awalan 1 menge-, meng-, meny-, men-, mem-, me-, peng-,

peny-, pen-, pem-, di-, ber-, ke-, se-

4. Awalan 2 penge-, ber-, bel-, be-, per-, pel-, pe-, ter-, se-

5. Akhiran -kan, -an, -i

Ada beberapa awalan yang diberikan dua posisi yaitu sebagai awalan 1 dan awalan 2

(39)

25

Di dalam imbuhan bahasa Indonesia, terdapat beberapa peleburan huruf pada

kata dasar. Peleburan tersebut hanya berasal dari prefiks atau awalan, contoh :

+ kata dasar tidak dimulai dengan

huruf vokal

Menghasil kata dasar yang dimulai

dengan huruf k-

+ kata dasar tidak dimulai dengan

huruf vokal

Menghasil kata dasar yang dimulai

(40)

Awalan “bel-” dan “pel-” merupakan imbuhan yang hanya berasal dari peleburan

Secara singkat, proses Stemming dapat dilihat pada gambar 3.5:

KATA

(41)

27

Berikut ini merupakan penjelasan dari Gambar 3.5, yaitu :

1. Setiap kata hasil tokenizing dicek ke dalam database kata dasar. Pengecekan

pertama dilakukan untuk mengetahui apakah kata merupakan kata dasar.

a. Jika ya, maka kata merupakan kata dasar.

b. Jika tidak, maka dilakukan pengecekan ke-2.

2. Pengecekan ke-2 dilakukan untuk mengetahui apakah kata memiliki partikel.

a. Jika ya, maka dilakukan penghapusan partikel kemudian melakukan

pengecekan ke dalam database, apakah kata merupakan kata dasar atau

tidak. Jika ya, maka kata merupakan kata dasar. Jika tidak, maka dilakukan

proses ke-3.

b. Jika tidak, maka dilakukan pengecekan ke-3.

3. Pengecekan ke-3 dilakukan untuk mengetahui apakah kata memiliki kata ganti

orang.

a. Jika ya, maka dilakukan penghapusan kata ganti orang kemudian

melakukan pengecekan ke dalam database, apakah kata merupakan kata

dasar atau tidak. Jika ya, maka kata merupakan kata dasar. Jika tidak, maka

dilakukan proses ke-4.

b. Jika tidak, maka dilakukan pengecekan ke-4.

4. Pengecekan ke-4 dilakukan untuk mengetahui apakah kata memiliki awalan 1.

a. Jika ya, maka dilakukan penghapusan awalan 1 kemudian melakukan

pengecekan ke dalam database, apakah kata merupakan kata dasar atau

tidak. Jika ya, maka kata merupakan kata dasar. Jika tidak, maka dilakukan

proses ke-5.

b. Jika tidak, maka dilakukan pengecekan ke-5.

5. Pengecekan ke-5 dilakukan untuk mengetahui apakah kata memiliki awalan 2.

a. Jika ya, maka dilakukan penghapusan awalan 2 kemudian melakukan

pengecekan kembali ke dalam database, apakah kata merupakan kata dasar

atau tidak. Jika ya, maka kata merupakan kata dasar. Jika tidak, maka

dilakukan proses ke-6.

b. Jika tidak, maka dilakukan pengecekan ke-6.

6. Pengecekan ke-6 merupakan proses terakhir. Selain untuk mengetahui apakah

(42)

a. Jika ya, maka dilakukan penghapusan akhiran dan diasumsikan bahwa kata

merupakan kata dasar.

b. Jika tidak, maka kata diasumsikan sebagai kata dasar.

3.5 Synonim Recognition

Synonim Recognition merupakan proses yang dilakukan setelah proses stemming. Hal

ini dilakukan karena banyaknya kata sinonim yang berasal dari kata dasar meskipun

beberapa sinonim kata menggunakan imbuhan. Untuk mengatasi permasalahan

tersebut maka sinonim kata yang terdapat di dalam database merupakan kata dasar

meskipun makna yang dari kata menjadi berubah.

Proses pengenalan sinonim ini dilakukan hanya sekali untuk setiap array kata

yang ada sehingga apabila array kata merupakan kata bersinonim maupun tidak, maka

array kata akan tetap dicetak sama seperti array kata sebelum proses Synonym

Recognition. Hal ini dapat diakibatkan oleh tiga faktor, yaitu :

1. Kata adalah kata utama / sinonim kata, maksudnya kata merupakan bentuk

ubahan yang terjadi pada kata yang memiliki sinonim.

2. Kata memang tidak memiliki sinonim.

3. Sinonim tidak terdapat di dalam database.

Secara ringkas, proses Synonym Recognition dapat dilihat pada gambar 3.6:

KATA HASIL

STEMMING CEK DATABASE KATA DITEMUKAN

KATA TIDAK DITEMUKAN

UBAH KATA

KATA SINONIM

Gambar 3.6 Proses Synonym Recognition

Berdasarkan Gambar 3.6, dapat dijelaskan bahwa array kata hasil proses stemming

(43)

29

1. Jika kata ditemukan, maka kata diubah sesuai dengan sinonim katanya dan

menghasilkan kata sinonim. Jika kata sudah merupakan sinonimnya, maka

kata tidak mengalami perubahan dan tetap menghasilkan kata sinonim.

2. Jika kata tidak ditemukan, maka kata tidak mengalami perubahan dan tetap

menghasilkan kata sinonim.

3.6 Algoritma Manber

Algoritma Manber merupakan proses terakhir setelah proses stemming dan Synonym

Recognition. Untuk mendapatkan hasil yang maksimal, maka proses stemming dan

Synonym Recognition harus dilakukan semaksimal mungkin, karena kedua proses ini

memiliki pengaruh yang cukup besar pada hasil akhir.

Penghapusan noise pada algoritma Manber yang digunakan dalam penelitian

ini sangat bergantung pada proses Synonym Recognition karena noise yang digunakan

merupakan kata dengan panjang karakter kurang dari empat (panjang string < 4). Oleh

karena itu, perubahan kata sinonim yang dilakukan merupakan string dengan panjang

karakter yang lebih kecil. Sebagai contoh, kata “yang” merupakan sinonim dari kata

“nan” sehingga kata tersebut diubah menjadi kata dengan panjang string yang lebih kecil dan dihapus. Proses ini ditujukan selain sebagai syarat algoritma pendeteksi

kemiripan teks, juga untuk mengurangi penggunaan waktu proses yang tidak

diperlukan, meskipun persentase yang dikeluarkan menjadi lebih kecil namun tidak

berbeda jauh dengan hasil tanpa menggunakan noise reduction.

Berdasarkan penjelasan sebelumnya mengenai faktor-faktor yang

mempengaruhi pemilihan fingerprint, maka diberikan beberapa batasan agar tidak

banyak menghasilkan asumsi persentase kemiripan dokumen teks, yaitu :

1. Basis pada fungsi hash yang digunakan adalah 2.

2. Nilai N pada N-Gram disesuaikan dengan banyaknya huruf yang menyusun

teks tersebut, yaitu angka 1 hingga 8.

3. Nilai pembagi yang digunakan untuk pemilihan fingerprint adalah 1 sehingga

seluruh nilai hash akan dijadikan sebagai fingerprint.

Selain itu, penggunaan batasan juga ditujukan untuk memudahkan penggunaan sistem

(44)

Berikut ini merupakan langkah penyelesaian oleh algoritma Manber yang

dapat digambarkan secara ringkas pada Gambar 3.7:

KALIMAT

Gambar 3.7 Proses Algoritma Manber

Berdasarkan Gambar 3.7, proses algoritma Manber dimulai dengan menghapus noise

dan whitespace, kemudian dilakukan pembuatan rangkaian gram sesuai dengan nilai

N yang dimasukkan pengguna. Setiap rangkaian gram yang terbentuk, diproses

menggunakan fungsi hash. Proses dari fungsi hash akan menghasilkan nilai hash

dimana nilai-nilai hash yang terbentuk akan dipilih untuk dijadikan fingerprint

dokumen. Pemilihan fingerprint harus sesuai dengan persyaratan algoritma Manber,

yaitu hasil modulo nilai hash bernilai 0. Langkah terakhir algoritma Manber adalah

dengan memroses fingerprint tersebut dengan menggunakan persamaan Jaccard

Coefficient. Pertama, fingerprint yang terbentuk dari kedua data (uji dan banding)

diiriskan sehingga terbentuklah satu rangkaian fingerprint yang sama. Kemudian

membuat gabungan dari seluruh fingerprint. Jumlah irisan dibagi dengan jumlah

gabungan fingerprint, hasil bagi ini dikali dengan 100% untuk mendapatkan hasil

(45)

31

3.7 Deteksi Kemiripan Teks Secara Manual

Berikut ini merupakan contoh penghitungan manual dari pendeteksian kemiripan teks

pada penjiplakan jenis Disguised P lagiarism, yaitu:

Teks Uji : Tubuh saya memerlukan takaran nutrisi yang mencukupi

supaya tidak segera sakit.

Teks Banding : Agar tubuhnya tidak cepat mengidap penyakit, maka

dibutuhkan tambahan vitamin dengan dosis yang pas.

Gram : 2

1. Case F olding dan hapus karakter tidak relevan yaitu seluruh karakter, kecuali

huruf, angka, dan whitespace.

Teks Uji : tubuh saya perlu takar nutrisi yang cukup supaya tidak segera

sakit

Teks Banding : agar tubuh tidak cepat idap sakit maka butuh tambah vitamin

dengan dosis yang pas

2. Proses Stemming dengan pengecekan pada kamus kata dasar.

Teks Uji : tubuh saya perlu takar nutrisi yang cukup supaya tidak segera

sakit

Teks Banding : agar tubuh tidak cepat idap sakit maka butuh tambah vitamin

dengan dosis yang pas

3. Proses Synonym Recognition dengan pengecekan pada kamus kata sinonim.

Teks Uji : badan aku perlu dosis gizi nan cukup agar tidak cepat sakit

Teks Banding : agar badan tidak cepat idap sakit dan perlu tambah gizi dan

dosis nan cukup

4. Noise Reduction dengan menghapus kata yang memiliki jumlah karakter < 4.

Teks Uji : badan perlu dosis gizi cukup agar tidak cepat sakit

Teks Banding : agar badan tidak cepat idap sakit perlu tambah gizi dosis

(46)

5. Hapus whitespace seperti spasi antar kata.

Teks Uji : badanperludosisgizicukupagartidakcepatsakit

Teks Banding : agarbadantidakcepatidapsakitperlutambahgizidosiscukup

6. Rangkaian N-Gram dengan nilai N = 2.

Teks Uji : ba ad da an np pe er rl lu ud do os si is sg gi iz zi ic cu uk ku

up pa ag ga ar rt ti id da ak kc ce ep pa at ts sa ak ki it

Teks Banding : ag ga ar rb ba ad da an nt ti id da ak kc ce ep pa at ti id da ap

ps sa ak ki it tp pe er rl lu ut ta am mb ba ah hg gi iz zi id do

os si is sc cu uk ku up

7. Menentukan nilai hash dengan memasukkan rangkaian gram ke dalam fungsi

hash.

Teks Uji : 293 294 297 304 332 325 316 336 333 334 311 337 335 325

333 311 332 349 309 315 341 331 346 321 297 303 308 344

337 310 297 301 313 299 314 321 310 347 327 301 319 326

Teks Banding : 297 303 308 326 293 294 297 304 336 337 310 297 301 313

299 314 321 310 337 310 297 306 339 327 301 319 326 344

325 316 336 333 350 329 303 316 293 298 311 311 332 349

310 311 337 335 325 329 315 341 331 346

8. Memilih fingerprint dari nilai hash yang memenuhi persyaratan, yaitu

menggunakan (2.2) dengan nilai pembagi P = 1.

Teks Uji : 293 294 297 304 332 325 316 336 333 334 311 337

335 349 307 303 308 344 310 301 313 299 314 321

347 327 319 326

Teks Banding : 297 303 308 326 293 294 304 336 337 310 301 313

299 314 321 306 339 327 319 344 325 316 333 350

329 298 311 332 349 335

9. Menghitung similaritas, yaitu dengan menggunakan (2.3) sehingga didapatkan

(47)

33

Jumlah Irisan (Uji, Banding) : 25

Jumlah Gabungan (Uji, Banding) : 33

Berdasarkan penghitungan yang dilakukan, maka dapat dianalisis bahwa :

1. Penghitungan manual berlangsung dalam waktu yang cukup lama.

2. Kemungkinan terjadi kesalahan dalam proses.

3. Membutuhkan alat bantu lain seperti alat hitung dan kamus.

3.8 Perancangan Database Dan Interface Sistem

Sistem pendeteksi dokumen teks yang dirancang terdiri atas dua komponen utama,

yaitu database dan interface sistem.

3.8.1 Database Sistem

Database sistem merupakan tempat penyimpanan data dalam skala kecil maupun

besar. Sub database adalah tabel yang berisi mengenai data spesifik yang dibutuhkan

oleh sistem. Penelitian ini hanya menggunakan dua tabel yang difungsikan untuk

pengecekan kata dasar dan kata bersinonim, yaitu :

(48)

Tabel 3.4 Rancangan Tabel Kata Dasar

No. Nama Tipe Ekstra Aksi

1. id_ktdasar int(10) auto increment primary key

2. katadasar varchar(20)

2. Tabel kata sinonim

Tabel ini digunakan pada proses Synonym Recognition. Rancangan tabel

sinonim kata dapat dilihat pada Tabel 3.5 dengan rincian sebagai berikut :

a. id kata sinonim,

b. Sinonim kata, dan

c. Kata dasar.

Tabel 3.5 Rancangan Tabel Kata Sinonim

No. Nama Tipe Ekstra Aksi

1. id_ktsinonim int(10) auto increment primary key

2. katasinonim varchar(20)

3. sinonim varchar(20)

3.8.2 Interface Sistem

Interface sistem merupakan tampilan sistem yang berfungsi untuk membantu

pengguna dalam menggunakan sistem.

Interface sistem pada penelitian ini dibuat sesederhana mungkin dengan tujuan

untuk mengurangi penggunaan waktu yang tidak relevan pada proses sistem serta

membantu pengguna dalam memahami dan menggunakan sistem. Rancangan

interface sistem ini dapat dibagi menjadi dua, yaitu:

1. Tampilan Awal

Tampilan awal digunakan untuk memasukkan data yang diuji maupun

dibandingkan serta nilai-nilai yang diperlukan dalam pemrosesan deteksi

kemiripan teks. Tampilan awal sistem menggunakan lima komponen dasar,

yaitu: iframe, textarea, textbox, button, dan tabel.

Adapun bentuk ataupun gambaran dari tampilan awal sistem yang akan

(49)

35

TEXTAREA UJI TEXTAREA BANDING

TOMBOL CETAK

Gambar 3.8 Rancangan Tampilan Awal Sistem

Berikut ini merupakan rincian dari rancangan tampilan awal pada

Gambar 3.6 yang akan dibuat, yaitu :

teks uji secara manual,

i. Textarea banding sebagai media pencetak teks pdf banding dan sebagai

media input teks banding secara manual,

j. Tombol mulai untuk memulai proses pendeteksian.

(50)

2. Tampilan Hasil

Tampilan akhir berfungsi untuk menampilkan hasil dari proses pendeteksian

kemiripan dokumen teks. Adapun hasil proses yang akan ditampilkan pada

tampilan hasil adalah:

a. Hasil stemming,

b. Hasil Synonym Recognition,

c. Hasil Noise Reduction,

d. Rangkaian N-Gram,

e. Nilai hash tiap rangkaian gram,

f. F ingerprint dokumen, dan

g. Persentase similaritas dokumen teks.

Rincian tersebut dirancang di dalam satu tabel dan diakhiri dengan waktu proses

pendeteksian, sesuai dengan rancangan pada Gambar 3.9 berikut :

WAKTU PROSES SISTEM

TABEL HASIL

NO PROSES HASIL PROSES PADA TEKS UJI HASIL PROSES PADA TEKS BANDING

(51)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

Pada bab ini, akan dibahas mengenai implementasi dari algoritma Manber, teknik

stemming, dan Synonym Recognition sehingga pengujian terhadap sistem dapat

dilakukan, baik untuk tampilan sistem maupun hasil akhir berupa persentase

kemiripan yang dimiliki oleh dokumen teks uji dengan pembandingnya.

4.1 Implementasi

Sistem diprogram dengan menggunakan bahasa pemrograman PHP, artinya sistem

akan dijalankan pada browser sebagai media pemrosesan dan interface sistem.

Database yang digunakan adalah database MySql dengan menggunakan software

XAMPP.

4.1.1 Spesifikasi Hardware Dan Software Yang Digunakan

Berikut ini merupakan spesifikasi yang digunakan dalam pembuatan sistem dapat,

yaitu :

1. P rocessor AMD A8-5600k APU with Radeon™ HD Grapichs (4 CPUs),

~3.6GHz.

2. Kapasitas hard disk 500 GB.

3. Memori RAM yang digunakan 4 GB.

(52)

5. XAMPP 1.8.1.

6. Mozilla Firefox 30.0.

4.1.2 Database Tabel Kata Dasar

Tabel kata dasar terdiri atas dua kolom, yaitu id kata dasar dan kata dasar sesuai

dengan Gambar 4.1 berikut :

Gambar 4.1 Database Tabel Kata Dasar

4.1.3 Database Tabel Kata Sinonim

Tabel kata sinonim terdiri atas tiga kolom, yaitu id kata sinonim, kata sinonim, dan

sinonim kata sesuai dengan Gambar 4.2 berikut :

(53)

39

4.1.4 Tampilan Awal

Tampilan awal sistem dibuat sederhana agar mudah dalam menggunakan sistem serta

membuang waktu yang tidak relevan, dengan rincian sebagai berikut :

1. Tombol Browse untuk mencari file pdf yang akan diuji dan dibandingkan.

2. Tombol Submit sebagai proses pembacaan file pdf yang sudah ditemukan.

3. IF RAME yang digunakan untuk membaca file pdf yang ditemukan.

4. Tombol cetak pdf untuk proses pencetakan isi iframe ke dalam textarea-nya

masing- masing.

5. Textarea yang digunakan sebagai media cetak hasil pembacaan file pdf dari

iframe dan sebagai input-an teks secara manual yang tidak berasal dari file pdf.

6. Textbox yang digunakan untuk mendapatkan nilai N dalam pembuatan

rangkaian gram dan nilai pembagi modulo pada pemilihan fingerprint.

7. Tombol deteksi untuk memulai proses pendeteksian dan tombol reset untuk

me-refresh atau mengondisikan sistem seperti semula.

Semua elemen terangkum ke dalam sebuah tabel dengan ketebalan garis = 0.

Tampilan awal sistem dapat dilihat pada Gambar 4.3 berikut :

(54)

4.1.5 Tampilan Hasil

Tampilan hasil sistem dimuat dalam satu tabel dengan tujuan untuk memudahkan

pengguna dalam membaca hasil yang dikeluarkan, seperti pada Gambar 4.4 berikut :

Gambar 4.4 Tampilan Hasil Sistem

Pada tampilan hasil turut dicantumkan waktu proses sehingga pengguna dapat

mengukur kecepatan dari gabungan algoritma dan kedua teknik pendukungnya.

Berikut ini merupakan kode program yang di implementasikan untuk menampilkan

waktu proses sistem, yaitu :

1. Pada awal kode program :

$mtime = microtime();

(55)

41

$totaltime = round($endtime - $starttime , 3);

4.1.6 Stemming

Proses stemming terbagi atas lima tahap, dimana tahap ini harus dilakukan secara

berturut agar mendapatkan hasil yang sesuai. Masing-masing tahap penghapusan

dibuat menjadi paket-paket untuk memudahkan proses pemanggilan fungsi, sebagai

contoh :

function hapuspartikel($kata){ }

Kode program yang digunakan pada penghapusan setiap bubuhan kata harus

dilakukan sesingkat mungkin, salah satu caranya adalah dengan menggabungkan

bubuhan kata yang memiliki panjang string yang sama, seperti :

mencari bubuhan kata yang dicari.

Di dalam pengimplementasiannya, proses stemming setiap bubuhan kata harus

diselingi dengan stemming bubuhan kata selanjutnya. Berikut ini merupakan contoh

kode program yang diimplementasikan ke dalam sistem, yaitu :

if(substr($kata, -2) == 'ku' || substr($kata, -2) == 'mu'){ $kata1 = substr($kata, 0, -2);

$ak1 = hapusakhiran(hapusawalan2(hapusawalan1($kata1))); if(cari($ak1) != 0){

(56)

} else{

$kata; }

}

Jika proses pada variable $ak1 tidak dilakukan, maka proses pencarian kata dasar di

dalam kamus tidak akan ditemukan, sehingga menghasilkan kata itu kembali. Gambar

4.6 berikut merupakan contoh pengimplementasian teknik stemming di dalam sistem :

Gambar 4.5 Hasil Implementasi Stemming

4.1.7 Synonym Recognition

Pengimplementasian Synonym Recognition sangat sederhana karena proses yang

dilakukan hanya mengecek database :

$a = mysql_query("select * from tb_katasinonim where sinonim = '$c'");

$b = mysql_fetch_array($a);

Dan melakukan pengubahan jika kata sinonim ditemukan :

if($b){

$d = $b[katasinonim]; }

Jika tidak ditemukan, maka kata tidak berubah :

else{

$d = $c; }

Kata sinonim yang dijadikan sebagai acuan perubahan merupakan kata dengan

(57)

43

dapat berjalan. Gambar 4.6 berikut merupakan contoh implementasi Synonym

Recognition setelah proses stemming :

Gambar 4.6 Hasil Implementasi Synonym Recognition

4.1.8 Algoritma Manber

Gambar 4.7 berikut merupakan hasil dari penyelesaian algoritma Manber yang

dilakukan secara berturut di mulai dari penghapusan noise dan whitespace hingga

pemilihan fingerprint, yaitu :

Gambar 4.7 Hasil Proses Algoritma Manber

Proses terakhir algoritma Manber adalah menentukan similaritas dokumen teks

dengan menggunakan persamaan Jaccard Coefficient dengan yang dapat dilihat pada

Gambar 4.8, berikut :

Teks Uji : Tubuh saya memerlukan takaran nutrisi yang mencukupi

(58)

Teks Banding : Agar tubuhnya tidak cepat mengidap penyakit, maka

dibutuhkan tambahan vitamin dengan dosis yang pas.

Gram : 2

Modulo : 2

Gambar 4.8 Hasil Akhir Algoritma Manber

4.2 Pengujian Sistem

Pengujian yang dilakukan pada sistem adalah mendeteksi kemiripan satu dokumen

teks uji dengan satu dokumen teks banding baik hanya menggunakan algoritma

Manber saja, dengan menambahkan teknik stemming atau Synonym Recognition saja

maupun kombinasi kedua teknik. Hal ini dilakukan untuk mengetahui seberapa besar

pengaruhnya terhadap hasil dan waktu pemrosesan, serta beberapa pengujian lainnya,

seperti pengujian rules pada proses stemming dan lainnya.

4.2.1 P engujian Tampilan Sistem

Pengujian yang dilakukan pada tampilan sistem berupa fungsi dari tiap komponen,

algoritma serta teknik yang digunakan. Rancangan pengujian dapat dilihat pada Tabel

4.1 dan dilanjutkan dengan hasil pengujian pada Tabel 4.2 berikut ini :

Tabel 4.1 Rancangan Pengujian Tampilan Sistem

No. Komponen Sistem Yang Diuji Butir Uji

1. Tombol Browse Memunculkan window untuk mencari

file pdf yang akan diuji atau banding

2. Tombol Submit Menampilkan isi file pdf ke

masing-masing iframe, baik uji ataupun banding

Gambar

Tabel 2.1 Penelitian Terdahulu
Gambar 3.1 Flowchart Preprocessing
Gambar 3.2 Flowchart Text Transformation
Gambar 3.3 Flowchart Feature Selection & Pattern Discovery
+7

Referensi

Dokumen terkait

Hal inilah yang menjadikan tari Sema sebagai jalan untuk bertarekat dalam Tarekat Maulawiyah (Kartanegara dalam Susanti, 2005 : 5). Di Indonesia kini sudah mulai

Bagian gudang akan membuatkan BPBB (Bukti Pengeluaran Bahan Baku), lalu diserahkan ke Bagian Produksi. Bagian gudang akan membuat laporan persediaan bahan baku lalu diserahkan

Atas dasar inilah peneliti ingin melakukan penelitian untuk memperoleh hasil yang tepat dan akurat tentang “Hubungan Antara Self Efficacy dan Komitmen Organisasi Dengan

Dalam penelitian ini, untuk meningkatkan perkembangan populasi disusun 6 skenario yang dapat dijelaskan sebagai berikut: (i) Tanpa Skenario, perkembangan populasi mengikuti

Pengaruh Perubahan Sosial Terhadap Perilaku Seks Remaja dan Pengetahuan Kesehatan Reproduksi Sebagai Penangkalnya.. Masalah Kehamilan Pranikah Pada Remaja Ditinjau Dari

Pengertiannya, jika penghinaan (Pencemaran Nama Baik) itu dilakukan dengan jalan menuduh seseorang telah &#34;melakukan suatu perbuatan&#34;, maka hal itu tergolong

Aplikasi penelitian ini dimasa yang akan datang disarankan agar Hotel Grand Duta Syariah Palembang dapat membedakan fungsi penjualan dan fungsi kas agar tidak

Atas kehendak-Nya penulis dapat meenyelesaikan skripsi dengan judul “ Perbedaan Pengaruh Latihan Interval Aerob dan Interval Anaerob Terhadap Peningkatan Kecepatan