Implementasi Algoritma Lesk Untuk Synonim Recognition Dan Rabin Karp Pada Pendeteksian Plagiarisme
IMPLEMENTASI ALGORITMA LESK
UNTUK SYNONIM RECOGNITION DAN RABIN KARP
PADA PENDETEKSIAN PLAGIARISME
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
MOCH NURHALIMI ZD
10111492
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
KATA PENGANTAR
Assalamualaikum Wr. Wb.
Alhamdulillahi Rabbil ‘Alamiin, puji dan syukur penulis panjatkan kehadirat Allah
SWT atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi
yang berjudul “IMPLEMENTASI ALGORITMA LESK UNTUK SYNONIM
RECOGNITION DAN RABIN KARP PADA PENDETEKSIAN PLAGIARISME
”
untuk memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu
(S1) di Program Studi Teknik Informatika, Fakultas Teknik dan Ilmu Komputer,
Universitas Komputer Indonesia.
Dikarenakan keterbatasan yang dimiliki Penulis, penyusunan skripsi ini tidak akan
terwujud tanpa mendapat dukungan, bantuan dan masukan dari berbagai pihak.
Untuk itu melalui kata pengantar ini, penulis ingin menyampaikan terimakasih yang
sebesar-besarnya kepada:1. Allah SWT atas segala nikmat yang telah diberikan sehingga Penulis dapat menyelesaikan skripsi ini.
2. Kedua orang tua berserta kakak yang telah memberikan kasih sayang, doa dan dukungan baik moril maupun materi sehingga Penulis dapat menyelesaikan skripsi ini tepat pada waktunya.
3. Ibu Ednawati Rainarli, S.Si., M.Si., selaku dosen pembimbing dan dosen wali Penulis di kelas IF-11/2011 penulis. Terimakasih karena telah banyak meluangkan waktu untuk memberikan bimbingan, saran dan nasehatnya selama proses penyusunan skripsi ini.
4. Bapak Irfan Maliki, S.T., M.T., selaku reviewer Penulis. Terimakasih karena telah banyak meluangkan waktu untuk memberikan bimbingan, saran, nasehat, serta masukan kepada Penulis selama proses penyusunan skripsi ini.
5. Ibu Ken Kinanti Purnamasari, S.Kom., M.T., selaku penguji tiga, karena telah memberikan saran dan masukan kepada Penulis.
6. Bapak dan Ibu dosen serta seluruh staf pegawai Program Studi Teknik Informatika Universitas Komputer Indonesia yang telah membantu penulis selama proses perkuliahan.
7. Teman-teman seperjuangan di kelas IF-11/2011 yang selalu memberi dukungan dan semangat kepada Penulis selama penyusunan skripsi ini.
8. Teman-teman sompreters yang selalu memberikan dukungan, motivasi, serta telah meluangkan waktunya untuk melakukan refreshing bersama seperti bermain poker dan lain lain.
9. Serta seluruh pihak yang tidak dapat Penulis sebutkan satu persatu, terimakasih atas segala bentuk dukungan untuk menyelesaikan skripsi ini.
Penulis menyadari bahwa penulisan skripsi ini masih jauh dari sempurna. Oleh
karena itu, penulis mengharapkan saran dan masukan yang bersifat membangun
untuk perbaikan dan pengembangan skripsi ini. Akhir kata, semoga penulisan
skripsi ini dapat bermanfaat bagi penulis khususnya dan bagi pembaca umumnya.
Wassalamualaikum Wr. Wb.
Bandung, Februari 2016 Penulis
DAFTAR ISI
ABSTRAK ............................................................................................................... i
ABSTRACT .............................................................................................................. ii
KATA PENGANTAR ........................................................................................... iii
DAFTAR ISI ........................................................................................................... v
DAFTAR GAMBAR ............................................................................................. ix
DAFTAR TABEL .................................................................................................. xi
DAFTAR SIMBOL .............................................................................................. xiv
DAFTAR LAMPIRAN ........................................................................................ xvi
BAB 1 PENDAHULUAN ...................................................................................... 1
1.1 Latar Belakang Masalah .............................................................................. 1
1.1 Identifikasi Masalah .................................................................................... 2
1.2 Maksud Dan Tujuan .................................................................................... 2
1.3 Batasan Masalah.......................................................................................... 2
1.4 Metodologi Penelitian ................................................................................. 3
1.4.1 Metoda Pengumpulan Data ......................................................................... 3
1.5 Metode Pembangunan Perangkat Lunak ..................................................... 3
1.6 Sistematika Penulisan ................................................................................. 4
BAB 2 TINJAUAN PUSTAKA ............................................................................. 7
2.1 Metoda pendeteksian Plagiarisme ............................................................... 7
2.2 Pencocokan String (String Macthing) ......................................................... 8
2.3 Proses Prepsocessing .................................................................................. 9
2.3.1 Pemisahan Kalimat...................................................................................... 9
2.3.2 Casefolding ................................................................................................. 9
2.3.3 Filtering .................................................................................................... 10
2.3.4 Tokenizing ................................................................................................. 10
2.3.5 Stopword Removal .................................................................................... 10
2.3.6 Stemming ................................................................................................... 10
- – Gram ..................................................................................... 15
2.13.2 Xampp ....................................................................................................... 24
3.4 Analisi Proses Grabbing Makna Dan Sinonim ......................................... 45
3.3.6 Stemming ................................................................................................... 42
3.3.5 Stopword ................................................................................................... 40
3.3.4 Tokenizing ................................................................................................. 38
3.3.3 Filtering .................................................................................................... 36
3.3.2 Casefolding ............................................................................................... 35
3.3.1 Pemisahan Kalimat dan pemilihan kalimat ............................................... 30
3.3 Analisis Proses Preprocessing .................................................................. 30
3.2 Analisis Data Masukan ............................................................................. 29
3.1 Analisis Sistem .......................................................................................... 28
BAB III ANALISIS DAN PERANCANGAN SISTEM ...................................... 27
2.13.3 PHP ......................................................................................................... 25
2.13.1 MySQL ...................................................................................................... 24
2.4.1 Fungsi cURL ............................................................................................. 14
2.13 Perangkat Lunak Pendukung..................................................................... 24
2.12.4 Kamus Data ............................................................................................... 24
2.12.3 Spesifikasi Proses ...................................................................................... 23
2.12.2 Data Flow Diagram ................................................................................... 23
2.12.1 Diagram Konteks ...................................................................................... 22
2.12 Analisis Terstruktur ................................................................................... 22
2.11 Dice Similarity Coeficients ....................................................................... 22
2.10 Hashing ..................................................................................................... 21
2.9 Peningkatan Performa Algoritma Rabin Karp .......................................... 20
2.8 Algoritma Rabin Karp .............................................................................. 15
2.7 Metoda K
2.6 Algoritma Lesk .......................................................................................... 14
2.5 Synonim Recognition ................................................................................. 14
3.5 Analisis Proses Synonim Recognition dengan Algoritma Lesk ................. 50
3.8 Analisis Pencocokan String (Rabin Karp) ................................................ 69
3.15 Perancangan Antarmuka ........................................................................... 90
4.4.2 Skenario Pengujian Sistem ...................................................................... 102
4.4.1 Rencana Pengujian .................................................................................. 101
4.4 Pengujian System ..................................................................................... 101
4.3 Implementasi Antarmuka ........................................................................ 100
4.2.1 Implementasi Basis Data ........................................................................... 98
4.2 Implementasi Perangkat Lunak ................................................................. 97
2.1.1 Implementasi Perangkat Keras .................................................................. 97
4.1 Implementasi Sistem ................................................................................. 97
BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ................................... 97
3.15.3 Jaringan Semantik ..................................................................................... 95
3.15.2 Perancangan Pesan .................................................................................... 95
3.15.1 Perancangan Form .................................................................................... 90
3.14.2 Perancangan Struktur Menu ...................................................................... 89
3.9 Analisis Perhitungan Similiarity ............................................................... 70
3.14.1 Perancangan Basis Data ............................................................................ 84
3.14 Perancangan Sistem .................................................................................. 84
3.13.4 Kamus data ................................................................................................ 81
3.13.3 Spesifikasi Proses ...................................................................................... 75
3.13.2 Data Flow Diagram .................................................................................. 74
3.13.1 Diagram Konteks ...................................................................................... 74
3.13 Analisis Kebutuhan Fungsional ................................................................ 73
3.12 Analisis Basis Data ................................................................................... 72
3.11.2 Analisis Kebutuhan Perangkat Lunak ....................................................... 72
3.11.1 Analisis Kebutuhan Perangkat Keras ........................................................ 71
3.11 Analisis Kebutuhan Non Fungsional ........................................................ 71
3.10 Spesifikasi Kebutuhan Perangkat Lunak .................................................. 70
4.4.3 Hasil Pengujian System .......................................................................... 103
5.1 Kesimpulan ............................................................................................. 115
5.2 Saran ........................................................................................................ 115
6 DAFTAR PUSTAKA
[1] R. R. Hutami and Suyanto, "IMPLEMENTASI SISTEM PENDETEKSI
PLAGIAT PADA DOKUMEN BAHASA," Teknik Informatika, Fakultas Teknik Informatika, Universitas Telkom, 2012.
[2] S. Dewanto, Indriati and I. Cholissodin, "DETEKSI PLAGIARISME
DOKUMEN TEKS MENGGUNAKAN ALGORITMA RABIN-KARP DENGAN SYNONYM RECOGNITION," Program Studi Ilmu Komputer, Program Teknologi Informatika dan Ilmu Komputer , Universitas Brawijaya Malang.
[3] D. D. Purwanto, "Sinonim dan Word Sense Disambigution Untuk
Melengkapi Detektor Plagiat Dokumen Tugas Akhir," Sistem Informasi Sekolah Tinggi Teknik Surabaya.
[4] H. B. FIrdaus, "Deteksi Plagiarisme Dokumen Menggunakan Algoritma
Rabin Karp," Jurnal Ilmu Komputer Dan Teknologi Informasi , Vols. Vol 3 , No 2, 2003.[5] A. M. Surahman, "PERANCANGAN SISTEM PENENTUAN
SIMILARITY KODE PROGRAM PADA BAHASA C DAN PASCALDENGAN MENGGUNAKAN ALGORITMA RABIN-KARP," Program Studi Teknik Informatika , Fakultas Teknik Universitas Tanjungpura.
[6] E. Nugroho, "Perancangan Sistem Deteksi Plagiarisme Dokumen Teks
Dengan Menggunakan Algoriam Rabin Karp," Program Studi Ilmu Komputer, Universitas Brawijaya, 2011.
[7] W. E. Widhaprasa Dan K. L. Masayu, "Update Summarization Untuk
Kumpulan Dokumen Berbahasa Indonesia," Jurnal Cybermatika, vol. vol. 1, p. No 2, Desember 2013.[8] F. Henry Dan Z. Ery, "Klastering Dokumen Berita dari Web menggunakan
Algoritma Single Pass Clustering," Jurnal Teknologi Informasi, vol. vol. 18,
[9] A. Ledy, "Perbandingan Algoritma Stemming Porter Dengan Algoritma
Nazief & Adriani Untuk Stemming Dokumen Teks Bahasa Indonesia," Konferensi Nasional Sistem dan Informatika, 2009.
[10] M. H Dan A. H. M. B. O. Daniel, "Porter Stemmer Information Retrieval,"
Mini Paper Project, 2012.[11] Z. F. Tala, "A Study of Stemming Effects on Information Retrieval in Bahasa
Indonesia," Language and Computation Universeit Van Amsterdam, 2003. [12] Rosihanari,4 April 2010. [Online]. Available:
http://blog.rosihanari.net/teknik-grabbing-mengambil-teks-dari-situs-lain-
dengan-curl/. [Accessed 10 1 2016].[13] w. santoso, "Teknik Grabbing (Mengambil dari situs lain)," 2010. [Online].
Available: http://wahyusantoso.staff.umm.ac.id/ilmu-umum/master- program/buku-php-mysql/teknik-grabbing-text-dari-web-lain. [Accessed 10 1 2016].
[14] A. Suharsono, "Sistem Temu Kembali : Tutorial cURL," 2011. [Online].
Available: http://aswinsuharsono.lecture.ub.ac.id/2010/09/sistem-temu- kembali-informasi-tutorial-curl. [Accessed 10 1 2016].
[15] "cURL," 2012. [Online]. Available: http://curl.haxx.se. [Accessed 12 12
2016].[16] A. M. Surahman, "PERANCANGAN SISTEM PENENTUAN
SIMILARITY," Program Studi Teknik Informatika.[17] R. S. Chiler. And. B. Kochar, "RB-Matcher. String Matching Technique,"
Rem (Text), Vols. 234567, no 11, p.3, 2008. [18] Yakub, Pengantar Sistem Informasi, Yogyakarta: Graha Ilmu, 2012.[19] A. Solichin, Mysql 5 dari Pemula Hingga Mahir, Jakarta: Universitas Budi
Luhur, 2010.[20] A. Solichin, Pemrograman Web dengan PHP dan MySQL, Jakarta:
Universitas Budi Luhur, 2009.
[21] Sugiyono, Metode Penelitian Kombinasi (Mixed Methods), Bandung:
Alfabeta, 2011.[22] B. Liu, Sentiment Analysis and Opinion Mining, Morgan & Claypool
Publisher, 2012.[23] N. Hayatin, M. Mentari and A. Izzah, "Opinion Extraction of Public Figure
Based on Sentiment Analysis in Twitter," IPTEK, Journal of Engineering, vol. I, no. 1, pp. 9-14, 2014.[24] A. Hamzah, "Deteksi Bahasa untuk Dokumen Teks Berbahasa Indonesia," in
Seminar Nasional Informatika (SemnasIF), Yogyakarta, 2010.[25] Andri, S. Ariana and M. Andriani, "Aplikasi Korelasi Kesalahan Berbasis
pada Tulisan Berbahasa Indonesia untuk Meningkatkan Kualitas PenulisanKarya Ilmiah," in Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST), Yogyakarta, 2014.
[26] R. S. S. M. O. A. L. S. M. Recky T. Djaelangkara, "Perancangan Sistem
Informasi Akademik," e-jurnal Teknik Elektro dan Komputer, Vols. ISSN:2301-8402 , 2015.
[27] Sumarsono and Ahmad Syihab Husin , "Sistem Terintegrasi Portal Web
Perguruan TInggi Agama Islam Negeri Menggunakan Metoda Grabbing,"Program Studi Teknik Informatika, Fakultas Sains dan Teknologi UIN Sunan Kalijaga , Vols. Vol. IX, No. 2, 2013 .
[28] Sandy Dewanto, Indriati, ST., M.Kom and Imam Cholissodin, S.Si., M.Kom,
"Deteksi Plagiarisme Dokumen Teks Menggunakan Algoritma Rabin Karp Dengan Synonim Recognition," Program Studi Ilmu Komputer, Program Teknologi Informatika dan Ilmu Komputer.
[29] R. A.s and M. Shalahudin, Rekayasa Perangkat Lunak Terstruktur, Bandung
: Informatika, 2013.[30] F. H. d. Z. Ery, "Klastering Dokumen Berita dari Web menggunakan
Algoritma Single Pass Clustering," Jurnal Teknologi Informasi, pp. vol. 18,[31] K. V. Y. Yoga, "Pengembangan," 2012.
1 BAB 1 PENDAHULUAN
1.1 Latar Belakang Masalah
Penjiplakan atau plagiarisme berarti mencontoh atau meniru tulisan dan karya
orang lain yang kemudian diakui sebagai karanganya sendiri dengan ataupun tanpa
seizin penulisnya. Penjiplakan dokumen digital bukanlah hal yang susah, cukup
dengan menggunakan teknik copy-paste-modify pada sebagian isi dokumen dan
bahkan keseluruhan isi dokumen sudah bisa dikatakan bahwa dokumen tersebut
merupakan hasil duplikasi dari dokumen lain [2]. Plagiarisme juga dapat dilakukan
dengan dengan cara menambah atau menghilangkan kata [1]. Terkadang
plagiarisme juga dilakukan dengan mengganti kata-kata yang mengandung kata -
kata sinonim, dengan maksud agar terlihat berbeda dari dokumen aslinya. Dimana
hanya merubah kata- – kata yang mengandung sinonim yang terdapat di dokumen
asli dengan merubah nya sesuai dengan kata yang ada di Kamus bahasa indonesia ,
tanpa memperhatikan struktur kalimat dari dokumen aslinya[3]. Pendeteksian
plagiarism dapat dilakukan dengan cara pencocokan string (string matching).
Metode ini dapat digunakan untuk menghitung kemiripan teks antara satu dokumen
dengan dokumen lainnya.
Beberapa penelitian mengenai deteksi plagiarisme telah dilakukan sebelumnya
diantaranya oleh Sandi Dewanto [2] dimana penelitian ini menggunakan algoritma
Rabin-Karp varian Chillar-Kochar yang mampu mendeteksi kesamaan string
dengan maksimal karena menghindari terjadinya spurious hit sehingga tidak perlu
pencocokan karakter setelah string ditemukan, penggunaan fitur synonim
recognition pada penelitin ini dengan cara menyocokan kata pada dokumen dengan
kamus di database kemudian mengganti kata yang didokumen dengan kamus yang
di database. Penelitian berikut nya dilakukan oleh Devi Dwi Purwanto [3] dimana
penelitian ini proses pengenalan sinonim yang digunakan menggunakan algoritma
Lesk Word Sense Disambiguation serta pemanfaatan Wordnet Bahasa Indonesia ,
dan untuk pendeteksian kesamaan kata atau carbon copy Menggukana Algoriam
Karp menghasilkan efisiensi waktu yang baik dalam mendeteksi string yang
memiliki lebih dari satu pola. Hal ini membuat algoritma Rabin-Karp dimanfaatkan
dalam melakukan pendeteksian terhadap tindak plagiat dokumen.Berdasarkan uraian di atas, pada penelitian ini akan mengombinasikan
Algoritma Lesk dalam Pengenalan sinonim dengan memanfaatkan wordnet
indonesia dan Rabin Karp untuk mendeteksi tingkat similiarity plagriarsme
dokumen.1.1 Identifikasi Masalah Berdasarkan penjelasan dari latar belakang ditemukan permasalahan yang
dirumuskan ke dalam suatu rumusan masalah adalah bagaimana
mengkombinasikan Algoritma Lesk dalam Pengenalan sinonim dengan
memanfaatkan wordnet indonesia dan Rabin Karp untuk mendeteksi tingkat
similiarity plagriarsme dokumen.1.2 Maksud Dan Tujuan Maksud dari penelitian yang akan dilakukan adalah menerapkan algoritma Lesk Dan Rabin Karp untuk mendeteksi plagiarisme dua dokumen.
Sedangkan tujuan yang ingin dicapai adalah mengetahui besarnya tingkat
similiarity dari kombinasi Algoritma Lesk dalam Pengenalan sinonim dengan
memanfaatkan wordnet indonesia dan Rabin Karp yang akan diterapkan untuk
mendeteksi plagiarism dua dokumen.1.3 Batasan Masalah Agar penelitian yang dilakukan lebih terarah dan mencapai sasaran yang
ditentukan, maka perlukan sebuah pembatasan masalah atau ruang lingkup kajian,
yaitu sebagai berikut: 1.Data dokumen yang bisa di upload oleh user hanya berextensi doc dan .docx 2. Kasus uji yang digunakan adalah latar belakang skripsi informatika.
3. Menggunakan medota k-gram kata , dengan nilai k-gram secara dinamis yaitu bisa di inputkan oleh user.
5. Steming pada penelitian ini menggunakan algoritma porter stemmer.
6. Menggunakan Algoritma Rabin Karp varian Chillar-Kochar untuk mendeteksi plagiarism dokumen.
7. Mengunakan algoritma lesk untuk pengenalan dan pemilihan persamaan kata dengan teknik WSD (Word Disambiguition Sense) menggunakan kamus sinonim dari database.
8. Makna kata tiap kalimat diambil dari website kbbi.web.id 9.
Sinonim kata tiap kalimat diambil dari website sinonimkata.com 10.
Pendekatan pembangunan perangkat lunak yang digunakan pada penelitian ini adalah pendekatan terstruktur.
1.4 Metodologi Penelitian
Metodologi penelitian yang digunakan dalam penelitian ini adalah penelitian
kuantitatif. Metode yang digunakan dalam penulisan laporan penelitian ini
menggunakan dua metode, yaitu metode pengumpulan data dan metode
pembangunan perangkat lunak.1.4.1 Metoda Pengumpulan Data
Metode yang digunakan dalam pengumpulan data pada penelitian ini adalah sebagai berikut: a.
Studi Literatur Pengumpulan data dengan cara mengumpulkan referensi seperti jurnal, paper, buku referensi dan bacaan-bacaan yang ada kaitannya dengan judul penelitian.
b.
Pengumpulan Dokumen Pengumpulan dokumen disini yaitu pengumpulan dokumen – dokumen asli yang akan dijadikan objek untuk dideteksi dengan dokumen yang merupakan hasil modify.
1.5 Metode Pembangunan Perangkat Lunak
Metode yang dilakukan dalam proses pembangunan aplikasi ini adalah model
1. Analisis dan definisi persyaratan.
Analisis dan definisi persyaratan meruapakan tahap pengumpulan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan secara rinci yang selanjutnya akan berfungsi sebagai spesifikasi sistem.
2. Perancangan sistem dan perangkat lunak.
Tahap perancangan sistem dan perangkat lunak meruapakan tahap mendesain perangkat lunak yang akan dibangun.
3. Implementasi dan pengujian unit.
Implementasi dan pengujian unit meruapakan tahap perancangan perangkat lunak yang direalisasikan sebagai serangkaian program atau unit program dengan bahasa pemrograman yang sudah ditentukan. Pengujian dilakukan secara unit untuk memastikan setiap unit dari program sudah berfungsi.
4. Integrasi dan pengujian sistem.
Integrasi dan pengujian sistem merupakan tahap penyatuan unit-unit program menjadi sebuah program utuh. Dilakukan pengujian perangkat lunak secara keseluruhan, sehingga perangkat lunak siap untuk digunakan.
1.6 Sistematika Penulisan
Sistematika penulisan penelitian ini disusun untuk memberikan gambaran
umum mengenai penelitian yang dikerjakan. Sistematika penulisan penelitian
sebagai berikut:BAB I PENDAHULUAN Pada bab ini berisi penjelasan mengenai latar belakang permasalahan,
identifikasi masalah, maksud dan tujuan, batasan masalah, metodologi penelitian,
serta sistematika.BAB II LANDASAN TEORI Pada bab ini berisi teori-teori atau tinjauan dari literatur pendukung yang akan digunakan untuk penerapan algoritma untuk mendeteksi plagiarism dokumen. BAB III ANALISIS DAN PERANCANGAN Pada bab ini dijelaskan secara rinci tahapan-tahapan dari mulai melakukan
recognition. Selain itu juga dijelaskan analisis kebutuhan fungsional dan non-
fungsional untuk membangun aplikasi yang akan digunakan sebagai untuk
penerapan dan pengujian dari tahap-tahap yang dijelaskan di atas.BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini ditampilkan implementasi tahap-tahap hasil dari analisis dan
perancangan yang sudah dilakukan sebelumnya menjadi sebuah aplikasi. Pada
aplikasi yang sudah dibuat dilakukan pengujian alpa yaitu pengujian terhadap
fungsionalnya. Lalu aplikasi digunakan untuk melakukan pengujian 2 dokumen dan
menghitung jumlah nilai similiarity kesamaan dokumen tersebut.BAB 5 KESIMPULAN DAN SARAN Bab ini berisi kesimpulan dari semua hal yang di bahas pada bab sebelumnya dan saran untuk pengembangan selanjutnya.
2 BAB 2 TINJAUAN PUSTAKA
Plagiarisme berasal dari bahasa latin,”plagiarius” yang berarti pencuri.
Plagiarisme didefinisikan sebagai tindakan mengambil, mengumpulkan atau
menyampaikan pemikiran, tulisan atau hasil karya orang lain selayaknya itu adalah
hasil karya diri sendiri tanpa persetujuan dari pemilik hasil karya tersebut. Dengan
kata lain, melakukan plagiarisme bearti mencuri hasil karya atau kepemilikan
intelektual orang lain. Ide atau materi apapun yang diambil dari sumber lain untuk
penggunaan secara tertulis maupun lisan harus disetujui oleh pemilik hasil karya
tersebut, terkecuali informasi tersebut merupakan pengetahuan umum.Beberapa type plagiarisme yaitu : 1.
Word-to-word plagiarism adalah menyalin setiap kata secara langsung tanpa diubah sedikit pun.
2. Plagiarism of authorship adalah mengakui hasil karya orang lain sebagai karya sendiri dengan cara mencantumkan nama sendiri menggantikan nama pengaran sebenarnya.
3. Plagiarism of ideas adalah mengakui hasil pemikiran atau ide orang lain.
4. Plagiarism of source, jika seseorang penulis menggunakan kutipan dari penulis lainya tanpa mencantumkan sumbernya. [5]
2.1 Metoda pendeteksian Plagiarisme
Metode pendeteksi plagiarisme dibagi menjadi tiga bagian yaitu metode
perbandingan teks lengkap, metode dokumen fingerprinting, dan metode kesamaan
kata kunci. Metode pendeteksi plagiarisme dapat dilihat pada gambar 2.1 berikut :
Perbandingan Teks Lengkap Dokumen Fingerprinting Metoda Pendeteksian Plagiarisme
Kesamaan Kata Kunci
Gambar 2. 1 Metoda Pendeteksi Plagiarisme Berikut ini penjelasan dari masing-masing metode dan algoritma pendeteksi plagiarisme :
1. Perbandingan teks lengkap. Metode ini diterapkan dengan membandingkan semua isi dokumen. Dapat diterapkan untuk dokumen yang besar. Pendekatan ini membutuhkan waktu yang lama tetapi cukup efektif, karena kumpulan dokumen yang diperbandingkan adalah dokumen yang disimpan pada penyimpanan lokal. Metode perbandingan teks lengkap tidak dapat diterapkan untuk kumpulan dokumen yang tidak terdapat pada dokumen lokal. Algoritma yang digunakan pada metode ini adalah algoritma Brute-Force, algoritma edit distance, algoritma Boyer Moore dan algoritma lavenshtein distance.
2. Dokumen Fingerprinting. Dokumen fingerprinting merupakan metode yang digunakan untuk mendeteksi keakuratan salinan antar dokumen, baik semua teks yang terdapat di dalam dokumen atau hanya sebagian teks saja. Prinsip kerja dari metode dokumen fingerprinting ini adalah dengan menggunakan teknik hashing. Teknik hashing adalah sebuah fungsi yang mengkonversi setiap string menjadi bilangan. Misalnya Rabin-Karp, Winnowing dan Manber.
3. Kesamaan Kata Kunci. Prinsip dari metode ini adalah mengekstrak kata kunci dari dokumen dan kemudian dibandingkan dengan kata kunci pada dokumen
yang lain. Pendekatan yang digunakan pada metode ini adalah teknik dot. [6]
2.2 Pencocokan String (String Macthing)
String matching atau pencocokan string adalah suatu metode yang digunakan
untuk menemukan suatu keakuratan/hasil dari satu atau beberapa pola teks yang
diberikan. String matching merupakan pokok bahasan yang penting dalam ilmu
komputer karena teks merupakan adalah bentuk utama dari pertukaran informasi
antar manusia, misalnya pada literatur, karya ilmiah, halaman web dsb. (Hulbert-
Helger,2007) String matching digunakan dalam lingkup yang bermacammacam,
misalnya pada pencarian dokumen, pencocokan DNA sequences yang
direpresentasikan dalam bentuk string dan juga string matching dapat dimanfaatkan
untk mendeteksi adanya plagiarisme dalam karya seseorang.Teks yang akan dilakukan proses teks mining, pada umumnya memiliki
beberapa karakteristik diantaranya adalah memiliki dimensi yang tinggi, terdapat
noise pada data, dan terdapat struktur teks yang tidak baik. Cara yang digunakan
dalam mempelajari suatu data teks, adalah dengan terlebih dahulu menentukan
fitur-fitur yang mewakili setiap kata untuk setiap fitur yang ada pada dokumen.2.3 Proses Prepsocessing
Preprocessing adalah tahapan untuk mempersiapkan teks menjadi data yang
akan diolah di tahapan berikutnya. Input-an awal pada proses ini adalah berupa
dokumen asli dan dokumen yang akan di uji. Preprocessing pada penelitian ini
terdiri dari beberapa tahapan, yaitu: proses pemisahan kalimat, proses case folding,
proses filtering, proses tokenizing, proses stopword dan proses stemming. Berikut
gambaran tahap preprocessing dapat dilihat pada gambar 2.2 berikut :Pemisahan Case Stopword Filtering Tokenizing Stemming Kalimat Folding Removal
Gambar 2. 2 Gambar tahap preprocessing
2.3.1 Pemisahan Kalimat Pemisahan kalimat adalah proses memecah teks pada dokumen menjadi
kumpulan kalimat-kalimat yang merupakan langkah awal tahapan text
preprocessing. Teknik yang digunakan dalam pemisahan kalimat adalah
memisahkan kalimat dengan tanda titik (.), tanda tanya (?), dan tanda seru (!)
sebagai pemisah (delimiter). Menghilangkan delimeter tersebut dokumen akan
terpotong menjadi kalimat [7].Pada proses pemisahan kalimat ini juga akan ada proses pemilihan kalimat
, kalimat yang terpadat sumber referensi akan di hapus dan tidak akan diproses ke
tahap selanjutnya.2.3.2 Casefolding Casefolding adalah mengubah semua huruf dalam dokumen menjadi huruf
kecil, hanya huruf ‘a’ sampai dengan huruf ‘z’ yang diterima. Karakter selain huruf
dihilangkan dan dianggap delimiter. Tahap tokenizing adalah tahap pemotongan
2.3.3 Filtering Data teks dalam dokumen yang sebelumnya sudah diubah ke dalam huruf
kecil semua. Selanjutnya dilakukan proses filtering teks. Filtering adalah tahapan
pemrosesan teks dimana semua teks selain karakt er “a” sampai “z” akan dihilangkan dan hanya menerima spasi [8].2.3.4 Tokenizing Proses Tokenizing adalah proses pemotongan string input berdasarkan tiap
kata yang menyusunnya, memecahkan data kalimat dan memisahkannya menjadi
setiap kata. Pemecahan kalimat menjadi kata-kata tunggal dilakukan dengan men-
scan kalimat dan setiap kata terindentifikasi atau terpisahkan dengan kata yang lain
oleh pemisah spasi [8].2.3.5 Stopword Removal Proses Stopword Removal merupakan proses penghilangan stopword.
Stopword adalah kata-kata yang tidak deskriptif yang dapat dibuang dalam
pendekatan bag-of-words [6]. Untuk mendeteksi apakah suatu kata merupakan
suatu stopword atau bukan adalah menggunakan kamus stopword yang sudah
ditentukan sebelumnya.Setiap kata akan diperiksa apakah masuk dalam daftar stopword, jika
sebuah kata masuk di dalam daftar stopword maka kata tersebut tidak akan diproses
lebih lanjut dan kata tersebut akan dihilangkan. Sebaliknya apabila sebuah kata
tidak termasuk di dalam daftar stopword maka kata tersebut akan masuk keproses
berikutnya. [8]. Kandidat umum stopword adalah article, preposisi, dan konjungsi.
2.3.6 Stemming Proses Stemming merupakan proses pencarian akar kata (root word) dari tiap
kata yaitu dengan mengembalikan suatu kata berimbuhan ke bentuk dasarnya
(stem). Untuk pemrosesan pada bahasa Indonesia, proses stemming dilakukan
dengan menghilangkan imbuhan yang mengawali dan mengakhiri kata sehingga
diperoleh bentuk dasar dari kata tersebut [8]. Algoritma ini dikembangkan oleh
Fadillah Z. Tala pada tahun 2003. Berupa algoritma stemmer untuk bahasa.
untuk dikembangkan sebagai algoritma stemmer untuk bahasa Indonesia, karena
pemikiran dasar dari algoritma Porter Stemmer cocok dengan struktur morfologi
kata-kata di dalam bahasa Indonesia[8]. Perbedaan algoritma ini dengan algoritma
yang telah dikembangkan oleh Nazief & Adriani yaitu tidak adanya dictionary
sehingga algoritma ini dapat dikatakan murni berbasis rule[8]. Berdasarkan hasil
penelitian [9] Perbedaan algoritma ini dengan algoritma yang telah dikembangkan
oleh Nazief & Adriani yaitu tidak adanya dictionary sehingga algoritma ini dapat
dikatakan murni berbasis rule [9]. Adapun gambar desain dari algoritma Porter
Stemmer bahasa Indonesia dapat dilihat pada gambar 2.3 [10].Kata Menghapus Partikel Menghapus Kata Ganti Menghapus Awalan Pertama ditemukan tidak ditemukan Menghapus Awalan Kedua Menghapus Akhiran ditemukan tidak Menghapus Akhiran Menghapus Awalan Kedua ditemukan Kata Dasar
Gambar 2. 3 Desain Algoritma Porter Stemmer Bahasa Indonesia pada algoritma Porter Stemmer bahasa Indonesia terdapat 5 kelompok aturan yang dapat dilihat pada tabel 2.1 sampai tabel 2.5 berikut [11].
Tabel 2. 1 Kelompok Aturan Pertama : Pembentukan Partikel
Kondisi Kondisi Akhiran Pengganti Contoh Ukuran Tambahan- kah NULL
2 NULL bukukah → buku
Kondisi Kondisi Akhiran Pengganti Contoh Ukuran Tambahan
- lah NULL
2 NULL pergilah → pergi
- pun NULL
2 NULL bukupun → buku
- tah NULL
2 NULL apatah → apa
Tabel 2. 2 Kelompok Aturan Kedua : Pembentukan Kata Ganti
Kondisi Kondisi Akhiran PenggantiContoh Ukuran Tambahan
- ku NULL
2 NULL bukuku → buku
- mu NULL
2 NULL bukumu → buku
- nya NULL
2 NULL bukunya → buku
Tabel 2. 3 Kelompok Aturan Ketiga : Pembentukan Awalan Pertama
Awalan Kondisi Kondisi PenggantiContoh Pertama Ukuran Tambahan
meng- NULL
2 NULL mengukur → ukur meny- S
2 V… menyapu → sapu men- NULL
2 NULL menduga → duga men- T
2 V… menuduh → tuduh mem- P
2 V… memilah → pilah mem- NULL
2 NULL membaca → baca me- NULL
2 NULL merusak → rusak peng- NULL
2 NULL pengukur → ukur peny- S
2 V… penyapu → sapu pen- NULL
2 NULL penduga → duga
2 NULL berlari → lari
2 NULL perjelas → jelas pel- NULL 2 ajar pelajar → ajar pe- NULL
Tabel 2. 5 Kelompok Aturan Kelima : Pembentukan Akhiran
Akhiran Pengganti Kondisi Ukuran Kondisi Tambahan Contoh