PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
SISTEM KLASIFIKASI DOKUMEN BAHASA JAWA DENGAN METODE K-NEAREST NEIGHBOR (K-NN)
Skripsi Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika
Oleh Veverly Widyastuti Palinoan 085314108
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2014
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
JAVANESE DOCUMENT CLASSIFICATION SYSTEM USING K-NEAREST NEIGHBOR (K-NN) ALGORITHMS
A Thesis Presented as Partial Fulfillment of The Requirements To Obtain Sarjana Komputer Degree in Informatics Engineering Study Program
By Veverly Widyastuti Palinoan 085314108
INFORMATICS ENGINEERING STUDY PROGRAM FACULTY OF SCIENCE AND TECNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2014
ii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
iii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
iv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
v
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
HALAMAN MOTO
“Tuhan pasti memberikan yang terbaik.”
“Pikullah kuk yang kupasang dan belajarlah padaKu, sebab Aku ini lemah lembut dan rendah hati, maka hatimu akan mendapatkan ketenangan (Matius 11:25).”
vi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
HALAMAN PERSEMBAHAN
Tugas akhir ini saya persembahkan untuk : Allah Tritunggal, Bunda Maria, Orangtuaku, saudara- saudaraku, sahabat – sahabatku dan orang – orang terSayang.
vii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
ABSTRAK
Bahasa Jawa merupakan salah satu bahasa daerah di Indonesia yang sangat sering digunakan. Banyak artikel Bahasa Jawa yang dapat kita jumpai setiap hari dalam bentuk dokumen digital. Untuk mempermudah seseorang dalam penemuan informasi dalam artikel Bahasa Jawa yang dicari dapat dilakukan dengan menggunakan klasifikasi dokumen. Penelitian ini bertujuan untuk membuat suatu aplikasi yang mampu mengklasifikasikan artikel bahasa Jawa menggunakan sistem pemerolehan informasi dan dikombinasikan dengan algoritma K-Nearest Neighbor. Penelitian ini membagi dokumen ke dalam empat kategori yaitu politik, ekonomi, kesehatan, dan pendidikan. Proses klasifikasi dokumen diawali dengan membaca dokumen, tokenisasi, stopword, stemming, text frequency. Sistem ini menggunakan vektor ciri TF-IDF (term frequency/ Inverse document frequency). Term frequency adalah jumlah kemunculan suatu kata dalam sebuah dokumen, sedangkan inverse document frequency adalah inverse dari banyaknya dokumen dimana suatu term tersebut muncul. Setelah menghitung TF-IDF dilakukan perhitungan Cosine Similarity. Cosine Similarity merupakan algoritma yang digunakan untuk menghitung kemiripan antara dokumen baru dan dokumen pelatihan. Untuk melakukan klasifikasi dokumen digunakan algoritma K-Nearest Neighbor. Metode K-Nearest Neighbor mengklasifikasikan dokumen dengan menggunakan hasil dari perhitungan TF-IDF yang digunakan untuk menghitung kedekatan antar dokumen (cosine similarity) Pada penelitian ini dilakukan pengujian yaitu dengan cross validation kemudian dilakukan uji presisi. Data yang digunakan sebanyak 40 dokumen. Tingkat akurasi untuk 3 fold k = 4 mencapai 95% dan k = 8 mencapai 92%, untuk 5 fold k = 4 mencapai 92% dan k = 8 mencapai 94%. . Kata kunci : klasifikasi dokumen bahasa Jawa, K-Nearest Neighbor, K-NN, pemerolehan informasi
viii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
ABSTRACT
Javanese language is one of local / traditional languages in Indonesia which is always used. There are many Javanese language articles that always can be found in digital document form. Clasification document can be used to find information in Javanese . The purpose of this research is to create an aplication which is able to clasify Javanese language article by using the combination of the information retrieval system and K-Nearest neighbor algorithm. This research divided the documents into 4 categories which consist of : politic, economy, health and education. The process of clasification begins with reading the document, tokenizing, stopword, stemming, text frequency . The system uses a feature vector is TF-IDF (term frequency/inverse document frequency). Term frequency is the sum of a word's frequency in one term, meanwhile, inverse document is the frequency of documents in one term. Cosine similarity will calculate after calculating TF-IDF . Cosine similarity is the algorithm which is used to calculate similarity between the new document and the exercise document. K-Nearest Neighbour algorithm is using to clasify the document. K-Nearest Neighbor methode clasified the document by using the equal of calculating TFIDF is used to compute the proximity between documents (cosine similarity). This research also tested by cross validation then presision test. Using 40 data of documents. Accurancy for 3 fold k = 4 reaches 95 % and k = 8 reaches 92%, for 5 fold k =4 reaches 94 % and k = 8 reaches 94% . Keywords : Javanese languange classification, K-Nearest Neighbor, K-NN, Information Retrieval
ix
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
x
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
KATA PENGANTAR
Puji syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa atas kasih dan penyertaannyalah sehingga penulis dapat menyelesaikan penyususnan skripsi dengan judul “Sistem Klasifikasi Dokumen Bahasa Jawa Dengan Metode KNearest Neighbor (K-NN)”. Penulisan skripsi ini ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Komputer Universitas Sanata Dharma Yogyakarta. Penyusunan skripsi ini tidak terlepas dari bantuan, bimbingan, dan peran berbagai pihak. Oleh karena itu pada kesempatan ini penulis mengucapkan terimakasih kepada pihak-pihak berikut: 1. Tuhan Yesus Kristus dan Bunda Maria yang selalu membimbing dan menuntun untuk menyelesaikan tugas skripsi ini. 2. Ibu Paulina Heruningsih Prima Rosa,S.Si.,M.Sc selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma. 3. Ibu Ridowati Gunawan,S.Kom.,M.T. selaku Ketua Program Studi Teknik Informatika sekaligus selaku dosen penguji. 4. Ibu Sri Hartati Wijono,S.Si.,M.Kom. selaku dosen pembimbing sekaligus dosen pembimbing akademik yang telah meluangkan banyak waktu untuk membimbing dan memotivasi penulis untuk terus membaca dan belajar. 5. Bapak Puspaningtyas Sanjoyo Adi,S.T., M.T. selaku dosen penguji. 6. Seluruh staff pengajar dan karyawan Program Studi Teknik Informatika Fakultas Sains dan Teknologi Universitas Sanata Dharma. 7. Kedua orang tua saya bapak Putung Palinoan dan ibu Catarina Tandiayuk yang selalu mendoakan, menasehati, dan memberi semangat dalam mengerjakan tugas akhir ini. 8.
Semua saudara tersayang, kakak Melianty Vemy Palinoan, Frans Fandy Palinoan, Steven Richard Palinoan, dan adik Annabelle Keysa Florence Palinoan yang terus memberikan dukungan sehingga dapat menyelesaikan skripsi ini.
xi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
9. Stevanus Pradibta yang selalu memberikan kasih sayang dan dorongan dalam mengerjakan skripsi ini. 10. Teman-teman K2KAMSY yang selalu memberi dukungan dan menjadi keluarga selama di Yogyakarta 11. Sahabat-sahabatku, Vio, Euz, Andre, Lia, Carla, Eka atas semua dukungan dan semangat serta canda tawa dalam penyelesaian skripsi ini. 12. Semua pihak yang telah membantu penyelesaian skripsi ini yang tidak dapat penulis sebutkan satu persatu.
Penulis menyadari masih banyak kekurangan dalam menyusun skripsi ini, namun penulis tetap berharap skripsi ini bermanfaat bagi pengembangan ilmu pengetahuan.
Yogyakarta, Desember 2014 Penulis
Veverly Widyastuti Palinoan
xii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR ISI HALAMAN JUDUL ..................................................................................................
i
HALAMAN PERSETUJUAN ...................................................................................
iii
HALAMAN PENGESAHAN ....................................................................................
iv
PERNYATAAN KEASLIAN KARYA .....................................................................
v
HALAMAN MOTTO .................................................................................................
vi
HALAMAN PERSEMBAHAN .................................................................................
vii
ABSTRAK ..................................................................................................................
viii
ABSTRACT ...............................................................................................................
ix
LEMBAR PERNYATAAN PERSETUJUAN ...........................................................
x
KATA PENGANTAR ................................................................................................
xi
DAFTAR ISI ..............................................................................................................
xiii
DAFTAR GAMBAR ..................................................................................................
xvi
DAFTAR TABEL.......................................................................................................
xvii
DAFTAR LIST CODE ............................................................................................... xviii BAB I PENDAHULUAN 1.1. Latar Belakang Masalah ..............................................................................
1
1.2. Rumusan Masalah .......................................................................................
2
1.3. Batasan Masalah ..........................................................................................
2
1.4. Tujuan Penelitian.........................................................................................
3
1.5. Metodologi Penelitian .................................................................................
3
1.6. Sistematika Penulisan ..................................................................................
4
BAB II LANDASAN TEORI 2.1. Pemerolehan Informasi................................................................................
6
2.2. Proses Preprosesing Teks Dokumen ......................................................
7
2.2.1. Tokenisasi .........................................................................................
7
2.2.2. Stopword ...........................................................................................
8
2.2.3. Stemming ...........................................................................................
9
2.2.4. Text Frequency ..................................................................................
13
2.3. Klasifikasi Teks ...........................................................................................
15
2.4. Metode k-Nearest Neighbor ...................................................................
15
2.5. Perhitungan Akurasi ...................................................................................
17
xiii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB III ANALISA DAN PERANCANGAN SISTEM 3.1. Gambaran Umum Sistem ............................................................................
19
3.1.1. Proses Input Data ..............................................................................
20
3.1.2. Preprocessing Dokumen ...................................................................
20
3.1.3. Proses Klasifikasi ..............................................................................
21
3.1.4. Keluaran ............................................................................................
22
3.2. Analisa Kebutuhan Sistem ..........................................................................
22
3.2.1. Definisi Aktor ...................................................................................
22
3.2.2. Diagram Use Case ............................................................................
23
3.2.3. Skenario Use Case ...........................................................................
23
3.2.3.1. Skenario Use Case Preprocessing Dokumen ..............................
23
3.2.3.2. Skenario Use Case Klasifikasi Dokumen ....................................
24
3.2.4. Definisi Use Case..............................................................................
25
3.3. Perancangan Model Penyimpanan Data ......................................................
25
3.4. Diagram Konteks.........................................................................................
26
3.5. Diagram Aktifitas ........................................................................................
27
3.5.1. Diagram Aktifitas Preprocessing Dokumen .....................................
27
3.5.2. Diagram Aktifitas Klasifikasi Dokumen ...........................................
28
3.6. Diagram Sekuensial .....................................................................................
29
3.6.1. Diagram Sekuensial Preprocessing Dokumen ..................................
29
3.6.2. Diagram Sekuensial Klasifikasi Dokumen .......................................
30
3.7. Langkah Pengerjaan Klasifikasi Dokumen .................................................
30
3.7.1. Preprocessing....................................................................................
32
3.7.1.1. Tokenisasi ....................................................................................
32
3.7.1.2. Stopword ......................................................................................
35
3.7.1.3. Stemming ......................................................................................
36
3.7.2. Proses Klasifikasi ..............................................................................
39
3.7.2.1. Perhitungan idf .............................................................................
39
3.7.2.2. Perhitungan Bobot (tf-idf)............................................................
41
3.7.2.3. Perhitungan Inner Product ...........................................................
44
3.7.2.4. Perhitungan Panjang Dokumen ....................................................
47
3.7.3. Skenario Pengujian............................................................................
50
3.8. Perancangan Antar Muka ............................................................................
51
3.8.1. Halaman Preprocessing Dokumen ...................................................
51
xiv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.8.2. Halaman Klasifikasi Dokumen .........................................................
52
BAB IV IMPLEMENTASI 4.1. Spesifikasi Software Dan Hardware yang Dibutuhkan...............................
53
4.1.1. Spesifikasi Software .........................................................................
53
4.1.2. Spesifikasi Hardware ........................................................................
53
4.2. Implementasi Preprocessing Dokumen ......................................................
54
4.2.1. Implementasi Pembacaan Isi Dokumen ............................................
54
4.2.2. Implementasi Tokenisasi, Menghapus Tanda Baca,
Case Folding ............................................................................
54
4.2.3. Implementasi Stopword ............................................................
55
4.2.4. Implementasi Stemming ....................................................................
56
4.2.5. Implementasi Save Dokumen Hasil Preprocessing ..........................
64
4.3. Implementasi Klasifikasi Dokumen ............................................................
65
4.4. Implementasi Antar Muka ...........................................................................
73
4.4.1. Halaman Preprocessing Dokumen ............................................
73
4.4.2. Halaman Klasifikasi Dokumen ................................................
74
BAB V HASIL DAN PEMBAHASAN 5.1. Hasil Percobaan ...........................................................................................
75
5.1.1. Cross Validation ................................................................................
75
5.1.1.1. 3 Fold ..........................................................................................
76
5.1.1.2. 5 Fold ...........................................................................................
80
5.2. Analisa .........................................................................................................
87
BAB VI KESIMPULAN DAN SARAN ....................................................................
90
Daftar Pustaka .............................................................................................................
91
Lampiran – lampiran...................................................................................................
92
xv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR GAMBAR Gambar 3.1 Gambaran Umum Sistem ..................................................................
19
Gambar 3.2 Diagram Use Case ............................................................................
23
Gambar 3.3 Diagram Konteks .........................................................................
26
Gambar 3.4 Diagram Aktifitas Preprocessing Dokumen ...............................
27
Gambar 3.5 Diagram Aktifitas Klasifikasi Dokumen ....................................
28
Gambar 3.6 Diagram Sekuensial Preprocessing Dokumen.............................
29
Gambar 3.7 Diagram Sekuensial Klasifikasi Dokumen ..................................
30
Gambar 3.8 Contoh Proses Tokenisasi ............................................................
33
Gambar 3.9 Contoh Proses Stopword ..............................................................
33
Gambar 3.10 Rancangan Halaman Preprocessing Dokumen ..........................
51
Gambar 3.11 Rancangan Halaman Klasifikasi Dokumen ...............................
52
Gambar 4.1 Halaman Preprosesing Dokumen .................................................
73
Gambar 4.2 Halaman Klasifikasi Dokumen ....................................................
74
xvi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR TABEL Tabel 3.1 Deskripsi Use Case ..........................................................................
25
Tabel 3.2 Contoh Data Training dan Testing...................................................
30
Tabel 3.3 Tabel Hasil Tokenisasi.....................................................................
33
Tabel 3.4 Tabel Hasil Stopword.......................................................................
35
Tabel 3.5 Tabel Hasil Stemming ......................................................................
36
Tabel 3.6 Perhitungan idf .................................................................................
38
Tabel 3.7 Perhitungan Bobot (w) .....................................................................
41
Tabel 3.8 Perhitungan Inner Product ...............................................................
44
Tabel 3.9 Perhitungan Panjang Dokumen .......................................................
47
Tabel 5.1 Nama Dokumen ...............................................................................
75
Tabel 5.2 Pembagian Dokumen 3 Fold ...........................................................
76
Tabel 5.3 Pembagian Dokumen 5 Fold ...........................................................
80
xvii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR LIST CODE
List Code 4.2.1 Open File ................................................................................
54
List Code 4.2.2 Tokenisasi, Menghapus Tanda Baca, Case Folding ..............
55
List Code 4.2.3 Stopword ................................................................................
56
List Code 4.2.4a Stemming ..............................................................................
57
List Code 4.2.4b Stemming ..............................................................................
64
List Code 4.2.5 Preprocessing .........................................................................
64
List Code 4.2.5 Aplikasi K-NN .......................................................................
72
xviii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB I PENDAHULUAN 1.1. Latar Belakang Masalah Bahasa Jawa merupakan salah satu bahasa daerah di Indonesia yang sangat sering digunakan. Banyak artikel Bahasa Jawa yang dapat kita jumpai setiap hari dalam bentuk dokumen digital. Untuk mempermudah seseorang dalam
penemuan informasi dalam artikel Bahasa Jawa yang
dicari dapat dilakukan dengan menggunakan klasifikasi dokumen. Namun, sebelum diklasifikasikan kita harus melakukan proses pemerolehan informasi. Pemerolehan informasi adalah pencarian material (biasanya berupa dokumen) dari dokumen yang sifatnya tidak terstruktur (biasanya berupa teks) yang bertujuan untuk memenuhi kebutuhan informasi dari suatu kumpulan dokumen yang besar (biasanya disimpan di komputer) (Manning, 2008).
Proses pemerolehan informasi melalui tahap prepocessing yang
meliputi tokenizing yaitu memecah kumpulan kata menjadi token serta penghapusan karakter-karakter yang tidak penting, stopword yaitu penghapusan kata-kata yang tidak mempengaruhi proses pemerolehan informasi, lalu stemming yaitu proses mengembalikan semua bentuk kata ke bentuk kata dasarnya, kemudian dilakukan perhitungan text frequency. Setelah dilakukan proses pemerolehan informasi akan dilanjutkan dengan proses klasifikasi mengggunakan metode k-Nearest Neighbor (k-NN).
1
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
2
Klasifikasi dokumen merupakan proses memisahkan sekumpulan dokumen ke dalam beberapa kelompok atau kelas dengan menilai kemiripan antar dokumen. Pengelompokan artikel-artikel yang saling berkait ini, akan membantu pengguna untuk menemukan informasi yang dibutuhkan. Pada proses ini digunakan Nearest
Neighbor
metode k-Nearest Neighbor (k-NN). Metode k(k-NN)
mengklasifikasikan
dokumen
dengan
menggunakan hasil dari perhitungan text frequency dengan melihat kemiripan cosine similarity tiap dokumen berdasarkan k (jumlah tetangga terdekat). 1.2. Rumusan Masalah Berdasarkan latar belakang di atas maka rumusan masalahnya yaitu : 1. Seberapa besar tingkat akurasi metode k-Nearest Neighbor (k-NN) dalam mengklasifikasikan dokumen Bahasa Jawa ?
1.3. Batasan Masalah Adapun batasan aplikasi klasifikasi dokumen skripsi Teknik Informatika adalah sebagai berikut : 1. Dokumen yang dapat diproses adalah dokumen teks (*.txt). 2. Data dokumen diambil dari artikel yang berbahasa Jawa. 3. Jenis pengklasifikasian dokumen untuk pengujian dibagi menjadi 4 kategori yaitu ekonomi, politik, kesehatan, dan pendidikan. 4. Satu dokumen memiliki satu kategori.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3
1.4. Tujuan Penelitian Adapun tujuan penulisan skripsi adalah sebagai berikut: 1. Menemukan tingkat akurasi metode k-Nearest Neighbor (k-NN) dalam mengklasifikasikan dokumen Bahasa Jawa. 2. Mengklasifikasikan dokumen Bahasa Jawa dengan menggunakan metode k-Nearest Neighbor (k-NN)
1.5. Metodologi Penelitian Metodologi penelitian yanng digunakan yaitu : 1. Analisis Melakukan analisis terhadap masalah dan kebutuhan sistem yang akan dibangun. 2. Perancangan sistem Melakukan perancangan umum sistem sesuai dengan kebutuhan sistem. 3. Pembuatan Sistem Berdasarkan hasil analisis dan perancangan sistem, maka tahap selanjutnya adalah pembuatan sistem. 4. Implementasi dan pengujian Sistem yang telah dibuat dijalankan, kemudian dilakukan pengujian terhadap ketepatan sistem klasifikasi dengan menggunakan metode pemerolehan Informasi dan klasifikasi menggunakan metode k-Nearest Neighbor (k-NN)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
4
3. Evaluasi dan pengambilan kesimpulan Menganalisis hasil implementasi sistem dan membuat kesimpulan terhadap penelitian tugas akhir yang telah dikerjakan.
1.6. Sistematika Penulisan BAB I
PENDAHULUAN Memberikan gambaran secara umum tentang isi skripsi yang meliputi: latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat, metode penelitian dan sistematika penulisan.
BAB II
LANDASAN TEORI Berisi konsep dasar Pemerolehan Informasi, teknik-teknik dan metode klasifikasi k-NN
BAB III ANALISA DAN PERANCANGAN Berisi gambaran umum sistem, metode pengumpulan data, usecase diagram, sekenario perancangan, analisa peracangan, perancangan basis data, perancangan tampilan masukan dan keluaran untuk pengguna. BAB IV IMPLEMENTASI Bab ini menjelaskan tentang implementasi ke dalam bentuk program berdasarkan desain yang telah dibuat, berupa tampilan antar muka dan cara kerja sistem.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB V
5
HASIL DAN PEMBAHASAN Pada bab ini akan dipaparkan mengenai hasil dan analisa dari hasil percobaan yang telah dilakukan.
BAB VI KESIMPULAN DAN SARAN Bab ini berisi semua kesimpulan yang didapatkan dari penelitian yang telah dilakukan. Kesimpulan menjawab rumusan masalah yang dituliskan pada bab pendahuluan secara ringkas dan jelas.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB II LANDASAN TEORI 2.1 Pemerolehan Informasi Pemerolehan informasi adalah pencarian material (biasanya berupa dokumen) dari dokumen yang sifatnya tidak terstruktur (biasanya berupa teks) yang bertujuan untuk memenuhi kebutuhan informasi dari suatu kumpulan dokumen yang besar (biasanya disimpan di komputer) (Manning, 2008). Pemerolehan informasi berhubungan dengan representasi, media penyimpanan, pengaksesan, dan pengorganisasian sesuatu yang memiliki informasi. Pemerolehan informasi digunakan untuk mengurangi jumlah informasi yang terlalu besar sehingga di dalam pencarian informasi akan menjadi lebih efektif dan memberikan hasil pencarian dokumen yang relavan dengan query. Query berupa kata kunci yang diberikan oleh pengguna kepada sistem sebagai acuan untuk mendapatkan informasi yang relevan terhadap kebutuhan pada query. Query yang dimasukkan ke dalam sistem akan diolah dengan menggunakan metode yang diterapkan dalam sistem pemerolehan informasi untuk kemudian ditampilkan berdasarkan urutan nilai relevansi yang paling tinggi. Untuk lebih mempermudah lagi maka data yang didapatkan diklasifikasi. Fungsi utama pemerolehan informasi sistem adalah 1. Mengidentifikasi sumber informasi yang relefan dengan minat masyarakat pengguna yang ditargetkan.
6
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
7
2. Menganalisis isi sumber informasi (dokumen). 3. Merepresentasikan isi sumber informasi dengan cara tertentu yang memungkinkan untuk dipertemukan dengan pertanyaan (query) pengguna. 4. Merepresentasikan pertanyaan (query) pengguna dengan cara tertentu yang memungkinkan untuk dipertemukan sumber informasi yang terdapat dalam basis data. 5. Mempertemukan pernyataan pencarian dengan data yang tersimpan dalam basisdata. 6.
Menemu-kembalikan informasi yang relevan.
7. Menyempurnakan unjuk kerja sistem berdasarkan umpan balik yang diberikan oleh pengguna.
2.2 Proses Preprocessing Teks Dokumen Fungsi preprocessing pada program ini adalah untuk mendapatkan kata kunci yang nantinya akan digunakan sebagai pencocokan string atau perbandingan dokumen. Proses-proses yang dilakukan pada proses ini adalah membaca dokumen, tokenisasi, stopword, stemming, text frequency. 2.2.1.
Tokenisasi Menurut Manning, 2008, tokenisasi adalah proses memotong kalimat
menjadi potongan-potongan kata, yang disebut token, dan pada saat yang sama karakter-karakter tertentu, seperti tanda baca dihapus.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
8
Tokenisasi adalah tugas memisahkan deretan kata di dalam kalimat, paragraf atau halaman menjadi token atau potongan kata tunggal. Tahapan ini juga menghilangkan karakter-karakter tertentu seperti tanda baca dan mengubah semua token ke bentuk huruf kecil (lower case). 2.2.2.
Stopword Stopword adalah kata yang sangat umum yang akan muncul menjadi
nilai yang kecil dalam membantu dokumen pilih yang cocok dengan kebutuhan pengguna dikecualikan dari kosakata seluruhnya
(Manning,
2008). Pada proses stopword dilakukan penghapusan kata-kata yang tidak mempengaruhi proses pemerolehan informasi. Stopword adalah kata umum yang biasanya muncul dalam jumlah besar dan dianggap tidak memiliki makna. Pada penerapan program ini daftar kata-kata yang digolongkan sebagai stopword disimpan pada dokumen stoplist.txt. Kata-kata hasil tokenizing kemudian dicocokkan dengan tabel stopword dalam dokuemn, jika ternyata kata yang diperiksa sama dengan stopword maka kata hasil tokenizing dihapus. Dan kata yang diperiksa tidak ada di dalam dokumen maka kata tersebut dijadikan kata penting dan kemudian dilakukan proses stemming.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
2.2.3.
9
Stemming Proses ini adalah proses mengembalikan semua bentukan kata
menjadi bentuk kata dasarnya dengan menghilangkan semua imbuhan baik yang terdiri dari awalan(perfixes), sisipan(infixes), akhiran(surfixes) dan confixes (kombinasi dari awalan dan akhiran) pada kata turunan. Sebelum membuat aturan stemming untuk bahasa Jawa, diuraikan terlebih dahulu penggunaan simbol-simbol dalam membuat stemmer rule. (Joko, Sri Hartati, Mirna Adriani, JB. Budi Darmawan, Studi Pengaruh Stemming dalam Bahasa Jawa. Penelitian Mibah Pekerti DIKTI, 2011). 1. Aturan substitusi/penghapusan menggunakan tanda =>. ny =>”” ny => s
(ny dihapus) (ny diganti s)
2. Simbol <> digunakan untuk menyatakan tingkat affix yang mempengaruhi urutan pengecekan di algoritma stemming.
Aturan yang digunakan adalah sebagai berikut : SUFFIX <1>
e=>"",n=>"",a=>"",i=>"",ing=>"", ku=>"",mu=>""
<2>
ke=>"", ki=>"",wa=>"", ya=>"",na=>"",ne=>"",en=>"",an=>"",ni=>"",nira=>"", ipun=>"", on=>"u", ning=>""
<3>
ake=>"", en=>"i", kna=>"n", kno=>"n", ana=>"", ono=>"", ane=>"", kne=>"", nan=>"", yan=>"", nipun=>"", oni=>"u", eni=>"i"
<4>
kake=>"n", ken=>"" ,kke=>"",nana=>"",nono=>"", nane=>"", nen=>"",kna=>"",kno=>"", ekne=>"i", onan=>"u",enan=>"i"
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
10
<5>
kake=>"",kken=>"",aken=>"",kke=>"n",enana=>"i",enono=>"i",on en=>"u",enen=>"i",onana=>"u",onono=>"u", ekna=>"i",ekno=>"i",okno=>"u",okna=>"u"
<6>
ekken=>"i",kaken=>"n",okken=>"u",ekake=>"i",ekke=>"i",okake= >"u",okke=>"u", kaken=>"", kken=>"n"
<7>
ekaken=>"i",okaken=>"u"
PREFIX <1>
dipun=>"",peng=>"",peny=>"",pem=>"",pam=>"",pany=>"",pra=>" ",kuma=>"",kapi=>"", bok=>"",mbok=>"",dak=>"",tak=>"",kok=>"",tok=>"",ing=>"",ang =>"",any=>"", am=>"", sak=>"", se=>"",su=>"",mang=>"",meng=>"",nge=>"",nya=>"",pi=>"",ge=>" ",ke=>"",u=>"", po=>"u",ke=>"u"
<2>
mer=>"",mra=>"",mi=>"",sa=>"",ku=>"",an=>"",ka=>"",ny=>"s",n g=>"k",di=>"",peng=>"k",pang=>"k",pany=>"c", pam=>"p",ke=>"i",mang=>"k",meng=>"k"
<3>
a=>"",k=>"",pam=>"w",pan=>"t", pen=>"t",mang=>"w",meng=>"w", ny=>"c",ng=>""
<4>
n=>"t", pan=>"s", pen=>"s",man=>"s",men=>"s"
<5>
pan=>"",pen=>"",man=>"t",men=>"t",n=>""
<6>
pa=>"",pe=>"",man=>"",men=>""
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
<7>
p=>"",ma=>"",me=>""
<8>
m=>"w"
<9>
m=>"p"
<10>
m=>""
11
INFIX <1>
gum=>"b",gem=>"b",kum=>"p",kem=>"p"
<2>
kum=>"w", kem=>”w”
Algoritma untuk melakukan proses stemming terhadap kata tunggal atau duplikasi. 1. Kata berimbuhan adalah word. Kata sebagai hasil adalah stemW 2. Cek jumlah karakter word, jika < 2. Keluar. 3. Jika word mengandung “-“, maka pecah kata berdasar “-“ menjadi w1 dan w2. Dan lakukan langkah 4-13 4. w11 = w1 tanpa vokal dan w21 = w2 tanpa vokal. 5. Jika w11 = w21 dan panjang w1=w2 maka lakukan langkah 6-8 6. Jika w2 ada di kamus maka stemW=w2 dan keluar. 7. Jika w2 tidak ada di kamus, w22= hilangkan imbuhan(w2). 8. Jika w22 ada di kamus maka stemW=w22, jika tidak stemW=w1-w2 dan keluar.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
12
9. Jika w11 != w21, lakukan langkah 10-13 10. ws11=hilangkan imbuhan(w1) dan ws21 = hilangkan imbuhan(w2). 11. Cek ws21 di kamus, jika ada maka stemW=ws21 dan keluar. 12. Cek ws11 di kamus, jika ada maka stemW=ws11 dan keluar. 13. Jika tidak maka stemW=ws11-ws21 dan keluar. 14. stemW = hilangkan imbuhan(stemW). Cek stemW di dictionary. Jika ada stemW dikembalikan dan keluar.
Algoritma untuk menghilangkan afiks pada kata berimbuhan. 1. Kata yang akan dihilangkan imbuhan adalah word. 2. ws1=hapus suffix (word). Cek di dictionary. Jika ada kembalikan kata. 3. ws1s2=hapus suffix (ws1). Cek di dictionary. Jika ada kembalikan kata. 4. ws1i1=hapus infix (ws1). Cek di dictionary. Jika ada kembalikan kata. 5. dws1= pengulangan parsial (ws1). Cek di dictionary. Jika ada kembalikan kata. 6. dws1s2= pengulangan parsial (ws1s2). Cek di dictionary. Jika ada kembalikan kata. 7. wp1=hapus prefix (word). Cek di dictionary. Jika ada kembalikan kata.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
13
8. dwp1= pengulangan parsial (wp1). Cek di dictionary. Jika ada kembalikan kata. 9. wp1s1=hapus suffix(wp1). Cek di dictionary. Jika ada kembalikan kata. 10. dwp1s1= pengulangan parsial (wp1s1). Cek di dictionary. Jika ada kembalikan kata. 11. wp1s1s2=hapus suffix (wp1s1). Cek di dictionary. Jika ada kembalikan kata. 12. wp1p2=hapus prefix (wp1). Cek di dictionary. Jika ada kembalikan kata. 13. wp1p2s1=hapus suffix (wp1p2). Cek di dictionary. Jika ada kembalikan kata. 14. wp1p2s1s2=hapus suffix (wp1p2s1). Cek di dictionary. Jika ada kembalikan kata. 15. wi1=hapus infix (word). Cek di dictionary. Jika ada kembalikan kata. 16. wi1s1=hapus suffix (wi1). Cek di dictionary. Jika ada kembalikan kata.
2.2.4.
Text Frequency Semakin banyak kata yang mirip atau sama antara dua dokumen
maka semakin dekat kedua dokumen tersebut dan akan memiliki bobot atau nilai yang lebih tinggi. (Manning, 2008). Sehingga diperlukan pemberian bobot untuk setiap token dalam dokumen tergantung pada jumlah kemunculan token tersebut dalam dokumen. pendekatan yang paling mudah
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
14
adalah dengan memberikan bobot yang nilainya sama dengan jumlah kemunculan token t dalam dokumen d. Pembobotan ini disebut term ferquency dan disimbolkan dengan tft,d. Namun,
dalam
sistem
yang
akan
dibangun
oleh
penulis,
menggunakan teknik TF/IDF (term frequency/ Inverse document frequency). Term frequency adalah jumlah kemunculan suatu kata dalam sebuah dokumen, sedangkan
inverse document frequency adalah inverse dari
banyaknya dokumen dimana suatu term tersebut muncul. Rumus pembobotan Salton (1983) adalah sebagai berikut: w(t,d) = tft,d * idft = tf(t,d )* log(N/nt)
(1)
Keterangan : 1.
w(t,d) = bobot dari term(kata) t dalam dokumen d.
2.
tf(t,d) = frekuensi kemunculan term(kata) t dalam dokumen d.
3.
Idfd = Inverse document frequency dari kata t
4.
N = jumlah seluruh dokumen
5.
nt = jumlah dari dokumen yang ditraining yang mengandung nilai t. digunakan dalam referensi yang dijadikan acuan dalam pembuatan
Sistem
klasifikasi
yaitu
nilai
perbandingan
antara
jumlah
kemunculan suatu kata dalam dokumen dibagi dengan jumlah keseluruhan kata yang ada dalam dokumen tersebut, sehingga jumlah dari semua tf dari kata yang ada di dalam dokumen tersebut sama dengan satu. Inverse
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
15
Dokumen Frequency (idf) atau kombinasi dari tf-idf juga dapat digunakan. Namun dalam klasifikasi teks, tf-idf tidak selalu efektif. 2.3. Klasifikasi Teks Han dan Kamber (2006) mengatakan bahwa klasifikasi merupakan proses menemukan model atau fungsi yanng menjelaskan dan membedakan kelas-kelas data fungsi tersebut digunakan untuk memperkirakan kelas dari suatu objek yang labelnya tidak diketahui Proses klasifikasi ini terbagi menjadi dua tahapan, yaitu tahap pelatihan (learning) dan tahap uji. Pada tahap pelatihan, sebagian data yang telah diketahui kelas datanya diumpankan untuk membentuk model prediksi. 2.4. Metode k-Nearest Neighbor Mertode k-Nearest Neighbor atau k-NN merupakan salah satu metode yang digunakan dalam sistem klasifikasi yang menggunakan pendekatan Machine Leraning. Machine Learning merupakan proses yang membangun sistem klasifikasi melalui pembelajaran dari sejumlah contoh yang sudah diklasifikasikan sebelumnya (Feldman & Sanger, 2007). Menurut Han dan Kamber (2006), metode k-NN bersifat lazy learners di mana proses pembelajarannya menunggu hingga menit terakhir sebelum model dibangun dibutuhkan untuk mengklasifikasi data uji. Berbeda dengan eager leaners yang akan melakukan generalisasi pada kata pelatihan sebelum menerima data uji. Lazy learners akan menyimpan data pelatihan dan menunggu hingga diberikan data uji sehingga metode ini akan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
16
bekerja lebih sedikit ketika diberikan data pelatihan dan bekerja lebih banyak ketika diberikan data uji, dibandingkan dengan eager learners. Lazy learners disebut juga instance-based learners karena menyimpan data pelatihan atau instances. Agoritma metode k-NN 1.
Tentukan parameter k= jumlah dokumen tetangga.
2.
Hitung kemiripan antara dokumen baru dan dokumen pelatihan dengan menggunakan rumus cosine similarity
(2)
Keterangan : Q
: dokumen uji
Di : dokumen pelatihan WQj
: bobot token j dalam dokumen uji Q
Wij : bobot token j dalam dokumen pelatihan ke-i Sim(Q,Di) : nilai kesamaan antara dokumen uji Q dan dokumen pelatihan ke-i 3.
Urutkan nilai kesamaan dan tentukan tetangga terdekat berdasarkan jarak terbesar, banyak tetangga terdekat diambil dari parameter k.
4.
Kumpulkan kategori dari dokumen tetangga.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
5.
17
Gunakan mayoritas sederhana dari kategori dokumen tetangga sebagai nilai prediksi dokumen tes.
2.5. Perhitungan Akurasi Perhitungan akurasi dilakukan dengan menggunakan metode crossvalidation. Pada metode cross-validation, data dibagi menjadi k subset atau fold yang saling bebas secara acak, yaitu S1, S2, …., Sk, dengan ukuran setiap subset sama. Pelatihan dan pengujian dilakukan sebanyak k kali. Pada iterasi ke-i, subset S1 diperlakukan sebagai data pengujian, dan subset lainnya sebagai data pelatihan. Tingkat akurasi dihitung dengan membagi jumlah keseluruhan klasifikasi yang benar dengan jumlah semua instance pada data awal (Han & Kamber 2006). Tahap I i. fold 1 sebagai data uji ii. fold 2 sebagai data pelatihan iii. fold 3 sebagai data pelatihan Tahap II i. fold 2 sebagai data uji ii. fold 1 sebagai data pelatihan iii. fold 3 sebagai data pelatihan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
18
Tahap III i. fold 3 sebagai data uji ii. fold 1 sebagai data pelatihan iii. fold 2 sebagai data pelatihan Setelah dilakukan cross validation maka digunakan precision untuk menentukan akurasi. Yaitu dengan cara : Precision =
x 100%
(3)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB III ANALISIS DAN PERANCANGAN SISTEM
3.1 Gambaran Umum Sistem Sistem ini dibuat untuk mempermudah pencarian dokumen bahasa Jawa dengan mengklasifikasikan dokumen berita bahasa Jawa menggunakan proses information retrieval. Sistem terdiri atas 3 proses utama yaitu proses input, preprocessing yang terdiri dari proses tokenizing, stopword, stemming, dan text frequency, dan proses klasifikasi dokumen.
Berikut ini adalah
gambaran klasifikasi dokumen secara umum :
Input Teks
Tokenisa si
stopword
stemming
Menghitung TF IDF
KNN
Hasil klasifikasi
preprocessing
Gambar 3.1 Gambaran Umum Sistem
Proses utama dalam sistem ini yaitu
proses preprocessing dan
klasifikasi. Hasil akhir dari proses preprocessing yang berupa bobot kata disimpan dalam database kemudian digunakan untuk melakukan klasifikasi menggunakan metode k-Nearest Neighbor. Lebih jelasnya proses dibagi menjadi beberapa bagian sebagai berikut ini :
19
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.1.1
20
Proses Input Data Data yang diinputkan untuk klasifikasi ini adalah dokumen Bahasa Jawa dengan file berekstensi *.txt yang membahas beberapa topik yang berbeda yang kemudian topik tersebut dijadikan sebagai acuan dalam pengklasifikasian. Dokumen yang digunakan pada klasifikasi ini dibagi menjadi dua bagian, yaitu dokumen yang berfungsi sebagai data pelatihan dan dokumen yang berfungsi sebagai data uji yang akan digunakan sebagai uji coba terhadap data pelatihan. Dokumen yang digunakan sebagai data tes ini belum diketahui kelasnya.
3.1.2
Preprocessing Dokumen Pada tahap
preprocessing ini akan dilakukan tahapan seperti
berikut : a) Tokenisasi Pada tahap ini, memecah kumpulan kata menjadi token dan penghapusan karakter-karakter yang tidak penting. b) Stopword Penghapusan
kata
yang
tidak
mempengaruhi
sistem
pemerolehan informasi c) Stemming Proses mengembalikan semua bentuk kata ke bentuk kata dasarnya. d) Perhitungan Bobot Kata
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
21
Pada proses ini dilakukan perhitungan bobot setiap kata yang telah melalui proses preproses.
3.1.3
Proses Klasifikasi Pada proses klasifikasi ini dokumen yang telah diproses hingga tahap perhitungan text frequency akan diklasifikasikan berdasarkan kelas yang telah ditentukan. Proses klasifikasi ini menggunakan metode kNearest Neighbor (k-NN) sebagai berikut : a. Menetukan K Pada proses ini, user memasukkan nilai k, yaitu jumlah dokumen tetangga terdekat. Sebagai contoh k=3, berarti akan diambil 3 dokumen yang memiliki jarak terdekat dengan dokumen testing. b. Perhitungan Cosine Similarity Hitung kemiripan vektor [dokumen] query Q dengan setiap dokumen yang ada. Kemiripan antar dokumen dapat menggunakan cosine similarity. Rumusnya adalah sebagai berikut:
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
22
c. Pengurutan kemiripan Vektor Urutkan hasil perhitungan kemiripan vektor dari hasil perhitungan cosine similarity. d. Mencari label mayoritas dengan menggunakan acuan k yang telah ditentukan untuk menentukan hasil kasifikasi dengan melihat jumlah kelas yang terbanyak diperoleh diantara k dokumen yang terdekat, dilakukan prediksi untuk mengetahui kelas dari dokumen tes tersebut, dengan melihat jumlah kelas yang terbanyak diperoleh diantara k dokumen yang terdekat.
3.1.4
Keluaran Sistem ini akan menghasilkan keluaran berupa klasifikasi dokumen dengan K-Nearest Neighbor.
3.2 Analisa Kebutuhan Sistem 3.2.1
Definisi Aktor Aktor yang terlibat dalam sistem adalah user. User merupakan aktor yang dapat mengakses dan mengelolah semua kebutuhan sistem. Hak akses User dapat dilihat di bawah ini : Aktor User
Hak Akses - Preprocessing - Klasifikasi dokumen
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.2.2
23
Diagram Use Case Gambaran use case diagram sistem dapat dilihat pada gambar berikut ini
Preprocessing
Klasifikasi Dokumen
pengguna
Gambar 3.2 Diagram Use Case
3.2.3
Skenario Use case
3.2.3.1 Skenario Use Case Preprocessing Dokumen Nama use case
Preprocessing dokumen
Id Use Case
1
Prioritas
High
Pelaku
Pengguna Pengguna melakukan preprocessing dokumen Dokumen yang diklasifikasikan telah melalui proses preprocessing Reaksi Sistem
Deskripsi Pra kondisi Aksi Aktor 1. User berada pada utama 2. User memilih Preprosesing
halaman Menu 3. Sistem menampilkan halaman “Preprosesing”
4. User menekan tombol ambil data dokumen 5. Sistem menampikan browse 6. User memilih folder yang akan
halaman
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
24
di- Preprocessing
8. User menekan tombol Mulai
7. Sistem menampilkan alamat direktori . 9. Sistem akan menyimpan data hasil Preprocessing pada folder testing
3.2.3.2 Skenario Use Case Klasifikasi Dokumen Nama use case
Klasifikasi dokumen
Id Use Case
2
Prioritas
High
Pelaku
Pengguna Pengguna melakukan klasifikasi dokumen Dokumen yang diklasifikasikan telah melalui proses preprocessing Reaksi Sistem
Deskripsi Pra kondisi Aksi Aktor 1. User berada pada halaman MainFrame 2. User memilih Menu Klasifikasi Dokumen 3. User menekan tombol ambil dokumen
4. Sistem menampilkan halaman “browse” 5. User memilih dokumen yang akan diklasifikasi dan memasukkan nilai k kemudian menekan tombol klasifikasi 6. Sistem menampilkan klasifikasi
hasil
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.2.4
25
Definisi Use Case Tabel di bawah ini menjelaskan secara umum use case yang terdapat pada sistem klasifikasi dokumen/artikel Bahasa Jawa. Tabel 3.1 Deskripsi Use Case No.
Use Case
1.
Klasifikasi dokumen
2.
Preprocessing
Deskripsi Use Case Use case ini menggambarkan proses klasifikasi dokumen baru. Dokumen inputan akan ditentukan kategorinya secara otomatis. Use case ini menggambarkan proses preprocessing mulai dari tokenisasi sampai hasil stemming
3.3 Perancangan Model Penyimpanan Data Media penyimpanan data yang dikelola oleh sistem adalah berupa file plain text yang disimpan dengan ekstensi .txt. Setiap satu file mewakili satu surat. File – file tersebut kemudian disimpan dalam folder yang mewakili masing – masing kategori. Penjabaran folder dan file yang digunakan oleh sistem: 1. Preprocessing Menyimpan file hasil preprocessing yang dilakukan oleh pengguna melalui sistem. 2. stopwords.txt File yang berisi stopwords. Contoh : aku, ada, ahh, aja, ana, apa.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
26
3. kamus.txt File yang berisi kumpulan kata dasar yang ada dalam kamus bahasa Jawa. Contoh : abab, abad, abang, abdi, abnormal, abot, absen, ada, adang, adat. 4. stemWord2.pl File yang berisi metode stemming. Contoh : Lapangan _an lapang pakaryane “_ne” pakarya “pa_ “ karya
karya
5. Tanda baca.txt File berisi tanda baca yang dihapus. Contoh :
3.4 Diagram Konteks Klasifikasi dokumen Sistem Klasifikasi Dokumen Bahasa Jawa
USER info hasil klasifikasi
Gambar 3.3 Diagram Konteks
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
27
3.5 Diagram Aktifitas 3.5.1
Diagram Aktifitas Preprocessing Dokumen Pengguna akan melakukan preprocessing dokumen. Diagram aktivitas preprocessing dokumen seperti pada gambar di bawah ini. Aktor
Sistem
Klik Ambil Dokumen
Menampilkan halaman Preprosesing
Klik Mulai
Klik OK
Menampilkan nama dokumen yang akan dipreprosesing
Memproses dokumen
Menampilkan pesan bahwa preprosesing dokumen selesai
Gambar 3.4 Diagram Aktifitas Preprocessing Dokumen
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.5.2
28
Diagram Aktifitas Klasifikasi Dokumen Pengguna akan melakukan klasifikasi dokumen. Diagram aktivitas preprocessing dokumen seperti pada gambar di bawah ini.
Aktor
Sistem
Klik Ambil Dokumen
Menampilkan halaman Klasifikasi
Isi nilai k
Menampilkan nama dokumen yang akan diklasifikasi pada tabel
Klasifikasi
Memproses dokumen
Menampilkan hasil klasifikasi dokumen
Gambar 3.5 Diagram Aktifitas Klasifikasi Dokumen
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
29
3.6 Diagram Sekuensial 3.6.1
Diagram Sekuensial Prerocessing Dokumen View Preprosesing
ProsesData
Tanda baca.txt
Stoplist.txt
Dokumen baru openFile(String path, String fileName) text() filterTandaBaca(String doc)
openFile(String path, String fileName) doc
doc
tokenisasi(String doc) doc caseFolding(String doc) Aktor doc stopWord(String doc)
openFile(String path, String fileName) doc
kataPenting
stemDoc(String doc) stem(String word)
line hasil sorting(String doc) doc save(String doc, String filePath, String fileName) Dokumen hasil preprosesing
doc
Gambar 3.6 Diagram Sekuensial Preprocessing Dokumen
StemWord.pl
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.6.2
30
Diagram Sekuensial Klasifikasi Dokumen View Klasifikasi
ProsesData
Train
Dokumen testing
Nilai k testTrain(String path, String test)
static String[] listFile(String dir) daftar; sorting(String doc)
result hapusDuplikasiKata(String doc)
hasil + kata[kata.length - 1] + "\n";
Aktor
listTerm(String Dok) listTerm
Hasil klasifikasi dokumen
Gambar 3.7 Diagram Sekuensial Klasifikasi Dokumen
3.7 Langkah Pengerjaan Klasifikasi Dokumen Diketahui ada terdapat 4 dokumen sample data training dan 1 sample data testing. Data training untuk pendidikan yaitu pendidikan(1) dan pendidikan(2). Data training untuk kesehatan yaitu dokumen kesehatan(1) dan kesehatan (2). Data testing yaitu Test. Akan dicari kelas dari data testing, apakah temasuk dalam kategori pendidikan atau kesehatan dengan menggunakan perhitungan K-NN.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
31
Tabel 3.2 Contoh Data Training dan Testing Nama Isi Dokumen Dokumen Guru Basa Jawa ing jaman saiki gunggunge ora akeh, sebab jurusan basa Jawa iki dianggep angel lan ora nguntungake. Kejaba iku dianggep ciut lapangan pakaryane, angel kanggo golek pangupa pendidikan jiwa. Lan isih akeh maneh panganggep remeh liyane, nanging apa (1) iya pancen asor banget ta basa Jawa kuwi? Dra. Warih Jatirahayu nyoba njawab tantangan mau. Kabukten, ketekunane nggeluti basa Jawa, ndadekake kariere muluk ndedel tansaya dhuwur. Kanggo biyantu ningkatake kualitas pendhidhikan ing Kabupaten Sleman, durung suwe iki kadhapuk pengurus Dewan Pendhidhikan pendidikan
Kabupaten (DPK) Sleman. Kanthi anane DPK kasebut kaangkah
(2)
masarakat ing Kabupaten Sleman bisa menehi sumbangan awujud saran, kritik lan liya-liyane kang tujuane kanggo ningkatake mutune pendhidhikan ing Kabupaten Sleman. Kanker mono mujudake momok mungguhing sok sapaa wae. Ora sethithik pawongan kang koncatan nyawa karana lelara kanker kang
kesehatan disandhang. Ora mokal menawa lelara mau kuwawa gawe giris, (1) luwih-luwih tumrap pawongan panandhang lelara mau kang nate dioperasi nanging gagal kesehatan
Ditambahake Gogok menawa Hikata Reiki tetela nduweni sipat
(2)
regeneratif sing cepet marang organ syaraf awak sing rusak. Hikata
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
32
Reiki kejaba nduweni getaran energi sing dhuwur lan kuwat uga bisa kanggo ngaWekani sawernaning jinis penyakit kanthi cepet. Jaman saiki "pendidikan" wus dudu bab sing aneh, nanging dadi barang sing larang regane dhuwur pangajine. Mung wae mutune durung mesthi. Kurikulum ing sekolah, mligine ing tingkat Sekolah Test
Dasar wulangan Basa Jawa babagan aksara jawa durung selaras karo cak-cakane utawa prakteke. Awit ing "lapangan" wulangan mligine bab aksara Jawa durung laras karo kurikulume.
Dalam pengerjaan dilakukan dalam dua tahap yaitu tahap preprocessing dan klasifikasi. 3.7.1
Preprocessing Langkah pertama yaitu Preprocessing terhadap semua (terdapat 5) dokumen yang terlibat. D
3.7.1.1 Tokenisasi
Tokenisasi adalah tugas memisahkan deretan kata di dalam kalimat, paragraf atau halaman menjadi token atau potongan kata tunggal. Tahapan ini juga menghilangkan karakter-karakter tertentu seperti tanda baca dan mengubah semua token ke bentuk huruf kecil (lower case).
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
.
Token kanker mono mujudake momok mungguhing sok sapaa
Dokumen Kanker mono mujudake momok mungguhing sok sapaa
Gambar 3.8 Contoh Proses Tokenisasi Hasil dari proses tokenisasi di atas adalah : Tabel 3.3 Tabel Hasil Tokenisasi kesehatan (1) kanker mono mujudake momok mungguhing sok sapaa wae ora sethithik pawongan kang koncatan nyawa karana lelara kanker kang disandhang ora mokal menawa lelara mau kuwawa
kesehatan (2) ditambahake gogok menawa hikata reiki tetela nduweni sipat regeneratif sing cepet marang organ syaraf awak sing rusak hikata reiki kejaba nduweni getaran energi sing dhuwur
pendidikan(1) Guru Basa Jawa Ing Jaman Saiki Gunggunge Ora akeh sebab jurusan basa jawa iki dianggep angel lan ora nguntungake kejaba iku dianggep ciut lapangan pakaryane
pendidikan(2) kanggo biyantu ningkatake kualitas pendhidhikan ing kabupaten sleman durung suwe iki kadhapuk pengurus dewan pendhidhikan kabupaten dpk sleman kanthi anane dpk kasebut kaangkah masarakat ing
test jaman saiki pendidikan wus dudu bab sing aneh nanging dadi barang sing larang regane dhuwur pangajine mung wae mutune durung mesthi kurikulum ing sekolah mligine
33
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
gawe giris luwih luwih tumrap pawongan panandhang lelara mau kang nate dioperasi nanging gagal
3.7.1.2
lan kuwat uga bisa kanggo ngawekani sawernaning jinis penyakit kanthi cepet
angel kanggo golek pangupa jiwa lan isih akeh maneh panganggep remeh liyane nanging apa iya pancen asor banget ta basa jawa kuwi dra warih jatirahayu nyoba njawab tantangan mau kabukten ketekunane nggeluti basa jawa ndadekake kariere muluk ndedel tansaya dhuwur
kabupaten sleman bisa menehi sumbangan awujud saran kritik lan liya liyane kang tujuane kanggo ningkatake mutune pendhidhikan ing kabupaten sleman
ing tingkat sekolah dasar wulangan basa jawa babagan aksara jawa durung selaras karo cak cakane utawa prakteke awit ing lapangan wulangan mligine bab aksara jawa durung laras karo kurikulume
34
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
35
3.7.1.3 Stopword Penghapusan kata yang umum atau tidak mempengaruhi proses pemerolehan informasi.
Token kanker mono mujudake momok mungguhing sok sapaa wae
Dokumen Kanker mono mujudake momok mungguhing sok sapaa wae
StopList sok wae
Hasil Stopword kanker mono mujudake momok mungguhing sapaa
Gambar 3.9 Contoh Proses Stopword Tabel 3.4 Tabel Hasil Stopword kesehatan (1) Kanker Mono mujudake momok mungguhing Sapaa sethithik pawongan koncatan nyawa karana Lelara kanker disandhang mokal Lelara kuwawa Giris tumrap pawongan
kesehatan (2) Gogok Hikata Reiki Nduweni Sipat regeneratif Cepet Organ Syaraf Rusak Hikata Reiki Nduweni Getaran Energi Kuwat ngawekani sawernaning Jinis Penyakit
pendidikan(1) guru basa jaman gunggunge jurusan basa dianggep nguntungake dianggep ciut lapangan pakaryane golek pangupa jiwa panganggep remeh asor basa dra
pendidikan(2) ningkatake kualitas pendhidhikan kabupaten sleman kadhapuk pengurus dewan pendhidhikan kabupaten dpk sleman dpk kasebut kaangkah masarakat kabupaten sleman menehi sumbangan
test jaman pendidikan barang larang regane pangajine mutune kurikulum sekolah mligine tingkat sekolah dasar wulangan basa babagan aksara selaras lapangan wulangan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
panandhang Lelara dioperasi Gagal
Cepet
warih jatirahayu nyoba njawab tantangan kabukten ketekunane nggeluti basa ndadekake kariere muluk ndedel tansaya
awujud saran kritik tujuane ningkatake mutune pendhidhikan kabupaten sleman
36
mligine aksara laras kurikulume
3.7.1.4 Proses Stemming Proses ini adalah proses mengembalikan semua bentukan kata menjadi bentuk kata dasarnya dengan menghilangkan semua imbuhan baik yang terdiri dari awalan(perfixes), sisipan(infixes), akhiran(surfixes) dan confixes (kombinasi dari awalan dan akhiran) pada kata turunan. Tabel 3.5 Tabel Hasil Stemming kesehatan (1) Kanker Mono Mujudake Momok Mungguhing Sapaa Sethithik Pawongan Koncatan Nyawa Karana Lelara Kanker
_ake _ing _a se_ _an
ka_ le_
m=w
kesehatan (2) kanker mono wujud momok mungguh sapa thithik pawong koncatan nyawa karan lara kanker
Gogok Hikata Reiki Nduweni Sipat Regeneratif Cepet Organ Syaraf Rusak Hikata Reiki Nduweni
gogok hikata reiki nduweni sipat regeneratif cepet organ syaraf rusak hikata reiki nduweni
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
di_
Disandhang Mokal Lelara Kuwawa Giris Tumrap Pawongan Panandhang Lelara Dioperasi Gagal
sandhang mokal lara kuwawa giris tumrap pawong tandhang
le_
_an pan=t le_ di_
Getaran Energi Kuwat Ngawekani Sawernaning Jinis Penyakit Cepet
_an
getar
ning_
energi kuwat ngawekani werna
sa_
jinis penyakit cepet
lara operasi gagal
pendidikan (1) guru basa jaman gunggunge jurusan basa dianggep nguntungake dianggep ciut lapangan pakaryane golek pangupa jiwa panganggep remeh asor basa dra warih jatirahayu nyoba njawab tantangan kabukten
37
_e _an
gunggung jurus
di_ _ake di_
anggep ng_ anggep
_an _ne
lapang pa_
pang_
Dra
ny= c n_ _an
Test guru basa jaman gunggung jurus basa anggep untung anggep ciut lapang karya golek pangupa jiwa anggep remeh asor basa dra warih jatirahayu coba jawab tantang kabukten
jaman pendidikan barang larang regane pangajine mutune kurikulum sekolah mligine tingkat sekolah dasar wulangan basa babagan aksara selaras lapangan wulangan mligine aksara laras kurikulume
_ne _ne _e
Rega pang = k
_ne
m_
jaman pendidikan barang larang rega kaji mutu kurikulum sekolah ligi
_an
tingkat sekolah dasar wulang
_an
basa babag
_an _an _ne
aksara selaras lapang wulang ligi
_e
m_
aksara laras kurikulum
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
ketekunane nggeluti basa ndadekake kariere muluk ndedel tansaya
_ane
_ekake = i _e
ke_
n_
tekun nggeluti basa dadi karier muluk dedel tansaya
n_
Ningkatake Kualitas Pendhidhikan Kabupaten Sleman Kadhapuk Pengurus Dewan Pendhidhikan Kabupaten Dpk Sleman Dpk Kasebut Kaangkah Masarakat Kabupaten Sleman Menehi Sumbangan Awujud Saran Kritik Tujuane Ningkatake Mutune Pendhidhikan Kabupaten
pendidikan (2) _ake ning_
Kat
_kan
kualitas dhidhik
pen_
ka_ peng_
kabupaten sleman Dhapuk Urus
_kan
Dewan Dhidhik
pen_
dpk
Kabupaten Dpk
dpk ka_ ka_
Sleman Dpk Sebut Angkah
_i _an a_
Masarakat Kabupaten Sleman Meneh Sumbang Wujud
_e _ake _ne _kan
Saran Kritik Tujuan Kat Mutu Dhidhik
Ning pen_
Kabupaten
38
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Sleman
3.7.2
Sleman
Proses Klasifikasi
3.7.2.1 Perhitungan idf Tabel 3.6 Perhitungan idf term Aksara Anggep Angkah Asor Babag Barang Basa Cakane Cepet Ciut Coba Dadi Dasar Dedel Dewan dhapuk dhidhik Dpk dra Energi Gagal Getar Giris Gogok Golek gunggung Guru Hikata Jaman jatirahayu Jawab
kesehata n(1) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0
kesehata n(2) 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 2 0 0 0
pendidi kan (1) 0 3 0 1 0 0 4 0 0 1 1 1 0 1 0 0 0 0 1 0 0 0 0 0 1 1 1 0 1 1 1
pendidi test kan (2) 0 2 0 0 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 3 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
d f 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1
idf 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,39794 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,39794 0,69897 0,69897
39
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Jinis jiwa Jurus kabukten kabupaten Kaji Kanker Karan Karier Karya Kat koncatan Kritik kualitas kurikulum Kuwat kuwawa Lapang Lara Larang laras ligi masarakat meneh mokal momok mono muluk mungguh mutu nduweni ngawekani nggeluti nyawa operasi organ pangupa pawong pendidikan penyakit rega
0 0 0 0 0 0 2 1 0 0 0 1 0 0 0 0 1 0 3 0 0 0 0 0 1 1 1 0 1 0 0 0 0 1 1 0 0 2 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 1 0 0 0 1 0
0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0
0 0 0 0 4 0 0 0 0 0 2 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0 0 0 0 0 2 0 0 1 0 1 1 2 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1
0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,39794 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,39794 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897
40
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
regeneratif reiki remeh rusak sandhang sapa saran sebut sekolah selaras sipat sleman sumbang syaraf tandhang tansaya tantang tekun thithik tingkat tujuan tumrap untung urus warih werna wujud wulang
0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 1 0
1 2 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0
0 0 0 0 0 0 1 1 0 0 0 4 1 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0
0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1
0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,69897 0,39794 0,69897
3.7.2.2 Perhitungan Bobot (tf-idf) Tabel 3.7 Perhitungan Bobot (w)
kesehatan(1) kesehatan(2) 0 0 0 0 0
0 0 0 0 0
w pendidikan pendidikan test (1) (2) 0 0 1,39794 2,09691 0 0 0 0,69897 0 0,69897 0 0 0 0 0,69897
41
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,69897 0 0,69897 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,39794 0,69897 0 0 0 0,69897 0 0 0
0 0 0 1,39794 0 0 0 0 0 0 0 0 0 0 0,69897 0 0,69897 0 0,69897 0 0 0 1,39794 0 0 0 0,69897 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1,59176 0 0 0,69897 0,69897 0,69897 0 0,69897 0 0 0 0 0,69897 0 0 0 0 0 0,69897 0,69897 0,69897 0 0,39794 0,69897 0,69897 0 0,69897 0,69897 0,69897 0 0 0 0 0,69897 0,69897 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0,69897 0,69897 2,09691 1,39794 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,79588 0 0 0 0 0 1,39794 0 0,69897 0,69897 0
0,69897 0,39794 0,69897 0 0 0 0 0,69897 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,39794 0 0 0 0 0 0 0 0,69897 0 0 0 0 0 0 0 0 1,39794
42
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
0 0,69897 0 2,09691 0 0 0 0 0 0,69897 0,69897 0,69897 0 0,69897 0 0 0 0 0,69897 0,69897 0 0 1,39794 0 0 0 0 0 0 0 0,69897 0,69897 0 0 0 0 0 0 0 0 0,69897
0,69897 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,39794 0,69897 0 0 0 0,69897 0 0 0 0,69897 0 0,69897 1,39794 0 0,69897 0 0 0 0 0 0 0,69897 0 0 0,69897 0
0 0 0,39794 0 0 0 0 0 0 0 0 0 0,69897 0 0 0 0 0,69897 0 0 0 0,69897 0 0 0 0 0 0 0,69897 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0,69897 0,69897 0 0 0 0 0 0,39794 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,69897 0,69897 0 0 0 2,79588 0,69897 0 0
0 0 0,39794 0 0,69897 0,69897 1,39794 0 0 0 0 0 0 0 0,39794 0 0 0 0 0 0 0 0 0,69897 0 0,69897 0 0 0 0 0 0 0 0 1,39794 0,69897 0 0 0 0 0
43
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
0 0 0 0,69897 0 0 0,69897 0 0 0 0 0,39794 0
0 0 0 0 0 0 0 0 0 0 0,69897 0 0
0,69897 0,69897 0,69897 0 0 0 0 0,69897 0 0,69897 0 0 0
0 0 0 0 0 0 0 0 0 0,69897 0,69897 0 0 0 0 0 0,69897 0 0 0 0 0 0,39794 0 0 1,39794
3.7.2.3 Perhitungan Inner Product Tabel 3.8 Perhitungan Inner Product
kesehatan(1) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Wdtest * Wdtraining pendidikan pendidikan kesehatan(2) (1) (2) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,633425 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
44
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0,158356 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,158356 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,158356
45
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
SUM
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,950138
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,158356
46
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
47
3.7.2.4 Perhitungan Panjang Dokumen Tabel 3.9 Perhitungan Panjang Dokumen
kesehatan(1) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,488559 0 0,488559 0 0 0 0 0 0 0 0 0 0 0
W*W(panjang vektor) pendidikan pendidikan kesehatan(2) (1) (3) 0 0 0 0 4,397032 0 0 0 0,488559 0 0,488559 0 0 0 0 0 0 0 0 2,5337 0 0 0 0 1,954236 0 0 0 0,488559 0 0 0,488559 0 0 0,488559 0 0 0 0 0 0,488559 0 0 0 0,488559 0 0 0,488559 0 0 4,397032 0 0 1,954236 0 0,488559 0 0,488559 0 0 0 0 0 0,488559 0 0 0 0 0 0,488559 0 0 0 0,488559 0 0 0,488559 0 0 0,488559 0 1,954236 0 0 0 0,158356 0 0 0,488559 0 0 0,488559 0 0,488559 0 0 0 0,488559 0 0 0,488559 0
test 1,954236 0 0 0 0,488559 0,488559 0,158356 0,488559 0 0 0 0 0,488559 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,158356 0 0 0 0 0
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
0 0 0 1,954236 0,488559 0 0 0 0,488559 0 0 0 0 0,488559 0 4,397032 0 0 0 0 0 0,488559 0,488559 0,488559 0 0,488559 0 0 0 0 0,488559 0,488559 0 0 1,954236 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0,488559 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,954236 0,488559 0 0 0 0,488559 0 0 0 0,488559 0 0,488559 1,954236 0
0,488559 0 0 0 0 0,488559 0,488559 0 0 0 0 0 0 0 0,158356 0 0 0 0 0 0 0 0 0 0,488559 0 0 0 0 0,488559 0 0 0 0,488559 0 0 0 0 0 0 0,488559
0 7,816945 0 0 0 0 0 1,954236 0 0,488559 0,488559 0 0 0 0 0 0 0 0 0,488559 0,488559 0 0 0 0 0 0,158356 0 0 0 0 0 0 0 0 0 0 0 0 0 0
48
0 0 0,488559 0 0 0 0 0 0 0 0 1,954236 0 0 0,158356 0 0,488559 0,488559 1,954236 0 0 0 0 0 0 0 0,158356 0 0 0 0 0 0 0 0 0,488559 0 0,488559 0 0 0
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
0 0,488559 0,488559 0 0 0 0 0 0 0 0 0,488559 0 0 0 0,488559 0 0 0,488559 0 0 0 0 0,158356 0 16,28081 4,034948
SUM SQRT
0,488559 0 0 0 0 0 0 0,488559 0 0 0,488559 0 0 0 0 0 0 0 0 0 0 0 0,488559 0 0 14,16821 3,764069
0 0 0 0 0 0 0 0 0 0 0 0 0,488559 0,488559 0,488559 0 0 0 0 0,488559 0 0,488559 0 0 0 19,46142 4,41151
Nilai Cosinus Similarity Test Test Test Test
kesehatan(1) kesehatan(2) pendidikan(1) pendidikan(2)
0 0 0,054220411 0,007264068
Maka disimpulkan jika k =1 maka test termasuk kategori pendidikan. jika k =3 maka test termasuk kategori pendidikan.
0 0 0 0,488559 0,488559 0 0 0 7,816945 0,488559 0 0 0 0 0 0 0 0,488559 0 0 0,488559 0 0 0,158356 0 30,11882 5,488061
49
0 0 0 0 0 1,954236 0,488559 0 0 0 0 0 0 0 0 0 0,488559 0 0 0 0 0 0 0 1,954236 15,77876 3,972248
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.7.3
50
Skenario Pengujian Dalam Pengujian untuk algoritma K-NN akan dilakukan dengan cross validation. Dokumen dibagi ke dalam fold secara manual. Sebelum dimasukkan ke dalam fold dokumen terlebih dahulu diberi label berdasarkan kategori secara manual. Misalnya ada 3 fold maka pembagian datanya sebagai berikut : a.
Tahap I Fold1 sebagai testing Fold2 sebagai training Fold3 sebagai training
b.
Tahap II Fold 2 sebagai testing Fold 1 sebagai training Fold 3 sebagai training
c.
Tahap II Fold 3 sebagai testing Fold 1 sebagai training Fold 2 sebagai training
Setelah didapatkan hasil dari semua data diatas makan diukur precission dengan rumus : Precission = jumlah data relevan/jumlah keseluruhan dokumen
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
51
3.8 Perancangan Antar Muka ( Interface) 3.8.1
Halaman Preprocessing Dokumen
SISTEM KLASIFIKASI DOKUMEN BAHASA JAWA
Klasifikasi
Preprosesing
Folder :
Ambil Dokumen
Mulai
Reset
Proses
Gambar 3.10 Rancangan Halaman Preprocessing Dokumen Preprocessing yaitu penginputan dokumen yang akan diklasifikasi secara manual yang akan dibandingkan dengan data testing.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
52
3.8.2 Halaman Klasifikasi Dokumen
SISTEM KLASIFIKASI DOKUMEN BAHASA JAWA
Klasifikasi
Preprosesing
Ambil Dokumen
Nilai K :
Max
Klasifikasi
Dokumen
Reset
Kategori
Proses Klasifikasi
Gambar 3.11 Rancangan Halaman Klasifikasi Dokumen
Pada halaman ini dilakukan klasifikasi dokumen. Yaitu dengan mengambil dokumen. Lalu menginputkan nilai k(jumlah tetangga terdekat). Kemudian user menekan tombol klasifikasi. Maka akan tampil dokumen tersebut termasuk dalam klasifikasi yang mana.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB IV IMPLEMENTASI
Pada bagian ini penulis membahas tentang implementasi pada sistem Klasifikasi Dokumen Bahasa Jawa Dengan Metode K-Nearest Neighbor (K-NN). Pada implementasi penulis tidak mengerjakan tetapi dikerjakan oleh Euzhan Yogatama.
4.1. Spesifikasi Software Dan Hardware yang Dibutuhkan 4.1.1. Spesifikasi Software Spesifikasi software yang digunakan dalam Klasifikasi Dokumen Bahasa Jawa Dengan Metode K-Nearest Neighbor (K-NN) adalah sebagai berikut : 1.
Sistem operasi : Windows 7 Ultimate 64 bit
2.
Netbeans IDE 6.8
3.
Java JDK 1.6.0
4.
Perl ( yang digunakan dalam menjalakan algoritma stemming).
4.1.2. Spesifikasi Hardware Spesifikasi hardware yang digunakan dalam Klasifikasi Dokumen Bahasa Jawa Dengan Metode K-Nearest Neighbor (K-NN) adalah sebagai berikut : 1.
Prosesor : Intel(R) Core (TM) i3-3110M CPU @2.40 GHz
2.
Memori RAM : 2 GB
3.
Harddisk : 500 GB 53
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
54
4.2. Implementasi Preprocessing Dokumen 4.2.1. Implementasi Pembacaan Isi Dokumen Pada langkah pembacaan file dokumen ini sistem akan membaca isi dokumen. Dengan parameter method path (merupakan lokasi dimana folder lokasi jawaban disimpan) dan fileName (merupakan nama dokumen). berikut ini merupakan list code openFile 4.2.1. public static String openFile(String path, String fileName) throws FileNotFoundException, IOException { String text = "", teks = ""; FileReader fr = new FileReader(path + "" + fileName); BufferedReader br = new BufferedReader(fr); while ((teks = br.readLine()) != null) { text = text + teks + "\n"; } br.close(); fr.close(); return text; } List Code 4.2.1 openFile
4.2.2. Implementasi Tokenisasi, Menghapus Tanda Baca, Case Folding Pada langkah ini sistem akan menghapus tanda baca (filterTandaBaca), melakukan tokenisasi (tokenisasi), dan case folding (caseFolding) public static String filterTandaBaca(String doc) throws FileNotFoundException, IOException { String cek = ""; String tandaBaca = openFile("src/aplikasi/", "tanda baca.txt"); for (int i = 0; i < tandaBaca.length(); i++) { cek = tandaBaca.substring(i, i + 1); doc = replace(doc, cek, " "); doc = replace(doc, " ", " ");
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
55
doc = replace(doc, " ", " "); doc = replace(doc, " ", " "); } return doc ; } public static String tokenisasi(String doc) { doc = replace(doc, " ", "\n"); return doc; } public static String caseFolding(String doc) { doc = doc.toLowerCase(); return doc; } List Code 4.2.2 Tokenisasi, Menghapus Tanda Baca, Case Folding
4.2.3. Implementasi Stopword Pada tahap ini sistem melakukan proses penghilangan kata yang termasuk stopword (kata yang tidak mempengaruhi proses pemerolehan informasi). Kata yang dihilangkan merupakan kata - kata yang tidak layak dijadikan sebagai kata kunci. Berikut langkah penghilangan kata umum ( stopword) pada list code //proses Stopword public static String stopWord(String doc) throws FileNotFoundException, IOException { String stoplist = openFile("src/aplikasi/", "stoplist.txt"); StringTokenizer stop = new StringTokenizer(stoplist); String[] stopA = new String[stop.countTokens()]; for (int i = 0; i < stopA.length; i++) { stopA[i] = stop.nextToken(); } StringTokenizer token = new StringTokenizer(doc); String[] tokenA = new String[token.countTokens()];
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
56
for (int i = 0; i < tokenA.length; i++) { tokenA[i] = token.nextToken(); } String kataPenting = ""; for (int i = 0; i < tokenA.length; i++) { String t = ""; for (int j = 0; j < stopA.length; j++) { if (tokenA[i].equalsIgnoreCase(stopA[j])) { tokenA[i] = ""; } } } for (int i = 0; i < tokenA.length; i++) { if (tokenA[i].isEmpty()) { //do nothing } else { kataPenting = kataPenting + tokenA[i] + "\n"; } } return kataPenting; } List Code 4.2.3 Stopword 4.2.4. Implementasi Stemming Pada langkah proses stemming ini sistem akan memproses untuk mencari kata dasar berdasarkan algoritma. public static String stemDoc(String doc) throws FileNotFoundException, IOException { String hasil = ""; StringTokenizer docToken = new StringTokenizer(doc); //stemming setiap kata while (docToken.hasMoreTokens()) { hasil = hasil + stem(docToken.nextToken()) + "\n"; } return hasil; }
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
57
public static String stem(String word) { String[] cmd = {"C:/Perl64/bin/perl", "C:/Users/win7/Documents/NetBeansProjects/Aplikasi/src/aplikasi/stemW ord.pl", word}; Process process; String line = ""; try { process = Runtime.getRuntime().exec(cmd); BufferedReader output = new BufferedReader(new InputStreamReader(process.getInputStream())); line = output.readLine(); output.close(); } catch (Exception e) { System.out.println("Exception: " + e.toString()); } return line; } List Code 4.2.4a Stemming #1. make a rule #2. open text file #3. get one word #4. stem #5. compare with the real root word #6. count the true word stem local %suffix_1; local %suffix_2; local %suffix_3; local %suffix_4; local %suffix_5; local %prefix_1; local %prefix_2; local %prefix_3; local %prefix_4; local %prefix_5; local %prefix_6; local %prefix_7; local %prefix_8; local %prefix_9; local %prefix_10;
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
local %infix_1; local %infix_2; local %dict; my $word = $ARGV[0]; my $fileOp; # $fileOp="D:\\test.txt"; # open FILE, "<", $fileOp or die "Can't open"; # my $fileOut="D:\\hasilStem2.txt"; # open FILEOUT, ">",$fileOut or die $!; # # my $fileTest="D:\\testhasil2.txt"; # open FILETESTH, ">",$fileTest or die $!; initial(); # $right=0; # while($line=
){ # @splLine=split(/\s+/,$line); # #print $splLine[0]." ".$splLine[1]."\n";; # $word=lc $splLine[0]; # #my $stemWord=stem($word); my $stemWord=stem(lc $word); print $stemWord; # #print $stemWord."\n";#." ".$splLine[1]."\n"; # if ($stemWord eq lc $splLine[1]) #{ # #print FILEOUT $stemWord." ".$word."\n"; # $right++; #} # else #{ # print FILEOUT " 1 ".$stemWord." 2 ".$splLine[1]." 3 ".$word."\n"; #} #} # print $right; sub initial{ #dictionary
58
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
59
#hash pasangan substitusi #list prefix, suffix, infix $fileOp="C:\\Users\\win7\\Documents\\NetBeansProjects\\Aplikasi \\src\\aplikasi\\kamus.txt"; open FILEDIC, "<", $fileOp or die "Can't open"; while () { chomp; $dict{$_}=$_; } #daftar tingkat dan substitusinya %suffix_1=(ekaken=>"i",okaken=>"u",ekake=>"i",okake=>"u",oni =>"u",eni=>"i",wa=>"", ya=>"", ning=>"",nipun=>"",okna=>"u",ekna=>"i",onana=>"u",enana=>"i" ,onen=>"u",enen=>"i", enan=>"i",on=>"u", onan=>"u", ku=>"",mu=>""); %suffix_2=(kake=>"",kaken=>"",ni=>"",ing=>"",nana=>"", nane=>"",nan=>"", nen=>"",ipun=>"",kna=>""); %suffix_3=(kaken=>"n",kake=>"n",kna=>"n", ana=>"", an=>"", en=>""); %suffix_4=(ake=>"", aken=>"",en=>"i", na=>"",ne=>""); %suffix_5=(ke=>"",ken=>"", n=>"",a=>"",i=>""); %suffix_6=(e=>""); # %suffix_1=(ekake=>"i",okake=>"u",oni=>"u",eni=>"i",wa=>"", ya=>"",ning=>"",okna=>"u",onana=>"u",onane=>"u", # enan=>"i",ean=>"i",on=>"u", onan=>"u", onen=>"u",ku=>"",mu=>"",nipun=>""); # %suffix_2=(kake=>"",ni=>"",ing=>"",ana=>"", nan=>"", nen=>"",ipun=>"", nane=>"", nana=>""); # %suffix_3=(kake=>"n",i=>"", en=>"i", an=>"", ane=>""); # %suffix_4=(ake=>"", en=>"", na=>"",ne=>""); # %suffix_5=(e=>"", n=>"",a=>""); # %prefix_1=(m=>"",nge=>"a",ny=>"s",di=>"",dak=>"",tak=>"",kok=>"",to k=>"",ka=>"", # ke=>"",ku=>"",ang=>"", sa=>"", se=>"", pa=>"", peng=>"", pang=>, ing=>"",u=>""); # %prefix_2=(m=>"p",ng=>"",ny=>"c", ke=>"i",pe=>"",an=>"", pen=>"t", pan=>"t"); # %prefix_3=(m=>"w",ng=>"k", k=>"", pe=>"", pa=>""); # %prefix_4=(n=>"", a=>"", p=>""); # %prefix_5=(n=>"t");
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
60
%prefix_1=(dipun=>"",peng=>"",peny=>"",pem=>"",pam=>"",pan y=>"",pra=>"",kuma=>"",kapi=>"", bok=>"",mbok=>"",dak=>"",tak=>"",kok=>"",tok=>"",ing=>"",an g=>"",any=>"", am=>"",sak=>"", se=>"",mang=>"",meng=>"",nge=>"",nya=>"",pi=>"",ge=>"",ke=>"",u=> "", po=>"u",ke=>"u"); %prefix_2=(mer=>"",mi=>"",sa=>"",ku=>"",an=>"",ka=>"",ny=>" s",ng=>"k",di=>"",peng=>"k",pang=>"k", pam=>"p",ke=>"i",mang=>"k",meng=>"k"); %prefix_3=(a=>"",k=>"",pam=>"w",pan=>"t", pen=>"t",mang=>"w",meng=>"w", ny=>"c",ng=>""); %prefix_4=(n=>"t", pan=>"s", pen=>"s",man=>"s",men=>"s"); %prefix_5=(pan=>"",pen=>"",man=>"t",men=>"t",n=>""); %prefix_6=(pa=>"",pe=>"",man=>"",men=>""); %prefix_7=(p=>"",ma=>"",me=>""); %prefix_8=(m=>"w"); %prefix_9=(m=>"p"); %prefix_10=(m=>""); %infix_1=(gum=>"b",gem=>"b",kum=>"p"); %infix_2=(kum=>"w"); } sub hilangPref{ my $word = @_[0]; my $w=$word; if ($w =~ /^(dipun|peng|peny|pem|pam|pany|pra|kuma|kapi|bok|mbok|dak|tak|kok|tok| ing|ang|any|am|sak|se|mang|meng|nge|nya|pi|ge|ke|u|po|ke)/) { $stem=$prefix_1{$1}.$'; print FILETESTH $stem." p1 ".$w."\n"; if (exists $dict{$stem}) { return $stem;} } if($w=~ /^(mer|mi|sa|ku|an|ka|ny|ng|di|peng|pang|pam|ke|mang|meng)/) { $stem=$prefix_2{$1}.$'; print FILETESTH $stem." p2 ".$w."\n"; if (exists $dict{$stem}) { return $stem;} } if($w=~ /^(a|k|pam|pan|pen|mang|meng|ny|ng)/)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
{
$stem=$prefix_3{$1}.$'; print FILETESTH $stem." p3 ".$w."\n"; if (exists $dict{$stem}) { return $stem;}
} if($w=~ /^(n|pan|pen|man|men)/) { $stem=$prefix_4{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} } if($w=~ /^(pan|pen|man|men|n)/) { $stem=$prefix_5{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} } if($w=~ /^(pa|pe|man|men)/) { $stem=$prefix_6{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} } if($w=~ /^(p|ma|me)/) { $stem=$prefix_7{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} } if($w=~ /^(m)/) { $stem=$prefix_8{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} $stem=$prefix_9{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} $stem=$prefix_10{$1}.$'; print FILETESTH $stem." if (exists $dict{$stem}) { return $stem;} } return $w;
p4 ".$w."\n";
p5 ".$w."\n";
p6 ".$w."\n";
p7 ".$w."\n";
p8 ".$w."\n";
p9 ".$w."\n";
p10 ".$w."\n";
61
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
62
} sub hilangSuf{ my $word = @_[0]; my $w=$word; if ($w =~ /(ekaken|okaken|ekake|okake|oni|eni|wa|ya|ning|nipun|okna|ekna|onana|ena na|onen|enen|enan|on|onan|ku|mu)$/) { $stem=$`.$suffix_1{$1}; print FILETESTH $stem." 1 ".$w."\n"; } #hilang akhiran 2 elsif ($w =~ /(kake|kaken|ni|ing|nana|nane|nan|nen|ipun|kna)$/) { $stem=$`.$suffix_2{$1}; print FILETESTH $stem." 2 ".$w."\n"; } #hilang akhiran 3 elsif ($w =~ /(kaken|kake|kna|ana|an|en)$/) { $stem=$`.$suffix_3{$1}; print FILETESTH $stem." 3 ".$w."\n"; } #hilang akhiran 4 elsif ($w =~ /(ake|aken|en|na|ne)$/) { $stem=$`.$suffix_4{$1}; print FILETESTH $stem." 4 ".$w."\n"; } #hilang akhiran 5 elsif ($w =~ /(ke|ken|n|a|i)$/) { $stem=$`.$suffix_5{$1}; print FILETESTH $stem." 5 ".$w."\n"; } #hilang akhiran 6 elsif ($w =~ /(e)$/) { $stem=$`.$suffix_6{$1}; print FILETESTH $stem." 5 ".$w."\n"; } if (exists $dict{$stem}) { return $stem; } else { #hilang prefix my $stemPref=hilangPref($stem); if (exists $dict{$stemPref}){ return $stemPref;} }
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
63
} sub stem{ my $word = @_[0]; #jika panjang kata < 3 keluar if (length($word)<3){return $word;} #print $word."\n"; #loop # hilangkan akhiran tingkat 1 , cek kamus, jika ada break # hilangkan awalan tingkat 1, cek kamus, jika ada break # kembalikan akhiran tingkat 1, cek kamus, jika ada break # my $w=$word; if (exists $dict{$w}){ return $w;} #hilang infix if (index($w,"in") == 1 ||index($w,"um") == 1||index($w,"em") == 1||index($w,"el") == 1||index($w,"er") == 1) { $_=$w; s/(in|um|em|el|er)//; print FILETESTH $_." i1 ".$w."\n"; if (exists $dict{$_}){ return $_;} elsif($w=~ /^(gum|kum|gem)/) { $stem=$infix_1{$1}.$'; print FILETESTH $stem." i2 ".$w."\n"; if (exists $dict{$stem}) { return $stem;} } else { my $stemPref=hilangPref($_); if (exists $dict{$stemPref}){ return $stemPref;} #hilang suffix my $hs=hilangSuf($_); if (exists $dict{$hs}){return $hs;} } # if ($_ =~ /(an|ne)$/) #{ # $stem=$`; # if (exists $dict{$stem}){ return $stem;} #} }
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
64
#kata reduplikasi if ($w =~ m/[-]/) { $_=$w; split/-/; if (exists $dict{$'}){ return $';} else { #hilang suffix #if (exists $dict{hilangSuf($')}){return $';} $w=$'; } } #hilang awalan saja my $stemPref=hilangPref($w); if (exists $dict{$stemPref}){ return $stemPref;} #hilang suffix my $hs=hilangSuf($w); if (exists $dict{$hs}){return $hs;} #hilang reduplikasi tanpa if (index($w,"e") == 1 ||index($w,substr($w,0,1),2)==2) { $dua=substr($w,0,2); $_=$w; s/$dua//; if (exists $dict{$_}){ return $_;} #else {$w=$_;} } return $w; } List Code 4.2.4b Stemming 4.2.5. Implementasi Save Dokumen Hasil Preprocessing public static void save(String doc, String filePath, String fileName) throws IOException { FileWriter fw = new FileWriter(filePath + "" + fileName); fw.write(doc); fw.flush(); fw.close(); } List Code 4.2.5 Preprocessing
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
65
4.3. Implementasi Klasifikasi Dokumen Pada Method testTrain ini digunakan untuk mengimplementasikan mulai dari menghitung tf (term frequency), w(bobot dokumen), perhitungan inner product, sampai pada perhitungan cosine similarity dan penentuan klasifikasi dokumen berdasarkan k yang diinputkan oleh pengguna. public void testTrain(String path, String test) throws IOException { namaDok = ProsesData.listFile(path); System.out.println("MEMULAI TRAINING FILE\n\nFile training :"); res = res + "MEMULAI TRAINING FILE\n\nFile training :\n"; String fileTest; for (int i = 0; i < namaDok.length; i++) { if (namaDok[i].equalsIgnoreCase(test)) { tes = i; daftarKata = daftarKata + ProsesData.openFile(path + "/", namaDok[i]); } else { System.out.println("-> " + namaDok[i]); res = res + "-> " + namaDok[i] + "\n"; daftarKata = daftarKata + ProsesData.openFile(path + "/", namaDok[i]); } } System.out.println("Dokumen Testing : "); System.out.println("-> " + test); res = res + "Dokumen Testing : \n"; res = res + "-> " + test + "\n";
daftarKata = ProsesData.sorting(daftarKata); daftarKata = ProsesData.hapusDuplikasiKata(daftarKata); term = ProsesData.listTerm(daftarKata); System.out.print("\n########################\n"); for (int i = 0; i < term.length; i++) { System.out.println(term[i]); } termFreq = new int[namaDok.length][term.length]; W = new double[namaDok.length][term.length];
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
WD = new double[namaDok.length][term.length]; WW = new double[namaDok.length][term.length]; JWD = new double[namaDok.length]; PV = new double[namaDok.length]; InvertedIndex xdf = new InvertedIndex(); System.out.println("\nMenghitung jumlah file per kategori"); res = res + "\nMenghitung jumlah file per kategori\n"; for (int i = 0; i < namaDok.length; i++) { if (namaDok[i].contains("ekonomi")) { ekonomi++; } else if (namaDok[i].contains("politik")) { politik++; } else if (namaDok[i].contains("cerita")) { cerita++; } else if (namaDok[i].contains("pendidikan")) { pendidikan++; } else if (namaDok[i].contains("kesehatan")) { kesehatan++; } } System.out.println("Ekonomi : " + ekonomi); res = res + "ekonomi : " + ekonomi + "\n"; System.out.println("Politik : " + politik); res = res + "Politik : " + politik + "\n"; System.out.println("Cerita : " + cerita); res = res + "Cerita : " + cerita + "\n"; System.out.println("Pendidikan : " + pendidikan); res = res + "Pendidikan : " + pendidikan + "\n"; System.out.println("Kesehatan : " + kesehatan); res = res + "Kesehatan : " + kesehatan + "\n"; System.out.print("\nMenghitung kata pada tiap dokumen\nDokumen\t "); res = res + "\nMenghitung kata pada tiap dokumen\nDokumen\t"; for (int i = 0; i < term.length; i++) { System.out.print("\t" + term[i]); res = res + "\t" + term[i]; } //CARI TERM FREQ TIAP DOK for (int i = 0; i < namaDok.length; i++) { System.out.print("\n" + namaDok[i]); res = res + "\n" + namaDok[i] + "\t"; InvertedIndex a = new InvertedIndex();
66
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
67
String tempDok = ProsesData.openFile(path + "/", namaDok[i]); StringTokenizer tok = new StringTokenizer(tempDok); String temp = ""; while (tok.hasMoreTokens()) { temp = tok.nextToken(); a.add(temp, namaDok[i]); xdf.add(temp, namaDok[i]); } for (int j = 0; j < term.length; j++) { termFreq[i][j] = a.cariKata(term[j]); System.out.print("\t" + termFreq[i][j]); res = res + "\t" + termFreq[i][j]; } } //CARI DF System.out.println("\nMenghitung DF"); res = res + "\n\nMenghitung DF :"; System.out.print("DF : "); res = res + "\nDF : "; df = new int[term.length]; for (int i = 0; i < term.length; i++) { df[i] = xdf.cariDF(term[i]); System.out.print("\t" + df[i]); res = res + "\t" + df[i]; } //CARI W System.out.println("\n\nMenghitung W"); res = res + "\n\nMenghitung W\n"; // System.out.print("W : "); // res = res + "\nW : "; for (int i = 0; i < namaDok.length; i++) { for (int j = 0; j < term.length; j++) { // W[i][j] = (termFreq[i][j] * (Math.log10(namaDok.length / df[j]))); W[i][j] = termFreq[i][j] * (Math.log10((double) namaDok.length / (double) df[j])); // System.out.print("termfreq" +termFreq[i][j]+"n" + namaDok.length +"df " +df[j]+">"); System.out.print("\t\t" + W[i][j]); res = res + "\t\t" + W[i][j]; } System.out.print("\n");
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
res = res + "\n"; }
// //
//HITUNG WD System.out.println("\nMenghitung WD"); res = res + "\n\nMenghitung WD"; System.out.print("WD : "); res = res + "\nWD : "; for (int i = 0; i < namaDok.length; i++) { if (i != tes) { for (int j = 0; j < term.length; j++) { WD[i][j] = W[i][j] * W[tes][j]; System.out.print("\t\t" + WD[i][j]); res = res + "\t\t" + WD[i][j]; } System.out.println(""); res = res + "\n"; } else { for (int j = 0; j < term.length; j++) { WD[i][j] = 0; } } } //HITUNG W*W > PV System.out.println("\nMenghitung W*W"); res = res + "\n\nMenghitung W*W"; for (int i = 0; i < namaDok.length; i++) { for (int j = 0; j < term.length; j++) { WW[i][j] = W[i][j] * W[i][j]; System.out.print("\t\t" + WW[i][j]); res = res + "\t\t" + WW[i][j]; } System.out.println(""); res = res + "\n"; }
//JUMLAH WD System.out.println("\nMenghitung Jumlah WD"); res = res + "\n\nMenghitung Jumlah WD\n"; System.out.print("Jumlah WD : ");
68
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
//
69
res = res + "\nJumlah WD : "; for (int i = 0; i < namaDok.length; i++) { double temp = 0; for (int j = 0; j < term.length; j++) { temp = (temp + WD[i][j]); System.out.println(""+temp); } JWD[i] = temp; System.out.print(" " + JWD[i]); res = res + " " + JWD[i]; } //JUMLAH PV System.out.println("\n\nMenghitung PV"); res = res + "\n\nMenghitung PV"; System.out.print("PV : "); res = res + "\nPV : "; for (int i = 0; i < namaDok.length; i++) { double temp = 0; for (int j = 0; j < term.length; j++) { temp = temp + WW[i][j]; } PV[i] = temp; System.out.print(" " + PV[i]); res = res + " " + PV[i]; }
//HITUNG COS System.out.print("\n\nHitung Cosine Similarity\n"); res = res + "\n\nHitung Cosine Similarity\n"; COS = new double[namaDok.length]; for (int i = 0; i < namaDok.length; i++) { if (i != tes) { COS[i] = JWD[i] / (Math.sqrt((double) PV[tes]) * Math.sqrt((double) PV[i])); // System.out.print("pvtest" +Math.sqrt(PV[tes]) + " pv ke i" +Math.sqrt(PV[i]) + "....." ); // System.out.println("AAAAAAAAAAA" +JWD[i]);hj System.out.print(" " + COS[i]); res = res + " " + COS[i]; } } //SORTING COS System.out.print("\n\nMengurutkan COS : "); res = res + "\n\nMengurutkan COS : ";
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
70
double sort = 0; String file; for (int i = 0; i < namaDok.length; i++) { for (int j = 0; j < namaDok.length; j++) { if (COS[i] > COS[j]) { sort = COS[i]; file = namaDok[i]; COS[i] = COS[j]; namaDok[i] = namaDok[j]; COS[j] = sort; namaDok[j] = file; } } } //DISPLAY ALL COS for (int i = 0; i < COS.length; i++) { System.out.print("OK!\n\nNama dokumen : " + namaDok[i] + ", COS : " + COS[i]); res = res + "OK!\n\nNama dokumen : " + namaDok[i] + ", COS : " + COS[i]; } //DISPLAY COS BERDASARKAN INPUT K System.out.print("\n\nCOS berdasarkan K = " + Home.jTextField1.getText() + " : "); String result = ""; res = res + "\n\nCOS berdasarkan K = " + Home.jTextField1.getText(); for (int i = 0; i < Integer.parseInt(Home.jTextField1.getText()); i++) { System.out.print("\nNama dokumen : " + namaDok[i] + ", COS : " + COS[i]); res = res + "\nNama dokumen : " + namaDok[i] + ", COS : " + COS[i]; } double ek = 0, po = 0, ce = 0, pe = 0, ke = 0; for (int i = 0; i < Integer.parseInt(Home.jTextField1.getText()); i++) { if (namaDok[i].contains("ekonomi")) { ek = ek + 1; } else if (namaDok[i].contains("politik")) { po = po + 1; } else if (namaDok[i].contains("cerita")) {
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
71
ce = ce + 1; } else if (namaDok[i].contains("pendidikan")) { pe = pe + 1; } else if (namaDok[i].contains("kesehatan")) { ke = ke +1; } } double ekC = 0, poC = 0, ceC = 0, peC = 0, keC = 0; for (int i = 0; i < Integer.parseInt(Home.jTextField1.getText()); i++) { if (namaDok[i].contains("ekonomi")) { ek = ek + COS[i]; } else if (namaDok[i].contains("politik")) { po = po + COS[i]; } else if (namaDok[i].contains("cerita")) { ce = ce + COS[i]; } else if (namaDok[i].contains("pendidikan")) { pe = pe + COS[i]; } else if (namaDok[i].contains("kesehatan")) { ke = ke + COS[i]; } } double temp = 0; for (int i = 0; i < Integer.parseInt(Home.jTextField1.getText()); i++) { if (ek > temp) { temp = ek; result = "ekonomi"; } if (po > temp) { temp = po; result = "politik"; } if (ce > temp) { temp = ce; result = "cerita"; } if (pe > temp) { temp = pe; result = "pendidikan"; } if (ke > temp) { temp = ke;
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
result = "kesehatan"; } else{ if (ekC > temp) { temp = ekC; result = "ekonomi"; } if (poC > temp) { temp = poC; result = "politik"; } if (ceC > temp) { temp = ceC; result = "cerita"; } if (peC > temp) { temp = peC; result = "pendidikan"; } if (keC > temp) { temp = keC; result = "kesehatan"; } } } System.out.println("\n\nKlasifikasi : " +result);
System.out.println("\n+++ekonomi+++++++" +ek); System.out.println("\n++polittik++++++++" +po); System.out.println("\n++cerita++++++++" +ce); System.out.println("\n++++pendidikan++++++" +pe); System.out.println("\n+++kesehatan+++++++" +ke);
Home.jTable1.setValueAt(result, 0, 1); System.out.println("\n\nSelesai"); res = res + "\n\nSelesai\n\n"; Home.jTextArea1.setText(res); } List Code 4.2.5 Aplikasi K-NN
72
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
73
4.4. Implementasi Antar Muka 4.4.1. Halaman Preprocessing Dokumen Halaman ini preprocessing dokumen ini digunakan untuk memproses dokumen yang telah dipilih yang akan digunakan dalam proses klasifikasi.
Gambar 4.1 Halaman Preprocessing Dokumen
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
4.4.2. Halaman Klasifikasi Dokumen Halaman ini digunakan untuk mengklasifikasikan dokumen. Setelah klasifikasi halaman ini akan menampilkan hasil perhitungan hasil klasifikasi dokumen.
Gambar 4.2 Halaman Klasifikasi Dokumen
74
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB V HASIL DAN PEMBAHASAN
Pada bab ini akan dipaparkan mengenai hasil dan analisa dari hasil percobaan yang telah dilakukan. 5.1. Hasil Percobaan 5.1.1. Cross Validation Pada pengujian hasil klasifikasi dilakukan dengan cara membagi data dengan manual kemudian diuji dengan melakukan cross validation. Yaitu dengan menggunakan 3 fold dan 5 fold. Pada pengujian ini menggunakan 40 dokumen yaitu masing-masing 10 dokumen mewakili 1 kelas. Tabel 5.1 Nama Dokumen
pendidikan (1) pendidikan (2) pendidikan (3) pendidikan (4) pendidikan (5) pendidikan (6) pendidikan (7) pendidikan (8) pendidikan (9) pendidikan (10)
Nama Dokumen ekonomi (1) politik (1) ekonomi (2) politik (2) ekonomi (3) politik (3) ekonomi (4) politik (4) ekonomi (5) politik (5) ekonomi (6) politik (6) ekonomi (7) politik (7) ekonomi (8) politik (8) ekonomi (9) politik (9) ekonomi (10) politik (10)
kesehatan (1) kesehatan (2) kesehatan (3) kesehatan (4) kesehatan (5) kesehatan (6) kesehatan (7) kesehatan (8) kesehatan (9) kesehatan (10)
Pada tabel hasil, tabel yang diarsir adalah dokumen yang hasil klasifikasi manualnya berbeda dengan hasil klasifikasi sistem.
75
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
76
Berikut skenario pengujian yang dilakukan : 5.1.1.1. 3 Fold Pada pengujian dengan menggunakan 3 fold maka data dibagi menjadi 3 bagian yaitu Tabel 5.2 Pembagian Dokumen 3 Fold Fold 1 pendidikan (1) pendidikan (2) pendidikan (3) pendidikan (10) ekonomi (1) ekonomi (2) ekonomi (3) politik (1) politik (2) politik (3) kesehatan (1) kesehatan (2) kesehatan (3)
Fold 2 pendidikan (4) pendidikan (5) pendidikan (6) ekonomi (4) ekonomi (5) ekonomi (6) ekonomi (10) politik (4) politik (5) politik (6) kesehatan (4) kesehatan (5) kesehatan (6)
Pembagian data untuk setiap tahap : a.
Tahap I Fold1 sebagai testing Fold2 sebagai training Fold3 sebagai training
b.
Tahap II Fold 2 sebagai testing Fold 1 sebagai training
Fold 3 pendidikan (7) pendidikan (8) pendidikan (9) ekonomi (7) ekonomi (8) ekonomi (9) politik (7) politik (8) politik (9) politik (10) kesehatan (7) kesehatan (8) kesehatan (9) kesehatan (10)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
77
Fold 3 sebagai training c.
Tahap III Fold 3 sebagai testing Fold 1 sebagai training Fold 2 sebagai training
a.
3 Fold k=4 Hasil dari fold 3 dengan k=4 Tahap I pendidika n (1) pendidika n
pendidika n (2) pendidika n
pendidika n (3) Pendidik an
pendidika ekonomi ekonomi ekonomi kesehata politik (1) politik (2) politik (3) n (10) (1) (2) (3) n (1) pendidika kesehata ekonomi ekonomi ekonomi politik politik politik n n
kesehata n (2) kesehata n
kesehata n (3) kesehata n
pendidika n (6) Pendidik an
ekonomi ekonomi ekonomi ekonomi kesehata politik (4) politik (5) politik (6) (4) (5) (6) (10) n (4) pendidika kesehata ekonomi ekonomi ekonomi politik politik politik n n
kesehata n (5) kesehata n
kesehata n (6) kesehata n
Tahap II pendidika n (4) pendidika n
pendidika n (5) pendidika n
Tahap III pendidika n (7) pendidika n
pendidika n (8) pendidika n
pendidika n (9) Pendidik an
ekonomi ekonomi ekonomi politik politik (7) politik (8) politik (9) (7) (8) (9) (10) pendidika ekonomi politik politik politik politik politik n
kesehata n (7) kesehata n
kesehata n (8) pendidika n
kesehata n (9) kesehata n
kesehata n (10) kesehata n
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Akurasi pada sistem Precission = jumlah dokumen benar/jumlah seluruh dokumen a.
Tahap I Jumlah dokumen 13 Jumlah dokumen relevan 13 Jumlah dokumen tidak relevan 0 Jadi akurasi k-NN pada fold 3 dengan k=4 Akurasi = (13/13) *100% = 100 %
b.
Tahap II Jumlah dokumen 13 Jumlah dokumen relevan 13 Jumlah dokumen tidak relevan 0 Jadi akurasi k-NN pada fold 3 dengan k=4 Akurasi = (13/13) *100% = 100 %
c.
Tahap III Jumlah dokumen 14 Jumlah dokumen relevan 12 Jumlah dokumen tidak relevan 2 Jadi akurasi k-NN pada fold 3 dengan k=4 Akurasi = (12/14) *100% = 85 %
Rata-rata akurasi untuk 3 fold dengan k=4 (100%+100%+85%)/3= 95%
78
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
b.
79
3 Fold k=8 Hasil dari fold 3 dengan k=8 Tahap I pendidika n (1) pendidika n
pendidika n (2) pendidika n
pendidika n (3) Pendidik an
pendidika ekonomi ekonomi ekonomi kesehata kesehata kesehata politik (1) politik (2) politik (3) n (10) (1) (2) (3) n (1) n (2) n (3) pendidika kesehata kesehata ekonomi ekonomi ekonomi politik politik politik politik n n n
pendidika n (6) Pendidik an
ekonomi ekonomi ekonomi (4) (5) (6) pendidika ekonomi ekonomi n
Tahap II pendidika n (4) pendidika n
pendidika n (5) pendidika n
ekonomi kesehata politik (4) politik (5) politik (6) (10) n (4) pendidika kesehata politik politik politik n n
kesehata n (5) kesehata n
kesehata n (6) kesehata n
Tahap III pendidika n (7) pendidika n
pendidika n (8) pendidika n
pendidika n (9) Pendidik an
ekonomi ekonomi ekonomi politik politik (7) politik (8) politik (9) (7) (8) (9) (10) pendidika ekonomi ekonomi politik politik politik politik n
Perhitungan akurasi : a.
Tahap I Jumlah dokumen 13 Jumlah dokumen relevan 12 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 3 dengan k=8 Akurasi = (11/13) *100% =92 %
b.
Tahap II Jumlah dokumen 13 Jumlah dokumen relevan 12 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 3 dengan k=8
kesehata kesehata kesehata n (7) n (8) n (9) kesehata kesehata ekonomi n n
kesehata n (10) kesehata n
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
80
Akurasi = (12/13) *100% = 92 % c.
Tahap III Jumlah dokumen 14 Jumlah dokumen relevan 13 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 3 dengan k=4 Akurasi = (13/14) *100% = 92 %
Rata-rata akurasi untuk 3 fold dengan k=4 (92%+92%+92%)/3= 92 %
5.1.1.2. 5 Fold Pada pengujian dengan menggunakan 5 fold maka data dibagi menjadi 5 bagian yaitu Tabel 5.3 Pembagian Dokumen 5 Fold fold 1 pendidikan (1) pendidikan (2) ekonomi (1) ekonomi (2) politik (1) politik (2) kesehatan (1) kesehatan (2)
fold 2 pendidikan (3) pendidikan (4) ekonomi (3) ekonomi (4) politik (3) politik (4) kesehatan (3) kesehatan (4)
fold 3 pendidikan (5) pendidikan (6) ekonomi (5) ekonomi (6) politik (5) politik (6) kesehatan (5) kesehatan (6)
fold 4 pendidikan (7) pendidikan (8) ekonomi (7) ekonomi (8) politik (7) politik (8) kesehatan (7) kesehatan (8)
fold 5 pendidikan (9) pendidikan (10) ekonomi (9) ekonomi (10) politik (9) politik (10) kesehatan (9) kesehatan (10)
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Pembagian data untuk setiap tahap : a.
Tahap I Fold 1 sebagai testing Fold 2 sebagai training Fold 3 sebagai training Fold 4 sebagai training Fold 5 sebagai training
b.
Tahap II Fold 2 sebagai testing Fold 1 sebagai training Fold 3 sebagai training Fold 4 sebagai training Fold 5 sebagai training
c.
Tahap III Fold 3 sebagai testing Fold 1 sebagai training Fold 2 sebagai training Fold 4 sebagai training Fold 5 sebagai training
d.
Tahap IV Fold 4 sebagai testing Fold 1 sebagai training Fold 2 sebagai training
81
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
82
Fold 3 sebagai training Fold 5 sebagai training e.
Tahap V Fold 5 sebagai testing Fold 1 sebagai training Fold 2 sebagai training Fold 3 sebagai training Fold 4 sebagai training
a.
5 Fold k=4 Hasil dari fold 5 dengan k=4 Tahap I pendidika pendidika ekonomi ekonomi kesehatan kesehatan Kelas politik (1) politik (2) Manual n (1) n (2) (1) (2) (1) (2) Hasil pendidika pendidika pendidika Klasifikas ekonomi ekonomi politik politik kesehatan n n n i Sistem
Tahap II pendidika pendidika ekonomi ekonomi kesehatan kesehatan Kelas politik (3) politik (4) Manual n (3) n (4) (3) (4) (3) (4) Hasil pendidika pendidika pendidika Klasifikasi ekonomi ekonomi politik politik kesehatan n n n Sistem
Tahap III pendidika pendidika ekonomi ekonomi kesehatan kesehatan Kelas politik (5) politik (6) Manual n (5) n (6) (5) (6) (5) (6) Hasil pendidika pendidika Klasifikasi ekonomi ekonomi politik politik kesehatan kesehatan n n Sistem
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
83
Tahap IV pendidika pendidika ekonomi ekonomi kesehatan kesehatan Kelas politik (7) politik (8) Manual n (7) n (8) (7) (8) (7) (8) Hasil pendidika pendidika pendidika Klasifikasi ekonomi ekonomi politik politik kesehatan n n n Sistem
Tahap V pendidika pendidika pendidika ekonomi politik Kelas politik (9) Manual n (9) n (10) n (9) (10) (10) Hasil pendidika pendidika pendidika Klasifikasi ekonomi politik politik n n n Sistem
Perhitungan akurasi a.
Tahap I Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 5 dengan k=4 Akurasi = (7/8) *100% =87 %
b.
Tahap II Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 5 dengan k=4 Akurasi = (7/8) *100% =87 %
kesehatan kesehatan (9) (10) kesehatan kesehatan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
c.
Tahap III Jumlah dokumen 8 Jumlah dokumen relevan 8 Jumlah dokumen tidak relevan 0 Jadi akurasi k-NN pada fold 5 dengan k=4 Akurasi = (8/8) *100% =100 %
d.
Tahap IV Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 5 dengan k=4 Akurasi = (7/8) *100% =87 %
e.
Tahap V Jumlah dokumen 8 Jumlah dokumen relevan 8 Jumlah dokumen tidak relevan 0 Jadi akurasi k-NN pada fold 5 dengan k=4 Akurasi = (8/8) *100% =100 % Rata-rata akurasi untuk 3 fold dengan k=4 (87%+87%+100%+87%+100%)/5= 92 %
84
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
b.
85
5 Fold k=8 Hasil dari fold 5 dengan k=8 Tahap I Kelas Manual Hasil Klasifikasi Sistem
pendidika pendidika ekonomi ekonomi kesehatan kesehatan politik (1) politik (2) n (1) n (2) (1) (2) (1) (2) pendidika pendidika ekonomi ekonomi n n
politik
politik
kesehatan kesehatan
Tahap II pendidika pendidika ekonomi ekonomi kesehata kesehata Kelas politik (3) politik (4) Manual n (3) n (4) (3) (4) n (3) n (4) Hasil pendidika pendidika pendidika Klasifikasi ekonomi ekonomi politik politik kesehatan n n n Sistem
Tahap III Kelas Manual Hasil Klasifikasi Sistem
pendidika pendidika ekonomi ekonomi kesehatan kesehatan politik (5) politik (6) n (5) n (6) (5) (6) (5) (6) pendidika pendidika ekonomi ekonomi n n
politik
politik
kesehatan kesehatan
Tahap IV Kelas Manual Hasil Klasifikasi Sistem
pendidika pendidika ekonomi ekonomi kesehatan kesehatan politik (7) politik (8) n (7) n (8) (7) (8) (7) (8) pendidika pendidika ekonomi ekonomi n n
politik
politik
kesehatan ekonomi
pendidika pendidika ekonomi ekonomi politik (9) n (9) n (10) (9) (10)
politik (10)
kesehatan kesehatan (9) (10)
pendidika pendidika ekonomi ekonomi n n
politik
kesehatan kesehatan
Tahap V Kelas Manual Hasil Klasifikasi Sistem
politik
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Perhitungan akurasi : a.
Tahap I Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 5 dengan k=8 Akurasi = (7/8) *100% =87 %
b.
Tahap II Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 5 dengan k=8 Akurasi = (7/8) *100% =87 %
c.
Tahap III Jumlah dokumen 8 Jumlah dokumen relevan 8 Jumlah dokumen tidak relevan 0 Jadi akurasi k-NN pada fold 5 dengan k=8 Akurasi = (8/8) *100% =100 %
d.
Tahap IV Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1
86
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
87
Jadi akurasi k-NN pada fold 5 dengan k=8 Akurasi = (7/8) *100% =87 % e.
Tahap V Jumlah dokumen 8 Jumlah dokumen relevan 7 Jumlah dokumen tidak relevan 1 Jadi akurasi k-NN pada fold 5 dengan k=8 Akurasi = (7/8) *100% =87 %
Rata-rata akurasi untuk 3 fold dengan k=4 (100%+87%+100%+87%+100%)/5= 94 %
Hasil klasifikasi dari rata-rata tiap fold yaitu : Fold k Akurasi
3 4 95%
3 8 92%
5 4 92%
5 8 94%
5.2. Analisa Algoritma k-NN mempunyai nilai akurasi tertinggi 95% dengan kesalahan klasifikasi sebesar 5%. Kesalahan klasifikasi sebesar 5% dapat menjadi masalah yang lebih besar menyesuaikan dengan jumlah data yang diklasifikasikannya. Kesalahan sistem dalam melakukan klasifikasi disebabkan karena yang digunakan sebagai pembanding dalam menentukan kategori hasil klasifikasi adalah berapa mirip dokumen tersebut. Kemiripan dokumen
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
88
dilihat dari frekuensi kemunculan token-token yang terdapat dalam dokumen, bukan konteks dari token tersebut sehingga token-token yang sama namun dalam konteks berbeda dapat memberikan nilai kemiripan yang tinggi yang menyebabkan kesalahan dalam menentukan kategori dari sebuah dokumen. Contoh pada dokumen kesehatan (8) dan pendidikan (2). Dari hasil klasifikasi kesehatan (8) menjadi satu kategori dengan pendidikan (2) dalam kategori pendidikan. kesehatan (8) Akseptor DIY seneng Pikonsara. PANCEN rada nganeh-anehi, wektu iki akeh sanak kadang peserta KB (akseptor) ing padesan tlatah Yogyakarta padha seneng migunakake "pikonsara", piranti kontrasepsi sajroning rahim utawa ing basa mancane diarani Intra Uterine Contraseptive Device (IUD).
pendidikan (2) Dra. Warih Jatirahayu Guru Berprestasi Sleman 2002 Dadi Guru Basa Jawa Kebak Tantangan lan Kudu Kreatif Guru Basa Jawa ing jaman saiki gunggunge ora akeh, sebab jurusan basa Jawa iki dianggep angel lan ora nguntungake. Kejaba iku dianggep ciut lapangan pakaryane, angel kanggo golek pangupa jiwa.
Nilai kedekatan pada dokumen pendidikan (2) dan kesehatan (8) sangat dekat karena keduanya memiliki kesamaan pada kata lali dan seneng yang memiliki frekuensi kemunculan token yang tinggi. Pada pendidikan (2) terdapat 2 kata lali dan pada kesehatan kesehatan (8) terdapat 4 kata. Kata seneng 4 kata pada pendidikan (2) dan 5 pada pendidikan (2).
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
89
Penentuan nilai k sangat mempengaruhi hasil klasifikasi pemilihan nilai k<4 atau dari jumlah kategori tidak memiliki hasil relevan. Hal ini disebabkan jika k yang dipilih sangat kecil maka kategori pada dokumen testing hanya bergantung pada beberapa dokumen training yang belum mewakili karakteristik dari kategori.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB VI KESIMPULAN DAN SARAN
Bagian ini memberikan kesimpulan dan saran berdasarkan hasil penelitian yang telah dilakukan.
6.1 Kesimpulan Melalui penelitian yang telah dilakukan dapat disimpulkan bahwa : 1. Algoritma k-Nearest Neighbor mempunyai nilai akurasi tertinggi 95% dengan kesalahan klasifikasi sebesar 5% pada 3 fold dengan k=4. 2. Penentuan nilai k sangat mempengaruhi hasil klasifikasi pemilihan nilai k<4 atau dari jumlah kategori tidak memiliki hasil relevan. Hal ini disebabkan jika k yang dipilih sangat kecil maka kategori pada dokumen testing hanya bergantung pada beberapa dokumen training yang belum mewakili karakteristik dari kategori. 3. Pemilihan dokumen yang akan digunakan sebagai dokumen pelatihan sangat mempengaruhi hasil klasifikasi. 4. Semakin banyak dokumen pelatihan makan semakin bertambah waktu yang digunakan untuk proses klasifikasi.
6.2 Saran 1. Diperlukan struktur data untuk mempercepat proses klasifikasi. Karena semakin banyak dokumen maka semakin lama waktu yang dibutukan.
90
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
DAFTAR PUSTAKA
Belur V, Dasarathy. 1991. “Nearest Neighbor (NN) Norms NN Pattern Classification Techniques”, Mc Graw-Hill Computer Science Series, IEEE Computer Society Press, Las Alamitos, California Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze. 2008. Introduction to Information Retrieval, Cambridge University Press. Grossma, David A., & Ophir Frieder. 2004. Information Retrieval Algorithms And Heuristics, 2nd edition, Springer. Han, J. & Kamber, M. 2006. Second Edition : Data Mining concepts and Techniques. Salton, Gerard. 1983. Introduction to Modern Information Retrieval, McGraw Hill Feldman, Ronen & James Sanger. 2007. The Text Mining Handbook: Advanced Approaches in Analyzing Unstructured Data, Cambridge University Press. Florin, Gorunescu. 2011. Data Mining: Concepts, Models and Techniques, Springer. Yang Lihua , Dai Qi, Guo Yanjun, 2006. “Study on KNN Teks Categorization Algorithm”, Micro Computer Information, No.21, pp.269271. Yong ,Zhou, Li Youwen and Xia Shixiong.2009. “An Improved KNN Text Classification Algorithm Based on Clustering” Journal Of Computers, VOL. 4, NO. 3.
91
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
LAMPIRAN ( Contoh Perhitungan Manual )
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
93
LAMPIRAN I Contoh Isi Dokumen yang Diklasifikasikan
<Mekar Sari No. 05 Tahun XXVI 1 MEI 1982> Vitamin C Kena Kanggo Nanggulangi Kanker SABEN Pil anti kanker mesthi ngandhut vitamin A. Mangkono panemune para dokter ing Inggris. Sabanjure diterangake, manawa organ badane manungsa kang tansah kekurangan vitamin A bakal nampa resiko tikel loro tumrap kanker, katimbang kang kacukupan vitamin A. Malah tikel lima tumrap kanker paru-paru. Dr NICHOLAS WALD saka Rumah Sakit Radcliffe ing Inggris ngajokake bukti mangkene: Rikala Januari 1975 ngadani pacoban marang 16000 priya umur 35-64 taun dijupuk getihe. Getih iku banjur disimpen becik. Limang taun sabanjure, yaiku Januari 1980 , 86 priya saka 16000 kasebut nandhang lara kanker. Dr Nicholas Wald nuli mriksa getih kang disimpen limang taun iku. Tetela getihe panandhang kanker iku kekurangan vitamin A. Mula Dr Nicholas Wald banjur nelakake, manawa vitamin A bisa nylametake serangan kanker kanthi. Alesane: 1. Vitamin A duwe kuwajiban mbangun kulit lan selaput lendir. Kajaba iku uga ngayomi serangan sel kang ganas marang selaput lendir, lambung, usus lan paruparu. 2. Vitamin A bisa nguwatake daya tangkis penyakit ing awak. Tambahan vitamin A bisa ditindakake manawa ana tandha serangan ganas. 3. Vitamin A bisa ngalahake bahan kang bisa njalari kanker. Tumrap kang wis dewasa saben dina butuh 3000 SI (satuan internasional) kurang luwih 0,9 mgr. Kang becik antuk tambahan vitamin A kanthi tumata. Beda karo multi vitamin, ngandhut vitamin A 300 SI kang dibutuhake saben dina.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 94
LAMPIRAN I Proses Klasifikasi Dokumen dengan Manual
Mencari klasifikasi dari dokumen ks1 (kesehatan (1)). Tabel Perhitungan idf Term abad abang abortus abot abri aceh ada adam adaptasi adat adeg adhakan adhedhasar adhem adhep adhi
yusuf yusup yuswa yuswane yuta yutanan zat
tf pd3 pd4 pd5 pd6 pd7 pd8 pd9 pd10 ek3 ek4 ek5 ek6 ek7 ek8 ek9 ek10 pl3 pl4 pl5 pl6 pl7 pl8 pl9 pl10 ks3 ks4 ks5 ks6 ks7 ks8 ks9 ks10 ks1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 3 0 0 2 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 2 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
2 0 0 0 0 0 0
1 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 1 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 2 0 0
0 1 0 0 0 0 0
0 0 0 0 0 2 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 1 1 0 0 0
0 0 0 0 0 1 0
0 0 0 0 2 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 8
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 2
0 0 0 0 0 0 0
0 0 0 0 0 0 1
df
idf
1 1 1 3 1 2 4 1 1 2 1 1 2 2 5 1
1,518514 1,518514 1,518514 1,041393 1,518514 1,217484 0,916454 1,518514 1,518514 1,217484 1,518514 1,518514 1,217484 1,217484 0,819544 1,518514
2 1 1 1 3 2 3
1,217484 1,518514 1,518514 1,518514 1,041393 1,217484 1,041393
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 95 Tabel Perhitungan Bobot (tf-idf) Term abad abang abortus abot abri aceh ada adam adaptasi adat adeg adhakan adhedhasar adhem adhep adhi
yusuf yusup yuswa yuswane yuta yutanan zat
W (tf-idf) pd3 pd4 pd5 pd6 pd7 pd8 pd9 pd10 ek3 ek4 ek5 ek6 ek7 ek8 ek9 ek10 pl3 pl4 pl5 pl6 pl7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,04 0 0 0 0 0 1,04 0 0 0 0 0 0 0 0 0 1,04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3,04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,92 0 0 2,75 0 0 1,83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3,04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3,65 0 0 0 0 0 0 0 0 0 0 0 0,82 0 0 0,82 0 0 0 1,64 0 0 0 0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 2,43 1,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1,04 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 0 0 0 2,08 0 0 0 0 0 2,43 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
pl8 pl9 pl10 ks3 ks4 ks5 ks6 ks7 ks8 ks9 ks10 ks1 0 1,52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,43 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,92 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,52 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0,82 0,82 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1,52 0 0 0 1,52 0 0 0 0 0 2,08 0 0 1,22 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 8,33
0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 2,08
0 0 0 0 0 0 0 0 0 0 0 0 0 1,04
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 96 Tabel Perhitungan Inner Product Term abad abang abortus abot adat ahli ainun ajab ajaib aji aju akademi
yuki yusuf yusup yuswa yuswane yuta yutanan zat SUM
w_dtest*w_dtraining pd3 pd4 pd5 pd6 pd7 pd8 pd9 pd10ek3 ek4 ek5 ek6 ek7 ek8 ek9 ek10pl3 pl4 pl5 pl6 pl7 pl8 pl9 pl10 ks3 ks4 ks5 ks6 ks7 ks8 ks9 ks10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,5 3,3 1,1 0 0 0 0 0 0 0 0,5 0 0 0 0 0 0 0 0 0 0 0 1,1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,3 0 0 0 0 0 0 0,3 0,3 0,3 0,3 0 0 0 0 0 0 0 0,3 0,3 0,3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 11
0 0 0 0 0 0 0 0 24
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 24 7,6
0 0 0 0 0 0 0 0 15
0 0 0 0 0 0 0 0 42
0 0 0 0 0 0 0 0 24
0 0 0 0 0 0 0 0 18
0 0 0 0 0 0 0 0 26
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 8,6 5,4
0 0 0 0 0 0 0 0 10
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 8,3 0,6 4,6
0 0 0 0 0 0 0 0 15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 6,1 5,6
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 6,1
0 0 0 0 0 0 0 0 10
0 0 0 0 0 0 0 0 51
0 0 0 0 0 0 0 0 73
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8,7 77 28
0 0 0 0 0 0 0 0 28
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,2 14 131
0 0 0 0 0 0 0 0 98
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 97 Tabel Hasil Perhitungan Panjang Vektor
abad abang abortus abot adat ahli ainun ajab ajaib aji aju akademi
w*w (panjang vektor) pd3 pd4 pd5 pd6 pd7 pd8 pd9 pd10 ek3 ek4 ek5 ek6 ek7 ek8 ek9 ek10 pl3 pl4 pl5 pl6 pl7 pl8 pl9 pl10 ks3 ks4 ks5 ks6 ks7 ks8 ks9 ks10 ks1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 1,08 0 0 0 0 0 1,08 0 0 0 0 0 0 0 0 0 1,08 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,48 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,48 0 0 0 0 0 0 0 0 0 0 0,55 19,7 2,19 0 0 0 0 0 0 0 0,55 0 0 0 0 0 0 0 0 0 0 0 2,19 0 0 0 0 0 0 0,55 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,48 0 1,48 0 0 0 0 0 0 0 0 0 0 9,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,32 0 0 0 0 0 0 0,32 0,32 0,32 0,32 0 0 0 0 0 0 0 0,32 0,32 0,32 0 0 0 0 0 0 0 0 0,32 0 0 0 9,22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
yusuf yusup yuswa yuswane yuta yutanan zat SUM
0 0 0 5,93 1,48 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2,31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,08 0 0 4,34 0 0 0 0 0 0 0 0 0 0 4,34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5,93 0 0 0 0 0 0 0 1,48 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 69,4 0 0 4,34 0 1,08 2155 3081 1674 614 1085 2127 1345 2597 2293 908 551 509 674 1443 898 656 511 1724 440 967 961 2456 341 819 1728 860 923 1355 1296 375 1583 1609 1710
Term
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Tabel Perhitungan Cosine Similarity ks1 0,079914 0,06104 0,060296 0,058786 0,029468 0,022077 0,018695 0,018642 0,016869 0,016139 0,014364 0,013758 0,013095 0,010993 0,010316 0,010054 0,009464 0,008899 0,008593 0,008589 0,00857 0,008562 0,007978 0,007403 0,007384 0,006712 0,005747 0,005738 0,004953 0,004765 0,004365 0,000611
ks9 ks5 ks4 ks10 ks3 pd8 ks7 ks6 ks8 pd9 pd5 pl5 ek3 pd7 pd4 ek4 ek7 ek5 ek8 pl10 pl4 pd10 pl9 pl8 pd6 ek9 pd3 ek6 pl3 pl6 pl7 ek10
Maka dapat dilihat Jika k=4 maka dokumen ks1 termasuk kategori kesehatan Jika k=8 maka dokumen ks1 termasuk kategori kesehatan
Keterangan : ks = kesehatan, pd = pendidikan, pl = politik, ek = ekonomi.
98