Identifikasi makna kata sabar dalam karya sastra Menggunakan K-Nearest Neighbor (KNN).

(1)

IDENTIFIKASI MAKNA KATA SABAR DALAM KARYA SASTRA MENGGUNAKAN K-NEAREST NEIGHBOR (KNN)

ABSTRAKSI

Kesabaran merupakan nilai hidup yang dipegang tinggi bangsa Indonesia. Menurut Subandi (2011), kesabaran merupakan ajaran yang dipegang oleh kelima agama yang besar di Indonesia (Islam, Kristen, Katolik, Hindu dan Budha). Lebih lanjut disebutkan oleh subandi bahwa dalam Al Qur'an terdapat 44 ayat yang menggunakan kata sabar dan 14 ayat yang menggunakan kata kesabaran. Penelusuran dalam Alkitab (Bible) Bahasa Indonesia menunjukkan 70 ayat yang menunggunakan kata sabar, kesabaran, dan kata lain dengan lema sabar. Subandi (2011) juga menyebutkan bahwa kesabaran merupakan bentuk pengendalian diri yang sangat penting dalam agama Budha dan agama Hindu.

Penelitian untuk mengidentifikasi makna kata sabar telah dilakukan oleh Dr. Benedictus Bherman Dwijatmoko, M.A. yang menghasilkan klasifikasi atau pengelompokan makna kata sabar kedalam 6 kategori atau kelompok, yaitu giliran, kondisi, komunikasi, sifat, pekerjaan dan urutan tindakan..

Dalam skripsi ini identifikasi makna kata sabar dilakukan dengan menggunakan algoritma K-Nearest Neighbor, yang hasilnya kemudian dibandingkan dengan hasil penelitian terdahulu oleh ahli untuk mendapatkan akurasi dari algoritma K-Nearest Neighbor dalam klasifikasi makna kata

sabar. Hasil akurasi yang diapat adalah 38,89% menggunakan data 108 artikel.

Kata Kunci: Identifikasi makna kata sabar, K – Nearest Neighbor, K-NN, Pemerolehan Informasi


(2)

IDENTIFIED THE MEANING OF SABAR WORD IN LITERARY OF ARTS USING K-NEAREST NEIGHBOR (KNN) ALGORITHM

ABSTRACT

Kesabaran ‘patience’ is the value of life that hold Indonesian people

according to Subandi (2011) kesabara ‘patience’ is a doctrin that been held

by fifth big religions in Indonesia (Islam, Christian, Catholic, Hindu and Budha). Furthenmore, Subandi said that in Al-Qur’an there are 44 verses use the sabar ‘patient’ word and 14 verses use kesabaran ‘patience’ word. In

Bible that been translated into Indonesian language, there are 70 verses use patient, kesabaran‘patience’ and another word that has same meaning with sabar ‘patient’ word. Subandi (2011) also said that kesabaran ‘patience’ is

same with self controll that it important in Budhism and Hinduism.

The research to identified the meaning of sabar ‘patient’ word has been

done by Dwijatmoko, and the result is about grouping the meaning of sabar ‘patient’ word into six group, that is turn, condition, communication,

characteristic, and sequence of actions.

In this thesis, the identification of sabar‘patient’ word is done by using

K-Nearest Neighbor, and then compare the result of the system with the result that according to expert to get the accuration of K-Nearest Neighbor Algorithm in identification the meaning of sabar ’patient’ word. The results of the sistem are 38.89 % by 108 articles.

Keywords: Identified the meaning of sabar, K – Nearest Neighbor, K-NN, Information Retrieval


(3)

IDENTIFIKASI MAKNA KATA SABAR

DALAM KARYA SASTRA MENGGUNAKAN

K-NEAREST NEIGHBOR (KNN)

Skripsi

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Oleh:

FX. Dwi Kurniawan

125314071

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA


(4)

ii

IDENTIFIED THE MEANING OF SABAR WORD IN LITERARY OF ARTS USING K-NEAREST NEIGHBOR (KNN) ALGORITHM

THESIS

Presented as Partial Fulfillment of The Requirements

To Obtain the Computer Bachelor Degree

In Informatics Engineering

By:

FX. Dwi Kurniawan

125314071

INFORMATICS ENGINEERING STUDY PROGRAM FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY YOGYAKARTA


(5)

(6)

(7)

v

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.

Yogyakarta, Januari 2017 Penulis


(8)

vi

HALAMAN MOTTO

“Victory Loves Preparation”

-The Mechanic Film

“Raise your head and taste the courage”


(9)

vii

HALAMAN PERSEMBAHAN

Tugas Akhir Ini saya persembahkan untuk:

Tuhan Yesus Kristus dan Bunda Maria, Eduardus Kusmarwanto, Yuliana Winarsih,

Teresia Juliana Melani, Keluarga,

Sahabat,

Teman - teman Prodi Teknik Informatika,


(10)

viii

IDENTIFIKASI MAKNA KATA SABAR DALAM KARYA SASTRA MENGGUNAKAN K-NEAREST NEIGHBOR (KNN)

ABSTRAKSI

Kesabaran merupakan nilai hidup yang dipegang tinggi bangsa Indonesia. Menurut Subandi (2011), kesabaran merupakan ajaran yang dipegang oleh kelima agama yang besar di Indonesia (Islam, Kristen, Katolik, Hindu dan Budha). Lebih lanjut disebutkan oleh subandi bahwa dalam Al Qur'an terdapat 44 ayat yang menggunakan kata sabar dan 14 ayat yang menggunakan kata kesabaran. Penelusuran dalam Alkitab (Bible) Bahasa Indonesia menunjukkan 70 ayat yang menunggunakan kata sabar, kesabaran, dan kata lain dengan lema sabar. Subandi (2011) juga menyebutkan bahwa kesabaran merupakan bentuk pengendalian diri yang sangat penting dalam agama Budha dan agama Hindu.

Penelitian untuk mengidentifikasi makna kata sabar telah dilakukan oleh Dr. Benedictus Bherman Dwijatmoko, M.A. yang menghasilkan klasifikasi atau pengelompokan makna kata sabar kedalam 6 kategori atau kelompok, yaitu giliran, kondisi, komunikasi, sifat, pekerjaan dan urutan tindakan..

Dalam skripsi ini identifikasi makna kata sabar dilakukan dengan menggunakan algoritma K-Nearest Neighbor, yang hasilnya kemudian dibandingkan dengan hasil penelitian terdahulu oleh ahli untuk mendapatkan akurasi dari algoritma K-Nearest Neighbor dalam klasifikasi makna kata

sabar. Hasil akurasi yang diapat adalah 38,89% menggunakan data 108 artikel.

Kata Kunci: Identifikasi makna kata sabar, K – Nearest Neighbor, K-NN, Pemerolehan Informasi


(11)

ix

IDENTIFIED THE MEANING OF SABAR WORD IN LITERARY OF ARTS USING K-NEAREST NEIGHBOR (KNN) ALGORITHM

ABSTRACT

Kesabaran ‘patience’ is the value of life that hold Indonesian people

according to Subandi (2011) kesabara ‘patience’ is a doctrin that been held

by fifth big religions in Indonesia (Islam, Christian, Catholic, Hindu and Budha). Furthenmore, Subandi said that in Al-Qur’an there are 44 verses use the sabar ‘patient’ word and 14 verses use kesabaran ‘patience’ word. In

Bible that been translated into Indonesian language, there are 70 verses use patient, kesabaran‘patience’ and another word that has same meaning with

sabar ‘patient’ word. Subandi (2011) also said that kesabaran ‘patience’ is

same with self controll that it important in Budhism and Hinduism.

The research to identified the meaning of sabar ‘patient’ word has been

done by Dwijatmoko, and the result is about grouping the meaning of sabar ‘patient’ word into six group, that is turn, condition, communication,

characteristic, and sequence of actions.

In this thesis, the identification of sabar‘patient’ word is done by using K-Nearest Neighbor, and then compare the result of the system with the result that according to expert to get the accuration of K-Nearest Neighbor Algorithm in identification the meaning of sabar ’patient’ word. The results of the sistem are 38.89 % by 108 articles.

Kata Kunci: Identified the meaning of sabar, K – Nearest Neighbor, K-NN, Information Retrieval


(12)

x

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMUAH UNTUK KEPERLUAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:

Nama : FX. Dwi Kurniawan

Nim : 125314071

Demi mengembangkan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul:

IDENTIFIKASI MAKNA KATA SABAR DALAM KARYA SASTRA MENGGUNAKAN K-NEAREST NEIGHBOR (KNN)

Beserta pangkat yang diperlukan. Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikan di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta izin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta, Januari 2017

Penulis


(13)

xi

KATA PENGANTAR

Puji syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa atas berkat dan rahmat-Nya, sehingga Tugas Akhir Identifikasi Makna Kata Sabar Dalam Karya Sastra Menggunakan K-Nearest Neighbor (KNN)

ini dapat terselesaikan. Adapun penulisan tugas akhir ini adalah untuk memenuhi persyaratan dalam memperoleh gelar Sarjana Teknik Informatika Universitas Sanata Dharma, Yogyakarta.

Penyusunan Tugas Akhir ini tidak terlepas dari bantuan beberapa pihak, oleh karena itu penulis hendak mengucapkan terima kasih kepada:

1. Tuhan Yesus Kristus yang selalu memberikan berkat dan rahmat untuk setiap pertanyaan dan permasalahan dalam pengerjaan Tugas Akhir. 2. Bunda Maria yang selalu menemani dalam keluh kesah pengerjaan Tugas

Akhir ini.

3. Bapak Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D. selaku Dekan Fakultas Sains dan Teknologi.

4. Ibu Dr.Anastasia Rita Widiarti, M.Kom selaku Kaprodi Fakultas Sains dan Teknologi.

5. Ibu Sri Hartati Wijono, M.Kom. dan Bapak Dr. B. B. Dwijatmoko, M.A selaku pembimbing Tugas Akhir yang bersedia memberikan bimbingan hingga penulisan Tugas Akhir ini dapat terselesaikan.

6. Bapak Eduardus Kusmarwanto dan Ibu Yuliana Winarsih yang tanpa lelah selalu memberikan dukungan, semangat, motivasi dan doa hingga penulisan Tugas Akhir ini dapat terselesaikan.

7. Teresia Juliana Melani yang tanpa lelah selalu memberikan semangat, dorongan, motivasi baik lewat canda, tawa, doa serta ejekan yang sifatnya adalah demi terselesaikannya Tugas Akhir ini.

8. Erik dan Pius yang telah memberikan pencerahan dan bantuan terutama dalam pembuatan program pada Tugas Akhir ini.


(14)

xii

9. Teman –teman Teknik Informatika “Ikatan Teknik Informatika Liberal” yang telah memberikan keceriaan dan kebersamaan pada setiap semesternya selama masa perkuliahan.

10.Sahabat dan teman yang tidak bisa disebutkan satu persatu, terima kasih untuk dukungan dan bantuan dalam hal apapun.

11.Avenged Sevenfold yang selalu menemani dan mengiringi penulisan Tugas Akhir ini lewat lagunya.


(15)

xiii

DAFTAR ISI

HALAMAN JUDUL BAHASA INDONESIA ... i

HALAMAN JUDUL BAHASA INGGRIS ... ii

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN... iv

PERNYATAAN KEASLIAN KARYA ... v

HALAMAN MOTTO ... vi

HALAMAN PERSEMBAHAN ... vii

ABSTRAKSI ... viii

ABSTRACT ... ix

LEMBAR PERNYATAAN PERSETUJUAN ... x

KATA PENGANTAR ... xi

DAFTAR ISI ... xiii

DAFTAR GAMBAR ... xvi

DAFTAR TABEL ... xvii

DAFTAR LIST CODE ... xviii

PENDAHULUAN ... 1

1.1. Latar Belakang Masalah ... 1

1.2. Rumusan Masalah ... 3

1.3. Batasan Masalah ... 3

1.4. Tujuan Penelitian ... 3

1.5. Metodologi Penelitian ... 4

1.6. Sistematika Penulisan ... 5

BAB II ... 6

LANDASAN TEORI ... 6

2.1. Kesabaran ... 6

2.1.1. Makna Kata Sabar ... 6

2.2. Pemerolehan Informasi... 11

2.2.1. Proses Preprocessing Dokumen ... 12

2.3. Klasifikasi Teks ... 16


(16)

xiv

2.3.2. Langkah Algoritma KNN ... 19

2.3.3. Perhitungan Akurasi ... 20

BAB III ... 21

METODOLOGI PENELITIAN ... 21

3.1. Gambaran Umum Sistem ... 21

3.1.1. Input Data ... 22

3.1.2. Prepocessing... 23

3.1.3. Klasifikasi KNN ... 24

3.2. Analisa Kebutuhan Sistem ... 25

3.2.1. Definisi Aktor ... 25

3.2.2. Diagram Use Case ... 25

3.3. Perancangan Model Penyimpanan Data ... 32

3.4. Diagram Konteks ... 32

3.5. Diagram Aktivitas ... 33

BAB IV ... 36

IMPLEMENTASI ... 36

4.1. Spesifikasi Software dan Hardware yang dibutuhkan ... 36

4.1.1. Spesifikasi Software ... 36

4.1.2. Spesifikasi Hardware ... 36

4.2. Implementasi Antar Muka ... 37

4.3. Implementasi Sistem ... 38

4.3.1. Implementasi Preprocessing ... 38

4.3.2. Implementasi Klasifikasi... 44

BAB V... 46

HASIL DAN PEMBAHASAN ... 46

5.1. Pengujian ... 46

5.1.1. K fold Cross Validation ... 46

5.2. Analisa Hasil ... 49

BAB VI ... 58

PENUTUP ... 58

6.1. Kesimpulan ... 58

DAFTAR PUSTAKA ... 60


(17)

xv

Hasil Tokenisasi ... 61

LAMPIRAN 2 ... 65

Hasil Stopword ... 65

LAMPIRAN 3 ... 67

Hasil Stemming ... 67

LAMPIRAN 4 ... 70

Hasil Text Frequency ... 70

LAMPIRAN 5 ... 75

Hasil Perhitungan COSINE SIMILARITY ... 75

LAMPIRAN 6 ... 76

Hasil Pengurutan Vektor ... 76

LAMPIRAN 7 ... 77

Hasil Label Mayoritas ... 77

LAMPIRAN 8 ... 78


(18)

xvi

DAFTAR GAMBAR

Gambar 3. 1. Gambaran Umum Sistem ... 22

Gambar 3. 2. Diagram Konteks ... 32

Gambar 3. 2. 1. Diagram Use Case ... 25

Gambar 3. 5. 1. 1. Diagram Aktivitas Input Stopword ... 33

Gambar 3. 5. 1. 2. Diagram Aktivitas Input Stemming ... 33

Gambar 3. 5. 1. 3. Diagram Aktivitas Input Data Training ... 34

Gambar 3. 5. 1. 4. Diagram Aktivitas Data Testing ... 34

Gambar 3. 5. 2. 1. Diagram Aktivitas Input Nilai K ... 35

Gambar 3. 5. 2. 2. Diagram Aktivitas Klasifikasi ... 35

Gambar 4. 2. 1. Antar Muka Awal ... 37


(19)

xvii

DAFTAR TABEL

Tabel 3. 1. 1. Daftar Data ... 22

Tabel 3. 2. 1. Definisi Aktor ... 25

Tabel 3. 2. 3. 1. 1. Narasi Input Kamus Stopword ... 26

Tabel 3. 2. 3. 1. 2. Narasi Input Kamus Stemming ... 27

Tabel 3. 2. 3. 1. 3. Narasi Input Data Training ... 28

Tabel 3. 2. 3. 1. 4. Narasi Input Data Testing ... 29

Tabel 3. 2. 3. 2. 1. Narasi Input Nilai K ... 30

Tabel 3. 2. 3. 2. 2. Narasi Klasifikasi ... 31

Tabel 5. 1. 1. 1. Pembagian Data 3 Fold ... 47

Tabel 5. 2. 1. 1 Tahap 1 (K = 4) ... 49

Tabel 5. 2. 1. 2. Tahap 2 (K = 4) ... 49

Tabel 5. 2. 1. 3. Tahap 3 (K = 4) ... 50

Tabel 5. 2. 1. 4. Rata - Rata Akurasi (K = 4) ... 50

Tabel 5. 2. 2. 1. Tahap 1 (K = 5) ... 51

Tabel 5. 2. 2. 2. Tahap 2 (K = 5) ... 51

Tabel 5. 2. 2. 3. Tahap 3 (K = 5) ... 52

Tabel 5. 2. 2. 4. Rata - Rata Akurasi (K = 5) ... 52

Tabel 5. 2. 3. 1. Tahap 1 (K = 6) ... 53

Tabel 5. 2. 3. 2. Tahap 2 (K = 6) ... 53

Tabel 5. 2. 3. 3. Tahap 3 (K = 6) ... 54

Tabel 5. 2. 3. 4. Rata - Rata Akurasi (K = 6) ... 54

Tabel 5. 2. 4. 1. Tahap 1 (K = 7) ... 55

Tabel 5. 2. 4. 2. Tahap 2 (K = 7) ... 55

Tabel 5. 2. 4. 3. Tahap 3 (K = 7) ... 56


(20)

xviii

DAFTAR LIST CODE

List Code 4. 3. 1. 1. Implementasi Tokenisasi ... 38

List Code 4. 3. 1. 2. Implementasi Stopword ... 39

List Code 4. 3. 1. 3. Implementasi Stemming ... 40

List Code 4. 3. 1. 4. Implementasi Tf ... 41

List Code 4. 3. 1. 5. Implementasi Idf... 42

List Code 4. 3. 1. 6. Implementasi Pembobotan ... 43

List Code 4. 3. 2. 1. Implementasi Hitung Cosine Similarity ... 44


(21)

1

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Karya sastra merupakan sebuah seni ungkapan pribadi manusia berupa pengalaman, pemikiran, ide dan semangat dalam suatu bentuk gambaran kehidupan yang dapat dilukiskan dalam bentuk tulisan. Beberapa contoh karya sastra diantaranya adalah puisi, fiksi atau prosa dan lain sebagainya. Dengan beragam suku dan bahasa yang ada, Indonesia tentunya memiliki beragam karya sastra dari masing-masing daerah. Sebagai contoh dalam sebuah cerita fiksi terdiri dari beberapa kalimat yang menyusun cerita tersebut dan dalam setiap kalimat terdapat kata kunci yang akan mempermudah proses pemerolehan informasi dari kalimat tersebut. Misalnya pada sebuah cerpen terdapat kalimat yang setelah dilakukan proses pemerolehan informasi maka kalimat tersebut dapat digolongkan menjadi kalimat urutan kejadian atau tergolong dalam kelompok kalimat keadaan atau bahkan kelompok kalimat komunikasi. Proses pemerolehan informasi ini tidak harus dilakukan pada satu kalimat, proses ini dapat dilakukan dengan menggunakan beberapa kalimat seperti pada penelitian yang dilakukan ini, menggunakan kalimat yang mengandung kata sabar kemudian diambil kalimat depan dan belakangnya jika kalimat tersebut berada di bagian tengah paragraf. Jika kalimat yang mengandung kata sabar berada pada awal paragraf, maka akan diambil pula kalimat setelahnya dan jika kalimat yang mengandung kata sabar tersebut berada pada bagian akhir paragraf, maka akan diambil pula kalimat sebelumnya.


(22)

Menurut Manning (2008), proses pemerolehan informasi dapat diartikan pencarian material dari dokumen yang sifatnya tidak terstruktur yang bertujuan untuk memenuhi kebutuhan informasi dari suatu kumpulan dokumen yang besar. Proses pemerolehan informasi ini dapat dilakukan dengan menggunakan hitungan manual maupun menggunakan metode-metode yang ada dalam data mining atau penambangan data atau dikenal juga dengan text mining dalam pemerolehan informasi. Dalam proses pemerolehan informasi ini, ada beberapa tahapan yang harus dilakukan. Tahap pertama adalah

preprocessing. Tahap ini terbagi menjadi 3 tahap lagi yaitu tokenizing,

stopword dan stemming. Setelah 3 tahap awal ini dilakukan, kemudian akan dilakukan perhitungan text frequency serta pembobotan. Setelah proses diatas dilakukan, selanjutnya adalah melakukan klasifikasi dengan menggunakan metode KNN atau K Nearest Neighbour.

Dalam klasifikasi ini kata akan dipisahkan ke dalam beberapa kelompok dengan berdasar kemiripan kata dalam dokumen. Dengan pengelompokan kata ini, akan mebantu untuk menemukan informasi dari sebuah dokumen secara lebih tepat. Dalam metode KNN, klasifikasi ini menggunakan hasil perhitungan tf atau text frequency

dengan melihat kemiripan cosine similarity setiap dokumen berdasarkan nilai k atau jumlah tetangga terdekat.

Dari latar belakang diatas, penulis tertarik untuk meneliti apakah metode KNN ini dapat atau cocok digunakan untuk mengklasifikasikan teks dengan data yang berasal dari berbagai karya sastra indonesia seperti puisi, cerpen, dongeng dan lain sebagainya.


(23)

1.2. Rumusan Masalah

Berdasarkan latar belakang diatas maka didapatkan rumusan masalah yaitu:

1. Bagaimana membangun sistem untuk mengidentifikasi makna kata sabar dalam karya sastra Indonesia menggunakan metode KNN? 2. Berapa besar tingkat akurasi metode KNN dalam identifikasi makna

kata dalam kalimat pada karya sastra Indonesia?

1.3. Batasan Masalah

Batasan penulisan ini adalah sebagai berikut:

1. Data yang digunakan dalam penelitian ini adalah dokumen dengan format teks(*.txt).

2. Algoritma yang digunakan adalah algoritma KNN.

3. Data yang digunakan dalam klasifikasi adalah kalimat yang mengandung kata kunci sabar dan kalimat pendukung, yaitu kalimat yang berada di depan kalimat utama atau kalimat yang berada di belakang kalimat utama.

1.4. Tujuan Penelitian

Tujuan penulisan ini adalah sebagai berikut:

1. Mengimplementasikan metode KNN dalam identifikasi makna kata sabar dalam karya sastra Indonesia.

2. Mengetahui akurasi metode KNN dalam identifikasi makna kata sabar dalam karya sastra Indonesia.


(24)

1.5. Metodologi Penelitian

Dalam penelitian ini, metodologi yang digunakan adalah sebagai berikut:

1. Studi Literatur

Pada tahap ini akan dilakukan dengan mencari informasi tentang penggunaan metode KNN dalam klasifikasi teks dari sumber-sumber buku, jurnal maupun website.

2. Pengumpulan data.

Pada tahap ini akan dilakukan pengumpulan data. Pengumpulan data ini diperoleh dari situs www.corci.org (Corpus Of Curremt Indonesia). Data yang berasal dari corci ini berupa kalimat dalam bahasa Indonesia yang berasal dari berbagai macam karya sastra Indonesia.

3. Perancangan

Pada tahap ini akan dilakukan perancangan sistem.

4. Pembuatan Sistem

Pada tahap ini setelah tahap perancangan dilakukan, maka akan dilanjutkan dengan tahap pembuatan sistem.

5. Implementasi dan Pengujian

Pada tahap ini implementasi dilakukan dengan cara melakukan pengujian pada sistem yaitu dengan memasukan data teks ke dalam sistem untuk selanjutnya dilakukan proses klasifikasi.

6. Evaluasi

Setelah tahap implementasi dan pengujian dilakukan, tahap selanjutnya adalah evaluasi. Pada tahap ini akan dilakukan analisa hasil implementasi pada sistem dan membuat kesimpulan terhadap penelitian yang dilakukan.


(25)

1.6. Sistematika Penulisan BAB I PENDAHULUAN

Bab ini berisi gambaran umum tentang penulisan yang meliputi latar belakang, rumusan masalah, batasan masalah, tujuan serta metode penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini berisi tentang dasar teori yang digunakan, konsep pemerolehan informasi, ideologi kesabaran dalam karya sastra Indonesia, metode klasifikasi KNN, akurasi Cross Validation.

BAB III METODOLOGI PENELITIAN

Bab ini berisi tentang proses perancangan sistem, alur kerja sistem serta tampilan antar muka yang digunakan dalam penelitan.

BAB IV IMPLEMENTASI

Bab ini berisi tentang implementasi indentifikasi makna kata sabar dalam Karya Sastra.

BAB V HASIL DAN PEMBAHASAN

Bab ini berisi tentang analisa hasil dari pengujian tehadap sistem.

BAB VI KESIMPULAN DAN SARAN

Bab ini berisi tentang kesimpulan dari penelitian yang dilakukan berdasarkan implementasi, hasil dan pembahasan.


(26)

6

BAB II

LANDASAN TEORI

2.1. Kesabaran

Kesabaran menurut Subandi (2011) merupakan ajaran yang dijunjung tinggi oleh 5 agama besar di Indonesia (Islam, Kristen, Katolik, Hindu dan Budha). Dalam kitab Al Qur'an terdapat 44 ayat yang menggunakan kata sabar dan 14 ayat yang menggunakan kata kesabaran. Selain itu dalam Alkitab Bahasa Indonesia terdapat 70 ayat yang menggunakan kata sabar, kesabaran dan kata lain dengan lema sabar. Disebutkan pula oleh Subandi (2011) bahwa kesabaran merupakan bentuk pengendalian diri yang sangat penting dalam agama Budha dan agama Hindu. Penelitian ini menggunakan data yang diperoleh dari situs www.corci.org yang sebelumnya telah dilakukan penelitian oleh Dr. Benedictus Bherman Dwijatmoko, M.A.

Dalam penelitan yang telah dilakukan sebelumnya oleh Dr. Benedictus Bherman Dwijatmoko, M.A. selaku Dosen Pembimbing, kalimat dengan lema sabar dikelompokkan dalam 6 makna yaitu keadaan, urutan giliran, urutan tindakan, kesediaan menunggu dalam pembicaraan (komunikasi), sifat(kondisi) dan pekerjaan.

2.1.1.Makna Kata Sabar

Pada klasifikasi yang dilakukan akan dilakukan pembagian kelas berdasarkan makna dari kata sabar tersebut. Makna kata sabar tersebut adalah Keadaan, Urutan Giliran, Urutan Tindakan, Komunikasi, Sifat, Pekerjaan.

2.1.1.1. Keadaan

Arti keadaan muncul atas kesadaran pelaku atau pembicara pada keadaan lawan bicara atau orang lain yang tidak baik atau jelek. Pelaku atau pembicara karena keadaan itu tidak dapat diubah lagi dan harus diterima saja atau ditolak.


(27)

Contoh:

Pun ketika ingin membentuk sebuah kalimat, bingung aku menentukan tense-nya. Bahasa Inggrisku tak maju-maju.” “Begini, ” kata Lintang sabar menghadapi ketololanku. Ketika itu ia sedang memaku sandal cunghai-nya yang menganga seperti buaya lapar.

Penjelasan:

Pada Contoh diatas Lintang menunjukkan penerimaannya pada keadaan temannya yang bahasa Inggrisnya jelek. Lintang menerima ketololan pembicara dengan sabar.

2.1.1.2. Urutan Giliran

Kesabaran juga muncul pada penantian dari tindakan orang lain. Pelaku atau pembicara perlu sabar untuk menunggu orang lain selesai melakukan tindakannya atau menunggu gilirannya.

Contoh:

Penumpang berebut turun. Wajah gadis itu nampak sabarsekali menunggu luangnya jalan. Joki memberinya kesempatan untuk lewat.

Penjelasan:

Gadis pada contoh diatas sabar menunggu gilirannya untuk turun. Ia lebih aman dan nyaman menunggu sampai kesempatan untuk lewat datang.

2.1.1.3. Urutan Tindakan

Urutan tindakan juga merupakan kesabaran. Pelaku atau pembicara perlu melakukan tindakan sesuai dengan urutannya. Bila seseorang melakukan tindakan yang tidak sesuai dengan urut-urutannya menunjukkan ketidak-sabaran orang itu.


(28)

Contoh:

1. Kami, delapan ekor sapi, yang akan tampil pada plot kedua, gemetar menunggu aba-aba dari Mahar untuk menerjang arena. Kami tak

sabar dan rasanya kaki sudah gatal ingin mendemonstrasikan kehebatan mamalia menari. Kami adalah remaja-remaja kelebihan energi dan lapar akan perhatian.

2. Tak satu baju pun yang tertinggal di almari. Seolah-olah Haji Sudung tak akan kembali lagi ke rumah itu. Malam itu, sambil mendekap buntalan tasnya, Haji Sudung tak sabar untuk segera tertidur. Ia ingin berlari memburu pagi.

Penjelasan:

Sapi-sapi pada contoh 1 menunjukkan ketidak-sabarannya untuk mengikuti urutan itu. Demikian juga Haji Sulung. Ia harus mengemasi barang-barangnya sebelum ia tidur dan kemudian pergi pada keesokan harinya. Ia ingin segera tidur dan pergi keesokan harinya.

2.1.1.4. Komunikasi

Kesaabaran juga mempunyai arti kesediaan menunggu dalam pembicaraan (Komunikasi). Peserta pembicaraan perlu menunggu sampai orang yang berbicara selesai berbicara sebelum ia memulai bicara. Menyela pembicaraan merupakan perilaku tidak sabar.

Contoh:

1. Cun An tercenung sebentar, kelihatannya menyerap omongan penyamun ini untuk disari-sarikan, tapi setelah itu dengan tak sabar

berkata, "Sudah saya bilang jangan bertele-tele. Katakan saja tawaranmu itu."


(29)

2. Mamak berhenti sejenak. Kalan semakin tidak sabar. Sebatang rokok keretek yang ia selai tak cukup mampu untuk menghilangkan

gundahnya. ”Maksud Mamak?

Penjelasan:

Cun An menunjukkan ketidak-sabarannya dengan memotong pembicaraan penyamun itu, dan Kalan dengan memotong pembicaraan Mamak.

Latar belakang ketidak-sabaran Cun An dan Kalan berbeda. Kalimat Sudah saya bilang jangan bertele-tele. Katakan saja tawaran itu menunjukkan bahwa Cun An mempunyai kekuatan yang lebih besar daripada penyamun itu. Cun An tidak takut pada penyamun itu. Berbeda dengan Cun An, Kalan merasa tidak nyaman untuk melakukan tindakan yang dapat diartikan tidak sabar. Ia merasa terpaksa harus memotong pembicaraan mamaknya, orang yang harus dihormatinya.

Sebatang rokok keretek yang ia selai tak cukup mampu untuk menghilangkan gundahnya.

2.1.1.5. Sifat

Sifat sabar merupakan sifat baik yang dipunyai oleh orang yang diidamkan. Sifat itu sejajar dengan sifat-sifat baik yang lain seperti bijaksana, baik, tabah, dan setia.

Contoh:

1. Perempuan memang bukan persoalan baginya. Hanya masalahnya sampai sekarang dia baru bisa memahami seorang perempuan saja, mamanya, wanita yang sabar, setia, bijaksana, dan penuh kasih sayang.

2. ”Kata orangtua saya, sebagai istri saya mesti menghormati suami,

saya tidak boleh membantah kata suami. Hanya orang yang baik dan


(30)

Penjelasan:

Contoh 1 membicarakan mama pelaku yang mempunyai sifat sabar, dan contoh 2 menunjukkan pembicara sendiri yang mempunyai sifat sabar. Sifat sabar pada contoh 1 disertai dengan sifat yang baik lainnya yaitu setia, bijaksana, dan penuh kasih sayang, dan pada contoh 2 sifat itu disertai dengan sifat baik.

Pengakuan pelaku bahwa ibu pelaku itu mempunyai sifat sabar yang belum ia jumpai pada wanita lain pada contoh 1 dan pengakuan pembicara bahwa sifat sabarnya ia kembangkan karena kata orangtuanya menunjukkan peran orang tua dalam penanaman sifat sabar. Mereka melihat sosok orang tua sebagai orang yang dapat mereka tauladani dalam kesabaran.

Akan tetapi perilaku sabar pada contoh 2 menunjukkan jalan pemikiran yang berbeda. Kesabaran pada wanita itu merupakan kesabaran yang dipaksakan. Seorang istri tidak boleh membantah kata suaminya apapun yang dikatakan suaminya. Bila ia melanggar aturan itu, ia diancam untuk tidak dapat masuk surga.

2.1.1.6. Pekerjaan

Arti kesabaran yang terakhir adalah ketekunan dalam pekerjaan. Orang yang sabar adalah orang yang dapat menghadapi situasi yang sulit untuk dihadapi atau melakukan pekerjaannya dengan tekun. Ia tidak mudah menyerah menghadapi keadaan yang sulit dan terus tekun untuk mencapai tujuannya.

Contoh:

1. "Bagaimana aku bisa sabar, kalau harus membuang tenaga, waktu, dan pikiran cuma untuk beberapa ratus Indian rupee!"

2. Uang itu ditolak Emak. Tetapi, setelah dibujuk berulang-ulang oleh Si Pelukis dengan sabar dan manis, akhirnya uang yang cukup banyak itu diterima Emak.


(31)

Penjelasan:

Pembicara pada contoh 1 tidak sabar atau tabah menghadapi keadaan yang sulit. Ia tidak mau membuang tenaga, waktu, dan pikirannya karena uang yang diterimanya sangat sedikitnya. Sebaliknya, Si Pelukis dengan gigih atau tekun terus membujuk ibu pembicara sehingga wanita itu mau menerima uang yang ingin diberikannya.

Latar belakangnya munculnya kesabaran atau ketidak-sabaran pada contoh 1 dan contoh 2 berbeda. Pembicara pada contoh 1 tidak sabar atas perilaku pemilik pekerjaan atau orang yang memberinya pekerjaan. Ia merasa diperlakukan tidak sebanding antara tenaga, waktu, dan pikiran yang dikeluarkannya dengan uang yang diterimanya. Pemilik uang, modal, atau pekerjaan dapat memperlakukan orang yang dipekerjakannya dengan tidak sepantasnya. Pada data contoh 2 faktor kedudukan dan usia Emak menuntut pelukis itu untuk bertindak gigih untuk meyakinkan wanita itu agar mau menerima uang.

2.2. Pemerolehan Informasi

Pemerolehan Informasi berhubungan dengan pengambilan informasi dari dokumen-dokumen yang didasarkan pada isi dan konteks dari dokumen-dokumen itu sendiri. Beberapa pengertian Pemerolehan Informasi dari berbagai sumber, antara lain :

Pemerolehan Informasi adalah menemukan materi (biasanya berupa dokumen) yang bersifat tidak terstruktur (biasanya dalam bentuk teks) yang memenuhi kebutuhan informasi dari dalam koleksi atau kumpulan besar (biasanya disimpan di komputer) (Manning, 2008).

Pemerolehan informasi merupakan “bidang berkaitan dengan

struktur, analisis, organisasi, penyimpanan, pencarian, dan pengambilan informasi (Salton, 1968). “ Croft, 2010.


(32)

Information Retrieval adalah “bidang di persimpangan ilmu informasi dan ilmu komputer. Berkutat dengan pengindeksan dan pengambilan informasi dari sumber informasi heterogen (memiliki pengaruh yang berbeda) dan sebagian besar-tekstual (Mooers, 1951). “ Hersh, 2003.

Data yang dapat dijadikan sumber pencarian dapat berupa pesan teks, seperti e-mail, dan dokumen berita, bahkan dokumen yang beredar di internet. Dengan jumlah dokumen koleksi yang besar sebagai sumber pencarian, maka dibutuhkan suatu sistem yang dapat membantu user menemukan dokumen yang relevan dalam waktu yang singkat dan tepat.

2.2.1.Proses Preprocessing Dokumen

Setelah mendapatkan dokumen langkah selanjutnya adalah untuk memutuskan apakah harus dilakukan sebuah langkah untuk menyederhanakan pencarian atau lebih sering disebut dengan proses

preprocessing. Proses ini berfungsi untuk mendapatkan kata kunci yang nantinya dapat digunakan sebagai pembanding antar dokumen. Dalam proses ini ada beberapa tahap yaitu tokenisasi, stopword, stemming dan

text frequency.

2.2.1.1. Tokenisasi

Tokenisasi adalah proses memotong kalimat menjadi potongan-potongan kata yang disebut token dan pada saat yang sama karakter-karakter tertentu seperti tanda baca dihapus (Manning, 2008). Dalam tokenisasi ini pula kata dalam dokumen akan diubah menjadi huruf kecil.

Contoh:

Aneh. Tadi ia tidak sabar menunggu telepon berbunyi, tapi kini malah ragu mengangkat. Perasaan cemas menyisip.


(33)

Maka akan menjadi seperti dibawah ini:

2.2.1.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 kosa kata seluruhnya (Manning, 2008). Pada stopword ini akan dibuat sebuah dokumen yang berisi kumpulan kata yang sering muncul namun dianggap tidak memiliki makna dalam kaitannya dengan kemiripan antar dokumen. Kata itu seperti kata yang, dan, aku dan lain sebagainya.

Contoh:

Maka akan menjadi seperti dibawah ini:

2.2.1.3. Stemming

Stemming adalah proses untuk mengambalikan sebuah bentuk kata menjadi bentuk kata dasar dengan cara menghilangkan semua imbuhan baik dari awalan, sisipan, akhiran dan kombinasi dari awalan dan akhiran.

aneh tadi ia tidak sabar menunggu

telepon tapi kini malah ragu mengangka

t perasaan cemas menyisip

aneh tadi ia tidak sabar menunggu telepon

tapi kin

i

malah ragu mengangkat perasaan

cemas menyisip

sabar menunggu telepon ragu mengangkat perasaan


(34)

Contoh:

Maka akan menjadi seperti dibawah ini:

2.2.1.3.1. Stemming Sastrawi

Disebutkan dalam situs www.github.com/sastrawi Sastrawi stemmer merupakan sebuah library stemmer sederhana yang didesain untuk dapat digunakan secara mudah.

Sastrawi stemmer menerapkan algoritma yang berbasis Nazief dan Adriani, kemudian ditingkatkan dengan Algoritma CS (Confix Stripping), kemudian ditingkatkan lagi dengan algortima ECS (Enhanced Confix Stripping), lalu ditingkatkan lagi dengan Modified ECS.

Dengan menggunakan algoritma-algoritma tersebut, banyak persoalan stemming berhasil diatasi:

1. mencegah overstemming dengan kamus kata dasar.

2. mencegah understemming dengan aturan-aturan tambahan. 3. Beberapa contoh kata hasil stem: Buku-buku ~> buku

Menahan ~> tahan

Berbalas – balasan ~> balas

sabar menunggu telepon ragu mengangkat

perasaan cemas menyisip

sabar tunggu telepo

n

ragu angka

t

rasa cemas sisi


(35)

2.2.1.3.2. Stemming Nazief dan Adriani

Pada stemming dengan menggunakan algoritma Nazief & Adriani, terdapat beberapa tahapan diantaranya adalah:

1. Mencari kata yang akan di stem dengan menggunakan kamus kata dasar. Jika ditemukan maka algoritma akan berhenti dan kata tersebut diasumsikan sebagai root word.

2. Inflection Suffixes (“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya”) dibuang. Jika berupa particles (“-lah”, “-kah”, “-tah” atau “-pun”) maka langkah ini diulangi lagi untuk menghapus Possesive Pronouns(“-ku”, “-mu”, atau “-nya”), jika ada.

3. Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a.

3a. Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut

adalah “-k”, maka “-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus maka algoritma berhenti. Jika tidak ditemukan maka lakukan langkah 3b.

3b. Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke langkah 4.

4. Hapus Derivation Prefix. Jika pada langkah 3 ada sufiks yang dihapus maka pergi ke langkah 4a, jika tidak pergi ke langkah 4b. 4a. Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan.

Jika ditemukan maka algoritma berhenti, jika tidak pergi ke langkah 4b.

4b. For i = 1 to 3, tentukan tipe awalan kemudian hapus awalan. Jika root word belum juga ditemukan lakukan langkah 5, jika sudah maka algoritma berhenti. Catatan: jika awalan kedua sama dengan awalan pertama algoritma berhenti.

5. Melakukan Recoding.

6. Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal diasumsikan sebagai root word. Proses selesai.


(36)

2.2.1.4. Text Frequency dan Pembobotan

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). Pemberian bobot atau nilai akan menggunakan teknik TF/IDF(term frequency / inverse document frequency). TF adalah jumlah kemunculan suatu kata dalam sebuah dokumen, sedangkan IDF adalah inverse dari banyanknya dokumen dimana suatu term tersebut muncul.

Rumus Pembobotan Saton(1983):

W(t,d) = tft,d * idft = tf(t,d) * log(N/nt) (2.1)

Keterangan:

a. W(t,d) = bobot dari term(kata) t dalam dokumen d.

b. Tf(t,d) = frekuensi kemunculan term(kata) t dalam dokumen d.

c. Idft = Inverse document frequency dari kata t.

d. N = jumlah seluruh dokumen.

e. Nt = jumlah dari dokumen training yang mengandung kata t.

2.3. Klasifikasi Teks

Klasifikasi merupakan proses untuk menemukan model atau fungsi yang menjelaskan atau 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 test dan tahap uji. Pada tahap test, sebagian data yang telah diketahui kelas datanya diumpankan untuk membentuk model prediksi (Han dan Kamber, 2006).


(37)

2.3.1.K-Nearest Neighbour

Metode KNN adalah salah satu metode yang digunakan dalam sistem klasifikasi yang menggunakan pendekatan Machine Learning.

Machine Learning merupakan sebuah proses dalam membangun sistem klasifikasi melakui pembelajaran dari sejumlah contoh yang sudah diklasifikasikan sebelumnya (Feldman & Sanger, 2007).

Salah satu masalah yang dihadapi KNN adalah pemilihan nilai K yang tepat. Misalnya, diambil K bernilai 13, kelas 0 dimiliki oleh 7 tetangga yang jauh, sedangkan kelas 1 dimiliki oleh 6 tetangga yang lebih dekat. Hal ini mengakibatkan data uji tersebut akan terdistorsi sehingga ikut tergabung dengan kelas 0. Hal ini karena setiap tetangga tersebut memiliki bobot yang sama terhadap data uji, sedangkan nilai K yang terlalu kecil bisa menyebabkan algoritma terlalu sensitif terhadap noise. Nilai K yang bagus dapat dipilih berdasarkan optimisasi parameter, misalkan dengan cross validation (Eko Prasetyo, 2012).

Berikut ini adalah beberapa karakteristik kelebihan dan kekurangan metode KNN menurut Eko Prasetyo(2012).

1. KNN merupakan algoritma yang menggunakan seluruh data latih untuk melakukan proses klasifikasi (complete storage). Hal ini mengakibatkan proses prediksi yang sangat lama untuk data dalam jumlah yang sangat besar. Pendekatan lain adalah dengan menggunakan mean data dari setiap kelas, kemudian menghitung jarak terdekat data uji ke mean data setiap kelas tersebut. Hal ini memberi keuntungan kerja yang lebih cepat, tetapi hasilnya kurang memuaskan karena model hanya membentuk hyperplane tepat di tengah-tengah di antara 2 kelas yang memisahkan 2 kelas (untuk kasus 2 kelas). Semakin banyak data latih, semakin halus hyperplane

yang dibuat. Ada relasi pertukaran (trade- off relation) antara jumlah data latih pada biaya komputasi dengan kualitas batas keputusan (decision boundary) yang dihasilkan.


(38)

2. Algoritma KNN tidak membedakan setiap fitur dengan suatu bobot seperti pada Artificial Neural Network (ANN) yang berusaha menekan fitur yang tidak mempunyai kontribusi terhadap klasifikasi menjadi 0 pada bagian bobot. KNN tidak memiliki bobot untuk masing- masing fitur.

3. Karena KNN masuk kategori lazy learning yang menyimpan sebagian atau semua data dan hampir tidak ada proses pelatihan, KNN sangat cepat dalam proses pelatihan (karena memang tidak ada), tetapi sangat lambat dalam proses prediksi.

4. Hal yang rumit adalah menentukan nilai K yang paling sesuai. 5. Karena KNN pada prinsipnya memilih tetangga terdekat, parameter

jarak juga penting untuk dipertimbangkan sesuai dengan kasus datanya. Euclidean sangat cocok untuk menggunakan jarak terdekat (lurus) antara dua data, tetapi Manhattan sangat teguh (robust) untuk mendeteksi outlier dalam data.


(39)

2.3.2.Langkah Algoritma KNN

1. Tentukan parameter k = jumlah dokumen tetangga.

2. Hitung kemiripan antara dokumen baru dan dokumen pelatihan dengan menggunakan rumus cosine similarity (Manning, Raghavan, dan Schutze, 2008):

Sim(� , �) = �.

‖ ‖ ‖

(2.2)

(2.3)

Keterangan:

- � : dokumen j (dokumen pelatihan)

- � : query dokumen (dokumen test)

- ∑�=, : jumlah bobot kata i pada dokumen j - ∑�=, : jumlah bobot kata i pada dokumen q (test)

3. Urutkan nilai kesamaan dan tentukan tetangga terdekat berdasarkan jarak terkecil, banyak tetangga terdekat diambil dari parameter k. 4. Gunakan label mayoritas dari kategori dokumen tetangga sebagai

nilai prediksi dokumen test.

෍ �, �, �

=

ඩ෍ � , � =

ඩ෍ � , � = Sim(� , �) =


(40)

2.3.3.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, subse S1 diperlukan 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). Jika menggunakan 3 fold, maka akan dibagi menjadi 3 tahap seperti dibawah ini:

Tahap I

1. fold 1 sebagai data uji. 2. fold 2 sebagai data pelatihan. 3. fold 3 sebagai data pelatihan. Tahap II

1. fold 2 sebagai data uji. 2. fold 1 sebagai data pelatihan. 3. fold 3 sebagai data pelatihan. Tahap III

1. fold 3 sebagai data uji. 2. fold 1 sebagai data pelatihan. 3. fold 2 sebagai data pelatihan.

Setelah dilakukan cross-validation maka dilanjutkan dengan

precision untuk menentukan akurasi.

Precision = �ℎ � � �� � �


(41)

21

BAB III

METODOLOGI PENELITIAN

3.1. Gambaran Umum Sistem

Dalam penelitian ini, sistem yang dibangun adalah sistem pemerolehan informasi yang menggunakan data dalam format .txt. Sistem ini memiliki fungsi dalam melakukan identifikasi terhadap makna kata sabar dalam sebuah karya sastra Indonesia. Dalam proses identifikasi ini, dilakukan proses klasifikasi menggunakan metode KNN. Data dalam sistem ini akan dibagi menjadi 2 yaitu data traning

dan data testing. Data training di masukan ke dalam folder sesuai dengan maknanya.

Alur dalam sistem ini diawali dengan tahap preprocessing yang akan dilakukan terhadap data training maupun data testing. Prosesnya diawali dengan melakukan tokenisasi. Dalam tokenisasi baik data

training maupun data testing yang awalnya adalah sebuah kalimat lengkap dengan tanda bacanya akan dilakukan penghapusan karakter tanda baca, pemenggalan kata serta mengubah semua huruf menjadi huruf kecil. Tahap selanjutnya dalam preprocessing adalah stopword. Pada tahap stopword, akan dilakukan penghapusan kata-kata yang tidak mempengaruhi makna kalimat tersebut seperti kata ganti orang dan kata penghubung. Tahap selanjutnya yaitu stemming. Pada tahap stemming

akan dilakukan pengembalian kata ke bentuk kata dasarnya. Setelah ketiga tahap tersebut dilalui, tahap selanjutnya adalah menghitung tf atau jumlah kemunculan kata dalam dokumen. Setelah itu akan dilakukan proses penghitungan bobot. Tahap selanjutnya adalah tahap klasifikasi. Pada tahap klasifikasi ini, langkah awalnya dengan menentukan nilai k atau nilai jarak, kemudian menghitung cosine similarity, pengurutan kemiripan vektor dan menentukan label mayoritas. Berikut ini adalah skema yang digunakan. Gambaran sistem secara umum dapat dilihat pada gambar 3.1. dibawah ini:


(42)

Gambar 3.1 Gambaran Umum Sistem

3.1.1. Input Data

Data yang akan digunakan adalah data berupa kumpulan kalimat

yang mengandung kata dasar “sabar” yang didapatkan dari situs

CORCI dan sudah diklasifikasikan sebelumnya kedalam 6 kategori, yaitu: kata sifat, komunikasi, keadaan, urutan tindakan, pekerjaan, urutan giliran. Jumlah data sebanyak 108. Rincian banyaknya dokumen dalam sebuah kelas dapat dilihat pada tabel 3.1.1 dibawah ini:

Tabel 3. 1. 1. Daftar Data

No Kelas Jumlah data

1 Keadaan 33

2 Urutan Giliran 22

3 Urutan Tindakan 20

4 Komunikasi 15

5 Sifat 12

6 Pekerjaan 6

Input data

Preprocessing

Klasifikasi KNN

Hasil

Klasifikasi

Menentukan k Menghitung Cosine Similarity Mengurutkan Vektor Mencari label mayoritas Preprocessing

Tokenizing Stopword Stemming Text Frequency


(43)

3.1.2.Prepocessing

Pada tahap preprocessing ada 4 tahap yang harus berurutan yaitu: 1. Tokenisasi

- Sekumpulan Kalimat akan dipecah menjadi token.

- Kata diubah menjadi huruf kecil.

- Kata yang sudah menjadi token dan di ubah menjadi huruf kecil akan di hapus karakter yang tidak penting seperti tanda baca.

- Contoh hasil Tokenisasi dapat dilihat pada lampiran 1.

2. Stopword

- Pada tahap ini akan dilakukan penghapusan pada kata yang tidak berpengaruh terhadap proses pemerolehan informasi.

- Contoh hasil Stopword dapat dilihat pada lampiran 2.

3. Stemming

- Pada tahap ini kata yang memiliki imbuhan pada awalan, akhiran maupun awalan dan akhiran akan dikembalikan menjadi kata dasar.

- Contoh hasil Stemming dapat dilihat pada lampiran 3.

4. Text Frequency / pembobotan kata

- Pada tahap ini akan dilakukan pembobotan nilai dengan menggunakan TF/IDF.

- Hasil perhitungan Text Frequency dapat dilihat pada lampiran 4.


(44)

3.1.3.Klasifikasi KNN

Setelah melewati 4 tahap pada processing, selanjutnya adalah proses klasifikasi. Proses klasifikasi ini menggunakan metode KNN yang terbagi menjadi 4 tahap yaitu:

1. Menentukan k

- Nilai K adalah jumlah dokumen tetangga terdekat. Nilai K yang digunakan pada contoh ini adalah K= 8 dan K = 10.

2. Menghitung Cosine Similarity

- Cosine Similarity berfungsi untuk menghitung kemiripan antar dokumen.

- Hasil Cosine Similarity dapat dilihat padalampiran 5.

3. Mengurutkan Vektor.

- Data yang digunakan untuk mengurutkan vektor ini berasal dari hasil Cosine Similarity yang diurutkan dari nilai terkecil k terbesar.

- Hasil pengurutan dapat dilihat pada lampiran 6.

4. Mencari label mayoritas.

- Penentuan label mayoritas dilakukan dengan berdasarkan pada perolehan kelas terbanyak dalam urutan vektor sesuai dengan nilai K. Sebagai contoh jika nilai K = 8 dan kelas terbanyak yang muncul dalam 8 urutan vektor tersebut adalah kelas Keadaan, maka hasil klasifikasinya adalah kelas Keadaan.

- Hasil label mayoritas dapat dilihat pada lampiran 7.

- Jika k = 8 maka data test termasuk dalam kelas Sifat.

- Jika k = 10 maka data test termasuk dalam kelas komunikasi.


(45)

3.2. Analisa Kebutuhan Sistem 3.2.1.Definisi Aktor

Dalam sistem ini hanya ada 1 aktor yaitu user. User adalah aktor yang memiliki fasilitas untuk mengelola serta mengakses sistem seperti terlihat pada tabel 3.2.1 dibawah ini:

Tabel 3. 2. 1. Definisi Aktor

Aktor Fasilitas Akses

User - Input Dokumen

- Klasifikasi Dokumen

3.2.2.Diagram Use Case

Detail diagram use case dapat dilihat seperti pada gambar 3.2.2 dibawah ini:


(46)

3.2.3.Skenario Use Case

3.2.3.1. Skenario Use Case Input Dokumen 3.2.3.1.1. Input Kamus Stopword

Nama Use Case : Input Kamus Stopword

Aktor : User

Kondisi Awal : User menjalankan sistem

Kondisi Akhir : Dokumen kamus Stopword masuk kedalam sistem. Seperti pada tabel 3.2.3.1.1. berikut:

Tabel 3. 2. 3. 1. 1. Narasi Input Kamus Stopword

Aksi Aktor Reaksi sistem

1. User menekan tombol browse pada bagian kamus Stopword

2.Sistem menampilkan form load data

3. User memasukan

kamus Stopword

4. Sistem menampilkan

lokasi direktori kamus


(47)

3.2.3.1.2. Input Kamus Stemming

Nama Use Case : Input Kamus Stemming

Aktor : User

Kondisi Awal : User menjalankan sistem

Kondisi Akhir : Dokumen kamus Stemming masuk kedalam sistem. Seperti pada tabel 3.2.3.1.2 berikut:

Tabel 3. 2. 3. 1. 2. Narasi Input Kamus Stemming

Aksi Aktor Reaksi sistem

1.User menekan tombol browse pada bagian kamus Stemming

2. Sistem menampilkan form load data

3.User memasukan

kamus Stemming

4. Sistem menampilkan lokasi direktori kamus Stemming


(48)

3.2.3.1.3. Input Data Training

Nama Use Case : Input Data Training

Aktor : User

Kondisi Awal : User menjalankan sistem.

Kondisi Akhir : Dokumen Training masuk kedalam sistem. Seperti pada tabel 3.2.3.1.3 berikut:

Tabel 3. 2. 3. 1. 3. Narasi Input Data Training

Aksi Aktor Reaksi sistem

1.User menekan tombol browse pada bagian Data Training

2.Sistem menampilkan form load data

3.User memasukan Data

Training

4. Sistem menampilkan lokasi direktori Data Training


(49)

3.2.3.1.4. Input Data Testing

Nama Use Case : Input Data Testing

Aktor : User

Kondisi awal : User menjalankan sistem.

Kondisi Akhir : Dokumen Testing masuk kedalam sistem. Seperti pada tabel 3.2.3.1.4 berikut:

Tabel 3. 2. 3. 1. 4. Narasi Input Data Testing

Aksi Aktor Reaksi sistem

1.User menekan tombol browse pada bagian Data Testing

2.Sistem menampilkan form load data

3.User memasukan Data

Testing

4. Sistem menampilkan lokasi direktori Data Testing


(50)

3.2.3.2. Skenario Use Case Klasifikasi Dokumen 3.2.3.2.1. Input Nilai K

Nama Use Case : Input Nilai K

Aktor : User

Kondisi Awal : User menjalankan sistem.

Kondisi Akhir : Nilai K tersimpan pada sistem. Seperti pada tabel 3.2.3.2.1 berikut:

Tabel 3. 2. 3. 2. 1. Narasi Input Nilai K

Aksi Aktor Reaksi sistem

1. User menekan dan

memilih Nilai k pada bagian Nilai K

2.Sistem menyimpan nilai K yang telah dipilih


(51)

3.2.3.2.2. Klasifikasi

Nama Use Case : Klasifikasi

Aktor : User

Kondisi Awal : User menjalankan sistem.

Kondisi Akhir : Sistem menampilkan Hasil klasifikasi menggunakan knn. Seperti pada tabel 3.2.3.2.2 berikut:

Tabel 3. 2. 3. 2. 2. Narasi Klasifikasi

Aksi Aktor Reaksi sistem

1. User menekan button klasifikasi

2. Sistem melakukan proses

preprocessing dan

klasifikasi serta

menampilkan hasil


(52)

3.3. Perancangan Model Penyimpanan Data

Dalam sistem ini, terdapat penyimpanan data dalam bentuk .txt. Beberapa diantaranya adalah sebagai berikut:

1. Stopword.txt

Berisi daftar stopword yang akan digunakan untuk melakukan proses stopword / menghilangkan kata yang tidak mempengaruhi makna.

2. Stemming.txt

Berisi daftar kata dasar yang akan digunakan untuk mengembalikan daftar kata dalam dokumen yang telah melalui tahap stopword.

3.4. Diagram Konteks

Detail diagram konteks dapat dilihat pada gambar 3.4 berikut:

User

Sistem Identifikasi Makna Kata Sabar Menggunakan KNN Klasifikasi dokumen

Hasil klasifikasi


(53)

3.5. Diagram Aktivitas

3.5.1.Diagram Aktivitas Proses Input Dokumen 3.5.1.1. Input Stopword

Detail diagram aktivitas input Stopword dapat dilihat seperti pada gambar 3.5.1.1 dibawah ini:

Gambar 3. 5. 1. 1. Diagram Aktivitas Input Stopword

3.5.1.2. Input Stemming

Detail diagram aktivitas input Stemming dapat dilihat seperti pada gambar 3.5.1.2 dibawah ini:


(54)

3.5.1.3. Input Data Training

Detail diagram aktivitas input Data Training dapat dilihat seperti pada gambar 3.5.1.3 dibawah ini:

Gambar 3. 5. 1. 3. Diagram Aktivitas Input Data Training 3.5.1.4. Input Data Testing

Detail diagram aktivitas input Data Testing dapat dilihat seperti pada gambar 3.5.1.4 dibawah ini:


(55)

3.5.2.Diagram Aktivitas Proses Klasifikasi 3.5.2.1. Input Nilai K

Detail diagram aktivitas input Data Testing dapat dilihat seperti pada gambar 3.5.2.1 dibawah ini:

Gambar 3. 5. 2. 1. Diagram Aktivitas Input Nilai K 3.5.2.2. Klasifikasi

Detail diagram aktivitas input Data Testing dapat dilihat seperti pada gambar 3.5.2.2 dibawah ini:


(56)

36

BAB IV

IMPLEMENTASI

4.1. Spesifikasi Software dan Hardware yang dibutuhkan 4.1.1.Spesifikasi Software

Spesifikasi software yang digunakan adalah sebagai berikut: Sistem operasi : Windows 7 Ultimate

Aplikasi : Netbeans IDE 8.1

Bahasa Pemrograman : Java (jdk 1.7.0_13)

4.1.2.Spesifikasi Hardware

Spesifikasi hardware yang digunakan adalah sebagai berikut:

Processor : Intel core i3

Memory : 4 GB


(57)

4.2. Implementasi Antar Muka

Tampilan antar muka sistem dapat dilihat pada gambar 4.2.1. dan 4.2.2 seperti berikut:

Gambar 4. 2. 1. Antar Muka Awal


(58)

4.3. Implementasi Sistem

4.3.1.Implementasi Preprocessing 4.3.1.1. Implementasi Tokenisasi

Pada langkah tokenisasi ini akan dilakukan penghapusan tanda baca, pemotongan kalimat menjadi token dan mengubah huruf menjadi lower case seperti pada list code 4.3.1.1 dibawah ini:

public void Tokenize() { if (tokenized) { return; } try {

FileInputStream fis = new FileInputStream(filename); Scanner s = new Scanner(fis);

if (daftarKata == null) {

daftarKata = new ArrayList<>(); } else {

daftarKata.clear(); }

while (s.hasNext()) { String text = s.next();

String kata = text.replaceAll("[^a-zA-Z0-9&&[^\\-]]", ""); daftarKata.add(kata);

}

tokenized = true;

} catch (FileNotFoundException ex) { tokenized = false;

Logger.getLogger(Dokumen.class.getName()).log(Level.SEVERE, null, ex);

} }


(59)

4.3.1.2. Implementasi Stopword

Pada langkah Stopword ini akan dilakukan penghapusan kata yang tidak mempengaruhi makna seperti kata penghubung dan lain sebagainya berdasarkan kamus Stopword seperti pada list code 4.3.1.2 dibawah ini:

public void bacakamusstopword(String filename) { try {

FileInputStream FIS = new FileInputStream(filename); Scanner sc = new Scanner(FIS);

kamusStopWord = new ArrayList<>(); while (sc.hasNext()) {

kamusStopWord.add(sc.next()); }

} catch (FileNotFoundException ex) {

Logger.getLogger(tampilstopword.class.getName()).log(Level.SEVERE, null, ex);

}}

public void hapusstopword() { if (removedStopWords) { return;

}

if (kamusStopWord == null) {

throw new IllegalStateException("Kamus stopword belum ada"); }

if (!tokenized) {

throw new IllegalStateException("Dokumen belum di-tokenize"); }

Iterator<String> i = daftarKata.iterator(); while (i.hasNext()) {

String token = i.next();

if (kamusStopWord.contains(token)) { i.remove();

}}

removedStopWords = true; }


(60)

4.3.1.3. Implementasi Stemming

Pada langkah Stemming ini akan dilakukan pengembalian kata ke bentuk kata dasarnya berdasarkan kamus kata dasar seperti pada list code 4.3.1.3 dibawah ini:

public void bacakamus(String path) { try {

FileInputStream fis = new FileInputStream(path); Scanner s = new Scanner(fis);

kamusKataDasar = new HashSet<>(); while (s.hasNext()) {

kamusKataDasar.add(s.next()); }

} catch (FileNotFoundException ex) {

Logger.getLogger(tampilstopword.class.getName()).log(Level.SEVERE, null, ex);

}}

public void stem() { if (stemmed) { return; }

if (kamusKataDasar == null || kamusKataDasar.isEmpty()) { throw new IllegalStateException("Kamus kata dasar belum ada"); }

if (!removedStopWords) {

throw new IllegalStateException("Stopwords belum dibuang"); }

Lemmatizer stemmer = new DefaultLemmatizer(kamusKataDasar); for (int i = 0; i < daftarKata.size(); i++) {

String kata = daftarKata.get(i);

daftarKata.set(i, stemmer.lemmatize(kata)); }

stemmed = true; }


(61)

4.3.1.4. Implementasi Tf

Pada langkah Tf ini akan dilakukan penghitungan frekuensi kemunculan kata dalam sebuah dokumen seperti pada list code 4.3.1.4 dibawah ini:

public int getTermFrequency(String term, Dokumen doc) { TermDocumentPair key = new TermDocumentPair(term, doc); if (tableTF.containsKey(key)) {

return tableTF.get(key); } else {

int count = 0;

for (String kata : doc.daftarKata) { if (kata.equals(term)) {

count++; }

}

tableTF.put(key, count); return count;

} }


(62)

4.3.1.5. Implementasi Idf

Pada langkah Idf ini akan dilakukan penghitungan inverse dari banyaknya dokumen dimana suatu term tersebut muncul seperti pada list code 4.3.1.5 dibawah ini:

public int getDocumentFrequency(String term) { if (tableDF.containsKey(term)) {

return tableDF.get(term); } else {

int c = 0;

for (Dokumen d : master.documents) { if (d.daftarKata.contains(term)) { c++;

} }

tableDF.put(term, c); return c;

} }

public double getInverseDocumentFrequency(String term) { return Math.log(master.documents.size() /

getDocumentFrequency(term)); }


(63)

4.3.1.6. Implementasi Pembobotan

public double getWeight(String term, Dokumen doc) { return getTermFrequency(term, doc) *

getInverseDocumentFrequency(term); }

public double getInnerProduct(String term, Dokumen doc) { return getWeight(term, doc) * getWeight(term, docTest); }

public Matrix getPanjangVektor() {

int r = allTerms.size(), c = master.documents.size(); Matrix m = new Matrix(r, c);

String[] terms = new String[r]; allTerms.toArray(terms); for (int i = 0; i < r; i++) { for (int j = 0; j < c; j++) {

double w = getWeight(terms[i], master.documents.get(j)); m.set(i, j, w * w);

} } return m; }


(64)

4.3.2.Implementasi Klasifikasi

4.3.2.1. Implementasi Hiitung Cosine Similarity

public Map<Dokumen, Double> cosineSimilarities() { int r = allTerms.size(), c = master.documents.size(); Matrix panjangVektor = getPanjangVektor(); Matrix innerProduct = new Matrix(r, c); String[] terms = new String[r];

allTerms.toArray(terms); for (int i = 0; i < r; i++) { for (int j = 0; j < c; j++) {

innerProduct.set(i, j, getInnerProduct(terms[i], master.documents.get(j)));

} }

Map<Dokumen, Double> res = new HashMap<>(c - 1); int docTestIdx = 0;

for (int i = 0; i < master.documents.size(); i++) { Dokumen d = master.documents.get(i); if (d == docTest) {

docTestIdx = i; continue; }

double atas = innerProduct.sumCol(i);

double bawah = Math.sqrt(panjangVektor.sumCol(i) * panjangVektor.sumCol(docTestIdx));

res.put(d, atas / bawah); }

return res; }


(65)

4.3.2.2. Implementasi Hitung Label Mayoritas

public Kelas classify(int k) {

Map<Dokumen, Double> matrix = cosineSimilarities();

TreeSet<Map.Entry<Dokumen, Double>> asd = new TreeSet(new Comparator<Map.Entry<Dokumen, Double>>() {

@Override

public int compare(Map.Entry<Dokumen, Double> o1, Map.Entry<Dokumen, Double> o2) {

return Double.compare(o1.getValue(), o2.getValue()); }

});

asd.addAll(matrix.entrySet());

List<Entry<Dokumen, Double>> neighbors = new ArrayList<>(asd).subList(0, k);

int numOfClass = master.classes.size(); int[] as = new int[numOfClass];

for (Entry<Dokumen, Double> neighbor : neighbors) { for (int i = 0; i < as.length; i++) {

Kelas kelas = master.classes.get(i);

if (kelas.getDaftarDokumen().contains(neighbor.getKey())) { as[i]++;

}}}

int max = max(as);

return master.classes.get(max); }

static int max(int[] arr) { int max = arr[0]; for (int i : arr) { if (i > max) { max = i; }

}

return max; }


(66)

46

BAB V

HASIL DAN PEMBAHASAN

5.1. Pengujian

5.1.1.K fold Cross Validation

Dalam pengujian ini dilakukan manual dengan menggunakan metode k fold cross validation. Dalam pengujian ini data training akan dibagi kedalam k fold. Fold ini akan diisi dengan data training yang dibagi ke masing-masing fold secara merata. Setiap fold nantinya akan bergantian menjadi data training dan data testing sesuai dengan jumlah fold. Setelah proses penghitungan akurasi dilakukan maka akan dihitung presentasi data yang terkasifikasi dengan tepat oleh sistem sesuai dengan kategori awal.


(67)

5.1.1.1. 3 Fold

Pada pengujian dengan menggunakan 3 fold, 108 data training akan dibagi menjadi 3 bagian seperti pada tabel 5.1.1.1 dibawah ini:

Tabel 5. 1. 1. 1. Pembagian Data 3 Fold

fold 1 fold 2 fold 3

keadaan1 keadaan12 keadaan23

keadaan2 keadaan13 keadaan24

keadaan3 keadaan14 keadaan25

keadaan4 keadaan15 keadaan26

keadaan5 keadaan16 keadaan27

keadaan6 keadaan17 keadaan28

keadaan7 keadaan18 keadaan29

keadaan8 keadaan19 keadaan30

keadaan9 keadaan20 keadaan31

keadaan10 keadaan21 keadaan32

keadaan11 keadaan22 keadaan33

Pekerjaan1 Pekerjaan3 Pekerjaan5

Pekerjaan2 Pekerjaan4 Pekerjaan6

sifat1 sifat5 sifat9

sifat2 sifat6 sifat10

sifat3 sifat7 sifat11

sifat4 sifat8 sifat12

komunikasi1 komunikasi6 komunikasi11

komunikasi2 komunikasi7 komunikasi12

komunikasi3 komunikasi8 komunikasi13

komunikasi4 komunikasi9 komunikasi14

komunikasi5 komunikasi10 komunikasi15

urutan giliran1 urutan giliran8 urutan giliran15 urutan giliran2 urutan giliran9 urutan giliran16 urutan giliran3 urutan giliran10 urutan giliran17 urutan giliran4 urutan giliran11 urutan giliran18 urutan giliran5 urutan giliran12 urutan giliran19 urutan giliran6 urutan giliran13 urutan giliran20 urutan giliran7 urutan giliran14 urutan giliran21 urutan tindakan1 urutan tindakan8 urutan giliran22 urutan tindakan2 urutan tindakan9 urutan tindakan15 urutan tindakan3 urutan tindakan10 urutan tindakan16 urutan tindakan4 urutan tindakan11 urutan tindakan17 urutan tindakan5 urutan tindakan12 urutan tindakan18 urutan tindakan6 urutan tindakan13 urutan tindakan19 urutan tindakan7 urutan tindakan14 urutan tindakan20


(68)

Dengan pembagian data untuk setiap tahap: Tahap I

fold 1 sebagai data uji.

fold 2 sebagai data pelatihan.

fold 3 sebagai data pelatihan. Tahap II

fold 2 sebagai data uji.

fold 1 sebagai data pelatihan.

fold 3 sebagai data pelatihan. Tahap III

fold 3 sebagai data uji.

fold 1 sebagai data pelatihan.

fold 2 sebagai data pelatihan.


(69)

5.2. Analisa Hasil

Berdasar pada pengujian yang telah dilakukan pada langkah sebelumnya maka diperoleh rincian nilai akurasi dengan menggunakan nilai k = 4 hingga nilai k = 7.

a. Pengujian dengan nilai K = 4 Tahap 1 (K = 4)

Pada pengujian dengan 36 data uji pada tahap 1, diperoleh hasil 10 data yang relevan / terklasifikasi dengan benar, 26 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 1 diperoleh nilai akurasi 27,8%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.1.1 dibawah ini:

Tabel 5. 2. 1. 1 Tahap 1 (K = 4)

Jml data 36

Jml data relevan 10

Jml data tidak relevan 26

Akurasi 27,8

Tahap 2 (K = 4)

Pada pengujian dengan 36 data uji pada tahap 2, diperoleh hasil 10 data yang relevan / terklasifikasi dengan benar, 26 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 2 diperoleh nilai akurasi 27,8%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.1.2 dibawah ini:

Tabel 5. 2. 1. 2. Tahap 2 (K = 4)

Jml data 36

Jml data relevan 10

Jml data tidak relevan 26


(70)

Tahap 3 (K= 4)

Pada pengujian dengan 36 data uji pada tahap 3, diperoleh hasil 8 data yang relevan / terklasifikasi dengan benar, 28 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 3 diperoleh nilai akurasi 22,2%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.1.3 dibawah ini:

Tabel 5. 2. 1. 3. Tahap 3 (K = 4)

Jml data 36

Jml data relevan 8

Jml data tidak relevan 28

Akurasi 22,2

Dari 3 tahap pengujian yang telah dilakukan dengan menggunakan nilai K = 4 diperoleh nilai rata – rata 25,9% dengan rincian seperti pada tabel 5.2.1.4 dibawah ini:

Tabel 5. 2. 1. 4. Rata - Rata Akurasi (K = 4)

K = 4 %

Akurasi Tahap 1 27,8

Akurasi Tahap 2 27,8

Akurasi Tahap 3 22,2


(71)

b. Pengujian dengan nilai K = 5 Tahap 1 (K = 5)

Pada pengujian dengan 36 data uji pada tahap 1, diperoleh hasil 9 data yang relevan / terklasifikasi dengan benar, 27 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 1 diperoleh nilai akurasi 25%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.2.1 dibawah ini:

Tabel 5. 2. 2. 1. Tahap 1 (K = 5)

Jml data 36

Jml data relevan 9

Jml data tidak relevan 27

Akurasi 25

Tahap 2 (K = 5)

Pada pengujian dengan 36 data uji pada tahap 2, diperoleh hasil 9 data yang relevan / terklasifikasi dengan benar, 27 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 2 diperoleh nilai akurasi 25%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.2.2 dibawah ini:

Tabel 5. 2. 2. 2. Tahap 2 (K = 5)

Jml data 36

Jml data relevan 9

Jml data tidak relevan 27


(72)

Tahap 3 (K = 5)

Pada pengujian dengan 36 data uji pada tahap 3, diperoleh hasil 11 data yang relevan / terklasifikasi dengan benar, 25 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 3 diperoleh nilai akurasi 30,6%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.2.3 dibawah ini:

Tabel 5. 2. 2. 3. Tahap 3 (K = 5)

Jml data 36

Jml data relevan 11

Jml data tidak relevan 25

Akurasi 30,6

Dari 3 tahap pengujian yang telah dilakukan dengan menggunakan nilai K = 5 diperoleh nilai rata – rata 26,9% dengan rincian seperti pada tabel 5.2.2.4 dibawah ini:

Tabel 5. 2. 2. 4. Rata - Rata Akurasi (K = 5)

K = 5 %

Akurasi Tahap 1 25

Akurasi Tahap 2 25

Akurasi Tahap 3 30,6


(73)

c. Pengujian dengan nilai K = 6 Tahap 1 (K = 6)

Pada pengujian dengan 36 data uji pada tahap 1, diperoleh hasil 12 data yang relevan / terklasifikasi dengan benar, 24 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 1 diperoleh nilai akurasi 33,3%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.3.1 dibawah ini:

Tabel 5. 2. 3. 1. Tahap 1 (K = 6)

Jml data 36

Jml data relevan 12

Jml data tidak relevan 24

Akurasi 33,3

Tahap 2 (K = 6)

Pada pengujian dengan 36 data uji pada tahap 2, diperoleh hasil 12 data yang relevan / terklasifikasi dengan benar, 24 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 2 diperoleh nilai akurasi 33,3%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.3.2 dibawah ini:

Tabel 5. 2. 3. 2. Tahap 2 (K = 6)

Jml data 36

Jml data relevan 12

Jml data tidak relevan 24


(74)

Tahap 3 (K = 6)

Pada pengujian dengan 36 data uji pada tahap 3, diperoleh hasil 10 data yang relevan / terklasifikasi dengan benar, 26 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 3 diperoleh nilai akurasi 27,8%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.3.3 dibawah ini:

Tabel 5. 2. 3. 3. Tahap 3 (K = 6)

Jml data 36

Jml data relevan 10

Jml data tidak relevan 26

Akurasi 27,8

Dari 3 tahap pengujian yang telah dilakukan dengan menggunakan nilai K = 6 diperoleh nilai rata – rata 31,5% dengan rincian seperti pada tabel 5.2.3.4 dibawah ini:

Tabel 5. 2. 3. 4. Rata - Rata Akurasi (K = 6)

K = 6 %

Akurasi Tahap 1 33,3

Akurasi Tahap 2 33,3

Akurasi Tahap 3 27,8


(75)

d. Pengujian dengan nilai K = 7. Tahap 1 (K = 7)

Pada pengujian dengan 36 data uji pada tahap 1, diperoleh hasil 14 data yang relevan / terklasifikasi dengan benar, 22 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 1 diperoleh nilai akurasi 38,89%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.4.1 dibawah ini:

Tabel 5. 2. 4. 1. Tahap 1 (K = 7)

Jml data 36

Jml data relevan 14

Jml data tidak relevan 22

Akurasi 38,89

Tahap 2 (K = 7)

Pada pengujian dengan 36 data uji pada tahap 2, diperoleh hasil 14 data yang relevan / terklasifikasi dengan benar, 22 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 2 diperoleh nilai akurasi 38,89%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.4.2 dibawah ini:

Tabel 5. 2. 4. 2. Tahap 2 (K = 7)

Jml data 36

Jml data relevan 14

Jml data tidak relevan 22


(76)

Tahap 3 (K = 7)

Pada pengujian dengan 36 data uji pada tahap 3, diperoleh hasil 13 data yang relevan / terklasifikasi dengan benar, 23 data lainnya berhasil terklasifikasi namun tidak sesuai dengan kelas atau kategori yang sebenarnya. Pada pengujian tahap 3 diperoleh nilai akurasi 36,1%. Rincian lengkapnya dapat dilihat seperti pada tabel 5.2.4.3 dibawah ini:

Tabel 5. 2. 4. 3. Tahap 3 (K = 7)

Jml data 36

Jml data relevan 13

Jml data tidak relevan 23

Akurasi 36,1

Dari 3 tahap pengujian yang telah dilakukan dengan menggunakan nilai K = 7 diperoleh nilai rata – rata 37,96% dengan rincian seperti pada tabel 5.2.4.4 dibawah ini:

Tabel 5. 2. 4. 4. Rata - Rata Akurasi (K = 7)

K = 7 %

Akurasi Tahap 1 38,89

Akurasi Tahap 2 38,89

Akurasi Tahap 3 36,1


(77)

Dari perhitungan akurasi menggunakan cross validation 3 fold

dan menggunakan nilai K = 4 hingga nilai K = 7 didapatkan akurasi tertinggi pada nilai K = 7 yang dilakukan pada tahap 1 dan tahap 2 yaitu sebesar 38,89%. Rata – rata akurasi tertinggi dari tiga tahap cross validation dengan menggunakan 3 fold adalah sebesar 37,96 dengan nilai K = 7.

Dalam proses klasifikasi ini tentunya terdapat faktor yang mempengaruhi hasil akurasi. Nilai tf atau frekuensi kemunculan kata dalam dokumen antara data training dan data testing sangat berpengaruh. Banyaknya kesesuaian tf antara data training dengan data test dalam sebuah kelas akan sangat menentukan hasil klasifikasi.

Makin bervariasinya sebuah tf yang memiliki kesesuaian dengan data training akan meningkatkan keakuratan hasil klasifikasi dari data testing. Sebaliknya dengan minimnya kesesuaian variasi tf dengan data training maka akan membuat kurang akuratnya hasil klasifikasi.


(78)

58

BAB VI

PENUTUP

6.1. Kesimpulan

Melalui penelitian yang telah dilakukan dapat disimpulkan bahwa: 1. Identifikasi makna kata sabar dengan menggunakan metode KNN

dan metode cross validation dengan nilai fold 3 memperoleh hasil akurasi tertinggi sebesar 38,89% dengan nilai K = 7 yang terdapat pada tahap 1 dan tahap 2. Rata – rata akurasi tertinggi yang didapat adalah 37,96% dengan nilai K = 7.

2. Penentuan nilai K dalam klasifikasi dengan metode KNN sangat mempengaruhi hasil akhir klasifikasi. Jika nilai K yang dipilih sangat kecil maka hasilnya akan kurang maksimal karena yang menjadi hasil akhir adalah kelas yang memiliki nilai cosine similarity paling dekat dengan data testing, bukan berdasarkan banyaknya label mayoritas yang muncul.

3. Pemilihan data yang akan digunakan sebagai data training sangat mempengaruhi hasil akhir klasifikasi.

4. Banyaknya data training akan sangat mempengaruhi hasil klasifikasi karena dipengaruhi oleh adanya nilai kesesuaian tf yang sering muncul antara data training dan data testing.

5. Banyaknya variasi kata yang sesuai antara data training dan data testing dalam dokumen akan mempengaruhi hasil akhir.


(79)

6.2. Saran

1. Daftar kata dalam Kamus Stopword sangat berpengaruh dalam mengeliminasi kata yang tidak mempengaruhi makna pada data training dan data testing. Sebuah kamus Stopword yang tepat akan mengurangi variasi kata yang tidak memiliki kecocokan diantara data training dan data testing.

2. Penggunaan kamus sinonim dapat menambah akurasi klasifikasi. Sebuah kata yang telah melewati tahap stopword dan stemming yang memiliki makna sama namun dengan penulisan yang berbeda dapat memberikan nilai yang lebih tinggi pada tahap pembobotan dan dapat memberikan pengaruh yang lebih baik pada tahap klasifikasi.


(80)

60

DAFTAR PUSTAKA

Croft, W. Bruce, Metzler, Donald, Strohman, Trevor. 2010. Search Engines Information Retrieval in Practice. Pearson Education, Inc. United States of America.

Dwijatmoko, B.B. 2016. Ideologi Kesabaran dalam Karya Sastra Indonesia. Buku Kumpulan Makalah Kongres Internasional Masyarakat Linguistik Indonesia, pp. 103-106.

Feldman, Ronen, Sanger, James. 2007. The Text Mining Handbook. Cambridge, New York.

Han, J & Kamber, M. 2006. Second Edition: Data Mining concepts and Techniques. Morgan Kaufmann, San Fransisco.,

Hersh, William R. 2003. Information Retrieval: a health and biomedical perspective. Springer-Verlag New York, Inc United States of America. Librian, Andy, Kukuh, R. 2014. Library Sastrawi Stemmer

https://github.com/jsastrawi/jsastrawi. Diakses tanggal 15 September 2016.

Manning, Christopher D., Raghavan, Prabhakar, Schutze, Hinrich. 2008.

Introduction to Information Retrieval. Cambridge University Press. Cambridge, New York.

Prasetyo, Eko. 2012. Data Mining: Konsep dan Aplikasi menggunakan MATLAB. Andi, Yogyakarta.

Widyaastuti P, Veverly. 2014. “Sistem Klasifikasi Dokumen Bahasa Jawa Dengan Metode K-Nearest Neighbor(K-NN)”. Skripsi Tidak Dipublikasikan. Universitas Sanata Dharma, Yogyakarta.

Yusup, Pawit M., Subekti, Priyo. 2010. Teori dan praktik penelusuran informasi (information retrieval) : dilengkapi dengan daftar alamat situs, jurnal ilmiah elektronik, perpustakaan virtual perguruan tinggi, koran elektronik, dan beberapa situs mesin penelusuran informasi terkenal. Kencana, Jakarta.


(1)

(2)

LAMPIRAN 6

Hasil Pengurutan Vektor


(3)

Hasil Label Mayoritas


(4)

LAMPIRAN 8

Hasil Cross Validation 3 Fold

Pada tabel dibawah ini, angka 1 menunjukan data training yang terklasifikasi dengan benar.

Tahap 1

K = 4 K = 5 K = 6 K = 7

keadaan1 1

keadaan2 1 1 1

keadaan3

keadaan4 1 1

keadaan5 1 1

keadaan6 1 1

keadaan7 1 1 1

keadaan8 1

keadaan9 1 1

keadaan10 1

keadaan11 1

Pekerjaan1

Pekerjaan2

sifat1 1

sifat2

sifat3 1

sifat4

komunikasi1

komunikasi2

komunikasi3 1

komunikasi4 1 1 1

komunikasi5

urutan giliran1 1 1

urutan giliran2 1 1

urutan giliran3 1 1

urutan giliran4 1 1

urutan giliran5 1 1 1

urutan giliran6 1 1 1

urutan giliran7 1 1 1

urutan tindakan1

urutan tindakan2

urutan tindakan3

urutan tindakan4 1 1


(5)

urutan tindakan7 1 Tahap 2

K = 4

K = 5 K = 6 K = 7

keadaan12 1 1

keadaan13 1 1 1

keadaan14 1 1

keadaan15 1

keadaan16 1 1 1 1

keadaan17

keadaan18 1 1

keadaan19 1

keadaan20 1 1 1 1

keadaan21 1 1 1

keadaan22 1 1 1

Pekerjaan3

Pekerjaan4

sifat5

sifat6

sifat7

sifat8 1

komunikasi6

komunikasi7

komunikasi8

komunikasi9 1

komunikasi10 1 1 1 1

urutan giliran8 1 1

urutan giliran9 1

urutan giliran10 1 1

urutan giliran11 1

urutan giliran12 1

urutan giliran13 1 1

urutan giliran14 1

urutan tindakan8

urutan tindakan9

urutan tindakan10 1 1

urutan tindakan11

urutan tindakan12

urutan tindakan13 1 1


(6)

Tahap 3 K = 4 K = 5 K =

6 K = 7

keadaan23 1

keadaan24 1

keadaan25 1 1 1

keadaan26

keadaan27 1

keadaan28 1

keadaan29

keadaan30 1 1 1 1

keadaan31

keadaan32 1 1 1

keadaan33 1

Pekerjaan5 1

Pekerjaan6 sifat9 sifat10 sifat11 sifat12 komunikasi11 komunikasi12 komunikasi13 komunikasi14 komunikasi15

urutan giliran15 1 1 1

urutan giliran16 1 1 1 1

urutan giliran17 1 1 1 1

urutan giliran18 1 1 1

urutan giliran19 1 1 1

urutan giliran20 1 1 1

urutan giliran21 1 1

urutan giliran22 1 1 1

urutan tindakan15

urutan tindakan16 1

urutan tindakan17

urutan tindakan18

urutan tindakan19