Sistem klasifikasi dokumen Bahasa Jawa dengan metode K-Nearest Neighbor (K-NN).
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,
(2)
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
(3)
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
(4)
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
(5)
(6)
(7)
v
(8)
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
(9)
vii
HALAMAN PERSEMBAHAN
Tugas akhir ini saya persembahkan untuk :
Allah Tritunggal, Bunda Maria, Orangtuaku, saudara- saudaraku,
sahabat – sahabatku
(10)
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,
(11)
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
(12)
(13)
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.
(14)
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
(15)
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
(16)
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
(17)
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
(18)
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
(19)
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
(20)
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
(21)
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).
(22)
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.
(23)
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)
(24)
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.
(25)
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.
(26)
6 BAB II
LANDASAN TEORI 2.1Pemerolehan 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.
(27)
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.
(28)
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
(29)
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"
(30)
<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=>""
(31)
<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
(32)
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.
(33)
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
(34)
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
(35)
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
(36)
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.
(37)
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
(38)
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 =
(39)
19 BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1Gambaran 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
IDF KNN
stemming stopword
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 :
(40)
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.
(41)
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:
(42)
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.2Analisa 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
(43)
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
(44)
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.2Skenario 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
(45)
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.3Perancangan 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
(46)
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.4Diagram Konteks
USER Sistem Klasifikasi Dokumen Bahasa Jawa Klasifikasi dokumen
info hasil klasifikasi
(47)
3.5Diagram 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 Preprosesing Klik Ambil Dokumen
Klik Mulai
Memproses dokumen
Menampilkan pesan bahwa preprosesing dokumen selesai
Aktor Sistem
Menampilkan nama dokumen yang akan dipreprosesing Klik OK
(48)
3.5.2 Diagram Aktifitas Klasifikasi Dokumen
Pengguna akan melakukan klasifikasi dokumen. Diagram aktivitas
preprocessing dokumen seperti pada gambar di bawah ini.
Menampilkan halaman Klasifikasi Klik Ambil Dokumen
Isi nilai k
Memproses dokumen
Menampilkan hasil klasifikasi dokumen
Aktor Sistem
Menampilkan nama dokumen yang akan diklasifikasi pada tabel
Klasifikasi
(49)
3.6Diagram 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) doc Dokumen 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
(50)
3.6.2 Diagram Sekuensial Klasifikasi Dokumen
Aktor
View Klasifikasi
Dokumen testing
Train
Nilai k
testTrain(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.7Langkah 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.
(51)
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
(52)
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).
(53)
.
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
(54)
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
(55)
3.7.1.3Stopword
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
(56)
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.4ProsesStemming
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
(57)
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
(58)
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
(59)
Sleman Sleman
3.7.2 Proses Klasifikasi 3.7.2.1Perhitungan 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
(60)
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
(61)
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.2Perhitungan 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
(62)
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
(63)
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
(64)
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.3Perhitungan 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
(65)
0 0 0 0
0 0 0 0
0 0 0 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
(66)
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
(67)
3.7.2.4Perhitungan 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
(68)
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
(69)
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.
(70)
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 :
(71)
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.
(72)
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.
(73)
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
(1)
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.
(2)
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
Term tf 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
(3)
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
Term W (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
(4)
Tabel Perhitungan Inner Product
pd3 pd4 pd5 pd6 pd7 pd8 pd9 pd10ek3 ek4 ek5 ek6 ek7 ek8 ek9 ek10 pl3 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
Term w_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
(5)
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
(6)
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