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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
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).”
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
HALAMAN PERSEMBAHAN
Tugas akhir ini saya persembahkan untuk :
Allah Tritunggal, Bunda Maria,
Orangtuaku, saudara- saudaraku,
sahabat – sahabatku
dan orang – orang terSayang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
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 TF-
IDF 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
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 K-
Nearest 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xviii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
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).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 metode k-Nearest Neighbor (k-NN). Metode k-
Nearest Neighbor (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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
BAB V 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
2.2.3. 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 dihapus)
ny => s (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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
<7> p=>"",ma=>"",me=>""
<8> m=>"w"
<9> m=>"p"
<10> m=>""
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
5. Gunakan mayoritas sederhana dari kategori dokumen tetangga sebagai
nilai prediksi dokumen tes.
2.5. Perhitungan Akurasi
Perhitungan akurasi dilakukan dengan menggunakan metode cross-
validation. 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
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
Menghitung TF
IDFKNNstemmingstopword
Tokenisa
si
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 :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
3.1.1 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 k-
Nearest 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 Hak Akses
User - Preprocessing
- Klasifikasi dokumen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
3.2.2 Diagram Use Case
Gambaran use case diagram sistem dapat dilihat pada gambar berikut ini
Klasifikasi
Dokumen
Preprocessing
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
Deskripsi Pengguna melakukan preprocessing
dokumen
Pra kondisi Dokumen yang diklasifikasikan telah
melalui proses preprocessing
Aksi Aktor Reaksi Sistem
1. User berada pada halaman
utama
2. User memilih Menu
Preprosesing
3. Sistem menampilkan halaman
“Preprosesing”
4. User menekan tombol ambil
data dokumen
5. Sistem menampikan halaman
browse
6. User memilih folder yang akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
di- Preprocessing
7. Sistem menampilkan alamat
direktori .
8. User menekan tombol Mulai 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
Deskripsi Pengguna melakukan klasifikasi
dokumen
Pra kondisi Dokumen yang diklasifikasikan telah
melalui proses preprocessing
Aksi Aktor Reaksi Sistem
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 hasil
klasifikasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
3.2.4 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
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.
No. Use Case Deskripsi Use Case
1. Klasifikasi
dokumen
Use case ini menggambarkan proses
klasifikasi dokumen baru. Dokumen
inputan akan ditentukan kategorinya secara
otomatis.
2. Preprocessing
Use case ini menggambarkan proses
preprocessing mulai dari tokenisasi sampai
hasil stemming
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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
USERSistem Klasifikasi
Dokumen Bahasa Jawa
Klasifikasi dokumen
info hasil klasifikasi
Gambar 3.3 Diagram Konteks
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
Menampilkan halaman
PreprosesingKlik Ambil Dokumen
Klik Mulai
Memproses dokumen
Menampilkan pesan bahwa
preprosesing dokumen selesai
Aktor Sistem
Menampilkan nama dokumen
yang akan dipreprosesingKlik OK
Gambar 3.4 Diagram Aktifitas Preprocessing Dokumen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
3.5.2 Diagram Aktifitas Klasifikasi Dokumen
Pengguna akan melakukan klasifikasi dokumen. Diagram aktivitas
preprocessing dokumen seperti pada gambar di bawah ini.
Menampilkan halaman
KlasifikasiKlik Ambil Dokumen
Isi nilai k
Memproses dokumen
Menampilkan hasil klasifikasi dokumen
Aktor Sistem
Menampilkan nama dokumen
yang akan diklasifikasi pada tabel
Klasifikasi
Gambar 3.5 Diagram Aktifitas Klasifikasi Dokumen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
3.6 Diagram Sekuensial
3.6.1 Diagram Sekuensial Prerocessing Dokumen
Aktor
View
Preprosesing
Dokumen baru
openFile(String path, String fileName)
text()
ProsesData
filterTandaBaca(String doc)
doc
tokenisasi(String doc)
doc
caseFolding(String doc)
kataPenting
stopWord(String doc)
stemDoc(String doc)
line
doc
sorting(String doc)
save(String doc, String filePath, String
fileName)
docDokumen hasil
preprosesing
Tanda baca.txt
doc
openFile(String
path, String
fileName)
doc
Stoplist.txt
openFile(String
path, String
fileName)
doc
StemWord.pl
stem(String word)
hasil
Gambar 3.6 Diagram Sekuensial Preprocessing Dokumen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
3.6.2 Diagram Sekuensial Klasifikasi Dokumen
Aktor
View Klasifikasi
Dokumen testing
Train
Nilai ktestTrain(String path,
String test)
ProsesData
static String[]
listFile(String dir)
daftar;
sorting(String doc)
result
hapusDuplikasiKata(String doc)
hasil + kata[kata.length - 1] + "\n";
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Tabel 3.2 Contoh Data Training dan Testing
Nama
Dokumen
Isi Dokumen
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, 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.
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 Kabupaten Sleman bisa menehi sumbangan awujud
saran, kritik lan liya-liyane kang tujuane kanggo ningkatake mutune
pendhidhikan ing Kabupaten Sleman.
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 gawe giris,
luwih-luwih tumrap pawongan panandhang lelara mau kang nate
dioperasi nanging gagal
kesehatan
(2)
Ditambahake Gogok menawa Hikata Reiki tetela nduweni sipat
regeneratif sing cepet marang organ syaraf awak sing rusak. Hikata
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Reiki kejaba nduweni getaran energi sing dhuwur lan kuwat uga
bisa kanggo ngaWekani sawernaning jinis penyakit kanthi cepet.
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 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.
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
.
Gambar 3.8 Contoh Proses Tokenisasi
Hasil dari proses tokenisasi di atas adalah :
Tabel 3.3 Tabel Hasil Tokenisasi
kesehatan (1) kesehatan (2) pendidikan(1) pendidikan(2) test
kanker ditambahake Guru kanggo jaman
mono gogok Basa biyantu saiki
mujudake menawa Jawa ningkatake pendidikan
momok hikata Ing kualitas wus
mungguhing reiki Jaman pendhidhikan dudu
sok tetela Saiki ing bab
sapaa nduweni Gunggunge kabupaten sing
wae sipat Ora sleman aneh
ora regeneratif akeh durung nanging
sethithik sing sebab suwe dadi
pawongan cepet jurusan iki barang
kang marang basa kadhapuk sing
koncatan organ jawa pengurus larang
nyawa syaraf iki dewan regane
karana awak dianggep pendhidhikan dhuwur
lelara sing angel kabupaten pangajine
kanker rusak lan dpk mung
kang hikata ora sleman wae
disandhang reiki nguntungake kanthi mutune
ora kejaba kejaba anane durung
mokal nduweni iku dpk mesthi
menawa getaran dianggep kasebut kurikulum
lelara energi ciut kaangkah ing
mau sing lapangan masarakat sekolah
kuwawa dhuwur pakaryane ing mligine
Dokumen
Kanker mono mujudake
momok mungguhing
sok sapaa
Token
kanker
mono
mujudake
momok
mungguhing
sok
sapaa
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
gawe lan angel kabupaten ing
giris kuwat kanggo sleman tingkat
luwih uga golek bisa sekolah
luwih bisa pangupa menehi dasar
tumrap kanggo jiwa sumbangan wulangan
pawongan ngawekani lan awujud basa
panandhang sawernaning isih saran jawa
lelara jinis akeh kritik babagan
mau penyakit maneh lan aksara
kang kanthi panganggep liya jawa
nate cepet remeh liyane durung
dioperasi liyane kang selaras
nanging nanging tujuane karo
gagal apa kanggo cak
iya ningkatake cakane
pancen mutune utawa
asor pendhidhikan prakteke
banget ing awit
ta kabupaten ing
basa sleman lapangan
jawa wulangan
kuwi mligine
dra bab
warih aksara
jatirahayu jawa
nyoba durung
njawab laras
tantangan karo
mau kurikulume
kabukten
ketekunane
nggeluti
basa
jawa
ndadekake
kariere
muluk
ndedel
tansaya
dhuwur
3.7.1.2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
3.7.1.3 Stopword
Penghapusan kata yang umum atau tidak mempengaruhi proses
pemerolehan informasi.
Gambar 3.9 Contoh Proses Stopword
Tabel 3.4 Tabel Hasil Stopword
kesehatan (1) kesehatan (2) pendidikan(1) pendidikan(2) test
Kanker Gogok guru ningkatake jaman
Mono Hikata basa kualitas pendidikan
mujudake Reiki jaman pendhidhikan barang
momok Nduweni gunggunge kabupaten larang
mungguhing Sipat jurusan sleman regane
Sapaa regeneratif basa kadhapuk pangajine
sethithik Cepet dianggep pengurus mutune
pawongan Organ nguntungake dewan kurikulum
koncatan Syaraf dianggep pendhidhikan sekolah
nyawa Rusak ciut kabupaten mligine
karana Hikata lapangan dpk tingkat
Lelara Reiki pakaryane sleman sekolah
kanker Nduweni golek dpk dasar
disandhang Getaran pangupa kasebut wulangan
mokal Energi jiwa kaangkah basa
Lelara Kuwat panganggep masarakat babagan
kuwawa ngawekani remeh kabupaten aksara
Giris sawernaning asor sleman selaras
tumrap Jinis basa menehi lapangan
pawongan Penyakit dra sumbangan wulangan
Dokumen
Kanker mono
mujudake
momok
mungguhing
sok sapaa wae
Token
kanker
mono
mujudake
momok
mungguhing
sok
sapaa
wae
StopList
sok
wae
Hasil
Stopword
kanker
mono
mujudake
momok
mungguhing
sapaa
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
panandhang Cepet warih awujud mligine
Lelara jatirahayu saran aksara
dioperasi nyoba kritik laras
Gagal njawab tujuane kurikulume
tantangan ningkatake
kabukten mutune
ketekunane pendhidhikan
nggeluti kabupaten
basa sleman
ndadekake
kariere
muluk
ndedel
tansaya
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) kesehatan (2)
Kanker kanker Gogok gogok
Mono mono Hikata hikata
Mujudake _ake m=w wujud Reiki reiki
Momok momok Nduweni nduweni
Mungguhing _ing mungguh Sipat sipat
Sapaa _a sapa Regeneratif regeneratif
Sethithik se_ thithik Cepet cepet
Pawongan _an pawong Organ organ
Koncatan koncatan Syaraf syaraf
Nyawa nyawa Rusak rusak
Karana ka_ karan Hikata hikata
Lelara le_ lara Reiki reiki
Kanker kanker Nduweni nduweni
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
Disandhang di_ sandhang Getaran _an getar
Mokal mokal Energi energi
Lelara le_ lara Kuwat kuwat
Kuwawa kuwawa Ngawekani ngawekani
Giris giris Sawernaning ning_ sa_ werna
Tumrap tumrap Jinis jinis
Pawongan _an pawong Penyakit penyakit
Panandhang pan=t tandhang Cepet cepet
Lelara le_ lara
Dioperasi di_ operasi Gagal gagal
pendidikan (1) Test
guru guru jaman jaman
basa basa pendidikan pendidikan
jaman jaman barang barang
gunggunge _e gunggung gunggung larang larang
jurusan _an jurus jurus regane _ne Rega rega
basa basa pangajine _ne pang = k kaji
dianggep di_ anggep anggep mutune _e mutu
nguntungake _ake ng_ untung kurikulum kurikulum
dianggep di_ anggep anggep sekolah sekolah
ciut ciut mligine _ne m_ ligi
lapangan _an lapang lapang tingkat tingkat
pakaryane _ne pa_ karya sekolah sekolah
golek golek dasar dasar
pangupa pangupa wulangan _an wulang
jiwa jiwa basa basa
panganggep pang_ anggep babagan _an babag
remeh remeh aksara aksara
asor asor selaras selaras
basa basa lapangan _an lapang
dra Dra dra wulangan _an wulang
warih warih mligine _ne m_ ligi
jatirahayu jatirahayu aksara aksara
nyoba ny= c coba laras laras
njawab n_ jawab kurikulume _e kurikulum
tantangan _an tantang kabukten kabukten
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
ketekunane _ane ke_ tekun nggeluti nggeluti basa basa
ndadekake _ekake = i n_ dadi kariere _e karier muluk muluk
ndedel n_ dedel
tansaya tansaya
pendidikan (2)
Ningkatake _ake ning_ Kat
Kualitas kualitas
Pendhidhikan _kan pen_ dhidhik
Kabupaten kabupaten
Sleman sleman
Kadhapuk ka_ Dhapuk
Pengurus peng_ Urus
Dewan Dewan
Pendhidhikan _kan pen_ Dhidhik
Kabupaten Kabupaten
Dpk dpk Dpk
Sleman Sleman
Dpk dpk Dpk
Kasebut ka_ Sebut
Kaangkah ka_ Angkah
Masarakat Masarakat
Kabupaten Kabupaten
Sleman Sleman
Menehi _i Meneh
Sumbangan _an Sumbang
Awujud a_ Wujud
Saran Saran
Kritik Kritik
Tujuane _e Tujuan
Ningkatake _ake Ning Kat
Mutune _ne Mutu
Pendhidhikan _kan pen_ Dhidhik
Kabupaten Kabupaten
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Sleman Sleman
3.7.2 Proses Klasifikasi
3.7.2.1 Perhitungan idf
Tabel 3.6 Perhitungan idf
term kesehata
n(1)
kesehata
n(2)
pendidi
kan (1)
pendidi
kan (2) test
d
f idf
Aksara 0 0 0 0 2 1 0,69897
Anggep 0 0 3 0 0 1 0,69897
Angkah 0 0 0 1 0 1 0,69897
Asor 0 0 1 0 0 1 0,69897
Babag 0 0 0 0 1 1 0,69897
Barang 0 0 0 0 1 1 0,69897
Basa 0 0 4 0 1 2 0,39794
Cakane 0 0 0 0 1 1 0,69897
Cepet 0 2 0 0 0 1 0,69897
Ciut 0 0 1 0 0 1 0,69897
Coba 0 0 1 0 0 1 0,69897
Dadi 0 0 1 0 0 1 0,69897
Dasar 0 0 0 0 1 1 0,69897
Dedel 0 0 1 0 0 1 0,69897
Dewan 0 0 0 1 0 1 0,69897
dhapuk 0 0 0 1 0 1 0,69897
dhidhik 0 0 0 3 0 1 0,69897
Dpk 0 0 0 2 0 1 0,69897
dra 0 0 1 0 0 1 0,69897
Energi 0 1 0 0 0 1 0,69897
Gagal 1 0 0 0 0 1 0,69897
Getar 0 1 0 0 0 1 0,69897
Giris 1 0 0 0 0 1 0,69897
Gogok 0 1 0 0 0 1 0,69897
Golek 0 0 1 0 0 1 0,69897
gunggung 0 0 1 0 0 1 0,69897
Guru 0 0 1 0 0 1 0,69897
Hikata 0 2 0 0 0 1 0,69897
Jaman 0 0 1 0 1 2 0,39794
jatirahayu 0 0 1 0 0 1 0,69897
Jawab 0 0 1 0 0 1 0,69897
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
Jinis 0 1 0 0 0 1 0,69897
jiwa 0 0 1 0 0 1 0,69897
Jurus 0 0 1 0 0 1 0,69897
kabukten 0 0 1 0 0 1 0,69897
kabupaten 0 0 0 4 0 1 0,69897
Kaji 0 0 0 0 1 1 0,69897
Kanker 2 0 0 0 0 1 0,69897
Karan 1 0 0 0 0 1 0,69897
Karier 0 0 1 0 0 1 0,69897
Karya 0 0 1 0 0 1 0,69897
Kat 0 0 0 2 0 1 0,69897
koncatan 1 0 0 0 0 1 0,69897
Kritik 0 0 0 1 0 1 0,69897
kualitas 0 0 0 1 0 1 0,69897
kurikulum 0 0 0 0 2 1 0,69897
Kuwat 0 1 0 0 0 1 0,69897
kuwawa 1 0 0 0 0 1 0,69897
Lapang 0 0 1 0 1 2 0,39794
Lara 3 0 0 0 0 1 0,69897
Larang 0 0 0 0 1 1 0,69897
laras 0 0 0 0 1 1 0,69897
ligi 0 0 0 0 2 1 0,69897
masarakat 0 0 0 1 0 1 0,69897
meneh 0 0 0 1 0 1 0,69897
mokal 1 0 0 0 0 1 0,69897
momok 1 0 0 0 0 1 0,69897
mono 1 0 0 0 0 1 0,69897
muluk 0 0 1 0 0 1 0,69897
mungguh 1 0 0 0 0 1 0,69897
mutu 0 0 0 1 1 2 0,39794
nduweni 0 2 0 0 0 1 0,69897
ngawekani 0 1 0 0 0 1 0,69897
nggeluti 0 0 1 0 0 1 0,69897
nyawa 1 0 0 0 0 1 0,69897
operasi 1 0 0 0 0 1 0,69897
organ 0 1 0 0 0 1 0,69897
pangupa 0 0 1 0 0 1 0,69897
pawong 2 0 0 0 0 1 0,69897
pendidikan 0 0 0 0 1 1 0,69897
penyakit 0 1 0 0 0 1 0,69897
rega 0 0 0 0 1 1 0,69897
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
regeneratif 0 1 0 0 0 1 0,69897
reiki 0 2 0 0 0 1 0,69897
remeh 0 0 1 0 0 1 0,69897
rusak 0 1 0 0 0 1 0,69897
sandhang 1 0 0 0 0 1 0,69897
sapa 1 0 0 0 0 1 0,69897
saran 0 0 0 1 0 1 0,69897
sebut 0 0 0 1 0 1 0,69897
sekolah 0 0 0 0 2 1 0,69897
selaras 0 0 0 0 1 1 0,69897
sipat 0 1 0 0 0 1 0,69897
sleman 0 0 0 4 0 1 0,69897
sumbang 0 0 0 1 0 1 0,69897
syaraf 0 1 0 0 0 1 0,69897
tandhang 1 0 0 0 0 1 0,69897
tansaya 0 0 1 0 0 1 0,69897
tantang 0 0 1 0 0 1 0,69897
tekun 0 0 1 0 0 1 0,69897
thithik 1 0 0 0 0 1 0,69897
tingkat 0 0 0 0 1 1 0,69897
tujuan 0 0 0 1 0 1 0,69897
tumrap 1 0 0 0 0 1 0,69897
untung 0 0 1 0 0 1 0,69897
urus 0 0 0 1 0 1 0,69897
warih 0 0 1 0 0 1 0,69897
werna 0 1 0 0 0 1 0,69897
wujud 1 0 0 1 0 2 0,39794
wulang 0 0 0 0 2 1 0,69897
3.7.2.2 Perhitungan Bobot (tf-idf)
Tabel 3.7 Perhitungan Bobot (w)
w
kesehatan(1) kesehatan(2) pendidikan
(1)
pendidikan
(2) test
0 0 0 0 1,39794
0 0 2,09691 0 0
0 0 0 0,69897 0
0 0 0,69897 0 0
0 0 0 0 0,69897
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
0 0 0 0 0,69897
0 0 1,59176 0 0,39794
0 0 0 0 0,69897
0 1,39794 0 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0 0 0,69897
0 0 0,69897 0 0
0 0 0 0,69897 0
0 0 0 0,69897 0
0 0 0 2,09691 0
0 0 0 1,39794 0
0 0 0,69897 0 0
0 0,69897 0 0 0
0,69897 0 0 0 0
0 0,69897 0 0 0
0,69897 0 0 0 0
0 0,69897 0 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 1,39794 0 0 0
0 0 0,39794 0 0,39794
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0,69897 0 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0 2,79588 0
0 0 0 0 0,69897
1,39794 0 0 0 0
0,69897 0 0 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0 1,39794 0
0,69897 0 0 0 0
0 0 0 0,69897 0
0 0 0 0,69897 0
0 0 0 0 1,39794
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
0 0,69897 0 0 0
0,69897 0 0 0 0
0 0 0,39794 0 0,39794
2,09691 0 0 0 0
0 0 0 0 0,69897
0 0 0 0 0,69897
0 0 0 0 1,39794
0 0 0 0,69897 0
0 0 0 0,69897 0
0,69897 0 0 0 0
0,69897 0 0 0 0
0,69897 0 0 0 0
0 0 0,69897 0 0
0,69897 0 0 0 0
0 0 0 0,39794 0,39794
0 1,39794 0 0 0
0 0,69897 0 0 0
0 0 0,69897 0 0
0,69897 0 0 0 0
0,69897 0 0 0 0
0 0,69897 0 0 0
0 0 0,69897 0 0
1,39794 0 0 0 0
0 0 0 0 0,69897
0 0,69897 0 0 0
0 0 0 0 0,69897
0 0,69897 0 0 0
0 1,39794 0 0 0
0 0 0,69897 0 0
0 0,69897 0 0 0
0,69897 0 0 0 0
0,69897 0 0 0 0
0 0 0 0,69897 0
0 0 0 0,69897 0
0 0 0 0 1,39794
0 0 0 0 0,69897
0 0,69897 0 0 0
0 0 0 2,79588 0
0 0 0 0,69897 0
0 0,69897 0 0 0
0,69897 0 0 0 0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
0 0 0,69897 0 0
0 0 0,69897 0 0
0 0 0,69897 0 0
0,69897 0 0 0 0
0 0 0 0 0,69897
0 0 0 0,69897 0
0,69897 0 0 0 0
0 0 0,69897 0 0
0 0 0 0,69897 0
0 0 0,69897 0 0
0 0,69897 0 0 0
0,39794 0 0 0,39794 0
0 0 0 0 1,39794
3.7.2.3 Perhitungan Inner Product
Tabel 3.8 Perhitungan Inner Product
Wdtest * Wdtraining
kesehatan(1) kesehatan(2) pendidikan
(1)
pendidikan
(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,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 0
0 0 0 0
0 0 0 0
0 0 0 0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
0 0 0 0
0 0 0 0
0 0 0 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 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 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 0
0 0 0 0
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
SUM 0 0 0,950138 0,158356
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
3.7.2.4 Perhitungan Panjang Dokumen
Tabel 3.9 Perhitungan Panjang Dokumen
W*W(panjang vektor)
kesehatan(1) kesehatan(2) pendidikan
(1)
pendidikan
(3) test
0 0 0 0 1,954236
0 0 4,397032 0 0
0 0 0 0,488559 0
0 0 0,488559 0 0
0 0 0 0 0,488559
0 0 0 0 0,488559
0 0 2,5337 0 0,158356
0 0 0 0 0,488559
0 1,954236 0 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0 0 0 0 0,488559
0 0 0,488559 0 0
0 0 0 0,488559 0
0 0 0 0,488559 0
0 0 0 4,397032 0
0 0 0 1,954236 0
0 0 0,488559 0 0
0 0,488559 0 0 0
0,488559 0 0 0 0
0 0,488559 0 0 0
0,488559 0 0 0 0
0 0,488559 0 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0 1,954236 0 0 0
0 0 0,158356 0 0,158356
0 0 0,488559 0 0
0 0 0,488559 0 0
0 0,488559 0 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
0 0 0,488559 0 0
0 0 0 7,816945 0
0 0 0 0 0,488559
1,954236 0 0 0 0
0,488559 0 0 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0 0 0 1,954236 0
0,488559 0 0 0 0
0 0 0 0,488559 0
0 0 0 0,488559 0
0 0 0 0 1,954236
0 0,488559 0 0 0
0,488559 0 0 0 0
0 0 0,158356 0 0,158356
4,397032 0 0 0 0
0 0 0 0 0,488559
0 0 0 0 0,488559
0 0 0 0 1,954236
0 0 0 0,488559 0
0 0 0 0,488559 0
0,488559 0 0 0 0
0,488559 0 0 0 0
0,488559 0 0 0 0
0 0 0,488559 0 0
0,488559 0 0 0 0
0 0 0 0,158356 0,158356
0 1,954236 0 0 0
0 0,488559 0 0 0
0 0 0,488559 0 0
0,488559 0 0 0 0
0,488559 0 0 0 0
0 0,488559 0 0 0
0 0 0,488559 0 0
1,954236 0 0 0 0
0 0 0 0 0,488559
0 0,488559 0 0 0
0 0 0 0 0,488559
0 0,488559 0 0 0
0 1,954236 0 0 0
0 0 0,488559 0 0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
0 0,488559 0 0 0
0,488559 0 0 0 0
0,488559 0 0 0 0
0 0 0 0,488559 0
0 0 0 0,488559 0
0 0 0 0 1,954236
0 0 0 0 0,488559
0 0,488559 0 0 0
0 0 0 7,816945 0
0 0 0 0,488559 0
0 0,488559 0 0 0
0,488559 0 0 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0 0 0,488559 0 0
0,488559 0 0 0 0
0 0 0 0 0,488559
0 0 0 0,488559 0
0,488559 0 0 0 0
0 0 0,488559 0 0
0 0 0 0,488559 0
0 0 0,488559 0 0
0 0,488559 0 0 0
0,158356 0 0 0,158356 0
0 0 0 0 1,954236
SUM 16,28081 14,16821 19,46142 30,11882 15,77876
SQRT 4,034948 3,764069 4,41151 5,488061 3,972248
Nilai Cosinus Similarity
Test kesehatan(1) 0
Test kesehatan(2) 0
Test pendidikan(1) 0,054220411
Test pendidikan(2) 0,007264068
Maka disimpulkan
jika k =1 maka test termasuk kategori pendidikan.
jika k =3 maka test termasuk kategori pendidikan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
3.7.3 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
3.8 Perancangan Antar Muka ( Interface)
3.8.1 Halaman Preprocessing Dokumen
SISTEM KLASIFIKASI DOKUMEN BAHASA JAWA
Klasifikasi Preprosesing
Ambil Dokumen
Folder :
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
3.8.2 Halaman Klasifikasi Dokumen
SISTEM KLASIFIKASI DOKUMEN BAHASA JAWA
Klasifikasi Preprosesing
Ambil Dokumen Nilai K : Max Klasifikasi Reset
Dokumen 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
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=<FILE>){
# @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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 (<FILEDIC>)
{
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
{ $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." p4 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
}
if($w=~ /^(pan|pen|man|men|n)/)
{ $stem=$prefix_5{$1}.$';
print FILETESTH $stem." p5 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
}
if($w=~ /^(pa|pe|man|men)/)
{ $stem=$prefix_6{$1}.$';
print FILETESTH $stem." p6 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
}
if($w=~ /^(p|ma|me)/)
{ $stem=$prefix_7{$1}.$';
print FILETESTH $stem." p7 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
}
if($w=~ /^(m)/)
{ $stem=$prefix_8{$1}.$';
print FILETESTH $stem." p8 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
$stem=$prefix_9{$1}.$';
print FILETESTH $stem." p9 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
$stem=$prefix_10{$1}.$';
print FILETESTH $stem." p10 ".$w."\n";
if (exists $dict{$stem})
{ return $stem;}
}
return $w;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
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();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
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 : ");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
72
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
75
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
Nama Dokumen
pendidikan (1) ekonomi (1) politik (1) kesehatan (1)
pendidikan (2) ekonomi (2) politik (2) kesehatan (2)
pendidikan (3) ekonomi (3) politik (3) kesehatan (3)
pendidikan (4) ekonomi (4) politik (4) kesehatan (4)
pendidikan (5) ekonomi (5) politik (5) kesehatan (5)
pendidikan (6) ekonomi (6) politik (6) kesehatan (6)
pendidikan (7) ekonomi (7) politik (7) kesehatan (7)
pendidikan (8) ekonomi (8) politik (8) kesehatan (8)
pendidikan (9) ekonomi (9) politik (9) kesehatan (9)
pendidikan (10) ekonomi (10) politik (10) kesehatan (10)
Pada tabel hasil, tabel yang diarsir adalah dokumen yang hasil klasifikasi
manualnya berbeda dengan hasil klasifikasi sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 Fold 2 Fold 3
pendidikan (1) pendidikan (4) pendidikan (7)
pendidikan (2) pendidikan (5) pendidikan (8)
pendidikan (3) pendidikan (6) pendidikan (9)
pendidikan (10) ekonomi (4) ekonomi (7)
ekonomi (1) ekonomi (5) ekonomi (8)
ekonomi (2) ekonomi (6) ekonomi (9)
ekonomi (3) ekonomi (10) politik (7)
politik (1) politik (4) politik (8)
politik (2) politik (5) politik (9)
politik (3) politik (6) politik (10)
kesehatan (1) kesehatan (4) kesehatan (7)
kesehatan (2) kesehatan (5) kesehatan (8)
kesehatan (3) kesehatan (6) kesehatan (9)
kesehatan (10)
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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
Tahap II
Tahap III
pendidika
n (1)
pendidika
n (2)
pendidika
n (3)
pendidika
n (10)
ekonomi
(1)
ekonomi
(2)
ekonomi
(3)politik (1) politik (2) politik (3)
kesehata
n (1)
kesehata
n (2)
kesehata
n (3)
pendidika
n
pendidika
n
Pendidik
an
pendidika
nekonomi ekonomi ekonomi politik politik politik
kesehata
n
kesehata
n
kesehata
n
pendidika
n (4)
pendidika
n (5)
pendidika
n (6)
ekonomi
(4)
ekonomi
(5)
ekonomi
(6)
ekonomi
(10)politik (4) politik (5) politik (6)
kesehata
n (4)
kesehata
n (5)
kesehata
n (6)
pendidika
n
pendidika
n
Pendidik
an
pendidika
nekonomi ekonomi ekonomi politik politik politik
kesehata
n
kesehata
n
kesehata
n
pendidika
n (7)
pendidika
n (8)
pendidika
n (9)
ekonomi
(7)
ekonomi
(8)
ekonomi
(9)politik (7) politik (8) politik (9)
politik
(10)
kesehata
n (7)
kesehata
n (8)
kesehata
n (9)
kesehata
n (10)
pendidika
n
pendidika
n
Pendidik
an
pendidika
nekonomi politik politik politik politik politik
kesehata
n
pendidika
n
kesehata
n
kesehata
n
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
78
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%
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
79
b. 3 Fold k=8
Hasil dari fold 3 dengan k=8
Tahap I
Tahap II
Tahap III
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
pendidika
n (1)
pendidika
n (2)
pendidika
n (3)
pendidika
n (10)
ekonomi
(1)
ekonomi
(2)
ekonomi
(3)politik (1) politik (2) politik (3)
kesehata
n (1)
kesehata
n (2)
kesehata
n (3)
pendidika
n
pendidika
n
Pendidik
an
pendidika
nekonomi ekonomi ekonomi politik politik politik
kesehata
npolitik
kesehata
n
pendidika
n (4)
pendidika
n (5)
pendidika
n (6)
ekonomi
(4)
ekonomi
(5)
ekonomi
(6)
ekonomi
(10)politik (4) politik (5) politik (6)
kesehata
n (4)
kesehata
n (5)
kesehata
n (6)
pendidika
n
pendidika
n
Pendidik
an
pendidika
nekonomi ekonomi
pendidika
npolitik politik politik
kesehata
n
kesehata
n
kesehata
n
pendidika
n (7)
pendidika
n (8)
pendidika
n (9)
ekonomi
(7)
ekonomi
(8)
ekonomi
(9)politik (7) politik (8) politik (9)
politik
(10)
kesehata
n (7)
kesehata
n (8)
kesehata
n (9)
kesehata
n (10)
pendidika
n
pendidika
n
Pendidik
an
pendidika
nekonomi ekonomi politik politik politik politik
kesehata
nekonomi
kesehata
n
kesehata
n
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 fold 2 fold 3 fold 4 fold 5
pendidikan (1) pendidikan (3) pendidikan (5) pendidikan (7) pendidikan (9)
pendidikan (2) pendidikan (4) pendidikan (6) pendidikan (8) pendidikan (10)
ekonomi (1) ekonomi (3) ekonomi (5) ekonomi (7) ekonomi (9)
ekonomi (2) ekonomi (4) ekonomi (6) ekonomi (8) ekonomi (10)
politik (1) politik (3) politik (5) politik (7) politik (9)
politik (2) politik (4) politik (6) politik (8) politik (10)
kesehatan (1) kesehatan (3) kesehatan (5) kesehatan (7) kesehatan (9)
kesehatan (2) kesehatan (4) kesehatan (6) kesehatan (8) kesehatan (10)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
81
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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
Tahap II
Tahap III
Kelas
Manual
pendidika
n (1)
pendidika
n (2)
ekonomi
(1)
ekonomi
(2)politik (1) politik (2)
kesehatan
(1)
kesehatan
(2)
Hasil
Klasifikas
i Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan
pendidika
n
Kelas
Manual
pendidika
n (3)
pendidika
n (4)
ekonomi
(3)
ekonomi
(4)politik (3) politik (4)
kesehatan
(3)
kesehatan
(4)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik
pendidika
nkesehatan
Kelas
Manual
pendidika
n (5)
pendidika
n (6)
ekonomi
(5)
ekonomi
(6)politik (5) politik (6)
kesehatan
(5)
kesehatan
(6)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan kesehatan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
83
Tahap IV
Tahap V
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 %
Kelas
Manual
pendidika
n (7)
pendidika
n (8)
ekonomi
(7)
ekonomi
(8)politik (7) politik (8)
kesehatan
(7)
kesehatan
(8)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan
pendidika
n
Kelas
Manual
pendidika
n (9)
pendidika
n (10)
pendidika
n (9)
ekonomi
(10)politik (9)
politik
(10)
kesehatan
(9)
kesehatan
(10)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
n
pendidika
nekonomi politik politik kesehatan kesehatan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
84
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 %
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
85
b. 5 Fold k=8
Hasil dari fold 5 dengan k=8
Tahap I
Tahap II
Tahap III
Tahap IV
Tahap V
Kelas
Manual
pendidika
n (1)
pendidika
n (2)
ekonomi
(1)
ekonomi
(2)politik (1) politik (2)
kesehatan
(1)
kesehatan
(2)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan kesehatan
Kelas
Manual
pendidika
n (3)
pendidika
n (4)
ekonomi
(3)
ekonomi
(4)politik (3) politik (4)
kesehata
n (3)
kesehata
n (4)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik
pendidika
nkesehatan
Kelas
Manual
pendidika
n (5)
pendidika
n (6)
ekonomi
(5)
ekonomi
(6)politik (5) politik (6)
kesehatan
(5)
kesehatan
(6)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan kesehatan
Kelas
Manual
pendidika
n (7)
pendidika
n (8)
ekonomi
(7)
ekonomi
(8)politik (7) politik (8)
kesehatan
(7)
kesehatan
(8)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan ekonomi
Kelas
Manual
pendidika
n (9)
pendidika
n (10)
ekonomi
(9)
ekonomi
(10)politik (9)
politik
(10)
kesehatan
(9)
kesehatan
(10)
Hasil
Klasifikasi
Sistem
pendidika
n
pendidika
nekonomi ekonomi politik politik kesehatan kesehatan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
86
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 3 3 5 5
k 4 8 4 8
Akurasi 95% 92% 92% 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
90
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
91
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
( Contoh Perhitungan Manual )
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
93
LAMPIRAN I
Contoh Isi Dokumen yang Diklasifikasikan
<Mekar Sari No. 05 Tahun XXVI 1 MEI 1982>
<Hal 11>
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 paru-
paru.
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
94
LAMPIRAN I
Proses Klasifikasi Dokumen dengan Manual
Mencari klasifikasi dari dokumen ks1 (kesehatan (1)).
Tabel Perhitungan idf
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
abad 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 1 1,518514
abang 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 1 1,518514
abortus 0 0 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 1 1,518514
abot 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 3 1,041393
abri 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 1,518514
aceh 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 2 1,217484
ada 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 4 0,916454
adam 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 1 1,518514
adaptasi 0 0 0 0 0 0 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 1 1,518514
adat 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 2 1,217484
adeg 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 1 1,518514
adhakan 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 1 1,518514
adhedhasar 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 2 1,217484
adhem 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 2 1,217484
adhep 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 5 0,819544
adhi 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 1 1,518514
Termtf
df idf
yusuf 0 0 0 2 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 2 1,217484
yusup 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 1 1,518514
yuswa 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 1 1,518514
yuswane 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 1 1,518514
yuta 0 0 0 0 0 0 0 1 0 0 2 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 3 1,041393
yutanan 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 1,217484
zat 0 0 0 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 2 0 1 3 1,041393
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
95
Tabel Perhitungan Bobot (tf-idf)
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
abad 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
abang 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
abortus 0 0 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
abot 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
abri 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
aceh 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,22 0 0 2,43 0 0 0 0 0 0 0 0 0 0 0
ada 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,92 0 0
adam 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
adaptasi 0 0 0 0 0 0 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
adat 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 1,22 0 0 0 0 0 0 0
adeg 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
adhakan 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
adhedhasar 0 0 0 0 0 0 0 1,22 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
adhem 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 0 0 1,22 0 0 0 0
adhep 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 0,82 0,82 0 0 0 0 0 0 0 0 0
adhi 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
TermW (tf-idf)
yusuf 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
yusup 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
yuswa 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
yuswane 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
yuta 0 0 0 0 0 0 0 1,04 0 0 2,08 0 0 0 0 0 0 0 0 0 0 2,08 0 0 0 0 0 0 0 0 0 0 0
yutanan 0 0 0 0 0 0 0 0 0 0 0 0 2,43 0 0 0 0 0 0 0 1,22 0 0 0 0 0 0 0 0 0 0 0 0
zat 0 0 0 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 2,08 0 1,04
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
96
Tabel Perhitungan Inner Product
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
abad 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
abang 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
abortus 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
abot 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
adat 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ahli 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
ainun 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ajab 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ajaib 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
aji 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
aju 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
akademi 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Termw_dtest*w_dtraining
yuki 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
yusup 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
yuswa 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
yuswane 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
yuta 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
yutanan 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
zat 0 0 0 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,7 0 0 2,2 0
SUM 11 24 24 7,6 15 42 24 18 26 13 8,6 5,4 10 13 8,3 0,6 4,6 15 12 6,1 5,6 15 6,1 10 51 73 77 28 28 14 131 98
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
97
Tabel Hasil Perhitungan 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
abad 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
abang 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
abortus 0 0 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
abot 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
adat 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
ahli 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
ainun 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ajab 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
ajaib 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
aji 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
aju 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
akademi 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
w*w (panjang vektor)Term
yusuf 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
yusup 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
yuswa 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
yuswane 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
yuta 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
yutanan 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
zat 0 0 0 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
SUM 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
98
Tabel Perhitungan Cosine Similarity
ks1
0,079914 ks9
0,06104 ks5
0,060296 ks4
0,058786 ks10
0,029468 ks3
0,022077 pd8
0,018695 ks7
0,018642 ks6
0,016869 ks8
0,016139 pd9
0,014364 pd5
0,013758 pl5
0,013095 ek3
0,010993 pd7
0,010316 pd4
0,010054 ek4
0,009464 ek7
0,008899 ek5
0,008593 ek8
0,008589 pl10
0,00857 pl4
0,008562 pd10
0,007978 pl9
0,007403 pl8
0,007384 pd6
0,006712 ek9
0,005747 pd3
0,005738 ek6
0,004953 pl3
0,004765 pl6
0,004365 pl7
0,000611 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI