PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION

Ukuran: px
Mulai penontonan dengan halaman:

Download "PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION"

Transkripsi

1 TUGAS AKHIR KS PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION DETECTION OF LOCATION NAME IN PUBLIC INFORMATION ON SOCIAL MEDIA IN SURABAYA CITY BASED ON NAMED-ENTITY RECOGNITION HANUM FITRIANI AYU KUMALA NRP Dosen Pembimbing : Renny Pradina Kusumawardani S.T., M.T. JURUSAN SISTEM INFORMASI Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya 2017 i

2

3 TUGAS AKHIR KS PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION HANUM FITRIANI AYU KUMALA NRP Dosen Pembimbing : Renny Pradina Kusumawardani S.T., M.T. JURUSAN SISTEM INFORMASI Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya 2017 i

4 FINAL PROJECT KS DETECTION OF LOCATION NAME IN PUBLIC INFORMATION ON SOCIAL MEDIA IN SURABAYA CITY BASED ON NAMED-ENTITY RECOGNITION HANUM FITRIANI AYU KUMALA NRP SUPERVISOR: Renny Pradina Kusumawardani S.T., M.T. DEPARTMENT OF INFORMATION SYSTEMS Faculty of Information Technology Institut Teknologi Sepuluh Nopember Surabaya 2017 ii

5 LEMBAR PENGESAHAN PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION TUGAS AKHIR Disusun Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer pada Jurusan Sistem Informasi Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Oleh: UHANUM FITRIANI AYU KUMALA NRP Surabaya, Januari 2017 KETUA JURUSAN SISTEM INFORMASI Dr. Ir. Aris Tjahyanto, M.Kom NIP iii

6 LEMBAR PERSETUJUAN PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION TUGAS AKHIR Disusun Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer pada Jurusan Sistem Informasi Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Oleh : UHANUM FITRIANI AYU KUMALA NRP Disetujui Tim Penguji :Tanggal Ujian : 11 Januari 2017 Periode Wisuda : Maret 2017 Renny Pradina Kusumawardani S.T., M.T. Nur Aini R., S.Kom., M.Sc.Eng., Ph.D Faizal Johan Atletiko, S.Kom., M.T. (Pembimbing I) (Penguji I) (Penguji II) iv

7 PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION Nama Mahasiswa : Hanum Fitriani Ayu Kumala NRP : Jurusan : Sistem Informasi FTIf-ITS Pembimbing 1 : Renny Pradina Kusumawardani S.T., M.T. ABSTRAK Media sosial saat ini sangat berkembang seiring dengan jumlah pengguna yang terus meningkat di seluruh dunia, termasuk Indonesia. Seperti pada media sosial facebook, terdapat kurang lebih 65 juta pengguna Facebook aktif untuk wilayah Indonesia. Hal tersebut membuktikan bahwa media sosial memiliki informasi yang melimpah dan dapat menjadi sumber informasi yang berharga. Di sisi lain, penyajian informasi oleh media sosial saat ini dirasa kurang efektif sehingga kurang relevan. Untuk itu diperlukan sistem untuk mengolah informasi yang ada. Named Entity Recognition atau NER merupakan salah satu teknik berbasis entitas yang dikembangkan untuk melakukan pengolahan tersebut, supaya informasi yang diberikan menjadi lebih relevan bagi pengguna. Pada penelitian ini, dikembangkan suatu modul Named Entity Recognition yang secara spesifik mengolah informasi-informasi seputar kota Surabaya yang dibagi oleh masyarakat melalui media sosial yaitu Facebook fanpage E100. Informasi yang diidentifikasi dengan mengunakan NER dalam penelitian ini adalah entitas lokasi yang ada dalam teks status Facebook. Penggunaan Named Entity Recognition dilakukan dalam beberapa tahapan. Tahapan tersebut diawali dengan pencarian nama-nama lokasi kota Surabaya yang didapat dari Open Street Map dan Dinas PU Bina Marga. Selanjutnya, diperlukan v

8 praproses data yang berupa penghapusan kata-kata lokasi yang duplikat, pemuatan data teks, matching data teks dengan lokasi, tokenization, labeling dengan program maupun manual, serta pembagian dataset training dan testing berdasarkan cross validation. Pada penelitian ini ditemukan bahwa pada proses labeling dengan program kurang efisien jika dibandingkan dengan proses labeling secara manual. Selain hal tersebut, dalam menentukan feature extractor apa saja yang digunakan untuk menghasilkan performa yang optimal, digunakan metode seleksi forward selection serta backward elimination. Dari hasil percobaan didapatkan 2 model terbaik yang menghasilkan rata-rata F-Measure sebesar dan Selain itu, berdasarkan hasil analisa model juga didapatkan 9 feature extractor yang dirasa penting dalam pembuatan model NER pada studi kasus ini. Kata kunci: Media Sosial, Surabaya, Named Entity Recognition, Indonesian Named Entity Recognition vi

9 DETECTION OF LOCATION NAME IN PUBLIC INFORMATION ON SOCIAL MEDIA IN SURABAYA CITY BASED ON NAMED-ENTITY RECOGNITION Student Name : Hanum Fitriani Ayu Kumala NRP : Department : Sistem Informasi FTIf-ITS Supervisor 1 : Renny Pradina Kusumawardani S.T., M.T. ABSTRACT Social media nowadays is highly developed as the number of users continues to increase around the world, including Indonesia. As on facebook social media, there were approximately 65 million active users to Indonesia. From this data, it is proved that social media has a huge number of information stored and can be a valuable source of information. On the other hand, the presentation of information by social media today is less effective so it is less relevant. In this case, it is necessary to provide a system that able to process the information available. Named Entity Recognition or NER is an entity based technique that was developed to perform such processing, so that the information provided more relevant to users. In this study, we developed a Named Entity Recognition module which specifically processing the information about the city of Surabaya, which is shared by the public through social media namely E100 Facebook Fanpage. The information identified by using NER in this study is a location entity which exists in the Facebook status text. The use of Named Entity Recognition is done in several stages. The first step is finding the location names of city of Surabaya from Open Street Map and the Department of Public Works. The next step is data preprocessing include removing the words of duplicate locations, loading text data, matching the text vii

10 data with the location, tokenization, and labeling through programs and manual approach, as well as dividing the dataset into training and testing dataset based on cross validation. This study found that in the process of labeling through program is less efficient than the labeling process through manual approach. In addition to that, in determining what feature extractors are used to produce optimal performance, we use forward selection methods and backward elimination methods. From the experiment results, obtained 2 best models that generates average F-Measure value of and In addition, based on the results of the model analysis we also obtained 9 feature extractors which are considered to be essential for NER modeling in this case study. Keywords: Social Media, Surabaya, Named Entity Recognition, Indonesian Named Entity Recognition viii

11 KATA PENGANTAR Puji dan syukur penulis tuturkan ke hadirat Allah SWT, Tuhan Semesta Alam yang telah memberikan kekuatan dan hidayah-nya kepada penulis sehingga penulis mendapatkan kelancaran dalam menyelesaikan tugas akhir dengan judul: PENDETEKSIAN NAMA LOKASI DARI INFORMASI PUBLIK PADA MEDIA SOSIAL KOTA SURABAYA BERBASIS NAMED-ENTITY RECOGNITION yang merupakan salah satu syarat kelulusan pada Jurusan Sistem Informasi, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember Surabaya. Terima kasih penulis sampaikan kepada pihak-pihak yang telah mendukung, memberikan saran, motivasi, semangat, dan bantuan baik berupa materiil maupun moril demi tercapainya tujuan pembuatan tugas akhir ini. Tugas akhir ini tidak akan pernah terwujud tanpa bantuan dan dukungan dari berbagai pihak yang sudah melauangkan waktu, tenaga dan pikirannya. Secara khusus penulis akan menyampaikan ucapan terima kasih yang sebanyakbanyaknya kepada: 1) Orang tua dan kakak penulis, Bapak Ir.Putro Kumolo (Alm), Bapak Siswanto, Ibu Supatminingsih, Ivan Pudya Putra dan Lely Agustining Ayu Kumala yang telah memberikan motivasi, semangat, keyakinan, kasih sayang serta doa sehingga penulis mampu menyelesaikan pendidikan S1 ini dengan baik. 2) Ibu Renny Pradina Kusumawardani ST., MT. selaku dosen pembimbing yang telah dengan sabar dan telaten memberikan ilmu, petunjuk, dan motivasi sehingga penulis dapat menyelesaikan Tugas Akhir ini. 3) Dinas PU Bina Marga dan Pematusan Kota Surabaya khususnya kepada Adel yang telah membantu penulis dalam ix

12 mengumpulkan data dan informasi terkait keperluan Tugas Akhir ini. 4) Ibu Mahendrawathi ER, ST., MSc., Ph.D. selaku dosen wali penulis selama menempuh pendidikan di Jurusan Sistem Informasi yang telah memberikan pengalaman serta nasehat kepada penulis selama ini. 5) Ibu Nur Aini Rakhmawati, S.Kom., M.Sc.Eng., Ibu Irmasari Hafidz, S.Kom., M.Sc. dan Bapak Faizal Johan Atletiko, S.Kom., M.T. selaku dosen penguji yang telah memberikan kritik, saran, dan masukan yang berharga sehinga dapat menyempurnakan Tugas Akhir ini. 6) Seluruh dosen pengajar beserta staf dan karyawan di Jurusan Sistem Informasi, Fakultas Teknologi Informasi ITS Surabaya yang telah memberikan ilmu dan pengalaman yang berharga kepada penulis selama ini. 7) Rekan-rekan mahasiswa Jurusan Sistem Informasi BASILISK, SOLA12IS, BELTRANIS, dan OSIRIS serta anggota Lab RDIB dan ADDI atas semua bantuan ketika penulis kuliah di Sistem Informasi. 8) Teman-teman serta sahabat yang sudah banyak membantu, Nikolaus Herjuno, Hendra Rismana, Ashma Hanifah, Bintang Setyawan, Bambang Setyawan, Stezar Priansya, Valliant Ferlyando, Tetha Valianta, Ervi Ritya, dan Adimas Raka (Statistika ITS) yang membantu jika penulis memerlukan bantuan dalam pengerjaan tugas akhir ini. 9) Teman-teman Lab ADDI, Ari Agustina, Valliant Ferlyando, dan Rizza Firmansyah yang berjuang bersama untuk menyelesaikan tugas akhir serta saling mengingatkan dan memotivasi satu sama lain. 10) Teman seperjuangan dalam menyelesaikan tugas akhir. Maulana Dhawangkara, Safrina Kharisma, Faisal Setia, x

13 Chandra Surya, Delina Rahayu, dan Ikhwan Aziz yang terus berusaha menyelesaikan tugas akhir bersama-sama. 11) Sahabat penulis yang menemani dan mendukung penulis dalam menjalani kehidupan kampus hingga dapat menyelesaikan tugas akhir ini. Almira Fiana Dhara, Rani Oktavia, Nadya Chandra, Kevin Setyawan, Nabihah Hanun, Marina Safitri serta teman-teman yang penulis belum dapat tuliskan satu-persatu. 12) Rekan penulis, Kadek Hari Baskara yang tidak pernah lelah mendukung penulis untuk terus giat mengerjakan tugas akhir, membantu jika terdapat kesulitan, serta menjadi teman untuk berbagi di saat senang maupun susah. 13) Serta semua pihak yang telah membantu dalam pengerjaan Tugas Akhir ini yang belum mampu penulis sebutkan diatas. Terima kasih atas segala bantuan, dukungan, serta doa yang telah diberikan. Penulis menyadari bahwa tugas akhir ini masih belum sempurna dan memiliki banyak kekurangan di dalamnya. Oleh karena itu, penulis juga memohon maaf atas segala kesalahan penulis buat dalam buku tugas akhir ini. Penulis membuka pintu selebar-lebarnya bagi pihak yang ingin memberikan kritik maupun saran, serta penelitian selanjutnya yang ingin menyempurnakan karya dari tugas akhir ini. Semoga buku tugas akhir ini bermanfaat bagi seluruh pembaca. Surabaya, Januari 2017 Penulis xi

14 Halaman ini sengaja dikosongkan xii

15 DAFTAR ISI ABSTRAK... v ABSTRACT... vii KATA PENGANTAR... ix DAFTAR ISI... xiii DAFTAR GAMBAR... xvii DAFTAR KODE... xxi DAFTAR TABEL... xxiii BAB I PENDAHULUAN Latar Belakang Masalah Perumusan Masalah Batasan Masalah Tujuan Penelitian Manfaat Penelitian Relevansi... 6 BAB II TINJAUAN PUSTAKA Penelitian Sebelumnya Dasar Teori Natural Language Processing (NLP) Named Entity Recognition (NER) Conditional Random Field (CRF) Performance Measure dan Confusion Matrix Java Stanford NER Forward Selection dan Backward Elimination Open Street Map Mapzen Metro Extract Facebook Dataset Status Facebook CitiViz BAB III METODOLOGI PENELITIAN Studi Literatur Media Sosial, NLP dan NER Menyiapkan Environtment Training NER Mencari daftar lokasi kota Surabaya Menggabungkan Teks dan Menghapus Teks yang Terduplikat xiii

16 3.5. Restrukturisasi Teks Tokenization Entity Labeling Pembagian Data Training dan Data Testing Membuat Daftar Fitur Membuat Properties Training Testing Penulisan Buku Tugas Akhir BAB IV PERANCANGAN Pengambilan Data Pemilihan Atribut Perancangan Model Perancangan Data Lokasi Perancangan Praproses Data Perancangan Feature Extractor Perancangan Pemrosesan Data BAB V IMPLEMENTASI Perangkat Penelitian Ekstraksi Data Lokasi Ekstraksi Data Lokasi Open Street Map Ekstraksi Data Lokasi Dinas PU Bina Marga Praproses Data Memuat Data Teks Memuat Data Lokasi dan Non Lokasi Pembagian Dataset Matching Lokasi dan Non Lokasi dengan Teks Tokenizing Labeling Lokasi Seleksi Feature Extractor Generate 1 Feature Extractor Generate Feature Extractor pada Forward Selection Generate Feature Extractor pada Backward Elimination Pemrosesan Data xiv

17 Implementasi Training Implementasi Testing BAB VI HASIL DAN PEMBAHASAN Data Lokasi Ekstrak Data Lokasi Open Street Map Ekstrak Data Lokasi Dinas PU Bina Marga Dataset Percobaan Muatan Data Teks Muatan Data Lokasi Hasil Matching Hasil Tokenizing Hasil Labeling Hasil Pembagian Dataset Percobaan wordshape Selection Percobaan maxngramleng Selection Percobaan Forward Selection Feature Extractor Percobaan 1 Feature Extractor Percobaan 2 Feature Extractor Percobaan 4 Feature Extractor Percobaan 5 Feature Extractor Percobaan 6 Feature Extractor Percobaan 7 Feature Extractor Percobaan 8 Feature Extractor Percobaan 9 Feature Extractor Percobaan 10 Feature Extractor Percobaan 11 Feature Extractor Percobaan 12 Feature Extractor Percobaan 13 Feature Extractor Percobaan 15 Feature Extractor Percobaan Backward Elimination Feature Extractor Percobaan 24 Feature Extractor Percobaan 23 Feature Extractor Percobaan 22 Feature Extractor Percobaan 21 Feature Extractor Percobaan 20 Feature Extractor Percobaan 19 Feature Extractor xv

18 Percobaan 18 Feature Extractor Percobaan 17 Feature Extractor Percobaan 16 Feature Extractor Percobaan 15 Feature Extractor Percobaan 14 Feature Extractor Percobaan 13 Feature Extractor Percobaan 12 Feature Extractor Analisa Hasil Analisa Hasil Forward Selection Analisa Hasil Backward Elimination Pembahasan Hasil Fitur-Fitur Penting Kesalahan Prediksi Model Uji Statistik 2 Model Terbaik BAB VII KESIMPULAN DAN SARAN Kesimpulan Saran DAFTAR PUSTAKA BIODATA PENULIS LAMPIRAN A... A-1 LAMPIRAN B... B-1 LAMPIRAN C... C-1 xvi

19 DAFTAR GAMBAR Gambar 1.1 Timeline Facebook Fanpage E100 tertanggal 13 Oktober Gambar 1.2 Contoh status Facebook Fanpage E100 tertanggal 13 Oktober Gambar 2.1 Contoh Tampilan Fanpage Gambar 2.2 Aplikasi CitiViz Gambar 3.1 Bagan Metodologi Gambar 3.2 Pembagian Data Training dan Data Testing Gambar 4.1 Alur Pengambilan Data Gambar 4.2 Sumber Data Lokasi Gambar 4.3 Alur Ekstraksi Data Lokasi Open Street Map Gambar 4.4 Alur Ekstraksi Data Lokasi Dinas PU Bina Marga Gambar 4.5 Alur Praproses Data Gambar 4.6 Alur Pemuatan Data Teks Status Facebook Gambar 4.7 Alur Pemuatan Data Lokasi Gambar 4.8 Alur Pemuatan Data Non Lokasi Gambar 4.9 Pembagian Dataset Gambar 4.10 Alur Matching Lokasi dan Non Lokasi dengan Data Teks Gambar 4.11 Alur Tokenizing Gambar 4.12 Alur Labeling Lokasi Menggunakan Program. 47 Gambar 4.13 Irisan Nama Lokasi yang Diberikan Label Gambar 4.14 Skenario Forward Selection Feature Extractor. 62 Gambar 4.15 Skenario Backward Elimination Feature Extractor Gambar 4.16 Alur Pemrosesan Data Gambar 4.17 Alur Proses Training Gambar 4.18 Alur Proses Testing Gambar 5.1 Tampilan Open Street Map Kota Surabaya Gambar 5.2 Pencarian Lokasi Mapzen Metro Extract Gambar 5.3 Bounding Box Extract Lokasi Gambar 5.4 Mapzen Metro Extract Kota Surabaya Gambar 5.5 Contoh Format Data GEOJSON OSM Gambar 6.1 Rata-Rata F-Measure wordshape xvii

20 Gambar 6.2 Rata-Rata Time wordshape Gambar 6.3 Rata-Rata F-Measure maxngramleng Gambar 6.4 Rata-Rata Time maxngramleng Gambar 6.5 F-Measure Forward Selection 1 Feature Extractor Gambar 6.6 Time Forward Selection 1 Feature Extractor Gambar 6.7 F-Measure Forward Selection 2 Feature Extractor Gambar 6.8 Time Forward Selection 2 Feature Extractor Gambar 6.9 F-Measure Forward Selection 4 Feature Extractor Gambar 6.10 Time Forward Selection 4 Feature Extractor..119 Gambar 6.11 F-Measure Forward Selection 5 Feature Extractor Gambar 6.12 Time Forward Selection 5 Feature Extractor..121 Gambar 6.13 F-Measure Forward Selection 6 Feature Extractor Gambar 6.14 Time Forward Selection 6 Feature Extractor..123 Gambar 6.15 F-Measure Forward Selection 7 Feature Extractor Gambar 6.16 Time Forward Selection 7 Feature Extractor..125 Gambar 6.17 F-Measure Forward Selection 8 Feature Extractor Gambar 6.18 Time Forward Selection 8 Feature Extractor..127 Gambar 6.19 F-Measure Forward Selection 9 Feature Extractor Gambar 6.20 Time Forward Selection 9 Feature Extractor..129 Gambar 6.21 F-Measure Forward Selection 10 Feature Extractor Gambar 6.22 Time Forward Selection 10 Feature Extractor 131 Gambar 6.23 F-Measure Forward Selection 11 Feature Extractor Gambar 6.24 Time Forward Selection 11 Feature Extractor 133 Gambar 6.25 F-Measure Forward Selection 12 Feature Extractor Gambar 6.26 Time Forward Selection 12 Feature Extractor 135 xviii

21 Gambar 6.27 F-Measure Forward Selection 13 Feature Extractor Gambar 6.28 Time Forward Selection 13 Feature Extractor 137 Gambar 6.29 F-Measure Forward Selection 15 Feature Extractor Gambar 6.30 Time Forward Selection 15 Feature Extractor 139 Gambar 6.31 F-Measure Backward Elimination 23 Feature Extractor Gambar 6.32 Time Backward Elimination 23 Feature Extractor Gambar 6.33 F-Measure Backward Elimination 22 Feature Extractor Gambar 6.34 Time Backward Elimination 22 Feature Extractor Gambar 6.35 F-Measure Backward Elimination 21 Feature Extractor Gambar 6.36 Time Backward Elimination 21 Feature Extractor Gambar 6.37 F-Measure Backward Elimination 20 Feature Extractor Gambar 6.38 Time Backward Elimination 20 Feature Extractor Gambar 6.39 F-Measure Backward Elimination 19 Feature Extractor Gambar 6.40 Time Backward Elimination 19 Feature Extractor Gambar 6.41 F-Measure Backward Elimination 18 Feature Extractor Gambar 6.42 Time Backward Elimination 18 Feature Extractor Gambar 6.43 F-Measure Backward Elimination 17 Feature Extractor Gambar 6.44 Time Backward Elimination 17 Feature Extractor Gambar 6.45 F-Measure Backward Elimination 17 Feature Extractor xix

22 Gambar 6.46 Time Backward Elimination 16 Feature Extractor Gambar 6.47 F-Measure Backward Elimination 15 Feature Extractor Gambar 6.48 Time Backward Elimination 15 Feature Extractor Gambar 6.49 F-Measure Backward Elimination 14 Feature Extractor Gambar 6.50 Time Backward Elimination 14 Feature Extractor Gambar 6.51 F-Measure Backward Elimination 13 Feature Extractor Gambar 6.52 Time Backward Elimination 13 Feature Extractor Gambar 6.53 F-Measure Backward Elimination 12 Feature Extractor Gambar 6.54 Time Backward Elimination 12 Feature Extractor Gambar 6.55 Rata-Rata F-Measure Skenario Forward Selection Gambar 6.56 Rata-Rata Time Skenario Forward Selection.166 Gambar 6.57 Rata-Rata F-Measure Skenario Backward Elimination Gambar 6.58 Rata-Rata Time Skenario Backward Elimination Gambar 6.59 Pengujian F-Measure 2 Sampel Gambar 6.60 Pengujian Time 2 Sampel xx

23 DAFTAR KODE Kode 5.1 Parsing Data GEOJSON Kode 5.2 Fungsi gettextfromdb Untuk Pemuatan Data Teks Kode 5.3 Pemanggilan Fungsi gettextfromdb pada Main Kode 5.4 Fungsi getlocation Untuk Pemuatan Lokasi 79 Kode 5.5 Pemuatan Data Lokasi pada Main Kode 5.6 Fungsi getnonlocation Untuk Pemuatan Data Non-Lokasi Kode 5.7 Pemuatan Data Non Lokasi pada Main Kode 5.8 Pengacakan Data Teks pada Fungsi createtraindataset Kode 5.9 Pembuatan Dataset trainfile pada Fungsi createtraindataset Kode 5.10 Pemanggilan Fungsi createtraindataset pada Main Kode 5.11 Matching Menggunakan Pattern Matcher pada Fungsi createtraindataset Kode 5.12 Fungsi tokenizing Untuk Proses Tokenizing Kalimat Kode 5.13 Fungsi tokenizing pada createtraindataset Kode 5.14 Labeling pada Fungsi createtraindataset 86 Kode 5.15 Daftar Feature Extractor Yang akan Di-Generate 89 Kode 5.16 Generate File Properties 1 Feature Extractor Kode 5.17 Menyimpan Feature Extractor yang Pasti Dipilih 90 Kode 5.18 Menyimpan Feature Extractor Tambahan Kode 5.19 Generate File Properties Skenario Forward Selection Kode 5.20 Menyimpan Daftar Seluruh Feature Extractor Kode 5.21 Menyimpan Daftar Feature Extractor yang Pasti Dihilangkan Kode 5.22 Menyimpan Daftar Feature Extractor yang Diuji Eliminasi xxi

24 Kode 5.23 Generate File Properties Skenario Backward Elimination...95 Kode 5.24 Fungsi traincrf untuk Training Dataset...96 Kode 5.25 Menyimpan Directory Dataset TrainFile...96 Kode 5.26 Membuat Kombinasi TrainFile Sesuai Cross Validation...97 Kode 5.27 Menyimpan Folder Kombinasi Feature Extractor 97 Kode 5.28 Pemanggilan Fungsi traincrf pada Main...98 Kode 5.29 Fungsi testcrf yang Digunakan Untuk Testing Model...99 Kode 5.30 Pemanggilan Fungsi testcrf pada Main xxii

25 DAFTAR TABEL Tabel 2.1 Penelitian Sebelumnya... 7 Tabel 2.2 Confusion Matrix Tabel 4.1 Atribut Data Tabel 4.2 Sampel Data Mentah Status Facebook Tabel 4.3 Sampel Data Status Facebook Tabel 4.4 Daftar Nama Non Lokasi Tabel 4.5 Daftar Feature Extractor Tabel 4.6 Karakter N-Gram Tabel 4.7 Deskripsi wordshape Extractor Tabel 4.8 N-Gram Pada maxngramleng Tabel 5.1 Atribut Data Panjang Jalan Tabel 5.2 Bagian Data Panjang Jalan Tabel 5.3 Sampel Data Panjang Jalan Gabungan Tabel 5.4 Sampel Data yang Digunakan Tabel 6.1 Sampel Nama-Nama Lokasi pada Data Lokasi OSM Tabel 6.2 Contoh Nama-Nama Lokasi pada Data Lokasi Bina Marga Tabel 6.3 Jumlah Pemuatan Data Lokasi Tabel 6.4 Skenario Matching Tabel 6.5 Hasil Tokenizing Teks Tabel 6.6 Kesalahan Labeling dengan Program Tabel 6.7 Pembagian Dataset Tabel 6.8 Model Terbaik Tabel 6.9 Feature Extractor Yang Digunakan Tabel 6.10 Nilai F-Measure Model Terbaik Tabel 6.11 Nilai Time Model Terbaik xxiii

26 Halaman ini sengaja dikosongkan xxiv

27 BAB I PENDAHULUAN Pada bab ini akan dibahas mengenai latar belakang pengerjaan tugas akhir, rumusan permasalahan, batasan permasalahan, tujuan pengerjaan dan juga manfaat pengerjaan tugas akhir. Media sosial saat ini sangat berkembang seiring dengan jumlah pengguna yang terus meningkat di seluruh dunia. Di Indonesia sendiri, menurut data Kementerian Komunikasi dan Informatika (Kemenkominfo), pengguna internet di Indonesia saat ini mencapai 63 juta orang. Dari angka tersebut, 95 persennya menggunakan internet untuk mengakses jejaring sosial [1]. Berbagai jejaring sosial diakses oleh masyarakat Indonesia, mulai dari Facebook, Twitter, Youtube, Path, Google+, hingga LinkedIn telah digunakan oleh masyarakat Indonesia. Kian banyaknya masyarakat Indonesia yang menggunakan media sosial sebagai ajang komunikasi, hingga menempati peringkat 4 sebagai pengguna Facebook terbesar dan peringkat 5 sebagai pengguna Twitter terbesar sedunia. Menurut data dari Webershandwick, untuk wilayah Indonesia terdapat kurang lebih 65 juta pengguna Facebook aktif. Sedangkan untuk pengguna Twitter, berdasarkan data PT Bakrie Telecom, memiliki 19,5 juta pengguna di Indonesia dari total 500 juta pengguna global [1]. Hal tersebut menunjukkan bahwa saat ini sangat banyak masyarakat yang berbagi informasi melalui media sosial. Sehingga, media sosial saat ini memiliki informasi yang sangat melimpah dan dapat menjadi sumber informasi yang berharga. Media sosial pun memiliki kelebihan dalam hal komunikasi sehingga memungkinkan pengguna untuk menciptakan lingkungan yang bersifat partisipatif dan penyediaan informasi secara real-time [2]. Pengguna pun dapat sesuka hati memberikan status maupun komentar tertentu tanpa ada batasan waktu untuk dapat berbagi informasi pada media sosial. Contohnya, pada media sosial Facebook, status atau 1

28 2 komentar yang diberikan pengguna akan muncul pada timeline sebagai papan berjalan untuk menampilkan informasi. Pada timeline tersebut status dan komentar diurutkan berdasarkan waktu. Status maupun komentar yang terbaru disediakan pada posisi paling atas, seperti tampak pada Gambar 1.1. Sehingga, untuk mendapatkan informasi yang diinginkan, setiap orang pun harus memperhatikan informasi yang disediakan secara terus menerus dimana aktivitas tersebut kurang efektif. Gambar 1.1 Timeline Facebook Fanpage E100 tertanggal 13 Oktober 2016 Dengan kelebihan dapat menyediakan informasi yang sangat banyak dan secara real-time, media sosial pun juga memiliki kelemahan dalam penyampaian informasi. Banyaknya informasi yang diberikan dan sifat waktunya yang tidak menentu tersebut menyebabkan dibutuhkan usaha untuk

29 menyaring informasi yang diperlukan supaya dapat sesuai dengan pengguna. Untuk itu, diperlukan sistem untuk mengolah informasi yang ada, sehingga dapat diorganisasikan secara lebih efektif. Named Entity Recognition atau NER merupakan salah satu teknik berbasis entitas yang dikembangkan untuk melakukan pengolahan tersebut sehingga informasi yang diberikan menjadi lebih relevan bagi pengguna. Named Entity Recognition (NER) adalah bagian dari ekstraksi informasi yang dapat menspesifikasikan entitas seperti orang, tempat, organisasi, ekspresi waktu, maupun kuantitas [3]. NER bertujuan untuk mengenali entitas-entitas tersebut pada suatu potongan informasi, sehingga aspek-aspek penting dari informasi tersebut dapat diidentifikasi. Sebagai contoh seperti status yang diberikan pada Gambar 1.2, : Info awal : Kecelakaan beruntun di Tol Sidoarjo - Waru KM , kendaraan yang terlibat antara lain mobil box, avanza, panther. Kondisi avanza pintu sebelah kanannya rusak. (odprt). Maka dapat diidentifikasi potongan Tol Sidoarjo-Waru merupakan sebuah lokasi. 3 Gambar 1.2 Contoh status Facebook Fanpage E100 tertanggal 13 Oktober 2016 Untuk itu, pada penelitian ini akan dikembangkan suatu modul Named Entity Recognition yang secara spesifik akan mengolah informasi-informasi seputar kota Surabaya yang dibagi oleh masyarakat melalui akun media sosial Facebook fanpage E100. Informasi yang akan diidentifikasi nengan mengunakan NER dalam penelitian ini adalah entitas lokasi yang ada dalam teks status maupun komentar. Selain itu, penelitian ini juga akan mengeksplorasi penggunaan algoritma

30 4 yang lazim dipergunakan untuk Named Entity Recognition, misalnya, Conditional Random Field (CRF). Meskipun pengembangan NER telah banyak digunakan dalam bidang Information Extraction (IE), dalam pengembangannya tidak banyak penggunaannya dalam basis bahasa Indonesia. Riset tentang NER telah banyak dilakukan menggunakan basis bahasa Inggris karena merupakan bahasa yang banyak digunakan di seluruh dunia. Selain itu, terdapat pula bahasa-bahasa yang sedang gencar-gencarnya diperhatikan peneliti untuk mulai diinvestigasi, seperti bahasa Jerman, Belanda, Jepang, Mandarin, Perancis, Yunani, Italia, Bulgaria, dll [4]. Bagaimanapun, penerapan NER pada teks berbahasa Indonesia masih belum terlalu banyak dipelajari, terlebih lagi dengan karakterisik kebahasaan yang bersifat informal, sehingga dapat menjadi tantangan tersendiri bagi peneliti. Penelitian ini pun juga merupakan salah satu upaya untuk menerapkan NER dalam konteks tersebut. Berdasarkan latar belakang yang telah dipaparkan di atas, maka berikut ini merupakan rumusan masalah yang akan di selesaikan pada penelitian ini adalah: 1. Bagaimana melakukan praproses data, pembuatan dan pengujian model Named Entity Recognition dengan lexicon Bahasa Indonesia? 2. Bagaimana hasil pendeteksian lokasi dari informasi publik media sosial Kota Surabaya dengan Named Entity Recognition?

31 5 Pada penyelesaian tugas akhir ini memiliki beberapa batasan masalah, berikut batasan masalah yang harus di perhatikan: 1. Dataset yang digunakan untuk training adalah data yang berasal dari status media sosial Facebook Fanpage akun E Data media sosial hanya mengenai kota Surabaya. 3. Named Entity Recognition berbahasa Indonesia dengan memuat 1 label saja yaitu lokasi. Tujuan dari pengerjaan tugas akhir ini adalah: 1. Memudahkan identifikasi entitas lokasi pada teks media sosial berbahasa Indonesia 2. Modul Named Entity Recognition yang dibuat akan digunakan dalam pengembangan aplikasi CitiViz yaitu: Tugas Akhir ini diharapkan dapat memberikan manfaat Bagi penulis Tugas Akhir ini berguna untuk memberikan pengetahuan mengenai pemrosesan bahasa atau Natural Language Processing Bagi pengembang CitiViz Melalui tugas akhir ini, penulis dapat membantu pengembang Aplikasi CitiViz dalam melakukan pendeteksian lokasi pada teks sehingga dapat menampilkan informasi yang relevan bagi pengguna berdasarkan lokasi yang dipilih. Dengan begitu, informasi yang ditampilkan akan menjadi lebih lengkap.

32 6 Tugas Akhir ini sangat relevan untuk menjadi tugas akhir S1, karena melakukan implementasi mata kuliah pada bidang keilmuan seperti: Sistem Cerdas Penggalian Data dan Analitika Bisnis Tugas akhir ini juga bersifat menyelesaikan masalah dari studi kasus nyata berdasarkan teori yang ada, sehingga tugas akhir ini layak untuk dikerjakan

33 BAB II TINJAUAN PUSTAKA Untuk dapat memberikan wawasan dan pengetahuan mengenai beberapa hal yang dibahas dalam tugas akhir ini, berikut terdapat penjelasan tentang penilitian sebelumnya, yang dijadikan acuan pengerjaan tugas akhir, serta beberapa dasar teori terkait dengan tugas akhir, yang dapat membantu memahami apa saja yang terdapat pada tugas akhir. Beberapa penelitian sebelumnya yang terkait dengan tugas akhir ini adalah sebagai berikut. No 1. Judul Penelitian - Tahun Indonesian Namedentity Recognitio n for 15 Classes Using Ensemble Supervised Learning Tabel 2.1 Penelitian Sebelumnya Identitas Peneliti Aditya Satrya Wibawa, Ayu Purwari anti 7 Kesimpulan Berdasarkan hasil penelitian tentang Named Entity Recognition and Classifcation (NERC) pada dokumen berita berbahasa Indonesia, kesimpulan yang didapat antara lain: Fitur yang digunakan dapat dibagi dalam 3 kategori, yaitu word-level (morphological dan POS), sentence-level, Sumber [4]

34 8 No Judul Penelitian - Tahun 2. Named Entity Recognitio n for the Indonesian Language: Combining Contextual, Morphologi cal and Partof-Speech Features Identitas Peneliti Indra Budi, Stéphan e Bressan, Gatot Wahyud i, Zainal A. Hasibua n, and Bobby Kesimpulan dan lookup list. Penggunaan fitur word-level sudah cukup baik untuk klasifikasi kelas Named Entity. Namun, jika menambah fitur lookup list, akan meningkatkan akurasi. Hasil performa F- Measure terbaik pada testing adalah dengan algoritma Simple Logistic, Direct scheme, dan kombinasi dari ketiga fitur. Berdasarkan hasil penelitian yang menggunkan pendekatan knowledge engineering pada Indonesian Named Entity Recognition (InNER) yang didasarkan pada aturan yang menggabungkan fitur kontekstual, Sumber [5]

35 9 No Judul Penelitian - Tahun into a Knowledge Engineerin g Approach Identitas Peneliti A.A. Nazief Kesimpulan morphological, dan part of speech pada teksteks dalam bahasa Indonesia, kesimpulan yang didapat antara lain: Metode ini dapat menghasilkan kinerja paling tinggi adalah 63.43% untuk Recall dan 71.84% untuk Precision dengan mengkombinasik an ketiga fitur yang telah ditentukan. Berdasarkan percobaan, fitur morphological memberikan hasil yang lebih baik dari fitur part of speech. Hal tersebut berarti bahwa, mengetahui struktur teks dapat memberikan hasil yang lebih baik. Sumber

36 10 No Judul Penelitian - Tahun 3. A Semi- Supervised Algorithm for Indonesian Named Entity Recognitio n Identitas Peneliti Rezka Aufar Leonan dya, Bayu Distiaw an, Nursidi k Heru Prapton o Kesimpulan Selanjutnya dapat disimpulkan pula bahwa metode association rule dapat memberikan performa yang lebih baik dibandingkan maximum entropy. Sehingga, metode knowledge engineering adalah metode yang terbaik. Pendekatan Semi-supervised learning menunjukkan hasil yang lebih baik daripada Supervised learning. Hal ini disebabkan adanya penambahan pengetahuan yang didapatkan classifier dari decision rule, tidak seperti Sumber [6]

37 11 No Judul Penelitian - Tahun Identitas Peneliti Kesimpulan pada supervised learning yang dilakukan training tanpa penambahan pengetahuan. Secara keseluruham, sistem yang dibuat berhasil mencapai peningkatan skor F1 pada iterasi algoritma semisupervised. Namun, hasilnya masih tergolong rendah. Untuk selanjutnya, akan dicari bagaimana mengotomasi tagging untuk meningkatkan nilai inisiasi F1. Sumber

38 Natural Language Processing (NLP) Natural Language Processing atau NLP merupakan sebuah studi mengenai kajian interaksi antara komputer dengan bahasa (alami) manusia. NLP merupakan studi yang dapat mempercepat strategi pembelajaran untuk mendeteksi dan penggunaan pola-pola yang ada. NLP adalah sebuah rangkaian asumsi yang jika di adopsi saat berkomunikasi, maka interaksinya akan menjadi lebih efektif [7]. Algoritma NLP yang modern didasarkan pada machine learning, terutama statistical machine learning. Implementasi sebelumnya melibatkan code secara langsung. Namun sekarang, telah banyak algoritma machine learning yang digunakan untuk kajian NLP. Algoritma ini akan mengambil masukan fitur yang dihasilkan dari data masukan. Kajian atau task yang ada pada NLP antara lain sebagai berikut [8]: Sentiment Analysis Speech Segmentation Text Segmentation Morphological segmentation Part-of-Speech-Tagging Word Sense Disambiguation Automatic Summarization Named Entity Recognition Machine translation Relationship extraction Speech recognition Information retrieval (IR) Information extraction (IE) Named Entity Recognition (NER) Named Entity Recognition (NER) merupakan sebuah bagian tugas dari Information Extraction (IE) yang dapat menandai lokasi dari entitas-entitas yang telah didefinisikan sebelumnya. NER dapat digunakan untuk mengidentifikasi entitas-entitas yang ada pada suatu kalimat seperti nama

39 13 orang, perusahaan, lokasi, organisasi, tanggal, mata uang, dll [9]. Modul NER selanjutnya akan memberikan tanda label untuk entitas yang teridentifikasi. NER merupakan salah satu riset penting dalam area machine learning dan Natural Language Processing (NLP). Karena, NER dapat digunakan untuk menjawab banyak pertanyaan yang ada di dunia nyata [9], misalkan: Apakah sebuah status mengandung nama orang? Apakah status tersebut menyediakan lokasi orang tersebut? Perusahaan manakah yang disebutkan dalam artikel berita? Produk mana kah yang disebutkan dalam komplain tertentu? Untuk mendapatkan modul NER yang sesuai, perlu dilakukan Training pada dataset yang memiliki entitas dengan label yang diinginkan. Untuk entitas tanpa label cukup diberikan tanda 0. Kemudian, dataset tersebut akan dilakukan training hingga mendapatkan model NER yang diinginkan. Contoh pemberian label entitas dapat dilihat dibawah ini. Bapak O Jokowi PERS kapan O tukangsayur2 O indonesia LOC dilengkapi O EDC O Bank COMP Syariah COMP - O untuk O tumbuhkan O ekonomi O

40 Conditional Random Field (CRF) Conditional Random Field atau CRF merupakan model probabilistik statistika yang sering diterapkan untuk pengenalan pola dan machine learning untuk memprediksi atau mendeteksi suatu struktur kalimat. CRF sangat populer dan dalam bidang Natural Language Processing ataupun biological sequences untuk memprediksi label (pelabelan) entitas dari suatu masukan [10]. CRF merupakan metode yang dapat digunakan untuk memprediksi sequence/urutan label dari suatu kalimat. Prediksi akan dilakukan berdasarkan fitur-fitur dari kata saat ini dan kata yang mendahuluinya. Kemudian, fitur-fitur tersebut akan dikombinasikan untuk membentuk suatu nilai yang menunjukkan skor dari suatu sequence label pada kalimat. CRF dapat digambarkan pada graph yang terhubung seperti dibawah ini [11]: Dengan keterangan sebagai berikut: y = label yang ada x = keseluruhan timeseries Formula CRF dapat ditunjukkan sebagai berikut: K p(y x) = 1 Z(x) exp { λ k f k (y t, y t 1, x t )} k=1 dimana Z(x) merupakan sebuah instans untuk fungsi normalisasi: Z(x) = exp { λ k f k (y t, y t 1, x t )} y K k=1

41 15 Keterangan: y = sequence label x = kalimat K = jumlah fitur λ_k= weight/bobot f_k= fitur-fitur Performance Measure dan Confusion Matrix Ketepatan pendeteksian dari suatu model merupakan hal yang sangat penting untuk diperhatikan. Sehingga, performa dari suatu model untuk melakukan deteksi ataupun prediksi dapat diketahui dengan kuantitas. Penilaian yang lazim digunakan untuk Named Entity Recognition adalah Precision, Recall dan F-Measure. Sebelum mengetahui apa itu Precision, Recall dan F-Measure, ada baiknya jika mengetahui Confusion Matrix terlebih dahulu. Confusion matrix merupakan sebuah alat analisis yang sangat berguna untuk menangkap apa saja yang ada pada hasil evaluasi dengan menunjukkan hal yang lebih detil dan sebagai basis dalam perhitungan performa yang lainnya. Confusion matrix menghitung frekuensi pada setiap kemungkinan yang keluar pada prediksi yang dibuat oleh model [12]. Untuk prediksi dengan fitur biner yaitu terdapat 2 level, maka akan terdapat 4 luaran hasil saat model membuat prediksi: True Positive (TP) Jika nilai pada data testing positif dan diprediksi positif. True Negative (TN) Jika nilai pada data testing negatif dan diprediksi negatif. False Positive (FP) Jika nilai pada data testing negatif dan diprediksi positif. False Negative (FN) Jika nilai pada data testing positif dan diprediksi negatif.

42 16 Bentuk tabel penyajian confusion matrix dapat dilihat pada Tabel 2.2. Tabel 2.2 Confusion Matrix a. Precision Precision merupakan nilai ketepatan deteksi atau prediksi dengan benar. Sehingga, perhitungan precision dilakukan dengan membandingan jumlah deteksi yang benar dengan jumlah seluruh deteksi. True Positive False Positive + True Positive b. Recall Recall merupakan nilai perbandingan ketepatan prediksi benar dengan jumlah seluruh deteksi yang seharusnya benar. True Positive False Negative + True Positive c. F-Measure Sedangkan F-Measure adalah perhitungan yang digunakan untuk menggabungkan nilai Precision dan Recall. Ia akan menunjukkan nilai keseimbangan dari Precision dan Recall dengan cara: 2 x (Precission x Recall) Precission + Recall

43 Java 17 Java adalah sebuah bahasa pemrograman generalpurpose yang concurrent, berbasis kelas serta berorientasi objek [13]. Bahas pemrograman Java didesain agar Java dikembangkan oleh Sun Microsystems sejak tahun 1991 yang saat ini merupakan bagian dari Oracle. Praproses dan pemrosesan data dalam penelitian ini memerlukan adanya program untuk dapat menangani hal tersebut. Dengan menggunakan program, keseluruhan tahapan diharapkan dapat terselesaikan dengan lebih cepat dan akurat. Untuk itu, pada penelitian ini, program dibuat dengan menggunakan bahasa pemrograman Java, baik praproses maupun pemrosesan data Stanford NER Stanford NER adalah implementasi Named Entity Recognition dalam Java yang dibuat oleh The Stanford Natural Language Processing Group [13]. Stanford NER menyediakan ekstraktor-esktraktor fitur untuk NER dan juga menyediakan banyak pilihan untuk menentukan ekstraktorekstraktor fitur. Stanford NER sangat baik digunakan untuk identifikasi entitas dalam Bahasa Inggris dengan 3 label yaitu Person (Orang), Organization (Organisasi), dan Location (Lokasi). Stanford NER juga dikenal sebagai CRFClassifier. Perangkat lunak ini menyediakan implementasi rantai linear Conditional Random Field (CRF). Maka, dengan menggunakan Stanford NER, dapat dilakukan training pada model data milik sendiri dengan pelabelan tertentu. Stanford NER pada penelitian ini digunakan sebagai library untuk implementasi praproses hingga pemrosesan data. Adapun class yang digunakan pada penelitian ini antara lain adalah PTBTokenizer, NERFeatureFactory, serta CRFClassifier. PTBTokenizer digunakan untuk melakukan proses tokenizing kalimat. NERFeatureFactory menyediakan feature extractor yang akan digunakan pada file properties

44 18 untuk pemrosesan. Sedangkan CRFClassifier digunakan untuk pemrosesan data yakni pemrosesan training yang menghasilkan model dan testing yang menunjukkan nilai performa model Forward Selection dan Backward Elimination Pembuatan model dalam penelitian ini akan melibatkan beraneka feature extractor yang digunakan dalam pemrosesan data untuk membuat model. Bagaimanapun juga, himpunan feature extractor yang dipilih untuk membuat model terbaik tidak dapat ditemukan kecuali dengan melakukan percobaan (experiment) dan akan menjadi bagian dari analisa penelitian. Terdapat dua pendekatan dalam melakukan seleksi feature extractor yaitu forward selection dan backward elimination. Forward selection merupakan teknik pemodelan yang memulai percobaan dari nol, kemudian ditambahkan dengan satu persatu variabel, yang dalam hal ini adalah feature extractor, hingga mencapai performa terbaik. Sedangkan metode backward elimination dilakukan dengan terus-menerus mengeluarkan atau mengeliminasi satu per satu variabel yang tidak signifikan dalam meningkatkan performa model hingga didapatkan model terbaik Open Street Map Open Street Map (OSM) merupakan proyek kolaboratif yang dilakukan oleh volunteer untuk membuat sebuah peta dunia secara gratis. Volunteer dapat melakukan edit peta untuk menghasilkan peta dunia yang lebih akurat. Lisensi OpenStreetMap memungkinkan akses yang gratis pada gambar serta keseluruhan data yang terdapat pada peta [15]. Penggunaan lexicon bahasa Indonesia dalam pembuatan model pada penelitian ini diambil dari nama-nama lokasi, terutama nama-nama lokasi di kota Surabaya. OSM yang merupakan peta open-source dapat menyediakan datadata tersebut.

45 Mapzen Metro Extract 19 Mapzen Metro Extract dapat memungkinkan untuk mendapatkan potongan dara dari Open Street Map (OSM) pada daerah persegi panjang yang mengelilingi kota atau wilayah tujuan tertentu [16]. Data yang tersedia merupakan data lokasi untuk seluruh dunia. Dari data yang terdapat pada peta Open Street Map, tidak semata-mata data tersebut dapat langsung diambil. Mapzen Metro Extract dapat digunakan untuk melakukan ekstraksi data dari Open Street Map. Adapun ekstraksi data tersebut merupakan data nama-nama lokasi yang terdapat pada kota Surabaya Facebook Facebook merupakan salah satu jejaring sosial di dunia maya yang sangat eksis. Facebook yang diluncurkan pada tahun 2004 silam telah memiliki lebih dari satu miliar pengguna aktif dari seluruh dunia [17]. Untuk dapat menggunakan Facebook, pengguna perlu melakukan pendaftaran dan membuat profil. Dengan facebook, pengguna dapat berinteraksi dengan pengguna lain dengan menambahkan teman yang telah memiliki profil Facebook. Facebook pun juga memiliki fitur fanpage yang digunakan oleh organisasi untuk berbagi informasi pada masyarakat pengguna facebook. Informasi yang terdapat pada fanpage ini dapat menjadi informasi penting bagi pengguna jika pengguna terus-menerus mengikuti pembaruan daripada fanpage tersebut. Contoh tampilan facebook fanpage terdapat pada Gambar 2.1.

46 20 Gambar 2.1 Contoh Tampilan Fanpage Dataset Status Facebook Dataset merupakan koleksi atau kumpulan data yang akan diolah pada tugas akhir. Dataset berupa kumpulan teks dan detail keterangan yang didapatkan dari status dan komentar facebook fanpage E100 serta Sapawarga Kota Surabaya sejak Februari hingga Oktober Dataset berupa tabel berbentuk file dengan format SQL yang terdiri dari teks, akun yang melakukan posting, id akun, serta hari dan jam posting. Pada tugas akhir ini, data yang digunakan berjumlah 5000 teks yang kemudian akan diberikan entity label dan diolah CitiViz CitiViz merupakan aplikasi visualisasi kemacetan dalam kota yang diambil berdasarkan data media sosial. Untuk dapat memberikan informasi yang tepat dan relevan bagi pengguna, pada pengembangannya, CitiViz akan memiliki beberapa modul pemrosesan bahasa dan machine learning yang dapat menangani hal tersebut. Beberapa modul tersebut antara lain, pengubahan bahasa informal menjadi formal, identifikasi topik [18], serta identifikasi lokasi.

47 21 Sedangkan pada penelitian ini, akan dibuat modul identifikasi atau deteksi lokasi yang akan digunakan untuk pengembangan aplikasi CitiViz. Adapun bagian-bagian dari aplikasi CitiViz dapat dilihat pada Gambar 2.2. Gambar 2.2 Aplikasi CitiViz

48 22 Halaman ini sengaja dikosongkan

49 BAB III METODOLOGI PENELITIAN Pada bab ini akan dijelaskan mengenai gambaran metode dan alur pengerjaan tugas akhir. Gambar 3.1 berikut ini merupakan alur pengerjaan tugas akhir. Gambar 3.1 Bagan Metodologi 23

50 24 Berikut merupakan penjelasan dari setiap tahapan yang ada pada metodologi yang digunakan, yaitu: Tahapan awal pengerjaan Tugas Akhir ini adalah studi literatur. Studi literatur digunakan untuk menentukan topik dengan cara menganalisa latar belakang permasalahan informasi publik di media sosial kota surabaya dan menentukan rumusan permasalahan yang diangkat. Pada tahapan ini pun juga ditentukan batasan masalah, tujuan, serta manfaat penentuan topik penelitian. Untuk mendukung latar belakang permasalahan dan rumusan masalah yang sesuai dengan topik, dilakukan peninjauan pustaka mulai dari studi penelitian sebelumnya terkait dengan penggunaan Named Entity Recognition dan juga dasar teori mengenai Natural Language Processing, Named Entity Recognition, algoritma pendekatan seperti Conditonal Random Field (CRF), Performance Measure dan Confusion Matrix, serta media sosial sebagai referensi pustaka. Adapun literatur yang digunakan berasal dari jurnal ilmiah nasional maupun internasional, makalah penelitian, e- book, maupun buku-buku yang dapat dijadikan bahan acuan pengerjaan tugas akhir ini. Tahap yang harus dilakukan selanjutnya adalah menyiapkan Environment atau Lingkungan Kerja. Persiapan Lingkungan Kerja dilakukan dengan cara mempersiapkan Java Development Kit (JDK) dan Java Runtime Environment (JRE) serta library untuk Named Entity Recognition yang sesuai. Adapun tahapan ini bertujuan untuk mempersiapkan tools atau alat yang dapat digunakan dalam mengeksplorasi pembuatan properties, melakukan tokenization, melakukan entity labeling, hingga dapat melakukan training atau pelatihan serta testing atau pengujian pada dataset.

51 25 Untuk dapat mengetahui manakah lokasi kota Surabaya, perlu didapatkan daftar lokasi-lokasi yang ada di kota Surabaya berupa nama jalan, nama daerah, kelurahan, kecamatan, serta nama bangunan. Hal tersebut dapat dibantu dengan menggunakan Open Street Map (OSM). OSM merupakan sumber peta yang terbuka, sehingga pengguna dapat melakukan penambahan maupun pengubahan pada data peta. Selain itu, pengguna juga dapat melakukan ekstraksi pada data. Sehingga, pada penelitian ini, akan dilakukan ekstraksi data peta pada kota Surabaya menggunakan custom extraction pada OSM dengan menggunakan polygon untuk dapat menentukan daerah mana yang dilakukan ekstraksi. Format file ekstraksi OSM menggunakan GEOJSON file. Ekstraksi yang dipilih adalah ekstraksi berdasarkan tag OSM seperti nama jalan, nama daerah, area transportasi, area air, serta bangunan. Daftar nama lokasi ini akan digunakan untuk proses entity labeling. Dataset yang dikumpulkan terpisah-pisah berdasarkan sumber waktu teks yang diambil. Selain itu, terdapat kemungkinan-kemungkinan bahwa teks yang didapat terduplikasi sehingga harus dihapus. Untuk itu, tahap ini akan menangani permasalahan tersebut. Dengan melakukan tahap ini, akan diperoleh data teks yang layak untuk dianalisa pada tahap berikutnya. Tahapan Restrukturisasi Teks merupakan salah satu tahap yang penting. Tahap ini merupakan tahap yang dilakukan untuk memastikan bahwa teks yang akan dilakukan tokenization telah ada pada format yang sesuai dengan library Stanford NER. Format yang digunakan yaitu 1 teks status

52 26 dituliskan dalam 1 baris sehingga dapat dilakukan tokenization. Dari teks yang sudah dilakukan tahap restrukturisasi, pada tahap selanjutnya, teks akan dilakukan tokenization. Tahap ini merupakan salah satu bagian yang penting dari pengembangan Named Entity Recognition. Tokenization adalah tahapan untuk mengubah kalimat-kalimat teks menjadi potongan-potongan kata dalam tiap barisnya. Setiap baris tersebut akan menjadi 1 token. Batasan setiap token adalah whitespace antar karakter pada kalimat dan juga memisahkan karakter tanda baca. Berikut adalah contoh Tokenization. Kalimat : Sepanjang - Medaeng padat cenderung MACET. Sebabnya ada kabel yang menggantung. akan memiliki token-token dengan berurutan tiap barisnya: : Sepanjang - Medaeng padat cenderung MACET. Sebabnya ada kabel yang menggantung.

53 27 Setelah melakukan Tokenization, tahap yang tidak kalah penting selanjutnya adalah Entity Labeling. Entity Labeling merupakan pemberian label pada setiap token yang ada. Untuk dapat melakukan entity labeling, format yang digunakan haruslah sesuai yaitu pada kolom ke-0 merupakan kolom token, kemudian pada kolom ke-1 merupakan label yang dipisahkan menggunakan tab. Berkas hasil entity labeling ini akan disimpan dalam format.tsv. Untuk dapat membantu peneliti dalam melakukan entity labeling, tools yang dapat digunakan adalah menggunakan Regular Expression (Regex). Regex digunakan untuk mendeteksi kata yang teridentifikasi label pada token. Kata-kata ini didapatkan dari daftar nama lokasi kota Surabaya dari OSM berdasarkan sub 3.3. Maka, jika terdapat kata yang sesuai, akan diberikan label yang sesuai juga. Namun pada penelitian ini, melakukan pelabelan secara manual tetap perlu dilakukan untuk memastikan bahwa pelabelan telah dilakukan dengan benar. Adapun pada penelitian kali ini, label yang dibuat hanya 1 yaitu label lokasi. Sehingga, untuk setiap token yang menunjukkan suatu lokasi, haruslah diberikan label LOC. Untuk token-token yang tidak menunjukkan lokasi, akan diberikan label O, yang berarti tidak memiliki label. Lokasi yang dideteksi dalam penelitian ini sesuai dengan daftar lokasi yang sudah didapatkan. Berikut contoh hasil entity labeling pada contoh kalimat O : O Sepanjang LOC - O Medaeng LOC padat O cenderung O MACET O. O Sebabnya O

54 28 ada O kabel O yang O menggantung O. O Setelah entity labeling selesai dilakukan, tahap selanjutnya adalah melakukan pembagian data teks untuk data training dan data testing. Pembagian data teks untuk proses training dan testing dilakukan dengan menggunakan metode Cross Validation. Cross Validation merupakan salah satu teknik validasi yang akan membagi data menjadi data training dan data testing yang digambarkan pada Gambar 3.2. Selanjutnya, data ini akan dilakukan proses silang yaitu data testing akan menjadi data training maupun sebaliknya. Cross Validation yang digunakan pada penelitian ini yaitu K-Fold Cross Validation. Proses silang yang ada pada K-Fold Cross Validation dapat digambarkan dengan skenario sebagai berikut: K1 Data Testing K2 K3 K4 Data Training K5 Gambar 3.2 Pembagian Data Training dan Data Testing

55 29 1. Bagi data menjadi sejumlah kelompok k, dalam penelitian kali ini k yang digunakan sejumlah 5 (setiapnya 20% data). 2. Pada setiap kelompok data, misalkan diberikan nama K1, K2, K3, K4 dan K5. 3. Gunakan 1 kelompok data sebagai data testing (misal, K1), sedangkan sisanya sebagai data training (misal, K2- K5). 4. Ulangi proses 3 hingga seluruh kelompok data telah digunakan sebagai data testing. Sehingga, pada tahap ini akan menghasilkan 5 yaitu data training dalam format.tsv yang akan digunakan untuk training dan testing dengan 5 kemungkinan kombinasi dataset file yang berbeda. Daftar fitur perlu dibuat untuk dapat menyesuaikan dengan struktur bahasa yang ada. Fitur-fitur yang dibutuhkan ini dapat diketahui pada skenario eksperimen. Eksperimen dilakukan dengan cara mengubah-ubah fitur agar sesuai hingga mendapatkan hasil model yang optimal. Berikut ini merupakan contoh fitur pada CRF beserta pengertiannya. w = word/kata t = tag p = position (index kata pada kalimat) c = class p = paren n(w) = ngrams dari word/kata Dari daftar fitur yang telah dibuat, tahap selanjutnya adalah mentranslasikan fitur tersebut menjadi sebuah file properties yang dapat mendefinisikan feature extractor apa saja yang akan digunakan untuk mengekstraksi fitur. File properties juga harus mendefinisikan file data training yang akan didapatkan pada tahap pembagian data training dan

56 30 testing. File properties ini pun selanjutnya akan digunakan untuk melakukan training bersama-sama dengan data training. Berikut ini contoh beberapa feature extractor berserta pengertiannya. useword : Mengunakan fitur word usengrams : Pembuatan fitur n-gram dari suatu kata, sehingga menghasilkan substring dari kata lowercasengrams : Pembuatan fitur n-gram dari suatu kata dengan huruf kecil saja usesymwordpairs : Memberikan fitur kata sebelum, kata setelah dan kelas saat ini Contoh pengaplikasian feature extractor usewordpairs Sepanjang Medaeng padat cenderung MACET Kelas kata saat ini: LOC Kata sebelum: Kata setelah: padat Jika telah memiliki file data training dalam format.tsv dan telah memiliki file properties dalam format.prop, maka tahap selanjutnya yang dapat dilakukan adalah tahap training. Pada tahap ini, akan digunakan library Stanford NER. Cukup dengan memanggil file properties, library akan menjalankan iterasinya untuk menghasilkan model. Jika iterasi telah selesai, akan didapatkan file ner-model yang akan diuji pada tahap testing. Setelah didapatkan ner-model dari tahapan training, tahap selanjutnya yang perlu dilakukan adalah menguji model tersebut dengan testing. Testing dapat dilakukan dengan memanggil library Stanford NER untuk menguji model yang telah dibuat menggunakan data testing. Pada tahapan ini akan dibandingkan apakah deteksi label lokasi yang diberikan oleh model telah sesuai dengan testing yang diberikan. Untuk

57 31 penilaian, digunakanlah nilai performa Precision, Recall dan F-Measure. Kemudian, jika ingin melakukan percobaan untuk mendapatkan nilai performa yang berbeda, peneliti akan kembali pada tahapan membuat daftar fitur dan file properties. Namun, jika nilai yang didapatkan telah sesuai dengan yang diinginkan, dapat dilakukan pengambilan kesimpulan. Skenario percobaan akan dilakukan sesuai dengan skenario forward selection dan backward elimination pada feature extractor. Penulisan Buku Tugas Akhir adalah tahap yang menghasilkan buku Tugas Akhir. Penulisan buku ini dilakukan bersamaan dengan tahapan penelitian yang lainnya. Harapannya, luaran berupa buku tugas akhir dapat dijadikan sebagai referensi untuk penelitian selanjutnya.

58 32 Halaman ini sengaja dikosongkan

59 BAB IV PERANCANGAN Untuk dapat memberikan gambaran apa-apa saja yang dikerjakan pada implementasi penelitian tugas akhir, pada bab ini, akan dijelaskan mengenai perancangan penelitian tugas akhir yang meliputi subyek dan obyek penelitian, pemilihan subyek dan obyek penelitian serta bagaimana penelitian akan dilakukan. Data merupakan salah satu komponen penting untuk dapat melakukan penelitian pendeteksian lokasi dari informasi publik pada media sosial kota Surabaya berbasis Named-Entity Recognition. Data dalam penelitian ini merupakan dataset berupa tipe data teks dari status fanpage facebook Suara Surabaya. Gambar 4.1 Alur Pengambilan Data Untuk dapat menggunakan data tersebut, maka perlu dilakukan pengambilan data. Pada penelitian ini, pengambilan data dilakukan oleh Stezar Priansya (Sistem Informasi ITS 2013) [16] dalam periode 3 bulan mulai September 2016 hingga dengan November 2016 dengan data yang diambil merupakan status facebook fanpage Suara Surabaya dalam periode 15 bulan sejak Agustus 2015 sampai dengan November Sesuai dengan alur pengambilan data yang ditunjukkan pada Gambar 4.1, pengambilan data status facebook fanpage dilakukan dengan teknik crawling menggunakan library Facebook4J pada bahasa pemrograman Java. Selanjutnya, keseluruhan dataset akan disimpan ke dalam database MySQL. 33

60 34 Data status yang telah diambil memiliki beberapa atribut seperti id status facebook, isi dari status facebook, story status facebook, serta waktu dibuatnya status tersebut. Tabel 4.1 menunjukkan daftar atribut status, tipe data pada setiap atribut, serta keterangan yang ada pada atribut. Tabel 4.1 Atribut Data Nama Atribut Tipe Data Keterangan fb_id Text ID status facebook message Text isi dari status facebook story Text story status facebook created_time Datetime tanggal posting status facebook Dari proses pengambilan data, terdapat sebanyak teks status yang dapat dikumpulkan. Tabel 4.2 menunjukkan sampel data yang tersimpan dalam database MySQL. Tabel 4.2 Sampel Data Mentah Status Facebook fb_id Message story creat ed_ti me _ _ Muktamar NU rumuskan konsep Islam Nusantara, Islam yang Tanpa Pentungan. Inilah konsep Islam tanpa kekerasan itu. (odp-fk) ota/detail.php?id=2rd5iab0l0skf1u 7a4ru2jflp Guyonan Gus Ipul, Pakde Karwo dan Jokowi di Muktamar NU. (odpfk) E100 with Naira Purn omo. E100 with Naira Purn omo. 8/1/ :41 8/1/ :27

61 _ _ ota/detail.php?id=2rd5iab0l0skf1u 7a4ru2jflp "Sebanyak 94 TKI ilegal Dideportasi Malaysia. (odp-rt) ota/detail.php?id=ik878thocermn5 g8a7r6esbdr " Datang ke Muktamar, Jokowi Bagikan Kaos dan Kartu Indonesia Pintar. (odp-rt) ota/detail.php?id=ik878thocermn5 g8a7r6esbdr NUL L NUL L 8/1/ :10 8/1/ : _ : Hindari masuk Jombang Kota! Lalu lintas MACET TOTAL. Imas kegiatan Muktamar NU. Sebaiknya gunakan jalur Ploso - Gedeg saja, Kawan. (odp-rt) NUL L 8/1/ : _ Foto almarhum KH Abdurrahman Wahid alis Gus Dur sedang membuka amplop berisi uang Rp5.000 menjadi pusat perhatian pengunjung pameran foto yang digelar jelang Muktamar NU. Foto : Fatkhurrohman Taufik Reporter Suara Surabaya (odp-rt) etail.php?id=ik878thocermn5g8a7r 6es &fokusid=61 3 E100 with Ima m De Iwes and Naira Purn omo. 8/1/ :16

62 36 Tahap selanjutnya yang perlu dilakukan setelah pengambilan data adalah pemilihan atribut. Pemilihan atribut dilakukan untuk mempertimbangkan dan menyeleksi atribut data mana saja yang akan digunakan selama penelitian berlangsung. Berdasarkan dataset status facebook yang diperoleh dari proses pengambilan data, atribut yang dapat digunakan adalah atribut message. Atribut message dipilih karena merupakan atribut yang menunjukkan isi teks dari status facebook fanpage. Sehingga, atribut data inilah yang selanjutnya akan diolah dan dilakukan analisis. Tabel 4.3 dibawah ini menujukkan sampel data berdasarkan hasil pemilihan atribut yang digunakan dalam penelitian. Tabel 4.3 Sampel Data Status Facebook Message Muktamar NU rumuskan konsep Islam Nusantara, Islam yang Tanpa Pentungan. Inilah konsep Islam tanpa kekerasan itu. (odp-fk) b0l0skf1u7a4ru2jflp Guyonan Gus Ipul, Pakde Karwo dan Jokowi di Muktamar NU. (odp-fk) b0l0skf1u7a4ru2jflp "Sebanyak 94 TKI ilegal Dideportasi Malaysia. (odp-rt) hocermn5g8a7r6esbdr " Datang ke Muktamar, Jokowi Bagikan Kaos dan Kartu Indonesia Pintar. (odp-rt) hocermn5g8a7r6esbdr

63 21.45 : Hindari masuk Jombang Kota! Lalu lintas MACET TOTAL. Imas kegiatan Muktamar NU. Sebaiknya gunakan jalur Ploso - Gedeg saja, Kawan. (odp-rt) Foto almarhum KH Abdurrahman Wahid alis Gus Dur sedang membuka amplop berisi uang Rp5.000 menjadi pusat perhatian pengunjung pameran foto yang digelar jelang Muktamar NU. Foto : Fatkhurrohman Taufik Reporter Suara Surabaya (odp-rt) mn5g8a7r6es &fokusid= Tahapan perancangan model akan mendefinisikan halhal apa saja yang perlu dilakukan setelah memilih atribut data yang digunakan dalam penelitian. Adapun hal-hal tersebut akan diimplementasikan menggunakan tools komputasi secara otomatis dengan bahasa pemrograman Java. Terdapat empat tahapan besar untuk mendapatkan model yaitu perancangan data lokasi, perancangan prarproses data, perancangan feature extractor, serta perancangan pemrosesan data. Berikut ini merupakan tahapan yang ada pada setiap perancangan Perancangan Data Lokasi Gambar 4.2 Sumber Data Lokasi

64 38 Pada penelitian ini, implementasi perancangan data lokasi akan menghasilkan daftar nama-nama lokasi kota Surabaya yang akan digunakan dalam proses pencarian nama lokasi dalam suatu teks secara otomatis. Tahapan perancangan data lokasi diawali dengan proses pengumpulan data lokasi dari beberapa sumber. Pada Gambar 4.2 ditunjukkan bahwa sumber data lokasi terbagi atas dua sumber yaitu Open Street Map dan Dinas PU Bina Marga. Data-data yang telah dikumpulkan akan diekstraksi menggunakan tools yang sesuai dengan format data dari seluruh sumber. Setelah itu, data yang telah diekstrak dari kedua sumber akan digabungkan dan akan didapatkan daftar nama-nama lokasi kota Surabaya dalam format text. Adapun perancangan proses pengumpulan, ekstraksi dan pengubahan format pada setiap sumbernya dijelaskan sebagai berikut: Data Lokasi Open Street Map Gambar 4.3 Alur Ekstraksi Data Lokasi Open Street Map Untuk dapat memuat nama-nama lokasi yang ada di kota Surabaya dari Open Street Map, terdapat beberapa tahapan yang perlu dilakukan. Gambar 4.3 di atas menunjukan tahapan alur ekstraksi data lokasi dari Open Street Map. Tahapan yang pertama adalah melakukan esktraksi peta Open Street Map menggunakan Mapzen Metro Extracts yang

65 39 dapat diakses pada Mapzen Metro Extracts dapat digunakan untuk memilih area mana yang akan diekstraksi. Setelah dilakukan ekstraksi, akan didapatkan data lokasi Surabaya dalam format GeoJSON. Selanjutnya, akan dilakukan parsing data GeoJSON menggunakan Program Java yang akhirnya menghasilkan data daftar nama-nama lokasi kota Surabaya dalam format text Data Lokasi Dinas PU Bina Marga Gambar 4.4 Alur Ekstraksi Data Lokasi Dinas PU Bina Marga Proses pengumpulan data pada Dinas PU Bina Marga diawali melalui wawancara pegawai dinas dan pengajuan surat permohonan data melalui Badan Kesatuan Bangsa dan Politik (Bakesbangpol) Kota Surabaya. Adapun alur ekstraksi data lokasi Dinas PU Bina Marga tampak pada Gambar 4.4 di atas. Data yang didapatkan dari Dinas PU Bina Marga untuk menjadi masukan pada penelitian ini adalah data panjang jalan kota Surabaya. Data tersebut berupa file excel (.xlsx) yang berisikan daftar nama-nama jalan beserta nama pangkal ruas jalan dan nama ujung ruas jalan. Setelah data didapatkan, selanjutnya adalah pemilihan atribut data yang berisikan nama jalan, kelurahan serta kecamatan untuk dimasukkan pada daftar nama lokasi kota Surabaya.

66 Perancangan Praproses Data Gambar 4.5 Alur Praproses Data Sebelum dapat melakukan pemrosesan data, data yang telah terkumpul perlu disesuaikan dengan format yang ada pada library yang digunakan pada pemrosesan data, yaitu library Stanford NER dengan bahasa pemrograman Java. Untuk itu, data-data yang digunakan akan melalui praproses data, sehingga dapat digunakan dalam pemrosesan data menggunakan library Stanford NER. Pada penelitian ini, seperti yang terdapat pada gambar alur praproses data pada Gambar 4.5, data-data seperti data lokasi, data non lokasi, serta dataset status facebook yang tersimpan dalam database, akan melalui praproses data untuk dapat menjadi file berupa file Tab-Separated Value (.tsv). Praproses data akan dilakukan menggunakan program dengan bahasa pemrograman Java. Program praproses data dibuat untuk menandai lokasi yang ada pada suatu teks secara otomatis dari daftar nama-nama lokasi dengan menggunakan Java Pattern dan Java Matcher. Selain dilakukan penandaan secara otomatis menggunakan program, penelitian ini juga akan mencoba percobaan dengan melakukan penandaan lokasi secara manual tanpa program. Setelah penandaan nama-nama lokasi dilakukan, selanjutnya, akan dilakukan pembagian dataset. Dataset akan

67 41 dibagi berdasarkan cross-validataion dengan k-fold=5. Maka, dataset keseluruhan akan dibagi menjadi 5 file (.tsv). Masingmasing file akan mewakili sejumlah 20% data dari keseluruhan dataset. Selanjutnya, 5 file ini akan diteruskan untuk dilakukan pemrosesan data. Adapun tahapan dalam melakukan praproses data yang harus dilakukan di atas akan dibagi berdasarkan tahapantahapan yang lebih rinci, antara lain adalah pemuatan data teks, pemuatan data teks, pembagian dataset, matching lokasi dan non lokasi dengan teks, tokenizing, serta labeling teks dengan lokasi. Tahapan-tahapan tersebut akan dibahas lebih rinci dalam pembahasan berikut ini Perancangan Pemuatan Data Teks Gambar 4.6 Alur Pemuatan Data Teks Status Facebook Tahapan pertama dalam melalakukan praproses data adalah pemuatan dataset status facebook yang berupa data teks. Gambar 4.6 menampilkan alur pemuatan data teks status facebook. Pemuatan data dilakukan dengan menggunakan program dengan bahasa pemrograman Java yang mengkoneksikan program dengan Database MySQL status facebook. Pada proses ini, akan dilakukan pemanggilan data dengan menggunakan Query SELECT MySQL. Dalam penelitian ini, akan dipanggil sejumlah 1000 data teks yang akan digunakan menjadi keseluruhan dataset. Setelah data diambil, tautan yang ada pada data teks perlu dihapus karena tidak dimasukkan dalam pemrosesan data. Selain itu, juga

68 42 dilakukan penghapusan baris baru pada teks, sehingga teks akan menjadi dalam 1 baris. Kemudian, data yang telah diambil akan diberikan tanda bahwa data tersebut telah dilakukan proses pemanggilan data. Selanjutnya, data yang telah dipanggil akan dimuat dalam program berupa Data Teks Perancangan Pemuatan Data Lokasi dan Non Lokasi Tahap selanjutnya yang perlu dilakukan dalam praproses data adalah pemuatan data lokasi dan non lokasi. Data lokasi dan non lokasi akan dimuat dalam program menggunakan bahasa pemrograman Java dan akan disimpan menjadi Pattern. Gambar 4.7 Alur Pemuatan Data Lokasi Gambar 4.7 di atas menunjukkan alur pemuatan data lokasi menjadi Pattern Lokasi. Proses pemuatan data lokasi diawali dengan mengidentifikasi setiap baris yang ada pada Data Lokasi. Setiap baris berupa teks tersebut akan dimuat pada program Java. Setelah keseluruhan baris dimuat, selanjutnya, akan dilakukan pengurutan data teks lokasi secara descending berdasarkan panjang kata. Sehingga, data lokasi yang memiliki jumlah huruf paling banyak berada pada posisi awal. Sedangkan data lokasi yang memiliki huruf paling sedikit berada di posisi terakhir. Setelah itu data yang telah diurutkan tersebut akan disimpan dalam Pattern Lokasi.

69 43 Tabel 4.4 Daftar Nama Non Lokasi No Nama non lokasi 1 Suara Surabaya 2 Suara Bojonegoro Indah 3 Se-Surabaya 4 Walikota Surabaya 5 Pilkada Surabaya Data non lokasi pada penelitian ini merupakan daftar nama-nama non lokasi, misalkan nama organisasi, yang didalamnya terdapat nama lokasi. Data non lokasi digunakan agar penandaan nama lokasi pada data teks tidak perlu menandai nama-nama non lokasi yang didalamnya terdapat nama lokasi. Nama non lokasi diambil dari kata-kata yang sering muncul pada data teks dan pada konteks penelitian ini dapat dilihat pada Tabel 4.4. Gambar 4.8 Alur Pemuatan Data Non Lokasi Gambar 4.8 di atas menunjukkan alur pemuatan data non lokasi menjadi Pattern Non Lokasi. Proses pemuatan data lokasi diawali dengan mengidentifikasi setiap baris yang ada pada Data Non Lokasi. Setiap baris berupa teks tersebut akan dimuat pada program Java. Setelah keseluruhan baris dimuat, selanjutnya, akan dilakukan pengurutan data teks non lokasi secara descending berdasarkan panjang kata. Sehingga, data non lokasi yang memiliki jumlah huruf paling banyak berada pada posisi awal. Sedangkan data lokasi yang memiliki huruf paling sedikit berada di posisi terakhir. Setelah itu data yang telah diurutkan tersebut akan disimpan dalam Pattern Non Lokasi.

70 Perancangan Pembagian Dataset Gambar 4.9 Pembagian Dataset Setelah dilakukan pemuatan Data Teks maupun Data Lokasi dan Non Lokasi, tahap berikutnya adalah pembuatan file dalam format TSV (.tsv) untuk pembagian dataset. File akan dibuat dengan menggunakan program Java dan dituliskan dengan Java BufferedWriter untuk setiap file. Seperti pada Gambar 4.9, berdasarkan cross-validation dengan k-fold=5, maka dataset akan dibagi ke dalam 5 file yang berbeda. Pembagian ini akan dilakukan dengan pengurutan data teks. Sehigga, data teks ke-1 akan dimasukkan pada file ke-1, data teks ke-2 akan dimasukkan pada file ke-2, data teks ke-3 akan dimasukkan pada file ke-3 dan seterusnya. Data teks yang dimasukkan pada file tidak semata-mata dari hasil muatan dataset teks mentah. Data teks yang dimuat awalnya akan dilakukan pengacakan dengan Random Shuffle menggunakan Seed pada Java. Selain itu, training file yang dibuat akan dituliskan hasil dari praproses matching pada sub , tokenizing pada sub serta labeling pada sub untuk setiap data teks dengan data lokasi dan non lokasi yang berupa token dan label.

71 Perancangan Matching Lokasi dan Non Lokasi dengan Data Teks 45 Gambar 4.10 Alur Matching Lokasi dan Non Lokasi dengan Data Teks Matching Lokasi dan Non Lokasi dengan Data Teks merupakan tahapan untuk menghidentifikasi bagian dari teks mana yang merupakan suatu lokasi menggunakan Java Pattern dan Java Matcher. Alur Matching Lokasi dan Non Lokasi dengan Data Teks ini ditunjukkan pada Gambar 4.10 di atas. Pada tahapan ini, terdapat 3 masukan pada program yaitu Data Teks, Pattern Lokasi, serta Pattern Non Lokasi. Pertama-tama yang perlu dilakukan pada program adalah duplikasi Data Teks menjadi Data Teks Temporary. Data Teks Temporary diperlukan untuk menandai bagian dari suatu teks yang merupakan lokasi maupun non lokasi. Proses penandaan dimulai dengan menggunakan matcher pada pattern non lokasi dengan teks. Jika dalam suatu teks terdapat kata-kata yang ada pada pattern non lokasi, data yang terdapat pada data teks temporary sesuai index yang ditemukan akan ditandai menjadi non lokasi. Setelah itu barulah digunakan matcher pada pattern lokasi dengan teks. Jika dalam suatu teks terdapat kata-kata yang ada pada pattern lokasi, data yang terdapat pada teks temporary sesuai index yang ditemukan akan ditandai menjadi lokasi.

72 Perancangan Tokenizing Gambar 4.11 Alur Tokenizing Tahap yang perlu dilakukan selanjutnya setelah Data Teks dan Data Teks Temporary ditandai lokasi dan lokasi adalah Tokenizing. Gambar 4.11 di atas menggambarkan alur tokenizing untuk data teks dan data teks temporary. Pada tahapan ini, tokenizing dilakukan dengan menggunakan library dari Stanford NLP Process dengan class PTBTokenizer. Tahapan Tokenizing akan membagi teks menjadi sequence token-token, yang bisa dikorespondensikan menjadi katakata [17]. Tokenizing ini dilakukan untuk data teks maupun data teks temporary. Sehingga, tahapan ini akan menghasilkan sequence token dari data teks serta sequence token dari data teks temporary Perancangan Labeling Lokasi Setelah dilakukan tokenizing, tahap berikutnya adalah penandaan lokasi sesuai dengan format yang ada pada library Stanford NER, yaitu sequence dari token teks diletakkan pada kolom ke-0 dari data, kemudian pada kolom ke-1 merupakan label yang dipisahkan menggunakan tab. File hasil entity labeling ini akan disimpan dalam format.tsv.

73 47 a. Labeling dengan Program Gambar 4.12 Alur Labeling Lokasi Menggunakan Program Gambar 4.12 di atas menunjukkan alur labeling lokasi dengan menggunakan program Java. Untuk melakukan labeling tersebut, pertama-tama, hal yang perlu dilakukan adalah membandingkan setiap sequence dengan index yang sama pada token teks dan token teks temporary. Saat dibandingkan, jika sequence yang terdapat pada token teks dan token teks temporary adalah sama (equals), maka token teks tidak akan terindikasi sebagai lokasi dan diberikan label berupa O dengan pemisahan berupa tab. Jika sequence yang terdapat pada token teks dan token teks temporary adalah tidak sama dan terdapat tanda non lokasi, maka token teks tidak diinfikasikan sebagai lokasi dan diberikan label berupa O dengan pemisahan berupa tab. Maka, indikasi terdapat lokasi dalam suatu teks adalah ketika sequence token teks temporary berbeda dengan sequence token teks dan teks temporary memiliki tanda lokasi. Selanjutnya, teks yang terindikasi sebagai lokasi akan diberikan label berupa LOC dengan pemisahan berupa tab. Setelah dilakukan pemberian label pada seluruh token, maka token dan label akan dituliskan pada file dalam format TSV (.tsv) untuk dapat dilakukan pemrosesan data dengan pembagian dataset yang dijelaskan pada sub

74 48 b. Labeling Manual Setelah didapatkan file dari tahapan pembagian dataset hingga pemberian label dengan program, penelitian ini juga akan melakukan pemberian label lokasi yang ada pada teks secara manual. Hal ini dilakukan untuk menanggulangi namanama lokasi di luar kota Surabaya yang tidak terindikasi pada program. Selain itu, pengecekan manual juga dilakukan unutk menanggulangi nama-nama non lokasi yang seharusnya tidak terindikasi pada program. Sehingga, diharapkan, dataset yang akan digunakan pada pemrosesan data (training dan testing) akan maksimal. Pengecekan manual pada pemberian label lokasi dilakukan dengan pengecekan satu-persatu keseluruhan token yang ada pada data file. Jika terindikasi sebagai lokasi, maka akan diberikan label berupa LOC. Selain itu, jika terdapat token yang seharusnya bukan lokasi namun terdapat label LOC, maka label tersebut akan diubah menjadi O. Pada proses pelabelan ini, diperlukan konsistensi dalam memberikan label LOC. Untuk itu, perlu adanya definisi tetap mengenai apa yang dimaksudkan degan label lokasi atau LOC. Label lokasi (LOC) dapat diberikan pada suatu token dengan memperhatikan beberapa hal seperti pada Gambar Gambar 4.13 Irisan Nama Lokasi yang Diberikan Label

75 49 Gambar 4.13 menunjukkan hasil irisan antara beberapa hal yang perlu diperhatikan saat melakukan pemberian label lokasi antara lain nama-nama lokasi, struktur bahasa formal dan non-formal, konteks berita, serta batasan-batasan tertentu seperti yang didefinisikan sebagai berikut: 1. Token merupakan nama-nama lokasi. Dasar utama penentuan lokasi pada suatu kalimat adalah nama-nama lokasi yang ada di bawah ini: Nama-nama negara seperti Indonesia, Malaysia. Nama-nama provinsi seperti Jawa Timur Nama-nama kota dan daerah seperti Surabaya, Malang, Pasuruan. Nama daerah administratif seperti nama desa, kelurahan, kecamatan, maupun daerah pemukiman penduduk seperti perumahan. Didefinisikan sebagai lokasi jika terdapat nama daerah seperti Benowo. Nama fasilitas umum seperti stasiun kereta, terminal, bandara, halte, perpustakaan, rumah sakit, puskesmas, klinik kesehatan, tempat pengisian bahan bakar, jembatan, SIM Corner, maupun laboratorium. Contoh dari fasilitas umum adalah Puskesmas Suramadu. Nama jalan pembatas yang berupa jalan tol. Misalnya, Tol Dupak. Nama bangunan seperti apartemen, hotel, asrama, industri, toko, gereja, masjid, candi, rumah sakit, sekolah, bank, perguruan tinggi, universitas, supermarket, mimarket, pasar, rumah makan, bangunan pemerintahan, kantor, polres, polsek, balai, maupun hall umum. Contoh dari nama bangunan misalnya Apartemen Puri Darmo. Nama-nama jalan. Contoh penulisan nama jalan yang sesuai EYD adalah Jalan Pemuda. Nama lokasi alam seperti nama sungai dan gunung. Contoh nama lokasi alam adalah Kali Mas

76 50 Alamat rumah lengkap dengan nomor gang, nomor rumah, blok, nomor RT, maupun nomor RW. 2. Struktur bahasa formal dan non formal. Struktur bahasa formal yaitu struktur bahasa yang menganut Ejaan Yang Disempurnakan. Lokasi dengan struktur bahasa formal akan diberikan label. Pada penelitian ini pun juga tidak menghiraukan nama lokasi dengan struktur penulisan non formal yang umumnya tidak sesuai dengan EYD seperti berikut: Nama-nama lokasi yang disingkat tetap diberikan label lokasi seperti Sby yang berarti lokasi Surabaya, ataupun Ds. yang berarti Desa. Menghiraukan penulisan huruf kapital dan non kapital yang kurang tepat misal jl kertajaya tetap diberikan label lokasi. Nama jalan yang mengandung singkatan seperti JL, Jl, jl, jl, Jln., Jl., serta penulisan nama jalan yang tidak menghiraukan tata cara penulisan huruf kapital seperti, jalan, pemuda, PEMUDA tetap diberikan label lokasi. 3. Penentuan lokasi berdasarkan konteks berita: Memperhatikan relevansi nama lokasi dengan berita. Pada berita, jika terdapat nama suatu lokasi, tidak semata-semata dapat langsung didefinisikan sebagai lokasi. Melainkan harus dilihat relevansi nama lokasi pada berita. Lokasi pada kalimat berita umumnya merupakan sebuah Keterangan (K) pada struktur kalimat Subjek (S) Predikat (P) Objek (O) Keterangan (K), yang merupakan keterangan tempat. Ciri-ciri yang merupakan sebuah lokasi pada kalimat adalah terdapat kata-kata awalan seperti kata di, ke, dari, depan, maupun asal. Nama jalur jalan yang didefinisikan menggunakan kata arah maupun tanda -. Contohnya pada

77 51 Warugunung - Karangpilang, maka Warugunung dan Karangpilang merupakan sebuah lokasi. 4. Batasan nama lokasi: Tidak termasuk nama organisasi (ORGANIZATION). Misalnya, Polrestabes Surabaya tidak didefinisikan sebagai lokasi jika pada konteks berita terdefinisikan sebagai organisasi. Tidak termasuk lokasi yang menerangkan orang (PERSON). Misalnya, Walikota Surabaya tidak didefinisikan sebagai lokasi. Tidak termasuk kata yang menerangkan lokasi seperti Exit pada Exit Tol Waru, kata TL (Traffic Light) pada TL Demak, mapupun kata simpang pada simpang Balongsari Perancangan Feature Extractor Feature Extractor pada penelitian ini digunakan untuk mengekstraksi fitur-fitur yang digunakan dalam pemrosesan data. Penggunaan feature extractor akan dituliskan dalam file properties. Selanjutnya, file properties akan digunakan pada tahap training sehingga menghasilkan model. Pada penelitian ini pun akan dilakukan percobaan yang menguji penggunaan feature extractor mana saja yang dapat meningkatkan performa model secara optimal. feature extractor yang digunakan didapatkan dari Class NERFeatureFactory pada library Stanford NER. Terdapat 24 feature extractor yang diujicobakan pada pemrosesan data penelitian ini. 24 feature extractor tersebut terdapat pada Tabel 4.5 dengan keterangan fitur sebagai berikut. Keterangan Fitur w = word / kata t = tag p = position (index kata pada kalimat) c = class / kelas p = paren g = gazette s = shape n(w) = ngrams dari word/kata g(w) = gazette yang berisikan word/kata

78 52 Tabel 4.5 Daftar Feature Extractor No Kode Feature Extractor Syarat Fitur 1. A wordshape - s,c 2. B usetypeseqs wordshape pw, c 3. C usetypeseqs2 wordshape nw, c 4. D usetypeysequences wordshape s,pc,c ns,pc,c ps,pc,s,c 5. E MaxLeft - 6. F useword - w,c 7. G useprev - pw,c 8. H usenext - nw,c 9. I usewordpairs - pw,w,c w,nw,c 10. J usesymwordpairs - pw,nw,c 11. K useposition - p,c 12. L useclassfeature - c 13. M usesequences - pc,w,c nc,c pc,nc,c 14. N useprevsequences - pc,c pc,w,c 15. O usedisjshape - (ps;p2s;p 3s;p4s),c; (ns;n2s;n 3s;n4s),c 16. P usedisjunctive - (pw;p2w; p3w;p4w ),c; (nw;n2w; n3w;n4w ),c 17. Q disjunctionwidth usedisjuncti - ve 18. R strictlyfirstorder S usesum -

79 T usengrams - n(w),c n(w),s,c 21. U maxngramleng usengrams 22. V nomidngrams usengrams 23. W usegazettes - g(w),c 24. X cleangazette usegazettes g(w),[pw,nw,...],c Deskripsi Feature Extractor A. WordShape Feature extractor wordshape akan mengekstraksi fitur shape atau bentuk karakter dari suatu kata, seperti bentuk huruf besar, huruf kecil, digit atau angka, maupun karakter yunani. Terdapat berbagai skema identifikasi wordshape yang terdapat pada class WordShapeClassifier.lookupShaper. B. UseTypeSeqs UseTypeSeqs merupakan Feature extractor yang digunakan untuk menangkap urutan dari wordshape yang digunakan. C. usetypeseqs2 UseTypeSeqs2 merupakan Feature extractor yang digunakan untuk menangkap urutan pertama dan kedua dari wordshape yang digunakan. D. usetypeysequences UseTypeSeqs2 merupakan Feature extractor yang digunakan untuk menangkap urutan pertama dari pola wordshape yang digunakan dengan melihat kelas sebelum. E. MaxLeft Nilai yang digunakan untuk mendefinisikan jarak kata ke kiri atau sebelum untuk mengetahui konteks fitur kelas yang digunakan.

80 54 F. useword Feature extractor useword akan mengekstraksi fitur word atau kata itu sendiri serta kelas yang mengikutinya. G. useprev Feature extractor useprev merupakan ekstraktor fitur prev word atau kata sebelum serta kelas yang mengikutinya. H. usenext Feature extractor usenext merupakan ekstraktor fitur next word atau kata sesudah serta kelas yang mengikutinya. I. usewordpairs Feature extractor usewordpairs merupakan ekstraktor fitur prev word atau kata sebelum, word atau kata itu sendiri serta kelas yang mengikutinya. Fitur tersebut diekstrak bersamaan dengan fitur word atau kata itu sendiri, next word atau kata sesudah serta kelas yang mengikutinya. J. usesymwordpairs Feature extractor usewordpairs merupakan ekstraktor fitur prev word atau kata sebelum, next word atau kata sesudah, serta class yang mengikutinya. K. useposition Feature extractor useposition merupakan kombinasi fitur posisi kata pada kalimat serta kelas pada kata. L. useclassfeature Feature extractor akan mengekstraksi fitur kelas dengan melihat seberapa sering fitur kelas akan muncul pada data training.

81 M. usesequences 55 usesequences merupakan feature extractor yang digunakan untuk mengekstraksi sequence atau urutan dari fitur kelas dengan memperhatikan prev class atau kelas sebelum, word atau kata itu sendiri dan kelas yang mengikutinya, serta next class atau kelas sesudah kata. N. useprevsequences useprevsequences akan mengekstraksi fitur yang melihat sequence atau urutan dengan memperhatikan prev class atau kelas sebelum. O. usedisjshape usedisjshape digunakan untuk mengekstraksi fitur disjungsi dari word shape atau bentuk karakter pada kata dengan jarak ke kiri (sebelum) dan ke kanan (sesudah) yang didefinisikan pada feature extractor disjunctionwidth. Ekstraksi fitur ini akan memperhatikan arah, bukan posisi kata dalam kalimat. P. usedisjunctive Feature extractor usedisjunctive akan mengekstraksi fitur disjungsi dari kata dengan jarak ke kiri (sebelum) dan ke kanan (sesudah) yang didefinisikan pada feature extractor disjunctionwidth. Ekstraksi fitur ini akan memperhatikan arah, bukan posisi kata dalam kalimat. Q. disjunctionwidth disjuctionwidth digunakan untuk mendefinisikan jarak kata yang digunakan untuk memperhatikan disjungsi dari kata saat ini. Secara default, disjunctionwidth didefinisikan dengan nilai 4. R. strictlyfirstorder Feature extractor strictlyfirstorder akan mengekstraksi fitur yang dapat menghilangkan seluruh fitur selain fitur kelas dan fitur clique CpC.

82 56 S. usesum Tidak terdapat definisi yang komprehensif mengenai feature extractor ini berdasarkan dokumentasi library. T. usengrams usengrams merupakan ekstraksi fitur n-grams kata. N-Gram merupakan potongan n karakter dalam suatu string atau kata tertentu. Misalnya pada kata SURABAYA akan didapat n- gram yang dapat dilihat pada Tabel 4.6. Tabel 4.6 Karakter N-Gram N-Gram 1-Gram (Uni-gram) 2-Gram (Bi-gram) 3-Gram (Tri-gram) 4-Gram (Quad-gram) 5-Gram 6-Gram 7-Gram Karakter N-Gram S, U, R, A, B, A, Y, A _S, SU, UR, RA, AB, BA, AY, YA, A _S, _SU, SUR, URA, RAB, ABA, BAY, AYA, YA_, A _ S, SU, _ SUR, SURA, URAB, RABA, ABAY, BAYA, AYA_, YA, A _ S, _ SU, SUR, _ SURA, SURAB, URABA, RABAY, ABAYA, BAYA _, AYA, YA _, A _ S, SU, _SUR, SURA, _SURAB, SURABA, URABAY, RABAYA, ABAYA_, BAYA, AYA _, YA, A _ S, _ SU, SUR, _SURA, SURAB, _SURABA, SURABAY, URABAYA, RABAYA_, ABAYA, BAYA _, AYA, YA _, A

83 U. maxngramleng 57 Feature extractor maxngramleng merupakan ekstraksi fitur yang digunakan untuk mendefinisikan nilai n-gram yang digunakan. N-Gram dengan nilai di atas maxngramleng tidak akan digunakan pada training untuk menghasilkan model. V. nomidngrams Jika menggunakan feature extractor nomidngrams, training tidak mengikutkan huruf awal dan terakhir untuk N-Gram dari suatu kata. W. usegazettes Feature extractor usegazettes akan memperhatikan gazette atau lexicon nama-nama lokasi yang pada penelitian ini didefinisikan sebagai daftar nama lokasi yang didapat dari data lokasi OSM dan Bina Marga. X. cleangazette Jika feature extractor cleangazzete digunakan, fitur gazette digunakan dengan memperhatikan keseluruhan gabungan kata pada gazette. Khusus pada wordshape feature extractor, library Stanford NER menyediakan beberapa pilihan wordshape dengan berbagai skema wordshape. Untuk dapat mengetahui wordshape mana yang dapat mengoptimalkan hasil performa model, maka perlu dilakukan percobaan dengan wordshape Selection. Selain itu, untuk menguji hasil performa model menggunakan suatu feature extractor serta kombinasi feature extractor, digunakan skenario forward selection dan backward elimination wordshape Selection Skema wordshape yang disediakan oleh library Stanford NER terdapat pada Class WordShapeClassifier. Pada penelitian ini akan dilakukan percobaan dengan 1 feature extractor wordshape untuk membandingkan dan mengetahui

84 58 feature extractor wordshape mana yang akan menghasilkan performa paling optimal. WordShape yang menghasilkan performa paling optimal selanjutnya akan digunakan dalam skenario percobaan forward selection maupun backward elimination. wordshape extractor yang disediakan oleh library Stanford NER terdapat pada Tabel 4.7. Tabel 4.7 Deskripsi wordshape Extractor No wordshape Feature Extractor 1 dan1 2 chris1 3 dan2 4 dan2uselc Deskripsi WordShape dan1 menyediakan 5 cara dasar untuk mendefinisikan shape atau betuk karakter dari suatu kata antara lain digit, huruf besar seluruhnya, huruf kecil seluruhnya, gabungan, serta karakter non alphanumeric. WordShape chris1 dapat mendefinisikan kata-kata menjadi 24 jenis kelas yang dispesifikasikan pada BBN Nymble NER. Pada wordshape extractor ini, karakter non-latin didefinisikan sebagai karakter huruf kecil. WordShape dan2 memungkinkan pembuatan classifier yang memperhatikan huruf besar dan huruf kecil serta digit. WordShape ini akan merapatkan sequence pada shape karakter yang sama tanpa mengubah karakter tanda baca. WordShape dan2uselc merupakan wordshape dan2

85 59 5 dan2bio 6 dan2biouselc 7 jenny1 8 jenny1uselc 9 chris2 yang memperhatikan karakter lower case pada kata. WordShape dan2bio memungkinkan pembuatan classifier yang memperhatikan huruf besar dan huruf kecil serta digit. WordShape ini akan merapatkan sequence pada shape karakter yang sama tanpa mengubah karakter tanda baca. Selain itu, wordshape ini memperhatikan karakter yunani yang berguna untuk bio. WordShape dan2biouselc merupakan wordshape dan2bio yang memperhatikan karakter lower case pada kata. WordShape jenny1 memungkinkan pembuatan classifier yang memperhatikan huruf besar dan huruf kecil serta digit. WordShape ini akan merapatkan sequence pada shape karakter yang sama, tetapi menetapkan karakter tanda baca. Selain itu, wordshape ini juga memperhatikan karakter yunani. WordShape jenny1uselc merupakan wordshape jenny1 yang memperhatikan karakter lower case pada kata. WordShape chris2 memiliki cara yang sama seperti wordshape dan2. Namun, pada wordshape ini dibedakan antara kata yang pendek dan yang panjang. Pada kata yang panjang, diperhatikan 2

86 60 10 chris2uselc 11 chris3 12 chris3uselc 13 chris4 karakter awal dan 2 karakter terakhir pada suatu kata. Selanjutnya, akan dirapatkan bentuk karakter antara 2 karakter awal dan 2 karakter akhir tersebut. WordShape chris2uselc merupakan wordshape chris2 yang memperhatikan karakter lower case pada kata. WordShape chris3 merupakan wordshape chris2 yang mengabaikan kata-kata yang memiliki panjang kata kurang dari boundary (4 karakter). WordShape chris3uselc merupakan wordshape chris2uselc yang mengabaikan kata-kata yang memiliki panjang kata kurang dari boundary (4 karakter). WordShape chris4 menggunakan cara seperti wordshape dan2 tetapi menyortir kata-kata yang panjang dan mempertahankan kata-kata yang pendek dengan selalu merekam 2 karakter awal dan akhir. Dibandingkan dengan wordshape2, wordshape ini lebih diunggulkan untuk menangkap karakter-karakter Unicode.

87 maxngramleng Selection Feature extractor maxngramleng mendefinisikan nilai terpanjang n-gram yang digunakan dalam feature extractor usengram. Adapun pada percobaan akan dilakukan dengan menggunakan perbedaan nilai maxngramleng, yaitu 1 hingga 7. Percobaan dilakukan untuk mencari tahu nilai maxngramleng mana yang akan menghasilkan performa paling optimal. Nilai maxngramleng dengan performa paling optimal tersebut akan digunakan pada percobaan selajutnya dalam skenario forward selection mapupun backward elimination. Setiap nilai maxngramleng dideskripsikan pada Tabel 4.8. Tabel 4.8 N-Gram Pada maxngramleng maxngramleng N-Gram maxngramleng=1 Uni-Gram maxngramleng=2 Uni-Gram, Bi-Gram maxngramleng=3 Uni-Gram, Bi-Gram, Tri-Gram maxngramleng=4 Uni-Gram, Bi-Gram, Tri-Gram, Quad-Gram maxngramleng=5 Uni-Gram, Bi-Gram, Tri-Gram, Quad-Gram, 5-Gram maxngramleng=6 Uni-Gram, Bi-Gram, Tri-Gram, Quad-Gram, 5-Gram, 6-Gram maxngramleng=7 Uni-Gram, Bi-Gram, Tri-Gram, Quad-Gram, 5-Gram, 6-Gram, 7- Gram Skenario Forward Selection Prosedur feature extractor selection dengan forward selection dapat dilakukan dengan beberapa tahapan sebagai berikut. 1. Awali dengan pemrosesan data tanpa menggunakan feature extractor

88 62 2. Lakukan pemrosesan data menggunakan seluruh kemungkinan penambahan 1 feature extractor 3. Pilih model dengan hasil performa tertinggi 4. Ulangi tahapan 2 dan 3 5. Hentikan ketika nilai performa tidak meningkat Adapun penggambaran skenario dapat dilihat pada Gambar Gambar 4.14 Skenario Forward Selection Feature Extractor Skenario forward selection jika menggunakan 24 feature extractor (A-X): 1. Percobaan pertama pemrosesan dilakukan dengan menggunakan 1 feature extractor. Misal ditemukan bahwa feature extractor E dapat menghasilkan performa paling baik. 2. Percobaan selanjutnya, kombinasikan feature extractor E dengan setiap feature extractor selain E. Misal ditemukan bahwa subset feature extractor EG menghasilkan performa paling baik. Jika performa lebih baik daripada percobaan 1, maka lanjutkan. 3. Pada percobaan berikutnya, kombinasikan subset feature extractor EG dengan setiap feature extractor selain EG. Misal ditemukan bahwa subset feature extractor EGC menghasilkan performa paling baik. Jika performa lebih baik daripada percobaan 2, maka lanjutkan.

89 63 4. Selanjutnya, kombinasikan subset feature extractor EGC dengan setiap feature extractor selain EGC. Misal ditemukan bahwa subset feature extractor EGCH menghasilkan performa paling baik. Jika performa lebih baik daripada percobaan 3, maka lanjutkan. 5. Berikutnya, kombinasikan subset feature extractor EGCH dengan setiap feature extractor selain EGCH. Misal tidak ditemukan peningkatan performa jika dibandingkan percobaan sebelumnya, hentikan percobaan Skenario Backward Elimination Prosedur feature extractor selection dengan backward elimination dapat dilakukan dengan beberapa tahapan sebagai berikut. 1. Awali dengan pemrosesan data menggunakan seluruh feature extractor yang ditentukan 2. Lakukan pemrosesan data yang akan menghasilkan model dengan menggunakan seluruh kemungkinan menghilangkan setiap 1 feature extractor 3. Pilih model dengan hasil performa tertinggi 4. Ulangi tahapan 2 dan 3 5. Hentikan ketika nilai performa tidak meningkat Adapun penggambaran skenario dapat dilihat pada Gambar 4.15.

90 64 Gambar 4.15 Skenario Backward Elimination Feature Extractor Skenario backward elimination jika menggunakan 24 feature extractor (A-X): 1. Percobaan pertama pemrosesan dilakukan dengan menggunakan 24 feature extractor. 2. Pada percobaan selanjutnya, lakukan seluruh kemungkinan percobaan dengan mengeliminasi setiap 1 feature extractor. Misalkan kemungkinan 1 adalah dengan mengeliminasi feature extractor kode A, maka percobaan akan dilakukan dengan menggunakan kombinasi kode feature extractor seperti BCDEFG WX. Sehingga pada percobaan ini akan terdapat 24 kemungkinan percobaan. Misal pada percobaan ini ditemukan bahwa dengan mengeliminasi feature extractor kode C pada model akan meningkatkan performa, yaitu model dengan kombinasi feature extractor ABDEFG WX 3. Pada percobaan berikutnya, lakukan percobaan dengan seluruh kemungkinan untuk mengeliminasi setiap 1 feature extractor kembali dari kombinasi feature extractor model yang terpilih yaitu ABDEFG...WX.

91 65 Misalkan pada percobaan ini ditemukan bahwa dengan mengeliminasi feature extractor kode E pada model akan meningkatkan performa, yaitu model dengan kombinasi feature extractor ABDFGH...WX. 4. Selanjutnya, lakukan hal sama yaitu melakukan percobaan dengan seluruh kemungkinan untuk mengeliminasi setiap 1 feature extractor dari kombinasi feature extractor model yang terpilih, yaitu ABDFGH...WX. Misalkan pada percobaan ini tidak ditemukan peningkatan performa pada model manapun, maka percobaan dapat dihentikan Perancangan Pemrosesan Data Gambar 4.16 Alur Pemrosesan Data Gambar 4.16 menunjukkan alur kerja dalam melakukan pemrosesan data. Pemrosesan data yang dilakukan menggunakan library Stanford NER pada class CRFClassifier. Dalam hal ini, pemrosesan data akan melalui tahap training yang akan menghasilkan model. Selain itu, pemrosesan data juga akan melalui tahap testing yang akan menghasilkan nilai performa model. Adapun untuk dapat memudahkan pengerjaan pemrosesan data sesuai skenario feature extractor selection, perlu adanya proses pembuatan folder sesuai skenario forward selection dan backward elimination. Folder dibuat berdasarkan pemisahan folder skenario dan model, yang akan berisikan file properties serta model yang dihasilkan pada proses training.

92 Training Setelah didapatkan 5 file data training serta file properties, tahap yang dilakukan selanjutnya adalah melakukan training data. Training data akan dilakukan dengan metode cross-validation. Dengan k-fold=5, maka pada tahap training akan menghasilkan 5 model yang berbeda dengan kombinasi file seperti berikut ini. Model 1: Training file 2,3,4,5 Model 2: Training file 1,3,4,5 Model 3: Training file 1,2,4,5 Model 4: Training file 1,2,3,5 Model 5: Training file 1,2,3,4 Gambar 4.17 Alur Proses Training Gambar 4.17 menunjukkan alur proses pada tahap training. Proses training akan dilakukan dengan menggunakan library Stanford NER pada class CRFClassifier dengan masukan berupa training file untuk dataset training serta file properties yang berisikan feature extractor yang ingin digunakan pada percoban. Library Stanford NER ini akan mengeksekusi training dengan algoritma Conditional Random Field. Setelah itu, akan dihasilkan file model serialized yang akan digunakan pada proses testing.

93 Testing Testing pada penelitian ini diujikan pada setiap model. Model akan diuji dengan menggunakan training file yang tidak digunakan pada model tersebut. Dengan metode crossvalidation maka pembagian file untuk dilakukan testing adalah sebagai berikut: Model 1: Training file 1 Model 2: Training file 2 Model 3: Training file 3 Model 4: Training file 4 Model 5: Training file 5 Gambar 4.18 Alur Proses Testing Gambar 4.18 menunjukkan alur proses pada tahap testing. Proses testing dilakukan dengan menggunakan library Stanford NER pada class CRFClassifier dengan masukan berupa serialized model yang dihasilkan pada proses training serta training file yang digunakan untuk menguji model berdasarkan metode cross validation. Proses testing akan menghasilkan file output hasil prediksi yang dilakukan oleh model serta nilai performa model yang dihasilkan.

94 68 Halaman ini sengaja dikosongkan

95 BAB V IMPLEMENTASI Bab ini berisi tentang proses implementasi dalam pembuatan model. Implementasi model membahas tentang perangkat penelitian apa yang digunakan, penerapan ekstraksi data lokasi yang diambil dari berbagai sumber, penerapan praproses data, penerapan seleksi feature extractor serta penerapan pemrosesan data yang dilakukan dengan menggunakan bahasa pemrograman Java. Dalam pelaksanakan penelitian pendeteksian lokasi dari informasi publik pada media sosial Kota Surabaya berbasis Named-Entity Recognition, dibutuhkan perangkat-perangkat yang dapat mendukung proses yang ada pada setiap tahapan penelitian. Adapun perangkat-perangkat yang dibutuhkan meliputi perangkat keras dan perangkat lunak beserta spesifikasinya sebagai berikut: Perangkat keras - CPU : Intel Core i GHz, RAM 8.00 GB, Harddisk 160 GB SDD - Monitor : 14 inch 1440x900 - Keyboard dan Mouse Perangkat Lunak - Sistem Operasi : Windows 10 Pro - Bahasa Pemrograman : Java - Tools : Netbeans IDE 8.2 Mapzen Metro Extract Ms. Excel 2016 Notepad Minitab 69

96 70 Data lokasi yang didapatkan dari 2 sumber perlu dilakukan ekstraksi data untuk dapat digunakan dalam proses penelitian yaitu Open Street Map dan Dinas PU Bina Marga Ekstraksi Data Lokasi Open Street Map Pada tampilan Open Street Map Kota Surabaya pada Gambar 5.1 menunjukkan berbagai lokasi yang tercatat pada website. Untuk dapat memuat data tersebut, digunakanlah tools Mapzen Metro Extract pada tanggal 19 Oktober Gambar 5.1 Tampilan Open Street Map Kota Surabaya Saat menggunakan Mapzen Metro Extract, pertamatama cari lokasi Kota Surabaya pada Box Search seperti pada Gambar 5.2. Tetapi karena Kota Surabaya masih jarang yang melakukan pencarian, maka diperlukan request custom extract kepada developer Mapzen.

97 71 Gambar 5.2 Pencarian Lokasi Mapzen Metro Extract Custom Extract pada Mapzen Metro Extract Tahap selanjutnya adalah menentukan lokasi yang ingin diekstrak menggunakan bounding box yang mengelilingi lokasi pada peta yang tampak pada Gambar 5.3. Kemudian, klik Get Extract yang akan diteruskan untuk merequest custom extract pada Mapzen yang dilakukan penulis pada 19 Oktober Gambar 5.3 Bounding Box Extract Lokasi

98 72 Selanjutnya, pada 19 Oktober :40, penulis mendapat bahwa custom extract. Hasil custom extract dapat dilihat pada Gambar 5.4 dibawah ini. Gambar 5.4 Mapzen Metro Extract Kota Surabaya Dari hasil custom extract tersebut, data yang diunduh merupakan file data lokasi dengan format GEOJSON dari Open Street Map yang dibagi berdasarkan tag Open Street Map (IMPOSM) yaitu Administrative boundaries : admin.geojson Aeroways : aeroways.geojson Amenities : amenities.geojson Barrier : barrierpoints.geojson, barrierways.geojson Buildings : buildings.geojson, housenumbers.geojson Land Usage : landusages.geojson Places : places.geojson Roads : roads.geojson, roads_gen0.geojson, roads_gen1.geojson Transport Areas: transport_areas.geojson, transport_points.geojson Water Areas: waterareas.geojson Waterways : waterways.geojson

99 73 Gambar 5.5 menunjukkan contoh format data GEOJSON yang telah dilakukan ekstraksi dengan Mapzen Extract. Data yang diambil adalah value data pada properties name. Misal pada Gambar 5.5 terdapat lokasi Menanggal serta Monokrembangan. { "type": "FeatureCollection", "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:ogc:1.3:crs84" } }, "features": [ { "type": "Feature", "properties": { "id": , "osm_id": , "name": "Menanggal", "type": "village", "z_order": , "population": null }, "geometry": { "type": "Point", "coordinates": [ , ] } }, { "type": "Feature", "properties": { "id": , "osm_id": , "name": "Morokrembangan", "type": "village", "z_order": , "population": null }, "geometry": { "type": "Point", "coordinates": [ , ] } } ] } Gambar 5.5 Contoh Format Data GEOJSON OSM Ekstraksi Data GEOJSON Pada penelitian ini, ekstraksi Data GeoJSON yang didapat dari Open Street Map dilakukan dengan menggunakan program Java dan library json-simple. JSONParser parser = new JSONParser(); try { Object obj = parser.parse( new FileReader("coba.geojson")); JSONObject jsonobject = (JSONObject) obj; ArrayList<String> list = new ArrayList<String>(); JSONArray jsonarray = (JSONArray)(JSONArray) jsonobject.get("features");

100 74 if (jsonarray!= null) { int len = jsonarray.size(); for (int i=0;i<len;i++){ list.add(jsonarray.get(i).tostring()); } String c[]=new String[len]; for (int i=0;i<len;i++){ String a[] = jsonarray.get(i).tostring().split("name\\u0022:\\u0022", 50); int len2 = a.length; String b[]=a[1].split("\\u0022,\\u0022id"); System.out.println(b[0].trim()); c[i] = b[0].trim(); } FileWriter writer = new FileWriter("output.txt", true); for (int i = 0; i < c.length; i++) { writer.write(c[i]); writer.write("\r\n"); } writer.close(); } } catch (Exception e) { e.printstacktrace(); } Kode 5.1 Parsing Data GEOJSON Kode 5.1 diatas dapat digunakan untuk melakukan parsing data GEOJSON yang didapat dari ekstraksi Open Street Map menggunakan Mapzen Extract. Parsing dilakukan dengan menggambil data nilai dari key berupa name. Sehingga, data yang digunakan adalah nama-nama lokasi saja. Selanjutnya nama-nama lokasi ini akan dikumpulkan ke dalam 1 file data lokasi berformat teks bernama lokasi_osm.txt.

101 Ekstraksi Data Lokasi Dinas PU Bina Marga 75 Dinas PU Bina Marga memiliki Data Panjang Jalan Kota Surabaya yang dapat digunakan sebagai masukan data lokasi pada penelitian ini. Atribut yang terdapat pada Data Panjang Jalan tersebut terdapat pada Tabel 5.1. Tabel 5.1 Atribut Data Panjang Jalan Nama Atribut Nama Jalan Nama Pangkal Ruas Jalan Nama Ujung Ruas Jalan Keterangan Nama jalan yang terdapat di Kota Surabaya Nama jalan yang terdapat pada pangkal ruas nama jalan yang ditunjuk Nama jalan yang terdapat pada ujung ruas nama jalan yang ditunjuk Pada Data Panjang Jalan Kota Surabaya, terdapat beberapa bagian data yang terbagi menjadi Fasum Jalan, Sby Barat, Sby Timur, Sby Utara, Sby Selatan, Sby Pusat, Gabungan, Gabungan(2), cover seperti yang ada pada tabel 5.2 di bawah. Adapun data yang digunakan dalam penelitian ini adalah bagian data Gabungan. Tabel 5.2 Bagian Data Panjang Jalan Bagian Data Keterangan Fasum Jalan Rekapitulasi Data Fasum Jalan Kota Surabaya Sby Barat Rekapitulasi Data Panjang Jalan Surabaya Barat Sby Timur Rekapitulasi Data Panjang Jalan Surabaya Timur Sby Utara Rekapitulasi Data Panjang Jalan Surabaya Utara

102 76 Sby Selatan Sby Pusat Gabungan Gabungan(2) cover Rekapitulasi Data Panjang Jalan Surabaya Selatan Rekapitulasi Data Panjang Jalan Surabaya Pusat Rekapitulasi Seluruh Data Panjang Jalan Surabaya Rekapitulasi Seluruh Data Panjang Jalan Surabaya Cover Rekapitulasi Data Dari data yang didapat pada bagian data Gabungan, terdapat sebanyak 4267 nama-nama lokasi berupa nama jalan. Tabel 5.3. menunjukkan sampel data panjang jalan pada bagian data Gabungan. Tabel 5.3 Sampel Data Panjang Jalan Gabungan Nama Jalan Nama Pangkal Nama Ujung Ruas Ruas Jalan Jalan Jl. Dharmawangsa Jl. Dharmawangsa Jl. Airlangga Dalam Jl. Dharmawangsa Jl. Kertajaya Jl. Prof. Dr. Mustopo Jl. Dharmawangsa IX Jl. Raya Dharmawangsa Jl. Dharmawangsa Barat Jl. Gubeng Airlangga I Jl. Raya Dharmawangsa Jl. Dharmawangsa Barat Jl. Gubeng Airlangga II Jl. Dharmawangsa Jl. Gubeng Airlangga VI Setelah itu, pada bagian data Gabungan, atribut yang dipilih untuk digunakan dalam penelitian ini adalah kolom Nama Jalan. Karena dalam penelitian ini, nama pangkal ruas jalan maupun ujung ruas jalan tidak akan digunakan untuk mendukung penelitian. Tabel 5.4 akan menunjukkan sampel data Nama Jalan yang digunakan.

103 77 Tabel 5.4 Sampel Data yang Digunakan Nama Jalan Jl. Dharmawangsa Dalam Jl. Dharmawangsa Jl. Dharmawangsa IX Jl. Gubeng Airlangga I Jl. Gubeng Airlangga II Selanjutnya, data-data tersebut ditambahkan pada Data Lokasi berformat teks dengan nama file lokasi_binamarga.txt. Praproses data pada penelitian ini terdiri dari beberapa tahap antara lain memuat data teks, data lokasi dan non lokasi, pembagian dataset yang telah dilakukan matching, tokenizing serta labeling menggunakan program. Selain itu juga terdapat labeling yang dilakukan secara manual Memuat Data Teks public static ArrayList<String> gettextfromdb(string uname, String pass, String db, String table, int row){ ArrayList<String> textdb = new ArrayList<>(); try { Class.forName("com.mysql.jdbc.Driver"); Connection con=drivermanager.getconnection( "jdbc:mysql://localhost:3306/"+db,uname,pass); String sqlselect = "select fb_id, message " + "from "+table +" limit 0,"+row; Statement stmtselect=con.createstatement(); ResultSet rs=stmtselect.executequery(sqlselect) while(rs.next()){ if(rs.getstring(2)!=null) { System.out.println(rs.getString(2)); String fb_id = rs.getstring(1);

104 78 textdb.add(rs.getstring(2).replaceall("https?://\\s+\\s?", "").replaceall("\n", " ").replaceall(":", "")); } else { rs.next(); } } con.close(); } catch(classnotfoundexception SQLException e) { System.out.println(e); } return textdb; } Kode 5.2 Fungsi gettextfromdb Untuk Pemuatan Data Teks Kode 5.2 merupakan kode fungsi untuk pemuatan data teks. Untuk dapat memuat data teks, dibutuhkan koneksi java dengan database MySQL menggunakan mysql-connector. Dengan melakukan koneksi dengan database MySQL, akan didapatkan setiap row dari hasil query. Setelah itu, setiap kalimat yang ada pada setiap row pada database, terdapat beberapa hal yang perlu dilakukan, antara lain menghapus link atau tautan pada kalimat, menghapus baris baru, dan menghapus tanda : karena tokenizing dengan menggunakan library Stanford NER tidak dapat menanggulanggi tanda :. Kemudian setiap kalimat akan disimpan dalam kembalian ArrayList<String> textdb. int rownum = 5000; ArrayList<String> mytext = gettextfromdb("root","","fb_crawler","fb_test5",rownum); Kode 5.3 Pemanggilan Fungsi gettextfromdb pada Main

105 79 Kode 5.3 menunjukkan pemuatan data pada Fungsi Main. Data yang dimuat sejumlah 5000 data menggunakan pemanggilan fungsi gettextfromdb dengan argument row bernilai Memuat Data Lokasi dan Non Lokasi public static ArrayList<Pattern> getlocation(file myfile) throws FileNotFoundException{ ArrayList<Pattern> listlocation = new ArrayList<>(); String readstring = null; try (BufferedReader br = new BufferedReader(new FileReader(myFile))) { while ((readstring = br.readline())!= null){ listlocation.add(pattern.compile(readstring, Pattern.CASE_INSENSITIVE)); } } catch(exception e){ e.printstacktrace(); } //SORTING Collections.sort(listLocation, new public int compare(pattern pattern1, Pattern pattern2){ if(pattern1.tostring().length()!=pattern2.tost ring().length()){ return pattern1.tostring().length()- pattern2.tostring().length(); } return pattern1.tostring().compareto(pattern2.tostring( )); } }.reversed()); return listlocation; } Kode 5.4 Fungsi getlocation Untuk Pemuatan Lokasi

106 80 Kode 5.4 menunjukkan fungsi getlocation yang digunakan untuk memuat data lokasi dengan format teks. Pada fungsi ini, dibuat ArrayList berupa Pattern yang digunakan untuk menyimpan nilai kembalian ketika terdapat File data lokasi. Penyimpanan berupa Pattern digunakan agar dapat langsung digunakan pada saat proses Matching pada sub Kemudian, digunakanlah BufferedReader serta FileReader untuk dapat membaca setiap baris pada file data lokasi. Ketika baris lokasi dibaca, teks akan disimpan menjadi pattern menggunakan Pattern.compile(). Setelah dilakukan pembacaan, daftar lokasi yang didapatkan akan dilakukan pengurutan dengan menggunakan Comparator pembanding panjang huruf. Kemudian, akan dilakukan pembalikan untuk mendapatkan pengurutan nama lokasi terpanjang ke nama lokasi terpendek. File filelocationosm = new File("lokasi_osm.txt"); ArrayList<Pattern> mylocationosm = getlocation(filelocationosm); File filelocationbinamarga = new File("lokasi_binamarga.txt"); ArrayList<Pattern> mylocationbinamarga = getlocation(filelocationbinamarga); ArrayList<Pattern> mylocation = new ArrayList<>(); mylocation.addall(mylocationosm); mylocation.addall(mylocationbinamarga); Kode 5.5 Pemuatan Data Lokasi pada Main Selanjutnya, pada fungsi main seperti nampak pada Kode 5.5, kode digunakan untuk memuat data lokasi dari 2 sumber yang berupa file dengan format teks menggunakan fungsi getlocation(). Kemudian digabungkanlah kedua sumber tersebut agar dapat digunakan pada proses Matching berikutnya.

107 public static ArrayList<Pattern> getlocation(file myfile) throws FileNotFoundException{ ArrayList<Pattern> listlocation = new ArrayList<>(); String readstring = null; try (BufferedReader br = new BufferedReader(new FileReader(myFile))) { while ((readstring = br.readline())!= null){ listlocation.add(pattern.compile(readstring, Pattern.CASE_INSENSITIVE)); } } catch(exception e){ e.printstacktrace(); } //SORTING Collections.sort(listLocation, new public int compare(pattern pattern1, Pattern pattern2){ if(pattern1.tostring().length()!=pattern2.tost ring().length()){ return pattern1.tostring().length()- pattern2.tostring().length(); } return pattern1.tostring().compareto(pattern2.tostring( )); } }.reversed()); return listlocation; } Kode 5.6 Fungsi getnonlocation Untuk Pemuatan Data Non- Lokasi 81 Kode 5.6 menunjukkan fungsi getnonlocation yang digunakan untuk memuat data non lokasi dengan format teks. Pada fungsi ini, dibuat ArrayList berupa Pattern yang digunakan untuk menyimpan nilai kembalian ketika terdapat file data non lokasi. Penyimpanan berupa Pattern digunakan agar dapat langsung digunakan pada saat proses Matching pada sub

108 82 Kemudian, digunakanlah BufferedReader serta FileReader untuk dapat membaca setiap baris pada file data non lokasi. Ketika baris non lokasi dibaca, teks akan disimpan menjadi pattern menggunakan Pattern.compile(). Setelah dilakukan pembacaan, daftar non lokasi yang didapatkan akan dilakukan pengurutan dengan menggunakan Comparator pembanding panjang huruf. Kemudian, akan dilakukan pembalikan untuk mendapatkan pengurutan nama non lokasi terpanjang ke nama non lokasi terpendek. File filenonlocation = new File("nonlokasi.txt"); ArrayList<Pattern> nonlocation = getnonlocation(filenonlocation); Kode 5.7 Pemuatan Data Non Lokasi pada Main Selanjutnya, pada fungsi main seperti nampak pada Kode 5.7, kode digunakan untuk memuat data non lokasi yang berupa file dengan format teks menggunakan fungsi getnonlocation() Pembagian Dataset public static void createtraindataset(int kfold, ArrayList<String> mytext, ArrayList<Pattern> mylocation, ArrayList<Pattern> nonlocation) throws IOException{ Collections.shuffle(myText, new Random(40)); Kode 5.8 Pengacakan Data Teks pada Fungsi createtraindataset Tahap awal dalam melakukan pembagian dataset adalah mengubah urutan data teks secara acak. Untuk itu, dapat dilakukan dengan fungsi Collections.shuffle(). Selain itu, agar pengacakan data teks dapat dilakukan secara menetap dapat menggunakan Seed. Untuk dapat mengatur Seed tersebut dapat menggunakan new Random(Seed) Kode 5.8.

109 try{ ArrayList<File> trainfiles = new ArrayList<>(); for(int i=0;i<kfold;i++){ trainfiles.add(new File("/train file"+(i+1)+".tsv")); } ArrayList<FileWriter> filewriters = new ArrayList<>(); ArrayList<BufferedWriter> bufferedwriters = new ArrayList<>(); for (int fileindex=0; fileindex<trainfiles.size(); fileindex++){ if (!trainfiles.get(fileindex).exists()) { trainfiles.get(fileindex).createnewfile(); } filewriters.add(new FileWriter( trainfiles.get(fileindex).getabsolutefile(), true)); bufferedwriters.add(new BufferedWriter( filewriters.get(fileindex))); } Kode 5.9 Pembuatan Dataset trainfile pada Fungsi createtraindataset 83 Kode 5.9 merupakan kode yang digunakan untuk melakukan pembuatan file dataset trainfile sejumlah k-fold yang digunakan dalam penelitian, dalam hal ini yaitu 5-fold. Pembuatan file digunakan menggunakan perulangan dan dibuat menggunakan fungsi createnewfile(). Untuk dapat digunakan pada program, file yang telah dibuat perlu dibaca dengan menggunakan fungsi getabsolutefile(). Selain itu, dibuatlah FileWriter serta BufferedWriter untuk setiap file dataset trainfile. Sehingga, setiap trainfile yang dibuat memiliki FileWriter dan BufferedWriter masing-masing yang akan digunakan pada proses Labeling Lokasi dengan program pada sub PreProcessing.createTrainDataset(5, mytext, mylocation, nonlocation); Kode 5.10 Pemanggilan Fungsi createtraindataset pada Main

110 84 Kode 5.10 di atas merupakan kode untuk membuat dataset menggunakan fungsi createtraindataset dengan argumen jumlah k-fold, ArrayList data teks, ArrayList nama lokasi, serta ArrayList nama non lokasi Matching Lokasi dan Non Lokasi dengan Teks for (int i=0; i< mytext.size(); i++){ for(int x=0;x<kfold;x++){ if(i%5==x){ StringBuilder mytexttemp = new StringBuilder(myText.get(i)); for (int j=0; j<nonlocation.size(); j++){ Matcher matcher = nonlocation.get(j).matcher(mytexttemp); while (matcher.find()){ int startindex = matcher.start(); int endindex = matcher.end(); String namenonlocation = matcher.group(); mytexttemp.replace(startindex, endindex, namenonlocation.replaceall("[a-za-z]", "n")); } } for (int k=0; k<mylocation.size(); k++){ Matcher matcher = mylocation.get(k).matcher(mytexttemp); while (matcher.find()){ int startindex = matcher.start(); int endindex = matcher.end(); String namelocation = matcher.group(); mytexttemp.replace(startindex, endindex, namelocation.replaceall("[a-za-z]", "l")); } } String stringcontent = mytexttemp.tostring(); } Kode 5.11 Matching Menggunakan Pattern Matcher pada Fungsi createtraindataset Kode 5.11 di atas digunakan pada penelitian ini untuk proses matching nama lokasi dan non lokasi. Untuk setiap data teks, dibuatlah StringBuilder mytexttemp untuk

111 85 menduplikasi data teks. Selanjutnya, untuk setiap pattern non lokasi dan lokasi dilakukan pengecekan dan dilakukan Pattern.matcher() pada mytexttemp yang menduplikasi data teks. Kemudian, jika terdapat kata pada mytexttemp yang sama dengan kata pada pattern, simpan index awal dari kalimat data teks dengan menggunakan matcher.start() dan index akhir kata yang ditemukan dengan matcher.end(). Selanjutnya, simpan nama non lokasi maupun lokasi yang ditemukan dengan matcher.group(), kemudian replace kata tersebut dengan n untuk non lokasi dan l untuk lokasi dari index awal hingga index akhir kata yang ditemukan dalam kalimat Tokenizing public static ArrayList<String> tokenizing(string text){ ArrayList<String> token = new ArrayList<>(); PTBTokenizer<CoreLabel> ptbt = new PTBTokenizer<>( new StringReader(text), new CoreLabelTokenFactory(), ""); while (ptbt.hasnext()) { CoreLabel label = ptbt.next(); token.add(label.originaltext()); } return token; } Kode 5.12 Fungsi tokenizing Untuk Proses Tokenizing Kalimat Proses tokenizing menggunakan Kode 5.12 dibuat dengan menggunakan library Stanford NER pada class PTBTokenizer dan CoreLabel. Ketika terdapat suatu kalimat yang menjadi masukan pada fungsi tokenizing, kata-kata pada suatu kalimat akan diubah menjadi bentuk token. Kemudian token-token tersebut akan disimpan dalam kembalian bentuk ArrayList. ArrayList<String> text = tokenizing(mytext.get(i)); ArrayList<String> newtext = tokenizing(stringcontent); Kode 5.13 Fungsi tokenizing pada createtraindataset

112 86 Kode 5.13 merupakan kode pemanggilan fungsi tokenizing. Fungsi tokenizing digunakan pada Fungsi createtraindataset untuk mengubah data teks menjadi bentuk token serta mengubah data teks terduplikasi yang telah ditandai non lokasi maupun lokasi dari proses Matching pada sub menjadi bentuk token Labeling Lokasi Setelah dilakukan proses tokenizing, salah satu tahap yang penting dalam penelitian ini adalah proses pelabelan atau labeling lokasi. Pada implementasinya, labeling dilakukan dengan menggunakan program maupun secara manual Labeling dengan Program for (int a=0; a<text.size(); a++){ if(text.get(a).equals(newtext.get(a))){ bufferedwriters.get(x).write(text.get(a)+ "\t" + "O"); bufferedwriters.get(x).newline(); } else { if(newtext.get(a).startswith("nnn")){ bufferedwriters.get(x).write(text.get(a)+ "\t" + "O"); bufferedwriters.get(x).newline(); } else { bufferedwriters.get(x).write(text.get(a)+ "\t" + "LOC"); bufferedwriters.get(x).newline(); } } bufferedwriters.get(x).flush(); } Kode 5.14 Labeling pada Fungsi createtraindataset Labeling dengan program pada penelitian ini dilakukan dengan menggunakan kode program yang terdapat pada Kode Proses labeling menggunakan pembandingan token teks dengan token teks yang sudah ditandai kata non lokasi maupun

113 87 lokasi yang didapatkan pada proses matching pada sub serta proses tokenizing pada sub Proses ini akan melakukan pengecekan pada setiap token teks, apakah token teks sama dengan token yang ada pada teks yang sudah ditandai. Jika token sama, maka akan ditandai label bukan lokasi yaitu O. Jika token tidak sama, maka akan dicek kembali apakah token merupakan tanda non lokasi. Jika benar, maka akan diberi label bukan lokasi yaitu O. Selain itu, jika token memliki tanda lokasi, maka akan diberikan label berupa lokasi yaitu LOC Labeling Manual Proses pelabelan atau labeling secara manual dilakukan dengan pengecekan 5 trainfile yang telah dibuat dengan program yaitu trainfilex.tsv dengan X adalah nomor file. Pengecekan dilakukan untuk memeriksa data apakah sudah pelabelan yang dibuat pada program sudah sesuai atau belum. Jika belum sesuai, pada proses ini akan dilakukan penyesuaian sehingga dataset dapat digunakan pada pemrosesan. Labeling manual dilakukan dengan menggunakan tools Ms. Excel Pada file trainfilex.tsv terdapat 2 kolom. Kolom pertama berisikan token yang didapatkan pada proses tokenizing pada sub Sedangkan kolom kedua merupakan label dari token yang terdapat pada kolom pertama. Pemeriksaan dilakukan untuk memastikan bahwa label yang ada pada kolom 2 sesuai dengan token pada kolom 1. Tentunya pada penelitian ini hanya terdapat 2 label yaitu LOC yang merupakan label lokasi, dan O yang merupakan tanda bahwa token bukan lokasi.

114 88 Dalam melakukan pengecekan, perlu dilakukan beberapa langkah sebagai berikut: 1. Lakukan pengecekan satu-persatu pada token dan label yang mengikutinya. 2. Jika sesuai, lanjutkan pada token berikutnya. 3. Jika tidak sesuai, terdapat dua kemungkinan: - Jika terdapat lokasi tetapi labelnya O, maka label harus diganti dengan LOC - Jika token bukanlah suatu lokasi mendapat label LOC, maka label harus diganti dengan O 4. Lakukan proses di atas hingga kata terakhir pada trainfile. 5. Simpan data. Jika proses labeling manual telah selesai untuk 5 trainfile, maka dataset trainfile siap digunakan untuk pemrosesan data. Proses seleksi feature extractor dilakukan dengan melakukan seleksi feature extractor wordshape, seleksi feature extractor maxngramleng, serta skenario forward selection maupun backward elimination. Untuk dapat melakukan hal tersebut, pembuatan file properties yang berisikan feature extractor yang dibutuhkan menjadi peran yang penting. Untuk itu, pada implementasinya, dibuatlah program untuk melakukan generate file properties dengan 1 feature extractor, generate file properties pada skenario forward selection dan skenario backward elimination.

115 Generate 1 Feature Extractor ArrayList<String> wordshapelist = new ArrayList<>(); wordshapelist.add("wordshape=dan1"); wordshapelist.add("wordshape=chris1"); wordshapelist.add("wordshape=dan1"); wordshapelist.add("wordshape=dan2uselc"); wordshapelist.add("wordshape=dan2bio"); wordshapelist.add("wordshape=dan2biouselc"); wordshapelist.add("wordshape=jenny1"); wordshapelist.add("wordshape=jenny1uselc"); wordshapelist.add("wordshape=chris2"); wordshapelist.add("wordshape=chris2uselc"); wordshapelist.add("wordshape=chris3"); wordshapelist.add("wordshape=chris3uselc"); wordshapelist.add("wordshape=chris4"); Kode 5.15 Daftar Feature Extractor Yang akan Di-Generate Kode 5.15 menunjukkan contoh kode yang digunakan untuk implementasi penyimpanan daftar feature extractor yang setiapnya akan di-generate dalam 1 file properties. Pada contoh kode digunakan untuk men-generate file properties pada percobaan seleksi wordshape. Sehingga, 1 nilai wordshape akan disimpan dalam 1 file properties. FileWriter fw = null; BufferedWriter bw = null; String dir = "wordshape/"; for (int i=0; i<wordshapelist.size(); i++){ String folder = dir+(i+1)+" "+wordshapelist.get(i); File filefolder = new File (folder); File fileprop = new File (folder+"/ner.prop"); filefolder.mkdir(); fileprop.createnewfile(); fw = new FileWriter(folder+"/ner.prop"); bw = new BufferedWriter(fw); bw.write(wordshapelist.get(i)); bw.flush(); } Kode 5.16 Generate File Properties 1 Feature Extractor

116 90 Contoh potongan kode pada Kode 5.16 digunakan untuk men-generate file properties untuk setiap feature extractor wordshape. Pada setiap feature extractor, dibuatkan directory penyimpanan file properties karena setiap file properties akan dipisahkan pada folder yang memiliki nama feature extractor. Setelah itu, akan dibuat file dengan nama ner.prop yang akan berisikan 1 feature extractor wordshape Generate Feature Extractor pada Forward Selection String fix = "P"; ArrayList<String> fixfeatures = new ArrayList<>(); fixfeatures.add("usedisjunctive=true"); Kode 5.17 Menyimpan Feature Extractor yang Pasti Dipilih Kode 5.17 di atas digunakan untuk menyimpan feature extractor yang pasti dipilih pada saat skenario forward selection. Program menyimpan kode feature extractor yang dipilih untuk digunakan sebagai nama folder. Kemudian menambahkan feature extractor pada ArrayList fixfeatures. Untuk setiap kali proses percobaan pada skenario forward selection, variabel fix perlu disesuaikan dengan feature extractor apa yang terpilih. Misalnya, jika feature extractor terpilih memiliki kode P dan V maka variabel fix harus memiliki nilai "PV". Kemudian, ArrayList fixfeatures juga perlu disesuaikan dengan feature extractor yang terpilih pada skenario forward selection. Misalnya, jika terpilih feature extractor usedisjunctive=true dan nomidngrams=true, maka perlu ditambahkan dengan menggunakan fungsi add() seperti yang ada pada kode.

117 ArrayList<String> combal = new ArrayList<>( Arrays.asList("A","B","C", "E","F","G","H","I","J","K","L","M","N", "O","P","Q","R","S","T","U","V","W","X")); ArrayList<String> combfeatures = new ArrayList<>(); combfeatures.add("wordshape=jenny1"); combfeatures.add("usetypeseqs=true"); combfeatures.add("usetypeseqs2=true"); combfeatures.add("usetypeysequences=true"); combfeatures.add("maxleft=1"); combfeatures.add("useword=true"); combfeatures.add("useprev=true"); combfeatures.add("usenext=true"); combfeatures.add("usewordpairs=true"); combfeatures.add("usesymwordpairs=true"); combfeatures.add("useposition=true"); combfeatures.add("useclassfeature=true"); combfeatures.add("usesequences=true"); combfeatures.add("useprevsequences=true"); combfeatures.add("usedisjshape=true"); combfeatures.add("disjunctionwidth=6"); combfeatures.add("strictlyfirstorder=true"); combfeatures.add("usesum=true"); combfeatures.add("usengrams=true"); combfeatures.add("maxngramleng=6"); combfeatures.add("nomidngrams=true"); combfeatures.add("usegazettes=true"); combfeatures.add("cleangazette=true"); Kode 5.18 Menyimpan Feature Extractor Tambahan 91 Pada Kode 5.18 ditunjukkan cara penyimpanan kode feature extractor yang akan ditambahkan pada setiap percobaan skenario forward selection. Feature extractor tambahan merupakan feature extractor yang tidak terpilih pada proses forward selection sebelumnya. Misalnya terdapat feature extractor terpilih yaitu feature extractor usedisjunctive=true dengan kode feature extractor P. Maka, feature extractor tambahan merupakan feature extractor selain feature extractor P atau usedisjunctive=true. Variabel combal digunakan untuk menyimpan kode feature extractor tambahan. Sedangkan combfeatures

118 92 digunakan untuk menyimpan feature extractor tambahan. Pada saat ingin men-generate file properties percobaan, kode program haruslah disesuaikan. FileWriter fw = null; BufferedWriter bw = null; String dir = "frwexperiment/model 2/"; for (int i=0; i<combal.size(); i++){ try{ String folder = dir+(i+1)+" "+fix+ combal.get(i); File filefolder = new File (folder); File fileprop = new File (folder+"/ner.prop"); filefolder.mkdir(); fileprop.createnewfile(); fw = new FileWriter(folder+"/ner.prop"); bw = new BufferedWriter(fw); for (String fixfeaturesname : fixfeatures){ bw.write(fixfeaturesname); bw.newline(); bw.flush(); } if (!(combal.get(i)=="x")){ bw.write(combfeatures.get(i)); } else{ bw.write("usegazettes=true"); bw.write(combfeatures.get(i)); } bw.flush(); } catch(exception e) { e.printstacktrace(); } } Kode 5.19 Generate File Properties Skenario Forward Selection Kode 5.19 digunakan untuk men-generate file properties pada skenario forward selection. Program memungkinkan pengguna untuk membuat directory file untuk

119 93 memisahkan setiap kombinasi feature extractor yang dilakukan pada percobaan skenario forward selection. Pada skenario forward selection, jika terdapat kode feature extractor cleangazette=true, maka perlu ditambahkan feature extractor usegazettes=true karena merupakan syarat feature extractor Generate Feature Extractor pada Backward Elimination ArrayList<String> allfeatures = new ArrayList<>(); allfeatures.add("wordshape=jenny1"); allfeatures.add("usetypeseqs=true"); allfeatures.add("usetypeseqs2=true"); allfeatures.add("usetypeysequences=true"); allfeatures.add("maxleft=1"); allfeatures.add("useword=true"); allfeatures.add("useprev=true"); allfeatures.add("usenext=true"); allfeatures.add("usewordpairs=true"); allfeatures.add("usesymwordpairs=true"); allfeatures.add("useposition=true"); allfeatures.add("useclassfeature=true"); allfeatures.add("usesequences=true"); allfeatures.add("useprevsequences=true"); allfeatures.add("usedisjshape=true"); allfeatures.add("usedisjunctive=true"); allfeatures.add("disjunctionwidth=6"); allfeatures.add("strictlyfirstorder=true"); allfeatures.add("usesum=true"); allfeatures.add("usengrams=true"); allfeatures.add("maxngramleng=6"); allfeatures.add("nomidngrams=true"); allfeatures.add("usegazettes=true"); allfeatures.add("cleangazette=true"); Kode 5.20 Menyimpan Daftar Seluruh Feature Extractor Kode 5.20 menunjukkan variabel allfeatures yang dapat digunakan untuk menyimpan daftar seluruh feature extractor pada implementasi generate file properties.

120 94 String fix ="VQEDKILMR"; ArrayList<String> fixnonexist = new ArrayList<>(); fixnonexist.add("nomidngrams=true"); fixnonexist.add("disjunctionwidth=6"); fixnonexist.add("maxleft=1"); fixnonexist.add("usetypeysequences=true"); fixnonexist.add("useposition=true"); fixnonexist.add("usewordpairs=true"); fixnonexist.add("useclassfeature=true"); fixnonexist.add("usesequences=true"); fixnonexist.add("strictlyfirstorder=true"); Kode 5.21 Menyimpan Daftar Feature Extractor yang Pasti Dihilangkan Kode 5.21 digunakan untuk menyimpan daftar feature extractor yang terpilih untuk dieliminasi pada hasil proses skenario backward elimination. Pada kode ditunjukkan variabel untuk menyimpan kode feature extractor dan variabel yang menyimpan daftar feature extractor yang pasti dieliminasi. Sehingga, pada setiap proses backward elimination, varibel ini perlu disesuaikan. ArrayList<String> foldernonexist = new ArrayList<>(Arrays.asList("A","B","C","F","G","H","J","N","O","P","S","T","U","W","X")); ArrayList<String> nonexist = new ArrayList<>(); nonexist.add("wordshape=jenny1"); nonexist.add("usetypeseqs=true"); nonexist.add("usetypeseqs2=true"); nonexist.add("useword=true"); nonexist.add("useprev=true"); nonexist.add("usenext=true"); nonexist.add("usesymwordpairs=true"); nonexist.add("useprevsequences=true"); nonexist.add("usedisjshape=true"); nonexist.add("usedisjunctive=true"); nonexist.add("usesum=true"); nonexist.add("usengrams=true"); nonexist.add("maxngramleng=6"); nonexist.add("usegazettes=true"); nonexist.add("cleangazette=true"); Kode 5.22 Menyimpan Daftar Feature Extractor yang Diuji Eliminasi

121 95 Kode 5.22 menunjukkan variabel yang menyimpan daftar feature extractor yang akan diuji untuk dieliminasi pada skenario backward elimination. Variabel akan menyimpan kode feature extractor beserta feature extractor yang akan ditambahkan untuk diuji. FileWriter fw = null; BufferedWriter bw = null; String dir = "backexperiment/model 14/"; for (int i=0; i<foldernonexist.size(); i++){ String folder= dir+(i+1)+" "+fix+foldernonexist.get(i); File filefolder = new File (folder); File fileprop = new File (folder+"/ner.prop"); filefolder.mkdir(); fileprop.createnewfile(); fw = new FileWriter(folder+"/ner.prop"); bw = new BufferedWriter(fw); for (String featuresname : allfeatures){ if (!(featuresname.equals(nonexist.get(i)))){ if (!(featuresname.equals(fixnonexist))){ bw.write(featuresname); bw.newline(); bw.flush(); } } } } Kode 5.23 Generate File Properties Skenario Backward Elimination Kode 5.23 digunakan untuk men-generate file properties pada skenario backward elimination. Program memungkinkan untuk membuat directory file untuk memisahkan setiap kombinasi feature extractor yang dilakukan pada percobaan skenario backward elimination. Pemilihan kombinasi feature extractor dilakukan dengan pengecekan apakah feature extractor terdapat pada daftar feature extractor uji eliminasi dan daftar feature extractor yang pasti dieliminasi. Jika tidak, maka feature extractor akan dituliskan pada file properties dan dipisahkan pada diretory folder.

122 96 Pemrosesan data pada penelitian ini menggunakan library Stanford NER. Implementasi pemrosesan data terdiri dari implementasi training dan implementasi testing Implementasi Training void traincrf(string serializefile, String prop, String filelist) { Properties props = StringUtils.propFileToProperties(prop); props.setproperty("serializeto", serializefile); SeqClassifierFlags flags = new SeqClassifierFlags(props); flags.serializeto=serializefile; flags.trainfilelist = filelist; flags.map = "word=0,answer=1"; flags.gazettes.add("gazette.gaz.txt"); CRFClassifier<CoreLabel> crf = new CRFClassifier<>(flags); crf.train(); crf.serializeclassifier(serializefile); } Kode 5.24 Fungsi traincrf untuk Training Dataset Kode 5.24 menunjukkan fungsi traincrf yang digunakan untuk proses training dataset. Pada fungsi ini digunakan pemanggilan file properties, penyimpanan model dalam serializefile, serta dataset yang digunakan pada proses training. Untuk dapat melakukan training, diperlukan fungsi train() dari class CRFClassifier dari library Stanford NER. String dir = "dataset/"; ArrayList<String> myfile = new ArrayList<>(); for (int i=0; i<5; i++){ myfile.add(dir+"trainfile"+(i+1)+".tsv"); } Kode 5.25 Menyimpan Directory Dataset TrainFile

123 97 Kode 5.25 menunjukkan variabel yang digunakan untuk menunjukkan directory dimana dataset trainfile diletakkan. Selain itu juga terdapat variabel yang menyimpan nama file trainfile. ArrayList<String> myfilelist = new ArrayList<>(); myfilelist.add(myfile.get(1)+","+myfile.get(2)+","+ myfile.get(3)+","+myfile.get(4)); myfilelist.add(myfile.get(0)+","+myfile.get(2)+","+ myfile.get(3)+","+myfile.get(4)); myfilelist.add(myfile.get(0)+","+myfile.get(1)+","+ myfile.get(3)+","+myfile.get(4)); myfilelist.add(myfile.get(0)+","+myfile.get(1)+","+ myfile.get(2)+","+myfile.get(4)); myfilelist.add(myfile.get(0)+","+myfile.get(1)+","+ myfile.get(2)+","+myfile.get(3)); Kode 5.26 Membuat Kombinasi TrainFile Sesuai Cross Validation Kode 5.26 digunakan untuk melakukan kombinasi trainfile yang sesuai dengan teori cross validation menggunakan 5-fold. ArrayList<String> folder = new ArrayList<>(); folder.add("1 PVTDGNABCOJE"); folder.add("2 PVTDGNABCOJF"); folder.add("3 PVTDGNABCOJH"); folder.add("4 PVTDGNABCOJI"); folder.add("5 PVTDGNABCOJK"); folder.add("6 PVTDGNABCOJL"); folder.add("7 PVTDGNABCOJM"); folder.add("8 PVTDGNABCOJQ"); folder.add("9 PVTDGNABCOJR"); folder.add("10 PVTDGNABCOJS"); folder.add("11 PVTDGNABCOJU"); folder.add("12 PVTDGNABCOJW"); folder.add("13 PVTDGNABCOJX"); Kode 5.27 Menyimpan Folder Kombinasi Feature Extractor

124 98 Kode 5.27 menunjukkan variabel yang menyimpan daftar folder percobaan sesuai dengan skenario yang ingin diuji. Sehingga, pada percobaannya, variabel ini harus disesuaikan. for(string foldername : folder){ String dirmodel = dir + "upexperiment/" + "model 12/"+foldername+"/"; ArrayList<String> serializefilemodel = new ArrayList<>(); for (int j=0; j<5; j++){ serializefilemodel.add(dirmodel+"citiviz-" + "ner-model"+(j+1)+".ser.gz"); } String prop = dirmodel+"ner.prop"; TrainNER trainmodel = new TrainNER(); trainmodel.traincrf(serializefilemodel.get(0), prop, myfilelist.get(0)); trainmodel.traincrf(serializefilemodel.get(1), prop, myfilelist.get(1)); trainmodel.traincrf(serializefilemodel.get(2), prop, myfilelist.get(2)); trainmodel.traincrf(serializefilemodel.get(3), prop, myfilelist.get(3)); trainmodel.traincrf(serializefilemodel.get(4), prop, myfilelist.get(4)); } Kode 5.28 Pemanggilan Fungsi traincrf pada Main Kode 5.28 digunakan untuk melakukan proses training dengan memanggil fungsi traincrf. Pada kode juga tampak directory folder serta file serialized model untuk penyimpanan model.

125 Implementasi Testing void testcrf(string serializefile, String testfile, String output) throws IOException, ClassCastException, ClassNotFoundException, Exception{ Properties props = new Properties(); SeqClassifierFlags flags = new SeqClassifierFlags(props); flags.testfile = testfile; CRFClassifier<CoreLabel> crf = new CRFClassifier<>(flags); crf.loadclassifier(serializefile); DocumentReaderAndWriter<CoreLabel> readerandwriter = crf.defaultreaderandwriter(); PrintWriter printwriter = new PrintWriter(output); ObjectBank<List<CoreLabel>> documents = crf.makeobjectbankfromfile(testfile, readerandwriter); crf.classifyandwriteanswers(documents, printwriter, readerandwriter, true); } Kode 5.29 Fungsi testcrf yang Digunakan Untuk Testing Model 99 Kode 5.29 menunjukkan fungsi testcrf yang digunakan untuk proses testing model yang telah dibuat pada proses training. Pada fungsi ini digunakan pemanggilan file model yang telah di serialize, file dataset yang digunakan untuk testing model, serta file output yang digunakan untuk menyimpan hasil prediksi model. Untuk dapat melakukan testing, diperlukan fungsi train() dari class CRFClassifier dari library Stanford NER.

126 100 for(string foldername : folder){ String dirmodel = dir + "upexperiment/" + "model 12/"+foldername+"/"; ArrayList<String> serializefilemodel = new ArrayList<>(); for (int j=0; j<5; j++){ serializefilemodel.add(dirmodel+"citiviz-" + "ner-model"+(j+1)+".ser.gz"); } ArrayList<String> myoutput = new ArrayList<>(); for (int k=0; k<5; k++){ myoutput.add(dirmodel+"output"+(k+1)); } TrainNER trainmodel = new TrainNER(); trainmodel.testcrf(serializefilemodel.get(0), myfile.get(0), myoutput.get(0)); trainmodel.testcrf(serializefilemodel.get(1), myfile.get(1), myoutput.get(1)); trainmodel.testcrf(serializefilemodel.get(2), myfile.get(2), myoutput.get(2)); trainmodel.testcrf(serializefilemodel.get(3), myfile.get(3), myoutput.get(3)); trainmodel.testcrf(serializefilemodel.get(4), myfile.get(4), myoutput.get(4)); } Kode 5.30 Pemanggilan Fungsi testcrf pada Main Kode 5.30 menunjukkan kode program untuk memanggil fungsi testcrf pada Main. Selain itu juga terdapat pembuatan file output untuk hasil prediksi pada setiap testing model.

127 BAB VI HASIL DAN PEMBAHASAN Pada bab ini akan dijelaskan hasil serta analisis terhadap hasil yang diperoleh dari proses implementasi yang telah dibahas pada bab sebelumnya. Setelah dilakukan ekstraksi data lokasi, berikut ini merupakan hasil ekstraksi data lokasi dari sumber Open Street Map serta Dinas PU Bina Marga Ekstrak Data Lokasi Open Street Map Dari hasil ekstraksi data lokasi Open Street Map, didapatkan nama-nama lokasi sejumlah 3462 lokasi. Pada Tabel 6.1 dapat diketahui sampel nama-nama lokasi pada data lokasi Open Street Map. Tabel 6.1 Sampel Nama-Nama Lokasi pada Data Lokasi OSM Menanggal Morokrembangan Krembangan Selatan Sedati Agung Sawotratap Sawahan Klakah Rejo Sidodadi Gading Gubeng Berdasarkan hasil ekstraksi data lokasi Open Street Map, terdapat nama-nama lokasi yang tidak spesifik seperti Rumah, Warung, dan Toko. Nama-nama lokasi yang tidak spesifik tersebut menyebabkan kurang relevannya data lokasi untuk digunakan dalam penelitian ini. 101

128 Ekstrak Data Lokasi Dinas PU Bina Marga Dari hasil ekstraksi data lokasi dari Data Panjang Jalan Dinas PU Bina Marga Kota Surabaya, didapatkan nama-nama lokasi sejumlah 4267 lokasi. Pada Tabel 6.2 dapat diketahui sampel nama-nama lokasi pada data lokasi Dinas PU Bina Marga. Tabel 6.2 Contoh Nama-Nama Lokasi pada Data Lokasi Bina Marga Jl. Dharmawangsa Dalam Jl. Dharmawangsa Jl. Dharmawangsa IX Jl. Gubeng Airlangga I Jl. Gubeng Airlangga II Jl. Gubeng Airlangga IV Jl. Gubeng Airlangga V Jl. Gubeng Airlangga V - A Jl. Gubeng Kertajaya V Jl. Gubeng Kertajaya V - C Muatan Data Teks Data teks yang dimuat dalam penelitian ini sebanyak 5000 data. Ketika dilakukan pemuatan teks, terdapat data-data yang kosong atau NULL. Maka, data tersebut tidak akan dimasukkan dalam pemrosesan berikutnya. Data yang NULL tersebut berjumlah 14 data. Sehingga, data yang digunakan dalam tahap selanjutnya adalah sebanyak 4986 data teks.

129 Muatan Data Lokasi 103 Data lokasi yang dimuat pada program didapat berdasar 2 sumber yaitu lokasi_osm.txt dan lokasi_binamarga.txt. Jumlah nama-nama lokasi yang terdaftar pada data lokasi dapat dilihat pada Tabel 6.3. Sumber Tabel 6.3 Jumlah Pemuatan Data Lokasi Jumlah lokasi_osm.txt 3462 lokasi_binamarga.txt 4267 TOTAL = Hasil Matching Matching pada penelitian ini digunakan untuk melakukan penandaan pada kalimat ketika suatu kalimat memiliki kata-kata yang merupakan nama-nama lokasi yang terdapat pada data lokasi. Matching dilakukan dengan membandingkan isi data teks dengan nama-nama yang terdapat pada data lokasi. Selain itu juga dibandingkan pada data non lokasi yang berisikan nama-nama lokasi namun bukan berupa lokasi seperti Suara Surabaya. Jika terdapat kesamaan, data teks akan ditandai mana yang merupakan suatu lokasi maupun non lokasi. Tabel 6.4 menunjukkan skenario hasil matching pada teks jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo 2 arah padat. 3. Sepanjang arah Kletek Macet. 4. Bambe arah Karangpilang padat. (odp-pr). Tabel 6.4 Skenario Matching Skenario Matching 1 Temuan dan Perubahan jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo

130 104 Matching 2 Matching 3 Matching 4 Matching 5 2 arah padat. 3. Sepanjang arah Kletek Macet. 4. Bambe arah Karangpilang padat. (odp-pr) Start index: 152 End index: 164 Found: Karangpilang jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo 2 arah padat. 3. Sepanjang arah Kletek Macet. 4. Bambe arah llllllllllll padat. (odp-pr) Start index: 109 End index: 118 Found: Sepanjang jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo 2 arah padat. 3. lllllllll arah Kletek Macet. 4. Bambe arah llllllllllll padat. (odp-pr) Start index: 124 End index: 130 Found: Kletek jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo 2 arah padat. 3. lllllllll arah llllll Macet. 4. Bambe arah llllllllllll padat. (odp-pr) Start index: 141 End index: 146 Found: Bambe jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo 2 arah padat. 3. lllllllll arah llllll Macet. 4. lllll arah llllllllllll padat. (odp-pr) Berdasarkan hasil matching, teks ditandai mana yang merupakan nama lokasi. Seperti contoh di atas, teks yang telah diberi tanda menjadi jalur ini padat. 1. HR Muhammad arah Satelit Macet. 2. Beji Bangil arah Probolinggo 2 arah padat. 3. lllllllll arah llllll Macet. 4. lllll arah llllllllllll padat. (odp-pr). Hasil dari matching ini digunakan pada labeling dengan program.

131 Hasil Tokenizing 105 Tokenizing digunakan untuk pengubahan kalimat dalam bentuk token agar sesuai dengan format pada library Stanford NER. Tokenizing dilakukan pada data teks asli dan data teks yang telah ditandai. Seperti contoh yang dapat dilihat pada Tabel 6.5. Tabel 6.5 Hasil Tokenizing Teks Teks Teks Asli Teks yang Telah Ditandai Hasil Tokenizing [19.34, 4, jalur, ini, padat,., 1,., HR, Muhammad, arah, Satelit, Macet,., 2,., Beji, Bangil, arah, Probolinggo, 2, arah, padat,., 3,., Sepanjang, arah, Kletek, Macet,., 4,., Bambe, arah, Karangpilang, padat,., -LRB-, odp-pr, -RRB-] [19.34, 4, jalur, ini, padat,., 1,., HR, Muhammad, arah, Satelit, Macet,., 2,., Beji, Bangil, arah, Probolinggo, 2, arah, padat,., 3,., lllllllll, arah, llllll, Macet,., 4,., lllll, arah, llllllllllll, padat,., - LRB-, odp-pr, -RRB-] Hasil Labeling Labeling pada penelitian ini dilakukan menggunakan Program dan Manual. Adapun hasilnya akan dijelaskan sebagai berikut Labeling dengan Program Labeling dengan Program dilakukan berdasarkan hasil matching serta tokenizing. Hasil labeling dengan program masih terdapat banyak kekurangan yang disebabkan karena beberapa hal seperti daftar lokasi yang kurang ataupun terdapat nama-nama organisasi yang memiliki nama lokasi sehingga terdeteksi menjadi lokasi. Beberapa kesalahan tersebut dapat dilihat pada Tabel 6.6.

132 106 Tabel 6.6 Kesalahan Labeling dengan Program Kata Kesalahan Penyebab Label Rumah LOC Terdapat lokasi Rumah pada data lokasi OSM. Solar LOC Terdapat lokasi Solar pada data lokasi OSM. Berhasil, berharap, terhadap, perhatikan, LOC Terdapat lokasi Erha pada data lokas OSM. #PilwaliSuabaya LOC Terdapat lokasi Surabaya pada data lokasi OSM. Belum terdapat kata #PilwaliSurabaya pada data non lokasi Avanza LOC Terdapat lokasi Avanza pada data lokasi OSM. LOC Terdapat lokasi Surabaya pada data lokasi OSM. Belum terdapat kata pada data non lokasi Sekolah LOC Terdapat lokasi sekolah pada data lokasi OSM. Toko, pertokoan, tokonya LOC Terdapat lokasi toko pada data lokasi OSM. Ruko LOC Terdapat lokasi ruko pada data lokasi OSM.

133 107 Sawah LOC Terdapat lokasi sawah pada data lokasi OSM. Sepanjang LOC Terdapat lokasi Sepanjang pada data lokasi OSM dan perlu dilihat pada konteks. Parkir LOC Terdapat lokasi parkir pada data lokasi OSM. Sungai LOC Terdapat lokasi sungai pada data lokasi OSM. Sehingga, pada kalimat contoh pun juga terdapat kekurangan karena kurangnya nama lokasi pada data lokasi. Seperti contoh hasil labeling di bawah, maka terdapat kata-kata yang belum berhasil diberikan label LOC yaitu kata HR Muhammad, Satelit, Beji Bangil serta Probolinggo O 4 O jalur O ini O padat O. O 1 O. O HR O Muhammad arah O Satelit O Macet O. O 2 O. O Beji O O Bangil O arah O Probolinggo 2 O arah O padat O. O 3 O. O Sepanjang arah O Kletek LOC Macet O. O 4 O. O Bambe LOC O LOC

134 108 arah O Karangpilang padat O. O LOC -LRB- O odp-pr O -RRB- O Hasil yang didapat dari labeling dengan program dirasa kurang memuaskan karena penentuan kata yang merupakan sebuah lokasi atau bukan, lebih banyak mempertimbangkan konteks yang ada pada kalimat. Sehingga, pada saat labeling dengan program terdapat berbagai kesalahan yang telah disebutkan. Karena hasil labeling menggunakan program dirasa masih terdapat banyak kekurangan dengan adanya berbagai kesalahan, oleh karena itu, labeling manual menjadi peran penting dalam pembuatan corpus dataset dalam penelitian ini, meskipun harus melakukan pengecekan kembali pada label yang salah dari hasil labeling dengan program Labeling Manual Labeling manual pada penelitian ini merupakan salah satu hal yang penting karena untuk dapat menggunakan data pada pemrosesan selanjutnya, label dari suatu kata harus dapat dipastikan sesuai dengan token dan konsisten pada seluruh dataset. Untuk menjaga kekonsistenan tersebut, digunakanlah definisi lokasi yang terdapat pada sub pada penelitian ini. Kata-kata yang belum memiliki label yang sesuai, diberikan perbaikan pada tahap ini. Contoh pelabelan menggunakan teks contoh adalah berikut ini. Kata HR Muhammad, Satelit, Beji Bangil serta Probolinggo yang belum memiliki label lokasi akan diberikan label lokasi yaitu LOC O 4 O jalur O ini O padat O. O 1 O. O HR LOC Muhammad LOC

135 109 arah O Satelit LOC Macet O. O 2 O. O Beji LOC Bangil LOC arah O Probolinggo 2 O arah O padat O. O 3 O. O LOC Sepanjang arah O Kletek LOC Macet O. O 4 O. O Bambe LOC arah O Karangpilang padat O. O -LRB- O odp-pr O -RRB- O LOC LOC Hasil Pembagian Dataset Pembagian dataset pada penelitian ini dibagi sesuai jumlah k-fold yaitu 5-fold. Pembagian ini dilakukan berdasar pembagian acak data teks yang berupa kalimat. Hasil pembagian tersebut dapat dilihat pada Tabel 6.7. Tabel 6.7 Pembagian Dataset Nama File trainfile1.tsv trainfile2.tsv trainfile3.tsv trainfile4.tsv trainfile5.tsv Jumlah Token token token token token token

136 110 F_AVG Gambar 6.1 Rata-Rata F-Measure wordshape Gambar 6.1 jenny1uselc serta jenny1 memiliki standar deviasi yang lebih rendah yaitu Sehingga, bisa dianggap lebih stabil untuk dataset. Gambar 6.2 untuk rata-rata Time, wordshape jenny1 menunjukkan waktu lebih cepat daripada jenny1uselc.

137 111 T_AVG Gambar 6.2 Rata-Rata Time wordshape Meskipun hasil performa F-Measure dari jenny1 dan chris3 adalah sama, tetapi jenny1 lebih sederhana dibanding chris3 dan sesuai untuk deteksi lokasi. Oleh karena itu, rata-rata Time jenny1 menjadi lebih cepat. Cara kerja wordshape Chris3 adalah dengan melihat shape atau bentuk karakter pada 2 huruf awal dan 2 huruf akhir, serta melihat shape atau bentuk karakter diantaranya sebagai 1 kesatuan. Sedangkan wordshape jenny1 akan menangkap fenomena karakter upper case dan lower case serta digit. WordShape jenny1 akan merapatkan kumpulan karakter yang memiliki shape yang sama. Sehingga, hal ini dapat memungkingkan perhitungan fitur menjadi lebih sederhana. Hal ini sesuai dengan karakteristik nama-nama lokasi yang umumnya huruf besar (upper case) terdapat pada awal kata saja. Sedangkan karakter sisanya merupakan huruf kecil (lower case). Selain itu juga terdapat nomor yang terkait lokasi yang dapat dideteksi sebagai karakter digit.

138 112 F_AVG Gambar 6.3 Rata-Rata F-Measure maxngramleng Pada percobaan yang dilakukan untuk mengetahui nilai panjang N-Gram maksimum yang optimal digunakan pada pemrosesan, didapatkan bahwa hasil yang optimal adalah dengan maxngramleng=6. Nilai rata-rata F-Measure yang dihasilkan adalah sebesar Perbandingan rata-rata F- Measure yang dihasilkan dapat dilihat pada Gambar 6.3. Pada percobaan ini juga dilakukan pencatatan waktu. Penambahan panjang N-Gram ternyata akan memakan banyak waktu karena semakin panjang N-Gram semakin bertambah bobot fitur yang digunakan. Fenomena tersebut ditunjukkan pada Gambar 6.4. Selain hal tersebut, dapat diketahui juga rata-rata F-Measure berkorelasi terhadap rata-rata Time sebesar Namun, ketika maxngramleng=7 terjadi penurunan F-Measure. Sehingga, maxngramleng=6 dirasa lebih optimal.

139 113 T_AVG Gambar 6.4 Rata-Rata Time maxngramleng 1. Percobaan 1 Feature Extractor: P 2. Percobaan 2 Feature Extractor: PV 3. Percobaan 4 Feature Extractor: PVTD 4. Percobaan 5 Feature Extractor: PVTDG 5. Percobaan 6 Feature Extractor: PVTDGN 6. Percobaan 7 Feature Extractor: PVTDGNA 7. Percobaan 8 Feature Extractor: PVTDGNAB 8. Percobaan 9 Feature Extractor: PVTDGNABC 9. Percobaan 10 Feature Extractor: PVTDGNABCO 10. Percobaan 11 Feature Extractor: PVTDGNABCOJ 11. Percobaan 12 Feature Extractor: PVTDGNABCOJR

140 usedisjshape useclassfeature useposition wordshape=jenny1 useword usegazettes usengrams strictlyfirstorder useprevsequences usetypeseqs2 usesequences usetypeseqs usesum maxleft=1 cleangazette nomidngrams maxngramleng=6 usenext usesymwordpairs usetypeysequences useprev usewordpairs disjunctionwidth=6 usedisjunctive Percobaan 1 Feature Extractor F_AVG Gambar 6.5 F-Measure Forward Selection 1 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 1 feature extractor, didapatkan bahwa feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor P yaitu usedisjunctive. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat menghasilkan nilai rata-rata F-Measure sebesar dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.5.

141 usedisjshape useclassfeature useposition wordshape=jenny1 useword usegazettes usengrams strictlyfirstorder useprevsequences usetypeseqs2 usesequences usetypeseqs usesum maxleft=1 cleangazette nomidngrams maxngramleng=6 usenext usesymwordpairs usetypeysequences useprev usewordpairs disjunctionwidth=6 usedisjunctive 115 T_AVG Gambar 6.6 Time Forward Selection 1 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor P (usedisjunctive) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 9.43, 9.15, 8.78, 9.03, serta 9.15 dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.6.

142 disjunctionwidth=6 useposition usengrams usegazettes useprevsequences usesum usesequences usetypeseqs2 strictlyfirstorder usetypeseqs useword maxleft=1 cleangazette useclassfeature usedisjshape usenext usesymwordpairs usewordpairs useprev usetypeysequences wordshape=jenny1 maxngramleng=6 nomidngrams Percobaan 2 Feature Extractor F_AVG Gambar 6.7 F-Measure Forward Selection 2 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 2 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode V yaitu nomidngrams. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Karena feature extractor nomidngrams memiliki syarat feature extractor T yaitu usengrams, maka pada percobaan berikutnya feature extractor syarat juga akan diikutkan pada penambahan feature extractor. Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.7.

143 disjunctionwidth=6 useposition usengrams usegazettes useprevsequences usesum usesequences usetypeseqs2 strictlyfirstorder usetypeseqs useword maxleft=1 cleangazette useclassfeature usedisjshape usenext usesymwordpairs usewordpairs useprev usetypeysequences wordshape=jenny1 maxngramleng=6 nomidngrams 117 T_AVG Gambar 6.8 Time Forward Selection 2 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi sebesar Namun bagaimanapun pemilihan feature extractor lebih diutamakan didasarkan pada rata-rata F- Measure. Untuk feature extractor V (nomidngrams) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 19.69, 19.99, 21, 20.56, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.8.

144 disjunctionwidth=6 usedisjshape useclassfeature useposition maxngramleng=6 cleangazette wordshape=jenny1 maxleft=1 usesequences useprevsequences usesum strictlyfirstorder usetypeseqs usegazettes useword usetypeseqs2 usesymwordpairs usenext useprev usewordpairs usetypeysequences Percobaan 4 Feature Extractor F_AVG Gambar 6.9 F-Measure Forward Selection 4 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 4 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode D yaitu usetypeysequences. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.9.

145 disjunctionwidth=6 usedisjshape useclassfeature useposition maxngramleng=6 cleangazette wordshape=jenny1 maxleft=1 usesequences useprevsequences usesum strictlyfirstorder usetypeseqs usegazettes useword usetypeseqs2 usesymwordpairs usenext useprev usewordpairs usetypeysequences 119 T_AVG Gambar 6.10 Time Forward Selection 4 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor D (usetypeysequences) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 22.3, 23.68, 24, 22.94, serta 22.2 dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.10.

146 disjunctionwidth=6 maxngramleng=6 useposition usesequences useword usesum strictlyfirstorder usetypeseqs2 usegazettes useprevsequences usetypeseqs maxleft=1 usedisjshape useclassfeature cleangazette usenext wordshape=jenny1 usesymwordpairs usewordpairs useprev Percobaan 5 Feature Extractor F_AVG 0.9 Gambar 6.11 F-Measure Forward Selection 5 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 5 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode G yaitu useprev. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar 0.924, , , 0.924, serta Sehingga dapat meningkatkan nilai rata-rata F- Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.11.

147 disjunctionwidth=6 maxngramleng=6 useposition usesequences useword usesum strictlyfirstorder usetypeseqs2 usegazettes useprevsequences usetypeseqs maxleft=1 usedisjshape useclassfeature cleangazette usenext wordshape=jenny1 usesymwordpairs usewordpairs useprev 121 T_AVG Gambar 6.12 Time Forward Selection 5 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F-Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor G (useprev) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 23.18, 26.32, 23.54, 23.46, serta 22.8 dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.12.

148 disjunctionwidth=6 useposition maxngramleng=6 usedisjshape maxleft=1 useclassfeature useword usetypeseqs2 usegazettes strictlyfirstorder usesequences usetypeseqs usesum cleangazette wordshape=jenny1 usesymwordpairs usewordpairs usenext useprevsequences Percobaan 6 Feature Extractor F_AVG Gambar 6.13 F-Measure Forward Selection 6 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 6 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode N yaitu useprevsequences. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.13.

149 disjunctionwidth=6 useposition maxngramleng=6 usedisjshape maxleft=1 useclassfeature useword usetypeseqs2 usegazettes strictlyfirstorder usesequences usetypeseqs usesum cleangazette wordshape=jenny1 usesymwordpairs usewordpairs usenext useprevsequences T_AVG Gambar 6.14 Time Forward Selection 6 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F-Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor N (useprevsequences) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 35.01, 34.69, 39.76, 39.5, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.14.

150 disjunctionwidth=6 useposition usewordpairs usedisjshape useword cleangazette strictlyfirstorder usetypeseqs2 usesum usesequences usegazettes usetypeseqs maxngramleng=6 useclassfeature usenext usesymwordpairs maxleft=1 wordshape=jenny Percobaan 7 Feature Extractor F_AVG Gambar 6.15 F-Measure Forward Selection 7 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 7 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode A yaitu wordshape=jenny1. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.15.

151 disjunctionwidth=6 useposition usewordpairs usedisjshape useword cleangazette strictlyfirstorder usetypeseqs2 usesum usesequences usegazettes usetypeseqs maxngramleng=6 useclassfeature usenext usesymwordpairs maxleft=1 wordshape=jenny1 125 T_AVG Gambar 6.16 Time Forward Selection 7 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah, bahkan tidak ada korelasi, yaitu dengan nilai sebesar Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F-Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor A (wordshape=jenny1) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 37.34, 38.4, 38.41, 38.95, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.16.

152 disjunctionwidth=6 useposition maxngramleng=6 useclassfeature usewordpairs usenext usedisjshape maxleft=1 useword usetypeseqs2 usesequences strictlyfirstorder usesum usegazettes cleangazette usesymwordpairs usetypeseqs Percobaan 8 Feature Extractor F_AVG Gambar 6.17 F-Measure Forward Selection 8 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 8 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode B yaitu usetypeseqs. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , 0.944, , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.17.

153 disjunctionwidth=6 useposition maxngramleng=6 useclassfeature usewordpairs usenext usedisjshape maxleft=1 useword usetypeseqs2 usesequences strictlyfirstorder usesum usegazettes cleangazette usesymwordpairs usetypeseqs 127 T_AVG Gambar 6.18 Time Forward Selection 8 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor B (usetypeseqs) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 48.49, 53.84, 51.16, 47.49, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.18.

154 disjunctionwidth=6 maxngramleng=6 cleangazette usedisjshape useclassfeature useposition useword strictlyfirstorder usesum usesequences usegazettes maxleft=1 usesymwordpairs usewordpairs usenext usetypeseqs Percobaan 9 Feature Extractor F_AVG Gambar 6.19 F-Measure Forward Selection 9 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 9 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode C yaitu usetypeseqs2. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.19.

155 disjunctionwidth=6 maxngramleng=6 cleangazette usedisjshape useclassfeature useposition useword strictlyfirstorder usesum usesequences usegazettes maxleft=1 usesymwordpairs usewordpairs usenext usetypeseqs2 129 T_AVG Gambar 6.20 Time Forward Selection 9 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor C (usetypeseqs2) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 49.64, 55.9, 68.64, 69.02, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.20.

156 disjunctionwidth=6 maxleft=1 maxngramleng=6 usenext useclassfeature usewordpairs usesymwordpairs useposition cleangazette usesum usesequences strictlyfirstorder usegazettes useword usedisjshape Percobaan 10 Feature Extractor F_AVG Gambar 6.21 F-Measure Forward Selection 10 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 10 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode O yaitu usedisjshape. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.21.

157 131 T_AVG Gambar 6.22 Time Forward Selection 10 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor O (usedisjshape) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 70.11, 71.37, 93.98, 70.17, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.22.

158 Percobaan 11 Feature Extractor F_AVG Gambar 6.23 F-Measure Forward Selection 11 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 11 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode J yaitu usesymwordpairs. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar 0.932, , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F- Measure pada percobaan dapat dilihat pada Gambar 6.23.

159 133 T_AVG Gambar 6.24 Time Forward Selection 11 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor J (usesymwordpairs) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 78.19, 84.08, 87.42, 80.54, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.24.

160 Percobaan 12 Feature Extractor F_AVG Gambar 6.25 F-Measure Forward Selection 12 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 12 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode R yaitu strictlyfirstorder. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar 0.932, , , , serta Sehingga dapat meningkatkan nilai ratarata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.25.

161 135 T_AVG Gambar 6.26 Time Forward Selection 12 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor R (strictlyfirstorder) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 68.39, 77.02, 80.18, 72.49, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.26.

162 Percobaan 13 Feature Extractor F_AVG Gambar 6.27 F-Measure Forward Selection 13 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 13 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode X yaitu cleangazette. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar 0.932, , , , serta Sehingga rata-rata nilai F-Measure yang dihasilkan sama seperti percobaan 12 feature extractor yaitu dengan standar deviasi sebesar Karena feature extractor cleangazette memiliki syarat feature extractor W yaitu usegazettes, maka pada percobaan berikutnya feature extractor syarat juga akan diikutkan pada penambahan feature extractor. Untuk perbandingan rata-rata F- Measure pada percobaan dapat dilihat pada Gambar 6.27.

163 137 T_AVG Gambar 6.28 Time Forward Selection 13 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor X (cleangazette) yang terpilih pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 73.47, 78.32, 82.25, 74.13, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.28.

164 Percobaan 15 Feature Extractor F_AVG Gambar 6.29 F-Measure Forward Selection 15 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario forward selection dengan 15 feature extractor, didapatkan bahwa penambahan feature extractor yang paling optimal untuk meningkatkan performa model adalah feature extractor kode S yaitu usesum. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Namun penambahan feature extractor ini dapat menurunkan performa F-Measure menjadi dengan standar deviasi sebesar Sehingga, percobaan dapat dihentikan. Untuk perbandingan rata-rata F- Measure pada percobaan dapat dilihat pada Gambar 6.29.

165 139 T_AVG Gambar 6.30 Time Forward Selection 15 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang sangat rendah yaitu Sehingga, pemilihan feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk feature extractor S (usesum) yang terpilih untuk memiliki nilai performa tertinggi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 72, 77.38, 76.69, 89.89, serta dalam satuan detik. Sehingga pada percobaan ini, untuk feature extractor terpilih, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Hal ini menunjukkan bahwa terdapat peningkatan jumlah waktu dengan adanya penambahan feature extractor, meskipun performa F-Measure menurun. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.30.

166 Percobaan 24 Feature Extractor: ABCDEFGHIJKLMN OPQRSTUVWX 2. Percobaan 23 Feature Extractor: ABCDEFGHIJKLMN OPQRSTUWX 3. Percobaan 22 Feature Extractor: ABCDEFGHIJKLMN OPRSTUWX 4. Percobaan 21 Feature Extractor: ABCDFGHIJKLMN OPRSTUWX 5. Percobaan 20 Feature Extractor: ABCFGHIJKLMN OPRSTUWX 6. Percobaan 19 Feature Extractor: ABCFGHIJLMN OPRSTUWX 7. Percobaan 18 Feature Extractor: ABCFGHJLMN

167 141 OPRSTUWX 8. Percobaan 17 Feature Extractor: ABCFGHJMN OPRSTUWX 9. Percobaan 16 Feature Extractor: ABCFGHJN OPRSTUWX 10. Percobaan 15 Feature Extractor: ABCFGHJNOPSTUWX 11. Percobaan 14 Feature Extractor: ABCFGHJNOPTUWX 12. Percobaan 13 Feature Extractor: ABCGHJNOPTUWX 13. Percobaan 12 Feature Extractor: ABCGJNOPTUWX Percobaan 24 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan seluruh feature extractor yaitu 24 feature extractor, didapatkan bahwa pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat menghasilkan nilai rata-rata F-Measure sebesar dengan standar deviasi sebesar Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Nilai Time yang dihasilkan pada percobaan model 1 hingga 5 sebesar 60.82, 58.14, 72.96, 72.24, serta 74.6 dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik.

168 usengrams useprevsequences useprev usedisjunctive usetypeseqs wordshape=jenny1 cleangazette usegazettes usetypeysequences usewordpairs usesum useword usesequences strictlyfirstorder useclassfeature usesymwordpairs usedisjshape usetypeseqs2 usenext useposition maxleft=1 maxngramleng=6 disjunctionwidth=6 nomidngrams Percobaan 23 Feature Extractor F_AVG Gambar 6.31 F-Measure Backward Elimination 23 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 23 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor V yaitu nomidngrams. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.31.

169 usengrams useprevsequences useprev usedisjunctive usetypeseqs wordshape=jenny1 cleangazette usegazettes usetypeysequences usewordpairs usesum useword usesequences strictlyfirstorder useclassfeature usesymwordpairs usedisjshape usetypeseqs2 usenext useposition maxleft=1 maxngramleng=6 disjunctionwidth=6 nomidngrams 143 T_AVG Gambar 6.32 Time Backward Elimination 23 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pengeliminasian feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak mempengaruhi peningkatan waktu. Untuk model dengan feature extractor V (nomidngrams) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 92.74,125.3, , 96.96, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.32

170 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usegazettes cleangazette usedisjshape usetypeysequences usewordpairs usesymwordpairs useclassfeature maxleft=1 strictlyfirstorder usesequences usesum useword usenext useposition usetypeseqs2 disjunctionwidth= Percobaan 22 Feature Extractor F_AVG Gambar 6.33 F-Measure Backward Elimination 22 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 22 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor Q yaitu disjunctionwidth=6. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar 0.931, , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.33.

171 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usegazettes cleangazette usedisjshape usetypeysequences usewordpairs usesymwordpairs useclassfeature maxleft=1 strictlyfirstorder usesequences usesum useword usenext useposition usetypeseqs2 disjunctionwidth= T_AVG Gambar 6.34 Time Backward Elimination 22 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pengeliminasian feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak terlalu mempengaruhi peningkatan waktu. Untuk model dengan feature extractor Q (disjunctionwidth=6) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar , 123, , 97.71, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.34.

172 usengrams maxngramleng=6 usedisjunctive useprev useprevsequences wordshape=jenny1 usetypeseqs usetypeseqs2 usenext useposition usetypeysequences useclassfeature usesymwordpairs usesum usesequences strictlyfirstorder useword cleangazette usegazettes usewordpairs usedisjshape maxleft= Percobaan 21 Feature Extractor F_AVG Gambar 6.35 F-Measure Backward Elimination 21 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 21 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor E yaitu maxleft=1. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F- Measure pada percobaan dapat dilihat pada Gambar 6.35.

173 usengrams maxngramleng=6 usedisjunctive useprev useprevsequences wordshape=jenny1 usetypeseqs usetypeseqs2 usenext useposition usetypeysequences useclassfeature usesymwordpairs usesum usesequences strictlyfirstorder useword cleangazette usegazettes usewordpairs usedisjshape maxleft= T_AVG Gambar 6.36 Time Backward Elimination 21 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pengeliminasian feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak terlalu mempengaruhi peningkatan waktu. Untuk model dengan feature extractor E (maxleft=1) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar , , 136.9, , serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.36.

174 maxngramleng=6 usengrams useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usedisjshape usegazettes cleangazette useposition usesymwordpairs useclassfeature usenext useword strictlyfirstorder usesum usesequences usewordpairs usetypeysequences Percobaan 20 Feature Extractor F_AVG Gambar 6.37 F-Measure Backward Elimination 20 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 20 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor D yaitu usetypeysequences. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.37.

175 maxngramleng=6 usengrams useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usedisjshape usegazettes cleangazette useposition usesymwordpairs useclassfeature usenext useword strictlyfirstorder usesum usesequences usewordpairs usetypeysequences 149 T_AVG Gambar 6.38 Time Backward Elimination 20 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pengeliminasian feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak terlalu mempengaruhi peningkatan waktu. Untuk model dengan feature extractor E (maxleft=1) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar , , 136.9, , serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.38.

176 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usedisjshape usenext useclassfeature usesymwordpairs cleangazette usegazettes usewordpairs strictlyfirstorder useword usesum usesequences useposition Percobaan 19 Feature Extractor F_AVG Gambar 6.39 F-Measure Backward Elimination 19 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 19 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor K yaitu useposition. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F- Measure pada percobaan dapat dilihat pada Gambar 6.39.

177 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usedisjshape usenext useclassfeature usesymwordpairs cleangazette usegazettes usewordpairs strictlyfirstorder useword usesum usesequences useposition T_AVG Gambar 6.40 Time Backward Elimination 19 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pengeliminasian feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak terlalu mempengaruhi peningkatan waktu. Untuk model dengan feature extractor K (useposition) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 118.2, , 103, 93.81, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.40.

178 maxngramleng=6 usengrams useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usenext usedisjshape usegazettes cleangazette useclassfeature strictlyfirstorder usesum useword usesequences usesymwordpairs usewordpairs Percobaan 18 Feature Extractor F_AVG Gambar 6.41 F-Measure Backward Elimination 18 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 18 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor I yaitu usewordpairs. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , 0.937, serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.41.

179 maxngramleng=6 usengrams useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usenext usedisjshape usegazettes cleangazette useclassfeature strictlyfirstorder usesum useword usesequences usesymwordpairs usewordpairs 153 T_AVG Gambar 6.42 Time Backward Elimination 18 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang rendah yaitu Sehingga, pengeliminasian feature extractor pada percobaan ini didasarkan pada F- Measure yang paling tinggi karena tidak terlalu mempengaruhi peningkatan waktu. Untuk model dengan feature extractor I (usewordpairs) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 76.01, 74.49, 90.88, 80.94, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.42.

180 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usedisjshape usegazettes cleangazette usesymwordpairs usenext usesequences strictlyfirstorder useword usesum useclassfeature Percobaan 17 Feature Extractor F_AVG Gambar 6.43 F-Measure Backward Elimination 17 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 17 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor L yaitu useclassfeature. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga dapat meningkatkan nilai rata-rata F-Measure menjadi dengan standar deviasi sebesar Untuk perbandingan ratarata F-Measure pada percobaan dapat dilihat pada Gambar 6.43.

181 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usedisjshape usegazettes cleangazette usesymwordpairs usenext usesequences strictlyfirstorder useword usesum useclassfeature 155 T_AVG Gambar 6.44 Time Backward Elimination 17 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang cukup yaitu Tetapi pengeliminasian feature extractor tetap didasarkan pada F-Measure. Untuk model dengan feature extractor L (useclassfeature) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 91.99, , 90.66, 85.66, dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.44.

182 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usesymwordpairs usedisjshape usegazettes cleangazette usenext strictlyfirstorder usesum usesequences useword Percobaan 16 Feature Extractor F_AVG Gambar 6.45 F-Measure Backward Elimination 17 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 16 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor F yaitu useword. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga menghasilkan nilai ratarata F-Measure yang tetap yaitu dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.45.

183 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usesymwordpairs usedisjshape usegazettes cleangazette usenext strictlyfirstorder usesum usesequences useword 157 T_AVG Gambar 6.46 Time Backward Elimination 16 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang cukup yaitu Kali ini, pengeliminasian juga didasarkan pada kecepatan waktu yang dijalankan. Untuk model dengan feature extractor M (usesequences) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 79.44, , 85.96, 81.19, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.46.

184 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usesymwordpairs usedisjshape cleangazette usegazettes usenext usesequences usesum strictlyfirstorder Percobaan 15 Feature Extractor F_AVG Gambar 6.47 F-Measure Backward Elimination 15 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 15 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor R yaitu strictlyfirstorder. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga menghasilkan nilai rata-rata F-Measure yang tetap yaitu dengan standar deviasi sebesar Untuk perbandingan ratarata F-Measure pada percobaan dapat dilihat pada Gambar 6.47.

185 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usesymwordpairs usedisjshape cleangazette usegazettes usenext usesequences usesum strictlyfirstorder 159 T_AVG Gambar 6.48 Time Backward Elimination 15 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang cukup yaitu Kali ini, pengeliminasian juga didasarkan pada kecepatan waktu yang dijalankan. Untuk model dengan feature extractor R (strictlyfirstorder) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 79.59, , 84.92, 80.96, serta 103 dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.48.

186 usengrams maxngramleng=6 useprev useprevsequences usedisjunctive wordshape=jenny1 usetypeseqs usetypeseqs2 usesymwordpairs usedisjshape cleangazette usegazettes usenext usesum usesequences Percobaan 14 Feature Extractor F_AVG Gambar 6.49 F-Measure Backward Elimination 14 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 14 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor M yaitu usesequences. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , , serta Sehingga menghasilkan nilai ratarata F-Measure yang tetap yaitu dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.49.

187 161 T_AVG Gambar 6.50 Time Backward Elimination 14 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang cukup yaitu Kali ini, pengeliminasian juga didasarkan pada kecepatan waktu yang dijalankan. Untuk model dengan feature extractor S (usesum) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 81.83, , 85.1, 78.9, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.50.

188 Percobaan 13 Feature Extractor F_AVG Gambar 6.51 F-Measure Backward Elimination 13 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 13 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk meningkatkan performa model adalah dengan mengeliminasi feature extractor F yaitu useword. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar , , , serta Sehingga menghasilkan nilai ratarata F-Measure yang tetap yaitu dengan standar deviasi sebesar Untuk perbandingan rata-rata F-Measure pada percobaan dapat dilihat pada Gambar 6.51.

189 163 T_AVG Gambar 6.52 Time Backward Elimination 13 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang cukup yaitu Kali ini, pengeliminasian juga didasarkan pada kecepatan waktu yang dijalankan. Untuk model dengan feature extractor F (useword) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 74.24, 89.93, 77.97, 83.62, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Pada percobaan ini tampak penurunan waktu yang cukup signifikan. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.52.

190 Percobaan 12 Feature Extractor F_AVG Gambar 6.53 F-Measure Backward Elimination 12 Feature Extractor Berdasarkan percobaan yang dilakukan pada skenario backward elimination dengan 12 feature extractor, didapatkan bahwa eliminasi feature extractor yang paling optimal untuk performa model adalah dengan mengeliminasi feature extractor H yaitu usenext. Pada percobaan model 1 hingga 5 dihasilkan nilai F-Measure sebesar ,0.9492, , , serta Sehingga menghasilkan nilai rata-rata F-Measure yang turun yaitu dengan standar deviasi sebesar Maka, percobaan dapat dihentikan. Untuk perbandingan ratarata F-Measure pada percobaan dapat dilihat pada Gambar 6.53.

191 165 T_AVG Gambar 6.54 Time Backward Elimination 12 Feature Extractor Selain pengujian terhadap F-Measure, terdapat pula pengujian terhadap Time. Dari data yang didapatkan, korelasi rata-rata F-Measure dengan rata-rata Time menunjukkan nilai korelasi yang cukup yaitu Kali ini, pengeliminasian juga didasarkan pada kecepatan waktu yang dijalankan. Untuk model dengan feature extractor H (usenext) yang tereliminasi pada percobaan ini memiliki nilai Time yang dihasilkan pada model 1 hingga 5 sebesar 71.79, 95.77, 77.86, 98.97, serta dalam satuan detik. Sehingga pada percobaan ini, rata-rata Time yang dihasilkan sebesar detik dengan standar deviasi sebesar detik. Untuk perbandingan rata-rata Time pada percobaan dapat dilihat pada Gambar 6.54.

192 Analisa Hasil Forward Selection F_AVG Gambar 6.55 Rata-Rata F-Measure Skenario Forward Selection Berdasarkan hasil percobaan dengan skenario forward selection seperti pada Gambar 6.55, model terbaik yang dipilih adalah model 12 dengan rata-rata F-Measure dan ratarata Time yang paling optimal sebesar Meskipun model memiliki performa F-Measure yang sama, tetapi rata-rata Time terendah dimiliki oleh Model 12 terlihat pada Gambar T_AVG Gambar 6.56 Rata-Rata Time Skenario Forward Selection

193 Analisa Hasil Backward Elimination F_AVG Gambar 6.57 Rata-Rata F-Measure Skenario Backward Elimination Berdasarkan hasil percobaan dengan skenario backward elimination seperti pada Gambar 6.57, model terbaik yang dipilih adalah model 13 dengan rata-rata F-Measure dan rata-rata Time yang paling optimal sebesar Meskipun model memiliki performa F-Measure yang sama, tetapi rata-rata Time terendah dimiliki oleh Model 13 terlihat pada Gambar T_AVG Gambar 6.58 Rata-Rata Time Skenario Backward Elimination

194 168 Berdasarkan analisa hasil yang telah dilakukan, pilihan model terbaik dapat dilihat pada Tabel 6.8 yang menunjukkan performa rata-rata F-Measure, standar deviasi F-Measure, ratarata Time, serta standar deviasi Time dari model. Model yang terpilih dari analisa hasil berdasarkan metode forward selection adalah Model 12. Sedangkan model yang terpilih dari analisa hasil berdasar metode backward elimination adalah Model 13. Tabel 6.8 Model Terbaik Metode Seleksi Forward Selection Backward Elimination Model Terbaik Jumlah Fitur Performa F_AVG F_STDEV T_AVG T_STDEV Model Model Fitur-Fitur Penting Berdasarkan hasil pemilihan model terbaik, dapat ditentukan fitur-fitur penting yang harus diperhatikan dengan melihat feature extractors apa saja yang digunakan model terbaik pada Tabel 6.9. Analisa feature extractor dilakukan dengan melihat irisan feature extractor pada kedua model, feature extractor yang terpilih hanya pada model, serta feature extractor yang tidak terpilih. Tabel 6.9 Feature Extractor Yang Digunakan Model Terbaik Forward Selection Model 12 Feature Extractor Yang Digunakan A: wordshape=jenny1 B: usetypeseqs C: usetypeseqs2 D: usetypeysequences G: useprev J: usesymwordpairs N: useprevsequences

195 169 Backward Elimination Model 14 O: usedisjshape P: usedisjunctive R: strictlyfirstorder T: usengrams V: usengrams, nomidngrams A: wordshape=jenny1 B: usetypeseqs C: usetypeseqs2 G: useprev H: usenext J: usesymwordpairs N: useprevsequences O: usedisjshape P: usedisjunctive T: usengrams U: maxngramleng=6 W: usegazettes X: cleangazette Fitur yang Terpilih Pada Seluruh Metode Seleksi Terdapat 9 feature extractor yang terpilih pada seluruh metode seleksi. Dari ke-9 feature extractor yang terpilih tersebut, keseluruhan feature extractor mencirikan konteks dari nama-nama lokasi. Sedangkan kata yang merupakan sebuah lokasi itu sendiri tidak banyak mengindikasikan bahwa kata tersebut merupakan sebuah lokasi. Berikut 9 feature extractor yang terpilih pada kedua metode seleksi beserta justifikasi pentingnya feature extractor yang terpilih: 1. A : wordshape=jenny1 Feature extractor dirasa penting karena dapat menangkap fenomena shape atau bentuk karakter pada nama-nama lokasi yang memiliki ciri huruf besar (upper case) pada awal kata. 2. B : usetypeseqs Feature extractor ini dapat mengidentifikasi shape atau bentuk karakter pada kata sebelum dengan shape atau bentuk karakter pada kata saat ini, misal terdapat kata di Surabaya. Kata di

196 170 teridentifikasi shape lower case dan kata Surabaya teridentifikasi shape upper case di awal kata dengan diikuti karakter lower case. Sehingga dapat mencirikan bahwa Surabaya merupakan lokasi. Selain itu, feature extractor juga dapat mengidentifikasi shape kata sesudah dengan shape kata saat ini. Jika terdapat nomor pada suatu alamat lokasi, akan teridentifikasi shape berupa digit. Sehingga dapat menangkap fenomena jika terdapat alamat yang diawali huruf besar dan diikuti dengan nomor angka, maka alamat tersebut dapat dikatakan sebagai lokasi. 3. C : usetypeseqs2 Feature extractor mampu menangkap ciri-ciri shape lokasi dengan melihat shape kata sebelum dengan digabungkan shape kata saat ini serta kelas sebelum dan kelas saat ini. Misalkan arah Malang berarti dapat mencirikan dengan kata sebelum yang memiliki shape lower case dan label bukan lokasi serta shape upper case pada kata saat ini, maka mengindikasikan bahwa kata saat ini merupakan sebuah lokasi. 4. G : useprev Feature extractor dapat menangkap fenomena ciri-ciri nama lokasi yang biasanya diawali dengan kata-kata seperti di, ke, dari, depan, maupun asal. 5. J : usesymwordpairs Ciri-ciri lokasi kata sebelum dan kata sesudah dapat diidentifikasi dengan feature extractor ini. Lokasi umumnya dijadikan sebagai kata keterangan. Maka, pada umumnya, katakata lokasi menjadi akhir pada suatu kalimat yang kemudian diakhiri dengan tanda baca. Tanda baca dapat dianggap sebagai sebuah token. Dengan menggunakan feature extractor ini, maka fenomena tersebut akan mudah ditangkap.

197 N : useprevsequences Feature extractor ini dapat mengekstraksi fitur dengan memperhatikan kelas sebelum kata saat ini. Sehingga, dapat menangkap fenomena kata-kata lokasi yang berupa alamat yang cukup panjang. 7. O : usedisjshape Merupakan disjungsi bentuk karakter pada kata yang terdapat pada suatu kalimat dengan jarak 4 kata. Dengan adanya feature extractor ini, shape yang diperhatikan adalah shape 4 kata sebelum dan 4 kata sesudah. Fitur tersebut akan memperhatikan apakah suatu bentuk karakter dengan disjungsi sebelum dan sesudah tersebut akan mengindikasikan kelas kata saat ini. 8. P : usedisjunctive Merupakan disjungsi fitur-fitur dengan memperhatikan 4 kata sebelum dan 4 kata sesudah. Fitur tersebut akan memperhatikan apakah fitur yang terdapat pada disjungsi sebelum dan sesudah akan mengindikasikan kelas dari kata saat ini. 9. T : usengrams Membentuk kata berdasarkan N-Gram-nya. Hal ini dapat menjadi feature extractor yang penting karena beberapa namanama lokasi terdapat kemiripan pola seperti Stasiun Gubeng dan Stasiun Pasar Turi yang memiliki nilai 2-gram yang sama yaitu St dari kata Stasiun. Sehingga, hal ini dapt mencirikan kata tersebut merupakan sebuah lokasi Fitur yang Hanya Terpilih Pada Metode Forward Selection Terdapat pula feature extractor yang hanya terpilih pada metode forward selection. Berikut justifikasi mengenai mengapa feature extractor tidak terpilih menjadi feature extractor yang dianggap paling penting:

198 D : usetypeysequences Feature extractor mampu menangkap shape, kelas sebelum dan kelas sesudah. Feature extractor ini sudah dapat dirangkum dengan feature extractor usetypeseqs serta usetypeseqs2. 2. V : nomidngrams Feature extractor ini tidak mengikutkan huruf awal dan terakhir untuk N-Gram dari suatu kata. Padahal umumnya nama-nama lokasi memiliki kemiripan huruf pada awal kata. 3. R : strictlyfirstorder Feature extractor memungkinkan menghapus feature extractor lain selain class fan CpC. Padahal feature extractor lain masih tetap dibutuhkan Fitur yang Hanya Terpilih Pada Metode Backward Elimination 1. H : usenext Penggunaan kata sesudah beserta kelas yang mengikutinya tidak terlalu dianggap penting karena label lokasi tidak cukup dengan memperhatikan kata sesudah. Kata lokasi lebih diindikasikan melalui kata sebelum. Selain itu, penggunaan kata sesudah juga sudah dirangkum pada feature extractor usesymwordpairs yang memperhatikan kata sebelum dan sesudah sekaligus. 2. U : maxngramleng=6 Penggunaan N-Gram yang panjang tidak dianggap menjadi feature extractor yang penting karena ciri-ciri kata lokasi yang mirip tidak sampai memiliki 6 N-Gram.

199 W : usegazettes Penggunaan gazette yang berisikan daftar kelas beserta kata-kata (pada penelitian ini adalah lokasi) tidak menggaransikan bahwa kata-kata pada gazette atau lexicon atau lookup-list selalu digunakan pada prediksi. Gazette tidak selalu dipilih untuk memprediksi. Gazette hanya menambah feature extractor lain pada model CRF train. Jika model yang dihasilkan memiliki weight yang lebih tinggi pada feature extractor lain, maka gazette juga tidak terlalu diperhatikan dalam melakukan prediksi. 4. X : cleangazettes Feature extractor ini akan membuat pengecekan gazette secara utuh tidak terpisah kata satu dengan lainnya. Sedangkan pada penggunaan bahasa non formal, nama lokasi tidak disebutkan secara utuh Fitur yang Tidak Terpilih 1. E : maxleft=1 Feature extractor akan membatasi jarak kata yang dilihat untuk memprediksikan sequence dengan hanya 1 left. Sedangkan default maxleft=2 2. F : useword Feature extractor yang menggunakan kata itu sendiri untuk mengindikasikan sebuah kelas tidak dianggap penting untuk digunakan karena terdapat kata-kata lokasi yang digunakan pada konteks bukan lokasi misalnya organisasi Suara Surabaya. Sehingga terkadang, kata Surabaya bisa berarti kata lokasi, tetapi tidak selalu. Sehingga, harus lebih banyak memperhatikan konteks kalimat di sekitarnya. Selain hal tersebut, penggunaan fitur kata saja dirasa tidak cukup karena diperlukan kombinasi fitur kata sebelum dan sesudah maupun kelas sebelum dan sesudah. Untuk itu,

200 174 kombinasi fitur ini sudah dirangkum dalam feature extractor useprevsequences. 3. I : usewordpairs Penggunaan kata sebelum dan kata sesudah akan digunakan pada feature extractor, tetapi kata saat ini itu sendiri tidak banyak mencirikan bahwa ia merupakan sebuah lokasi. Sehingga cukup digunakan usesymwordpairs untuk memperhatikan kata sebelum dan sesudah serta kelas saat ini. 4. K : useposition Posisi lokasi pada suatu kalimat tidak banyak mencirikan ia merupakan sebuah lokasi. Utamanya pada bahasa non formal, lokasi dapat diletakkan dengan tidak teratur. 5. L : useclassfeature Penggunaan fitur kelas pada suatu kata tidak terlalu diperhatikan karena sudah dirangkum pada hampir seluruh feature extractor lain. 6. M : usesequences Sequence dari kelas tidak dianggap sebagai feature extractor yang penting karena pada kasus ini kelas yang ada hanya kelas lokasi. 7. Q : disjunctionwidth=6 Jarak disjungsi kata untuk melihat shape ataupun kata itu sendiri terlampau jauh untuk mencirikan sebuah lokasi. Umumnya terdapat 3-4 kata sebelum ataupun sesudah. 8. S : usesum Tidak terdapat definisi yang komprehensif mengenai feature extractor ini berdasarkan dokumentasi library.

201 Kesalahan Prediksi Model 175 Model yang dihasilkan pada kedua metode memiliki beberapa pola kesalahan prediksi. Berikut ini merupakan kesalahan yang terjadi pada prediksi oleh model: - Model tidak dapat memprediksi lokasi yang dipisahkan dengan tanda - tanpa diberi white space - Model tidak dapat memprediksi kata lokasi yang diawali huruf kecil - Model tidak dapat memprediksikan lokasi yang diawali dengan kata dititik - Kata yang diawali dengan kata dan serta memiliki huruf kapital di awal kata diprediksikan sebagai lokasi, meskipun kata tersebut merupakan suatu organisasi - Kata-kata yang didahului dengan kata di dan memiliki huruf kapital pada awal kata diprediksi sebagai lokasi - Tidak dapat memprediksi lokasi yang digunakan sebagai subjek Dari analisa kesalahan prediksi oleh model tersebut dapat diketahui bahwa penulisan kata lokasi yang tidak lazim lebih sulit untuk diprediksi karena prediksi didasarkan pada bobot fitur yang memperhatikan bentuk karakter kata serta konteks di sekitar kata. Selain hal tersebut, konteks penulisan nama organisasi dan orang yang mirip dengan nama lokasi dapat menyebabkan kesalahan prediksi. Untuk itu, penambahan label organisasi dan orang dapat dijadikan sebagai bahan penelitian selanjutnya Uji Statistik 2 Model Terbaik Independent Sample T-Test digunakan untuk membandingkan (membedakan) dua sampel, apakah sampel tersebut sama atau berbeda. Pada kasus ini hal yang dibandingkan adalah hasil performa model menggunakan metode forward selection dan backward elimination. Kegunaan Independent Sample T-Test ini untuk menguji kemampuan

202 176 generalisasi, yaitu signifikansi hasil penelitian yang berupa perbandingan dua rata-rata sampel. Sampel sendiri termasuk kategori sampel yang tidak berkorelasi alias independen. Sampel yang digunakan dalam pengujian adalah sampel pada performa F-Measure serta Time. Pada pengujian, model hasil forward selection dinyatakan sebagai model 1. Sedangkan model hasil backward elimination dinyatakan sebagai model 2. Berikut merupakan hasil pengujian T-Test. Pada performa model Uji Hipotesis Performa F-Measure Tabel 6.10 Nilai F-Measure Model Terbaik METODE SELEKSI MODEL (F- Measure) FORWARD BACKWARD SELECTION ELIMINATION Model Model Model Model Model F_AVG F_STDEV Pernyatan Hipotesis H 0 : Performa F 1 Model 1 = Performa F 1 Model 2 H A : Performa F 1 Model 1 Performa F 1 Model 2 Penentuan Tingkat Signifikansi Tingkat Signifikansi merupakan probabilitas penolakan hipotesis nol ketika hipotesis tersebut benar. Pada kasus pengujian hipotesis ini dipilih tingkat signifikansi α = 0.05

203 177 Pengujian Hasil pengujian dengan menggunakan tools Minitab dapat dilihat pada Gambar Gambar 6.59 Pengujian F-Measure 2 Sampel Hasil pengujian menunjukkan bahwa P-Value sebesar menghasilkan nilai lebih dari nilai α. Nilai tersebut menunjukkan bahwa tidak terdapat perbedaan nilai Mean yang signifikan antar dua sampel. Sehingga, hipotesis nol gagal tolak Uji Hipotesis Performa Time Tabel 6.11 Nilai Time Model Terbaik METODE SELEKSI MODEL (Time) FORWARD BACKWARD SELECTION ELIMINATION Model Model Model Model Model T_AVG T_STDEV

204 178 Pernyatan Hipotesis H 0 : Performa Time Model 1 = Performa Time Model 2 H A : Performa Time Model 1 Performa Time Model 2 Penentuan Tingkat Signifikansi Tingkat Signifikansi merupakan probabilitas penolakan hipotesis nol ketika hipotesis tersebut benar. Pada kasus pengujian hipotesis ini dipilih tingkat signifikansi α = 0.05 Pengujian Hasil pengujian dengan menggunakan tools Minitab dapat dilihat pada Gambar Gambar 6.60 Pengujian Time 2 Sampel Hasil pengujian menunjukkan bahwa P-Value sebesar menghasilkan nilai lebih dari nilai α. Nilai tersebut menunjukkan bahwa tidak terdapat perbedaan nilai Mean yang signifikan antar dua sampel. Sehingga, hipotesis nol gagal tolak.

205 Kesimpulan Pengujian Statistik 2 Sampel Hasil Pengujian Statistik 2 Sampel menunjukkan bahwa kedua pengujian menghasilkan hipotesis nol gagal tolak. Maka, dapat disimpulkan bahwa tidak terdapat perbedaan yang signifikan antara kedua model. Sehingga, untuk penggunaan model terbaik dapat dipilih di antara keduanya, mengingat bahwa tidak terdapat perbedaan yang berarti pada rata-rata hasil performa kedua model.

206 180 Halaman ini sengaja dikosongkan

207 BAB VII KESIMPULAN DAN SARAN Pada bab ini dibahas mengenai kesimpulan dari semua proses yang telah dilakukan dan saran yang dapat diberikan untuk pengembangan yang lebih baik. Kesimpulan yang didapatkan dari proses pengerjaan tugas akhir yang telah dilakukan antara lain: 1. Penggunaan library tertentu untuk melakukan pemrosesan data dapat mempengaruhi tahapan apa saja yang perlu dilakukan pada praproses data. Berdasarkan hasil yang didapat, ditemukan bahwa terdapat tahapan praproses yang dirasa tidak banyak membantu yaitu praproses pada tahap labeling dengan program. Hasil labeling dengan program memiliki berbagai kesalahan yang menyebabkan adanya pekerjaan tambahan untuk mengecek kesalahan saat melakukan labeling manual sehingga kurang efisien. Maka, praproses yang berhubungan dengan labeling menggunakan program yaitu pemuatan data lokasi dan non lokasi serta tahap matching juga dirasa kurang penting. Adapun tahapan praproses yang dilakukan dengan pemuatan data teks, pembagian dataset, tokenizing serta labeling manual dirasa lebih penting untuk dilakukan. Dari hasil tersebut, dapat diketahui bahwa penggunaan matching kata-kata yang terdapat pada daftar nama lokasi saja tidak cukup untuk menentukan mana kata yang merupakan suatu lokasi pada suatu kalimat. Sehingga, untuk dapat menentukan kata yang merupakan suatu lokasi diperlukan modul NER yang dibuat pada penelitian ini. 2. Tahapan praproses labeling secara manual memerlukan konsistensi pelabelan karena persepsi mengenai label lokasi antar manusia bisa berbeda-beda. Oleh karena itu, pendefinisian secara komprehensif mengenai kata-kata apa saja yang perlu diberikan label berupa lokasi perlu dilakukan. 181

208 Gazzette atau lookup-list atau lexicon bahasa Indoensia merupakan daftar nama-nama lokasi yang dianggap dapat meningkatkan performa pengujian. Ternyata pada penelitian ini ditemukan bahwa penggunaan lexicon tidak dapat meningkatkan performa secara signifikan karena penentuan lokasi lebih banyak dilihat dari konteks yang ada di sekitar kata, bukan kata itu sendiri. Berdasarkan pemrosesan data, terdapat 2 model terbaik dari hasil 2 skenario yang berbeda. Model terbaik dari skenario forward selection menghasilkan rata-rata F-Measure sebesar Sedangkan model terbaik berdasarkan skenario backward elimination menghasilkan rata-rata F- Measure Berdasarkan pemrosesan data, terdapat 2 model terbaik dari hasil 2 skenario yang berbeda. Model terbaik dari skenario forward selection menghasilkan rata-rata F-Measure sebesar dengan rata-rata waktu pemrosesan detik. Sedangkan model terbaik berdasarkan skenario backward elimination menghasilkan rata-rata F-Measure dengan rata-rata waktu pemrosesan detik. Dengan menggunakan uji statistik 2 sampel, hasil kedua model tidak memiliki perbedaan yang signifikan sehingga dapat dipilih diantara keduanya. 5. Terdapat fitur-fitur yang dianggap penting untuk mencirikan kata adalah suatu lokasi. Fitur-fitur tersebut diekstraksi oleh 9 feautre extractor, antara lain: a. wordshape=jenny1 b. usetypeseqs c. usetypeseqs2 d. useprev e. usesymwordpairs f. useprevsequences g. usedisjshape h. usedisjunctive i. usengrams

209 Kesalahan yang dihasilkan model terbaik menunjukkan bahwa penulisan kata-kata lokasi yang tidak umum seperti penggunaan huruf kecil pada awal kata dan penggunaan tanda pemisah - tanpa pemberian tanda spasi, masih belum dapat diprediksi seluruhnya. Selain itu juga masih terdapat prediksi yang salah terhadap nama organisasi yang digunakan sebagai kata keterangan karena pada konteks tersebut nama organisasi memiliki ciri yang sama seperti nama lokasi. Dari pengerjaan tugas akhir ini, adapun beberapa saran untuk pengembangan penelitian ke depan. Dalam melakukan eksplorasi fitur-fitur dengan feature extractor, masih terdapat banyak feature extractor dari library yang belum diujicobakan dalam percobaan. Untuk itu, pada pengembangan berikutnya, perlu melakukan eksplorasi kembali dengan menambah feature extractor di luar penelitian ini. Selain itu, pemilihan dataset pada penelitian ini didasarkan pada status facebook fanpage yang menggunakan kebahasaan berita radio. Pada pengembangannya, dapat diujicobakan dataset dari akun penyedia berita radio lain ataupun dataset yang diambil dari komentar pada status facebook fanpage yang dirasa lebih banyak menggunakan karakteristik kebahasaan informal dan sehari-hari. Untuk pengembangan yang lebih baik lagi, eksplorasi pelabelan lain seperti label organisasi maupun orang juga dapat dilakukan karena dirasa dapat menanggulangi kesalahan prediksi yang dilakukan oleh model dengan pelabelan lokasi saja.

210 184 Halaman ini sengaja dikosongkan

211 DAFTAR PUSTAKA [1] Kementrian Komunikasi dan Informatika, "Kominfo : Pengguna Internet di Indonesia 63 Juta Orang," [Online]. Available: [Accessed ]. [2] Y. Herlanti, Blogquest+: Pemanfaatan media sosial pada pembelajaran sains berbasis isu sosiosaintifik untuk mengembangkan keterampilan berargumentasi dan literasi sains, Bandung: Pendidikan IPA SPs Universitas Pendidikan Indonesia, [3] D. Nouvel, M. Ehrmann and S. Rosset, Named Entities for Computational Linguistics, London, UK dan Hoboken, NJ, USA: John Wiley & Sons, [4] A. S. Wibawa and A. Purwarianti, "Indonesian Namedentity Recognition for 15 Classes Using," in 5th Workshop on Spoken Language Technology for Under-resourced Languages, Yogyakarta, Indonesia, [5] I. Budi, S. Bressan, G. Wahyudi and Z. A. Hasibuan, "Named Entity Recognition for the Indonesian Language: Combining Contextual, Morphological and Part-of-Speech Features into a Knowledge Engineering Approach," in 8th International Conference, DS, Singapore, [6] R. A. Leonandya, B. Distiawan and N. H. Praptono, "A Semi-Supervised Algorithm for Indonesian Named Entity Recognition," in 3rd International Symposium on Computational and Business Intelligence, Bali, Indonesia, [7] L. Wake, NLP: Principles in Practice, St Albans: Ecademy Press, [8] R. Collobert, J. Weston, L. Bottou, M. Karlen, K. Kavukcuoglo and P. Kuksa, "Natural Language 185

212 186 Processing (Almost) from Scratch," Machine Learning Research 12, pp , [9] Microsoft Azure, "Named Entity Recognition," 25 Desember [Online]. Available: [Accessed 6 Oktober 2016]. [10 J. Lafferty, A. McCallum and F. C. Pereira, "Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data," 18th International Conference on Machine Learning, [11 Carnegie Mellon University, Conditional Random Fields for Activity Recognition, Pittsburgh: ProQuest, [12 J. D. Kelleher, B. M. Namee and A. D'Arcy, Fundamentals of Machine Learning for Predictive Data Analytics: Algorithms, Worked Examples, and Case Studies, London, England: MIT Press, [13 J. Gosling, B. Joy, G. Steele, G. Bracha and A. Buckley, Java (R) Language Spesificaiton, California: Oracle America, [14 The Stanford NLP Group, "About Stanford NLP Group," [Online]. Available: [Accessed 19 Oktober 2016]. [15 Open Street Map, "About OpenStreetMap," 31 Maret [Online]. Available: etmap. [Accessed 7 Januari 2017]. [16 Mapzen, "Documentation Metro Extracts," [Online]. Available: [Accessed 1 Januari 2017]. [17 The Wall Street Journal (Jones, Dow), "Facebook Tops Billion-User Mark," 4 Oktober [Online]. [Accessed 6 Oktober 2016].

213 187 [18 M. Hasan Basri, "Identifikasi Topik Informasi Publik Media Sosial di Kota Surabaya Berdasarkan Klasterisasi Teks pada Twitter dengan Menggunakan Algoritma K-Means," Surabaya, [19 S. Priansya, Oktober [20 The Stanford Natural Language Processing Group, "About Stanford Tokenizer," [Online]. Available: [Accessed 16 December 2016].

214 188 Halaman ini sengaja dikosongkan

215 BIODATA PENULIS Penulis lahir di Kediri pada tanggal 17 Februari Merupakan anak ketiga dari 3 bersaudara. Penulis telah menempuh beberapa pendidikan formal yaitu; SDS Pawyatan Daha 2 Kediri, SMP Negeri 1 Kediri, dan SMA Negeri 1 Kediri. Pada tahun 2013 pasca kelulusan SMA, penulis melanjutkan pendidikan dengan jalur SBMPTN (Tulis) di Jurusan Sistem Informasi FTIf Institut Teknologi Sepuluh Nopember (ITS) Surabaya dan terdaftar sebagai mahasiswa dengan NRP Selama menjadi mahasiswa, penulis mengikuti berbagai kegiatan kemahasiswaan seperti beberapa kepanitiaan serta pernah menjabat sebagai Sekretaris 2 Paduan Suara Mahasiswa ITS pada tahun kedua serta menjabat sebagai Sekretaris Eksternal Badan Eksekutif Mahasiswa Fakultas Teknologi Informasi ITS pada tahun ketiga. Selain iut, kegiatan seperti Latihan Ketrampilan Manajemen Mahasiswa pun pernah diikuti hingga Tingkat Menengah. Di bidang akademik, penulis aktif menjadi asisten dosen dan asisten praktikum pada beberapa mata kuliah seperti Desain dan Manajemen Jaringan dan Desain Basis Data. Selain itu, pada tahun 2016 penulis menjadi salah satu delegasi ITS dalam kegiatan kemahasiswaan yaitu Magang Ormawa untuk melakukan kunjungan pada Mahidol University di Thailand. Pada tahun keempat, karena penulis memiliki ketertarikan di bidang pengolahan data, maka penulis mengambil bidang minat Akuisisi Data dan Diseminasi Informasi (ADDI). Penulis dapat dihubungi melalui di hanumfitriani@gmail.com. 189

PEMBUATAN MODEL NAMED ENTITY RECOGNITION UNTUK TWITTER BAHASA INDONESIA DENGAN MENGGUNAKAN STANFORD NER

PEMBUATAN MODEL NAMED ENTITY RECOGNITION UNTUK TWITTER BAHASA INDONESIA DENGAN MENGGUNAKAN STANFORD NER PEMBUATAN MODEL NAMED ENTITY RECOGNITION UNTUK TWITTER BAHASA INDONESIA DENGAN MENGGUNAKAN STANFORD NER TUGAS AKHIR Diajukan Untuk Memenuhi Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika

Lebih terperinci

BABI PENDAHULUAN. 1.1 Latar Belakang

BABI PENDAHULUAN. 1.1 Latar Belakang BABI PENDAHULUAN 1.1 Latar Belakang Named entity recognition(ner) merupakan salah satu bagian domain Information Extraction(IE) pada sistem Natural Language Processing(NLP). Sistem NER bertujuan untuk

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Twitter Twiter adalah sebuah layanan media sosial yang memungkinkan penggunanya untuk menulis maksimal 140 karakter, yang dikenal sebagai Tweet. Twitter didirikan oleh Jack Dorsey

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Bahasa Indonesia adalah bahasa resmi dari Negara Indonesia. Berdasarkan ketentuan UU Nomor 24 tahun 2009 (Pasal 3) tujuan dari penggunaan Bahasa Indonesia sebagai bahasa

Lebih terperinci

ABSTRAK. Kata Kunci: analisis sentimen, pre-processing, mutual information, dan Naïve Bayes. UNIVERSITAS KRISTEN MARANATHA

ABSTRAK. Kata Kunci: analisis sentimen, pre-processing, mutual information, dan Naïve Bayes. UNIVERSITAS KRISTEN MARANATHA ABSTRAK Twitter merupakan sebuah aplikasi social networking yang memungkinkan usernya untuk dapat mengirimkan pesan pada waktu yang bersamaan. Data yang diambil melalui Twitter dapat dijadikan sebagai

Lebih terperinci

PART-OF-SPEECH TAGGING UNTUK DOKUMEN BAHASA BALI MENGGUNAKAN ALGORITMA BRILL TAGGER KOMPETENSI KOMPUTASI SKRIPSI NI PUTU MERI SRIYATI NIM.

PART-OF-SPEECH TAGGING UNTUK DOKUMEN BAHASA BALI MENGGUNAKAN ALGORITMA BRILL TAGGER KOMPETENSI KOMPUTASI SKRIPSI NI PUTU MERI SRIYATI NIM. PART-OF-SPEECH TAGGING UNTUK DOKUMEN BAHASA BALI MENGGUNAKAN ALGORITMA BRILL TAGGER KOMPETENSI KOMPUTASI SKRIPSI NI PUTU MERI SRIYATI NIM. 1208605026 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Data Mining Data Mining adalah proses yang mempekerjakan satu atau lebih teknik pembelajaran komputer (machine learning) untuk menganalisis dan mengekstraksi pengetahuan (knowledge)

Lebih terperinci

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB III ANALISA DAN PERANCANGAN SISTEM 3.1 Persiapan Data BAB III ANALISA DAN PERANCANGAN SISTEM Dalam pengerjaan tugas akhir ini data yang digunakan adalah kalimat tanya Berbahasa Indonesia, dimana kalimat tanya tersebut diambil dari soal-soal

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN 60 BAB III METODOLOGI PENELITIAN 1.1 Desain Penelitian Desain penelitian adalah tahapan atau gambaran yang akan dilakukan dalam penelitian. Desain penelitian dibuat untuk memudahkan pelaksanaan tahaptahap

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan media dan teknologi informasi, terutama pada perkembangan internet dan media sosial, menjadikan fungsi internet dari suatu media informasi biasa, bertambah

Lebih terperinci

IMPLEMENTASI ALGORITMA RANDOM FORESTS UNTUK KLASIFIKASI SPAM PADA CITRA DAN TEXT INSTAGRAM TUGAS AKHIR

IMPLEMENTASI ALGORITMA RANDOM FORESTS UNTUK KLASIFIKASI SPAM PADA CITRA DAN TEXT INSTAGRAM TUGAS AKHIR IMPLEMENTASI ALGORITMA RANDOM FORESTS UNTUK KLASIFIKASI SPAM PADA CITRA DAN TEXT INSTAGRAM TUGAS AKHIR RIZKY NOVRIYEDI PUTRA 1132001001 PROGRAM STUDI INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS

Lebih terperinci

SISTEM REKOMENDASI DOSEN PEMBIMBING TUGAS AKHIR BERBASIS TEXT MINING MENGGUNAKAN VECTOR SPACE MODEL

SISTEM REKOMENDASI DOSEN PEMBIMBING TUGAS AKHIR BERBASIS TEXT MINING MENGGUNAKAN VECTOR SPACE MODEL SISTEM REKOMENDASI DOSEN PEMBIMBING TUGAS AKHIR BERBASIS TEXT MINING MENGGUNAKAN VECTOR SPACE MODEL SKRIPSI Disusun Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer pada Departemen Ilmu

Lebih terperinci

DAFTAR ISI. Adryan Ardiansyah, 2013 Sistem Pengenalan Entitas Dengan Perceptron Pada Tweets Universitas Pendidikan Indonesia repository.upi.

DAFTAR ISI. Adryan Ardiansyah, 2013 Sistem Pengenalan Entitas Dengan Perceptron Pada Tweets Universitas Pendidikan Indonesia repository.upi. DAFTAR ISI ABSTRAK...i ABSTRACT... ii KATA PENGANTAR... iii DAFTAR ISI... v DAFTAR GAMBAR...vii DAFTAR TABEL... viii DAFTAR ISTILAH... ix BAB I PENDAHULUAN... 1 1.1 Latar Belakang... 1 1.2 Rumusan Masalah...

Lebih terperinci

IMPLEMENTASI PEMODELAN ARTIFICIAL NEURAL NETWORKS (ANN) DALAM PREDIKSI DATA TIME SERIES PENJUALAN STUDI KASUS PT.

IMPLEMENTASI PEMODELAN ARTIFICIAL NEURAL NETWORKS (ANN) DALAM PREDIKSI DATA TIME SERIES PENJUALAN STUDI KASUS PT. TUGAS AKHIR CI1599 IMPLEMENTASI PEMODELAN ARTIFICIAL NEURAL NETWORKS (ANN) DALAM PREDIKSI DATA TIME SERIES PENJUALAN STUDI KASUS PT. VARIA USAHA BETON ATHUR ADHI BUWANA NRP 5102 109 044 Dosen Pembimbing

Lebih terperinci

SKRIPSI RANTI RAMADHIANA

SKRIPSI RANTI RAMADHIANA EKSTRAKSI KATA KUNCI OTOMATIS TEKS BERBAHASA INDONESIA MENGGUNAKAN METODE TEXTRANK SKRIPSI RANTI RAMADHIANA 121402056 PROGRAM STUDI S1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN 28 BAB III METODOLOGI PENELITIAN Untuk menunjang kegiatan penelitian, dalam bab ini akan dijelaskan desain penelitian, metode penelitian yang digunakan, serta alat dan bahan penelitian. 3.1 Desain Penelitian

Lebih terperinci

PEMBUATAN SISTEM INFORMASI PENERAPAN GENERATOR CSS3 BERBASIS FRAMEWORK CODEIGNITER

PEMBUATAN SISTEM INFORMASI PENERAPAN GENERATOR CSS3 BERBASIS FRAMEWORK CODEIGNITER PEMBUATAN SISTEM INFORMASI PENERAPAN GENERATOR CSS3 BERBASIS FRAMEWORK CODEIGNITER Diajukan Untuk Memenuhi Salah Satu Syarat Mencapai Gelar Ahli Madya Program Diploma III Teknik Informatika Disusun oleh

Lebih terperinci

APLIKASI ENSIKLOPEDIA TARI DAERAH PULAU JAWA BERBASIS WEB

APLIKASI ENSIKLOPEDIA TARI DAERAH PULAU JAWA BERBASIS WEB APLIKASI ENSIKLOPEDIA TARI DAERAH PULAU JAWA BERBASIS WEB IBROHIM BINLADIN 41508110114 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA JAKARTA 2013 APLIKASI ENSIKLOPEDIA

Lebih terperinci

BAB III METODE PENELITIAN

BAB III METODE PENELITIAN BAB III METODE PENELITIAN 3.1. Metode Pengumpulan Data Data yang digunakan pada penelitian ini merupakan data sentimen dari pengguna aplikasi android yang memberikan komentarnya pada fasilitas user review

Lebih terperinci

BAB I PENDAHULUAN Latar Belakang dan Permasalahan

BAB I PENDAHULUAN Latar Belakang dan Permasalahan BAB I PENDAHULUAN 1 1.1 Latar Belakang dan Permasalahan Pencarian lokasi menjadi salah satu kebutuhan masyarakat dewasa ini terbukti dengan banyaknya penyedia layanan pemetaan seperti Google Map, Bing

Lebih terperinci

PERBANDINGAN DECISION TREE, MAXIMUM ENTROPY, DAN ASSOCIATION RULES PADA RESOLUSI KOREFERENSI UNTUK BAHASA INDONESIA

PERBANDINGAN DECISION TREE, MAXIMUM ENTROPY, DAN ASSOCIATION RULES PADA RESOLUSI KOREFERENSI UNTUK BAHASA INDONESIA PERBANDINGAN DECISION TREE, MAXIMUM ENTROPY, DAN ASSOCIATION RULES PADA RESOLUSI KOREFERENSI UNTUK BAHASA INDONESIA Astria Kurniawan Sumantri 1, Indra Budi 2, Heri Kurniawan 2 1,2,3 Fakultas Ilmu Komputer,Universitas

Lebih terperinci

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG KLASIFIKASI ENTERTAINER BERDASARKAN TWEET MENGGUNAKAN METODE SCORING BERBASIS LEXICON BASED TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah

Lebih terperinci

ABSTRAK. Kata kunci: diagram kelas, xml, java, kode sumber, sinkronisasi. v Universitas Kristen Maranatha

ABSTRAK. Kata kunci: diagram kelas, xml, java, kode sumber, sinkronisasi. v Universitas Kristen Maranatha ABSTRAK Salah satu bidang kajian dalam bidang teknologi informasi adalah rekayasa perangkat lunak. Dalam rekayasa perangkat lunak, terdapat konsep yang mendasari berbagai jenis metodologi pengembangan

Lebih terperinci

SISTEM INFORMASI AKADEMIK BERBASIS WEB PADA SD AL FIRDAUS SURAKARTA. Tugas Akhir. Disusun untuk memenuhi salah satu syarat dalam memperoleh gelar

SISTEM INFORMASI AKADEMIK BERBASIS WEB PADA SD AL FIRDAUS SURAKARTA. Tugas Akhir. Disusun untuk memenuhi salah satu syarat dalam memperoleh gelar SISTEM INFORMASI AKADEMIK BERBASIS WEB PADA SD AL FIRDAUS SURAKARTA Tugas Akhir Disusun untuk memenuhi salah satu syarat dalam memperoleh gelar Ahli Madya pada Program Studi Diploma III Teknik Informatika

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Meningkatnya perkembangan teknologi juga diikuti dengan berkembangnya penggunaan berbagai situs jejaring sosial. Salah satu jejaring sosial yang sangat marak digunakan

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Pertumbuhan jumlah situs web (website) di Internet berdasarkan hasil survey dari Netcraft (2013) menunjukkan peningkatan pesat dari 18 juta website pada tahun 2000

Lebih terperinci

PERANCANGAN DAN IMPLEMENTASI SISTEM REKOMENDASI PENCARIAN BUKU PERPUSTAKAAN MENGGUNAKAN METODE VECTOR SPACE MODEL

PERANCANGAN DAN IMPLEMENTASI SISTEM REKOMENDASI PENCARIAN BUKU PERPUSTAKAAN MENGGUNAKAN METODE VECTOR SPACE MODEL PERANCANGAN DAN IMPLEMENTASI SISTEM REKOMENDASI PENCARIAN BUKU PERPUSTAKAAN MENGGUNAKAN METODE VECTOR SPACE MODEL (Studi Kasus Perpustakaan Universitas Udayana) LEMBAR JUDUL KOMPETENSI RPL SKRIPSI NI MADE

Lebih terperinci

BAB I PENDAHULUAN. Informasi yang terdapat dalam Laporan Hasil Pemeriksaan (LHP) BPK RI

BAB I PENDAHULUAN. Informasi yang terdapat dalam Laporan Hasil Pemeriksaan (LHP) BPK RI BAB I PENDAHULUAN I.1 Latar Belakang Informasi yang terdapat dalam Laporan Hasil Pemeriksaan (LHP) BPK RI saat ini belum di-manaje dengan baik secara digital. Informasi yang terdapat dalam LHP yang terdapat

Lebih terperinci

L A P O R A N S K R I P S I SISTEM INFORMASI GEOGRAFIS PEMETAAN AMAL USAHA MUHAMMADIYAH DI KABUPATEN KUDUS BERBASIS WEB

L A P O R A N S K R I P S I SISTEM INFORMASI GEOGRAFIS PEMETAAN AMAL USAHA MUHAMMADIYAH DI KABUPATEN KUDUS BERBASIS WEB L A P O R A N S K R I P S I SISTEM INFORMASI GEOGRAFIS PEMETAAN AMAL USAHA MUHAMMADIYAH DI KABUPATEN KUDUS BERBASIS WEB YULFITA FATMIYATI NIM. 201253086 DOSEN PEMBIMBING Arif Setiawan, S.Kom, M.Cs Putri

Lebih terperinci

BAB I PENDAHULUAN Latar Belakang

BAB I PENDAHULUAN Latar Belakang BAB I PENDAHULUAN 1.1. Latar Belakang Pertukaran informasi di zaman modern ini telah sampai pada era digital. Hal ini ditandai dengan semakin dibutuhkannya teknologi berupa komputer dan jaringan internet

Lebih terperinci

ABSTRAK. Kata kunci: temperamen, kepribadian, Hippocrates, sinonim, antonim, pembelajaran mesin. Universitas Kristen Maranatha

ABSTRAK. Kata kunci: temperamen, kepribadian, Hippocrates, sinonim, antonim, pembelajaran mesin. Universitas Kristen Maranatha ABSTRAK Hubungan antar manusia sering kali mengalami gangguan karena perbedaan kepribadian. Tipe-tipe kepribadian pada dasarnya memiliki kesamaan dan perbedaan yang sudah dikelompokkan oleh teori Hippocrates,

Lebih terperinci

PENENTUAN LOKASI PARKIR KOSONG MENGGUNAKAN ALGORITMA PROBABILISTIC NEURAL NETWORK (PNN) SKRIPSI JOKO KURNIANTO

PENENTUAN LOKASI PARKIR KOSONG MENGGUNAKAN ALGORITMA PROBABILISTIC NEURAL NETWORK (PNN) SKRIPSI JOKO KURNIANTO PENENTUAN LOKASI PARKIR KOSONG MENGGUNAKAN ALGORITMA PROBABILISTIC NEURAL NETWORK (PNN) SKRIPSI JOKO KURNIANTO 121402102 PROGRAM STUDI S1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

SISTEM INFORMASI TATA KELOLA PERPUSTAKAAN DI DINAS ARSIP DAN PERPUSTAKAAN DAERAH KABUPATEN KUDUS MENGGUNAKAN FITUR SMS NOTIFICATION

SISTEM INFORMASI TATA KELOLA PERPUSTAKAAN DI DINAS ARSIP DAN PERPUSTAKAAN DAERAH KABUPATEN KUDUS MENGGUNAKAN FITUR SMS NOTIFICATION LAPORAN SKRIPSI SISTEM INFORMASI TATA KELOLA PERPUSTAKAAN DI DINAS ARSIP DAN PERPUSTAKAAN DAERAH KABUPATEN KUDUS MENGGUNAKAN FITUR SMS NOTIFICATION IBNU HASAN ARIF NIM. 201353070 DOSEN PEMBIMBING R. Rhoedy

Lebih terperinci

PERBANDINGAN HASIL PEMODELAN ARTIFICIAL NEURAL NETWORKS DAN KERNEL SMOOTHING PADA DATA REGRESI NON LINIER

PERBANDINGAN HASIL PEMODELAN ARTIFICIAL NEURAL NETWORKS DAN KERNEL SMOOTHING PADA DATA REGRESI NON LINIER TUGAS AKHIR - ST 1325 PERBANDINGAN HASIL PEMODELAN ARTIFICIAL NEURAL NETWORKS DAN KERNEL SMOOTHING PADA DATA REGRESI NON LINIER ADITYA HIDAYAT JATI NRP 1302100044 Dosen Pembimbing Dra. Kartika Fitriasari,

Lebih terperinci

SISTEM INFORMASI TEMPAT KOS DI AREA SEKITAR UMK DAN STAIN BERBASIS GIS

SISTEM INFORMASI TEMPAT KOS DI AREA SEKITAR UMK DAN STAIN BERBASIS GIS LAPORAN SKRIPSI SISTEM INFORMASI TEMPAT KOS DI AREA SEKITAR UMK DAN STAIN BERBASIS GIS DEWI MAESAROH NIM. 201253010 DOSEN PEMBIMBING Muhammad Arifin, M.Kom Yudie Irawan, M.Kom PROGRAM STUDI SISTEM INFORMASI

Lebih terperinci

KLASIFIKASI TEKS MENGGUNAKAN ALGORITMA NAIVE BAYES UPDATEABLE PADA SOAL UJIAN SBMPTN HALAMAN JUDUL

KLASIFIKASI TEKS MENGGUNAKAN ALGORITMA NAIVE BAYES UPDATEABLE PADA SOAL UJIAN SBMPTN HALAMAN JUDUL KLASIFIKASI TEKS MENGGUNAKAN ALGORITMA NAIVE BAYES UPDATEABLE PADA SOAL UJIAN SBMPTN HALAMAN JUDUL SKRIPSI Diajukan untuk memenuhi salah satu syarat mencapai gelar Strata Satu Program Studi Informatika

Lebih terperinci

SISTEM INFORMASI PEMBERITAHUAN KEGIATAN ACARA DESA BERBASIS SMS GATEWAY DI KECAMATAN MEJOBO KUDUS

SISTEM INFORMASI PEMBERITAHUAN KEGIATAN ACARA DESA BERBASIS SMS GATEWAY DI KECAMATAN MEJOBO KUDUS LAPORAN SKRIPSI SISTEM INFORMASI PEMBERITAHUAN KEGIATAN ACARA DESA BERBASIS SMS GATEWAY DI KECAMATAN MEJOBO KUDUS HILMY MACHFUDI 201051137 DOSEN PEMBIMBING Rina Fiati, ST, M.Cs Ratih Nindyasari, S.Kom

Lebih terperinci

E-LEARNING SMA NEGERI 3 PONOROGO TUGAS AKHIR

E-LEARNING SMA NEGERI 3 PONOROGO TUGAS AKHIR E-LEARNING SMA NEGERI 3 PONOROGO TUGAS AKHIR Diajukan Untuk Memenuhi Salah Satu Syarat Mencapai Gelar Ahli Madya Program Diploma III Teknik Informatika Oleh TAUFIQUR ROHMAN M3110149 PROGRAM DIPLOMA III

Lebih terperinci

IDENTIFIKASI MAHASISWA YANG MEMPUNYAI KECENDERUNGAN LULUS TIDAK TEPAT WAKTU PADA PROGRAM STUDI MMT-ITS DENGAN MENGGUNAKAN ALGORITMA C4.

IDENTIFIKASI MAHASISWA YANG MEMPUNYAI KECENDERUNGAN LULUS TIDAK TEPAT WAKTU PADA PROGRAM STUDI MMT-ITS DENGAN MENGGUNAKAN ALGORITMA C4. IDENTIFIKASI MAHASISWA YANG MEMPUNYAI KECENDERUNGAN LULUS TIDAK TEPAT WAKTU PADA PROGRAM STUDI MMT-ITS DENGAN MENGGUNAKAN ALGORITMA C4.5 Amelia Halim 1) dan Joko Lianto Buliali 2) 1) Program Studi Magister

Lebih terperinci

BAB III METODELOGI PENELITIAN

BAB III METODELOGI PENELITIAN BAB III METODELOGI PENELITIAN 3.1 Metode Penelitian Metode penelitian yang digunakan yaitu metode eksperimental dimana metode ini bekerja dengan memanipulasi dan melakukan kontrol pada objek penelitian

Lebih terperinci

SISTEM INFORMASI PEMETAAN LOKASI LAYANAN KESEHATAN KAUPATEN KUDUS

SISTEM INFORMASI PEMETAAN LOKASI LAYANAN KESEHATAN KAUPATEN KUDUS LAPORAN SKRIPSI SISTEM INFORMASI PEMETAAN LOKASI LAYANAN KESEHATAN KAUPATEN KUDUS HERY SETYAWAN NIM. 201253010 DOSEN PEMBIMBING Arif Setiawan, S.Kom, M.Cs Muhammad Arifin, S.Kom, M.Kom PROGRAM STUDI SISTEM

Lebih terperinci

LAPORAN SKRIPSI. Disusun Oleh : Nama : Zulfa Ainun Nisa NIM : Program Studi : Sistem Informasi Fakultas : Teknik

LAPORAN SKRIPSI. Disusun Oleh : Nama : Zulfa Ainun Nisa NIM : Program Studi : Sistem Informasi Fakultas : Teknik LAPORAN SKRIPSI SISTEM INFORMASI PEMILIHAN DUTA WISATA DALAM UPAYA MENINGKATKAN KUNJUNGAN WISATA KUDUS BERBASIS WEB (STUDI KASUS DINAS KEBUDAYAAN DAN PARIWISATA KABUPATEN KUDUS) Laporan ini disusun guna

Lebih terperinci

ABSTRAK. Kata kunci : Information Retrieval system, Generalized Vector Space Model. Universitas Kristen Maranatha

ABSTRAK. Kata kunci : Information Retrieval system, Generalized Vector Space Model. Universitas Kristen Maranatha ABSTRAK Information retrieval (IR) system adalah sistem yang secara otomatis melakukan pencarian atau penemuan kembali informasi yang relevan terhadap kebutuhan pengguna. Kebutuhan pengguna, diekspresikan

Lebih terperinci

PEMBUATAN DESAIN PETA KONSOLIDASI TANAH BERDASARKAN TATA RUANG WILAYAH (Studi Kasus : Desa Kalipang Kecamatan Sarang Kabupaten Rembang)

PEMBUATAN DESAIN PETA KONSOLIDASI TANAH BERDASARKAN TATA RUANG WILAYAH (Studi Kasus : Desa Kalipang Kecamatan Sarang Kabupaten Rembang) PEMBUATAN DESAIN PETA KONSOLIDASI TANAH BERDASARKAN TATA RUANG WILAYAH (Studi Kasus : Desa Kalipang Kecamatan Sarang Kabupaten Rembang) Nama Mahasiswa : Mas Inayahtul Janna NRP : 3505 100 017 Jurusan :

Lebih terperinci

PERANCANGAN DAN PEMBUATAN APLIKASI KHAZANAH INTELEKTUAL BERBASIS WEB DAN ANDROID. Disusun oleh : JUPRI SANTOSO M

PERANCANGAN DAN PEMBUATAN APLIKASI KHAZANAH INTELEKTUAL BERBASIS WEB DAN ANDROID. Disusun oleh : JUPRI SANTOSO M PERANCANGAN DAN PEMBUATAN APLIKASI KHAZANAH INTELEKTUAL BERBASIS WEB DAN ANDROID TUGAS AKHIR Diajukan Untuk Memenuhi Salah Satu Syarat Mencapai Gelar Ahli Madya Program Studi Diploma III Teknik Informatika

Lebih terperinci

ABSTRACT. Key : student management, statistic informatation, calculation of students' grades. ii Universitas Kristen Maranatha

ABSTRACT. Key : student management, statistic informatation, calculation of students' grades. ii Universitas Kristen Maranatha ABSTRACT Year of 2009/2010 is the first year for the National Programme BPK PENABUR High School Sukabumi to start their teaching and learning activities. To support the student s management resource and

Lebih terperinci

PERINGKASAN TEKS BAHASA INDONESIA SECARA OTOMATIS MENGGUNAKAN METODE SENTENCE SCORING DAN DECISION TREE

PERINGKASAN TEKS BAHASA INDONESIA SECARA OTOMATIS MENGGUNAKAN METODE SENTENCE SCORING DAN DECISION TREE TESIS PERINGKASAN TEKS BAHASA INDONESIA SECARA OTOMATIS MENGGUNAKAN METODE SENTENCE SCORING DAN DECISION TREE PERIANTU MARHENDRI SABUNA No. Mhs.: 155302367/PS/MTF PROGRAM STUDI MAGISTER TEKNIK INFORMATIKA

Lebih terperinci

PERANCANGAN DAN IMPLEMENTASI SISTEM PEMINATAN SISWA SMA DENGAN ALGORITMA C4.5 PADA SMAK HARAPAN DENPASAR

PERANCANGAN DAN IMPLEMENTASI SISTEM PEMINATAN SISWA SMA DENGAN ALGORITMA C4.5 PADA SMAK HARAPAN DENPASAR PERANCANGAN DAN IMPLEMENTASI SISTEM PEMINATAN SISWA SMA DENGAN ALGORITMA C4.5 PADA SMAK HARAPAN DENPASAR KOMPETENSI REKAYASA PERANGKAT LUNAK SKRIPSI OLEH : AYU INDAH SARIDEWI NIM.1108605014 PROGRAM STUDI

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Memasuki era big data, pertumbuhan data berbentuk dokumen teks semakin tinggi. Sehingga diperlukan text processing untuk pengolahan data yang sangat besar. Dokumen

Lebih terperinci

ii

ii KLASIFIKASI PENDAFTAR BEASISWA BIDIKMISI UNIVERSITAS SEBELAS MARET MENGGUNAKAN ALGORITMA C4.5 SKRIPSI Diajukan untuk Memenuhi Salah Satu Syarat Mencapai Gelar Strata Satu Program Studi Informatika Disusun

Lebih terperinci

ABSTRAK. Kata kunci : aplikasi peternakan, barcode reader, CODE-39, informasi kelinci, kamus penyakit, kartu kelinci, web peternakan, web service.

ABSTRAK. Kata kunci : aplikasi peternakan, barcode reader, CODE-39, informasi kelinci, kamus penyakit, kartu kelinci, web peternakan, web service. ABSTRAK Pengolahan data kelinci yang dilakukan oleh peternakan kelinci saat ini masih menggunakan catatan manual berupa buku dan kertas. Hal ini menimbulkan masalah dengan terjadinya kehilangan atau kerusakan

Lebih terperinci

IMPLEMENTASI FUSI INFORMASI HIRARKIS PADA PENGENALAN CITRA WAJAH MULTI-SPECTRAL

IMPLEMENTASI FUSI INFORMASI HIRARKIS PADA PENGENALAN CITRA WAJAH MULTI-SPECTRAL TUGAS AKHIR - CI1599 IMPLEMENTASI FUSI INFORMASI HIRARKIS PADA PENGENALAN CITRA WAJAH MULTI-SPECTRAL FEBE FENYTA S. NRP 5105 100 042 Dosen Pembimbing Rully Soelaiman, S.Kom, M.Kom JURUSAN TEKNIK INFORMATIKA

Lebih terperinci

ABSTRAK. Kata Kunci: information retrieval, rekomendasi, wanita, web portal UNIVERSITAS KRISTEN MARANATHA

ABSTRAK. Kata Kunci: information retrieval, rekomendasi, wanita, web portal UNIVERSITAS KRISTEN MARANATHA ABSTRAK Perancangan aplikasi berbasis web portal tentang wanita ini bertujuan untuk membantu wanita mendapatkan informasi yang dibutuhkan zaman sekarang ini. Perancangan website ini menggunakan konsep

Lebih terperinci

Truecasing untuk Teks Bahasa Indonesia

Truecasing untuk Teks Bahasa Indonesia Truecasing untuk Teks Bahasa Indonesia Said Al Faraby dan Ade Romadhony Fakultas Informatika Universitas Telkom Indonesia {saidalfaraby,aderomadhony}@telkomuniversity.ac.id Abstrak Penggunaan huruf besar

Lebih terperinci

SKRIPSI ANALISIS PERBANDINGAN DETEKSI TEPI PREWITT DAN ROBERTS PADA UANG KERTAS DAN MENGGUNAKAN KLASIFIKASI SUPPORT VECTOR MACHINE (SVM)

SKRIPSI ANALISIS PERBANDINGAN DETEKSI TEPI PREWITT DAN ROBERTS PADA UANG KERTAS DAN MENGGUNAKAN KLASIFIKASI SUPPORT VECTOR MACHINE (SVM) SKRIPSI ANALISIS PERBANDINGAN DETEKSI TEPI PREWITT DAN ROBERTS PADA UANG KERTAS DAN MENGGUNAKAN KLASIFIKASI SUPPORT VECTOR MACHINE (SVM) Oleh : Ika Puji Rahayu 2010-51-038 SKRIPSI DIAJUKAN SEBAGAI SALAH

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang dan Permasalahan

BAB I PENDAHULUAN 1.1 Latar Belakang dan Permasalahan BAB I PENDAHULUAN 1.1 Latar Belakang dan Permasalahan Demam Berdarah Dengue (DBD) merupakan penyakit dengan cara sebaran melalui gigitan nyamuk aedes yang terinfeksi virus dengue. Sampai saat ini DBD banyak

Lebih terperinci

RANCANG BANGUN SISTEM INFORMASI KEPEGAWAIAN DI FAKULTAS TEKNOLOGI INFORMASI

RANCANG BANGUN SISTEM INFORMASI KEPEGAWAIAN DI FAKULTAS TEKNOLOGI INFORMASI TUGAS AKHIR CF 1380 RANCANG BANGUN SISTEM INFORMASI KEPEGAWAIAN DI FAKULTAS TEKNOLOGI INFORMASI IKA PUTRI SEPTYANA NRP 5205 100 021 Dosen Pembimbing Ir. Khakim Ghozali JURUSAN SISTEM INFORMASI Fakultas

Lebih terperinci

PENCARIAN DOKUMEN MENGGUNAKAN METODE SINGLE PASS CLUSTERING (STUDI KASUS : ABSTRAKSI TA TEKNIK INFORMATIKA UNIV. MUHAMMADIYAH MALANG) TUGAS AKHIR

PENCARIAN DOKUMEN MENGGUNAKAN METODE SINGLE PASS CLUSTERING (STUDI KASUS : ABSTRAKSI TA TEKNIK INFORMATIKA UNIV. MUHAMMADIYAH MALANG) TUGAS AKHIR PENCARIAN DOKUMEN MENGGUNAKAN METODE SINGLE PASS CLUSTERING (STUDI KASUS : ABSTRAKSI TA TEKNIK INFORMATIKA UNIV. MUHAMMADIYAH MALANG) TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1

Lebih terperinci

APLIKASI SISTEM INFORMASI NILAI SISWA BERBASIS WEB PADA SDIT AL-FITRA KELURAHAN HARAPAN JAYA KOTA BEKASI

APLIKASI SISTEM INFORMASI NILAI SISWA BERBASIS WEB PADA SDIT AL-FITRA KELURAHAN HARAPAN JAYA KOTA BEKASI APLIKASI SISTEM INFORMASI NILAI SISWA BERBASIS WEB PADA SDIT AL-FITRA KELURAHAN HARAPAN JAYA KOTA BEKASI Asep Kurnia Hidayat 41513110185 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS

Lebih terperinci

HALAMAN PERSEMBAHAN...

HALAMAN PERSEMBAHAN... ix DAFTAR ISI HALAMAN JUDUL... i HALAMAN PENGESAHAN... iii PERNYATAAN... iv HALAMAN PERSEMBAHAN... v KATA PENGANTAR... vi DAFTAR ISI... ix DAFTAR GAMBAR... xii DAFTAR TABEL... xx INTISARI... xxi ABSTRACT...

Lebih terperinci

APLIKASI BRICK BREAKER MOTION DETECTION. Laporan Tugas Akhir. Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer

APLIKASI BRICK BREAKER MOTION DETECTION. Laporan Tugas Akhir. Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer APLIKASI BRICK BREAKER MOTION DETECTION Laporan Tugas Akhir Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Oleh : MUHAMMAD IMAM MUKHSIN 41508110013 PROGRAM STUDI TEKNIK INFORMATIKA

Lebih terperinci

SISTEM NOTIFIKASI KEMACETAN LALU LINTAS BERBASIS MEDIA SOSIAL DENGAN METODE NLP

SISTEM NOTIFIKASI KEMACETAN LALU LINTAS BERBASIS MEDIA SOSIAL DENGAN METODE NLP SISTEM NOTIFIKASI KEMACETAN LALU LINTAS BERBASIS MEDIA SOSIAL DENGAN METODE NLP TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang Oleh

Lebih terperinci

BAB I. Pendahuluan. 1. Latar Belakang Masalah

BAB I. Pendahuluan. 1. Latar Belakang Masalah BAB I Pendahuluan 1. Latar Belakang Masalah Semakin canggihnya teknologi di bidang komputasi dan telekomunikasi pada masa kini, membuat informasi dapat dengan mudah didapatkan oleh banyak orang. Kemudahan

Lebih terperinci

PENGEMBANGAN APLIKASI ESTIMASI UKURAN PERANGKAT LUNAK DENGAN PENDEKATAN FUNCTION POINT ANALYSIS

PENGEMBANGAN APLIKASI ESTIMASI UKURAN PERANGKAT LUNAK DENGAN PENDEKATAN FUNCTION POINT ANALYSIS PENGEMBANGAN APLIKASI ESTIMASI UKURAN PERANGKAT LUNAK DENGAN PENDEKATAN FUNCTION POINT ANALYSIS (FPA) MENGGUNAKAN METODE RAPID APPLICATION DEVELOPMENT (RAD) Diajukan untuk Memenuhi Salah satu Syarat Mencapai

Lebih terperinci

Oleh: ARIF DARMAWAN NIM

Oleh: ARIF DARMAWAN NIM APLIKASI PENGKLASIFIKASIAN DOKUMEN INFO PADA TWITTER MENGGUNAKAN ALGORITMA NAIVE BAYES TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang

Lebih terperinci

ANALISIS DAN PERANCANGAN APLIKASI HELP DESK BERBASIS INTRANET DENGAN PENERAPAN METODE NATURAL LANGUAGE PROCESSING PADA PT GLOBAL INFORMASI BERMUTU

ANALISIS DAN PERANCANGAN APLIKASI HELP DESK BERBASIS INTRANET DENGAN PENERAPAN METODE NATURAL LANGUAGE PROCESSING PADA PT GLOBAL INFORMASI BERMUTU ANALISIS DAN PERANCANGAN APLIKASI HELP DESK BERBASIS INTRANET DENGAN PENERAPAN METODE NATURAL LANGUAGE PROCESSING PADA PT GLOBAL INFORMASI BERMUTU SKRIPSI Oleh Lia 0900787940 Hirenny Ika Surianty 0900792360

Lebih terperinci

PENERAPAN DATA MINING MENGGUNAKAN ALGORITME C4.5 DALAM PENENTUAN JURUSAN SISWA SMA NEGERI 2 SURAKARTA

PENERAPAN DATA MINING MENGGUNAKAN ALGORITME C4.5 DALAM PENENTUAN JURUSAN SISWA SMA NEGERI 2 SURAKARTA PENERAPAN DATA MINING MENGGUNAKAN ALGORITME C4.5 DALAM PENENTUAN JURUSAN SISWA SMA NEGERI 2 SURAKARTA oleh NADYA AL FITRIANI M0111060 SKRIPSI ditulis dan diajukan untuk memenuhi sebagian persyaratan memperoleh

Lebih terperinci

ABSTRAK. Kata Kunci: Ekstrakurikuler, Seleksi Fitur, Information Gain, Algoritma Naïve Bayes, Sistem rekomendasi. Universitas Kristen Maranatha

ABSTRAK. Kata Kunci: Ekstrakurikuler, Seleksi Fitur, Information Gain, Algoritma Naïve Bayes, Sistem rekomendasi. Universitas Kristen Maranatha ABSTRAK PG/TK ST. Agustinus Bandung adalah sebuah organisasi pendidikan. Mereka mengoperasikan aktivitas rutinnya tanpa menggunakan sistem informasi, secara khusus untuk pembayaran biaya sekolah. Sistem

Lebih terperinci

ABSTRAK. Kata Kunci: Beasiswa, sistem informasi, sistem pendukung keputusan. Universitas Kristen Maranatha

ABSTRAK. Kata Kunci: Beasiswa, sistem informasi, sistem pendukung keputusan. Universitas Kristen Maranatha ABSTRAK Yayasan Baiturrahim adalah yayasan yang bergerak di bidang pendidikan yang terletak di Jalan Cianten kecamatan Limbangan. Saat ini Yayasan Baiturrahim masih menggunakan sistem manual untuk penerimaan

Lebih terperinci

UKDW BAB 1 PENDAHULUAN Latar Belakang

UKDW BAB 1 PENDAHULUAN Latar Belakang BAB 1 PENDAHULUAN 1.1. Latar Belakang Dengan perkembangan teknologi yang semakin pesat, setiap orang dituntut untuk bisa memanfaatkan dengan baik perkembangan teknologi dan dapat menggunakan di dalam kehidupan

Lebih terperinci

RANCANG BANGUN SISTEM OPINION MINING DENGAN METODE POS TAGGING

RANCANG BANGUN SISTEM OPINION MINING DENGAN METODE POS TAGGING TESIS RANCANG BANGUN SISTEM OPINION MINING DENGAN METODE POS TAGGING DAN SUPPORT VECTOR MACHINE UNTUK EKSTRAKSI DATA OPINI PUBLIK PADA LAYANAN JAMINAN KESEHATAN BALI MANDARA LUH RIA ATMARANI 1491761020

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN Metodologi penelitian merupakan rangkaian dari langkah-langkah yang diterapkan dalam penelitian, secara umum dan khusus langkah-langkah tersebut tertera pada Gambar flowchart

Lebih terperinci

Pengklasifikasian Pengaduan Masyarakat pada Laman Kantor Pertanahan Kota Surabaya I dengan Metode Pohon Keputusan

Pengklasifikasian Pengaduan Masyarakat pada Laman Kantor Pertanahan Kota Surabaya I dengan Metode Pohon Keputusan Pengklasifikasian Pengaduan Masyarakat pada Laman Kantor Pertanahan Kota Surabaya I dengan Metode Pohon Keputusan Penyusun Tugas Akhir : Yulia Sulistyaningsih 5208 100 113 Dosen Pembimbing : Prof. Ir.

Lebih terperinci

ABSTRAK. Kata kunci : sistem pakar, penyakit gigi, konsultasi, algoritma ID3. vi Universitas Kristen Maranatha

ABSTRAK. Kata kunci : sistem pakar, penyakit gigi, konsultasi, algoritma ID3. vi Universitas Kristen Maranatha ABSTRAK Aplikasi sistem pakar diagnosa penyakit gigi dengan pembelajaran mesin ini dibuat untuk membantu pasien dan juga pakar untuk melakukan diagnosa awal penyakit yang dialami pasien berdasarkan gejala-gejala

Lebih terperinci

PEMBUATAN SISTEM INFORMASI BERBASIS WEB LOKAL BANK TABUNGAN NEGARA SURAKARTA TUGAS AKHIR

PEMBUATAN SISTEM INFORMASI BERBASIS WEB LOKAL BANK TABUNGAN NEGARA SURAKARTA TUGAS AKHIR PEMBUATAN SISTEM INFORMASI BERBASIS WEB LOKAL BANK TABUNGAN NEGARA SURAKARTA TUGAS AKHIR Diajukan Untuk Memenuhi Salah Satu Syarat Mencapai Gelar Ahli Madya Program Diploma III Ilmu Komputer Diajukan oleh

Lebih terperinci

PEMANFAATAN TEKNIK STEMMING UNTUK APLIKASI TEXT PROCESSING BAHASA INDONESIA SKRIPSI. Oleh : SEPTIAN BAGUS WAHYONO NPM :

PEMANFAATAN TEKNIK STEMMING UNTUK APLIKASI TEXT PROCESSING BAHASA INDONESIA SKRIPSI. Oleh : SEPTIAN BAGUS WAHYONO NPM : PEMANFAATAN TEKNIK STEMMING UNTUK APLIKASI TEXT PROCESSING BAHASA INDONESIA SKRIPSI Oleh : SEPTIAN BAGUS WAHYONO NPM : 0734010126 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA Penelitian terdahulu sangat penting bagi penulis untuk mengetahui referensi dan hubungan antara penelitian terdahulu dengan penelitian yang dilakukan saat ini, sehingga hal duplikasi

Lebih terperinci

EKSTRAKSI LOKASI DAN PRODUK DARI DATA TRANSAKSI ONLINE PADA TWITTER

EKSTRAKSI LOKASI DAN PRODUK DARI DATA TRANSAKSI ONLINE PADA TWITTER EKSTRAKSI LOKASI DAN PRODUK DARI DATA TRANSAKSI ONLINE PADA TWITTER TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang LINDA NUR WULANSARI

Lebih terperinci

EKSTRAKSI OPINION HOLDER MENGGUNAKAN METODE MAXIMUM ENTROPY PADA KALIMAT OPINI BERBAHASA INDONESIA

EKSTRAKSI OPINION HOLDER MENGGUNAKAN METODE MAXIMUM ENTROPY PADA KALIMAT OPINI BERBAHASA INDONESIA EKSTRAKSI OPINION HOLDER MENGGUNAKAN METODE MAXIMUM ENTROPY PADA KALIMAT OPINI BERBAHASA INDONESIA TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah

Lebih terperinci

SISTEM INFORMASI GEOGRAFIS ASET TETAP TIDAK BERGERAK DI BADAN PENGELOLAAN KEUANGAN DAN ASET DAERAH (BPKAD) PEMERINTAH KABUPATEN MADIUN SKRIPSI

SISTEM INFORMASI GEOGRAFIS ASET TETAP TIDAK BERGERAK DI BADAN PENGELOLAAN KEUANGAN DAN ASET DAERAH (BPKAD) PEMERINTAH KABUPATEN MADIUN SKRIPSI SISTEM INFORMASI GEOGRAFIS ASET TETAP TIDAK BERGERAK DI BADAN PENGELOLAAN KEUANGAN DAN ASET DAERAH (BPKAD) PEMERINTAH KABUPATEN MADIUN SKRIPSI Diajukan Sebagai Salah satu Syarat Untuk Memperoleh Gelar

Lebih terperinci

ABSTRAK. vii. Kata kunci: absensi, gaji, pajak penghasilan pasal 21, penilaian kinerja, sistem pendukung keputusan. Universitas Kristen Maranatha

ABSTRAK. vii. Kata kunci: absensi, gaji, pajak penghasilan pasal 21, penilaian kinerja, sistem pendukung keputusan. Universitas Kristen Maranatha ABSTRAK Tugas akhir dengan topik Sistem Informasi Penilaian Kinerja Karyawan dengan Metode DSS SAW Perusahaan Angkutan King Kota Bandung adalah untuk menyelesaikan permasalahan seperti absensi karyawan

Lebih terperinci

ABSTRAK. Kata Kunci : Algoritma Genetika, Pemrosesan Bahasa Alami, Twiter, Tweet, Semantic Relatedness. Universitas Kristen Maranatha

ABSTRAK. Kata Kunci : Algoritma Genetika, Pemrosesan Bahasa Alami, Twiter, Tweet, Semantic Relatedness. Universitas Kristen Maranatha ABSTRAK Dengan munculnya berbagai media sosial, banyak orang yang menuliskan bermacam-macam hal, salah satunya memberikan menuliskan motivasi. Dengan demikian, dibuatlah penelitian untuk membuat sebuah

Lebih terperinci

LAPORAN SKRIPSI SISTEM INFORMASI PELELANGAN HASIL LAUT PADA TEMPAT PELELANGAN IKAN (TPI) KABUPATEN JEPARA ACHMAD CHAMDAN CHALIMI NIM.

LAPORAN SKRIPSI SISTEM INFORMASI PELELANGAN HASIL LAUT PADA TEMPAT PELELANGAN IKAN (TPI) KABUPATEN JEPARA ACHMAD CHAMDAN CHALIMI NIM. LAPORAN SKRIPSI SISTEM INFORMASI PELELANGAN HASIL LAUT PADA TEMPAT PELELANGAN IKAN (TPI) KABUPATEN JEPARA ACHMAD CHAMDAN CHALIMI NIM. 201353037 DOSEN PEMBIMBING Fajar Nugraha, S.Kom., M.Kom Muhammad Arifin,

Lebih terperinci

INTISARI. Kata kunci: file, Internet, website.

INTISARI. Kata kunci: file, Internet, website. INTISARI Kemudahan dan kepraktisan dalam penggunaannya, menyebabkan data berbentuk file digital menjadi pilihan utama dalam penggunaan data pada kehidupan sehari-hari. Kelebihan penggunaan data dalam bentuk

Lebih terperinci

ABSTRACT Technological developments can cause a person to quickly and easily find the information they want. Such information can be obtained from various sources of media, whether in print or electronic

Lebih terperinci

KLASIFIKASI NASABAH ASURANSI JIWA MENGGUNAKAN ALGORITMA NAIVE BAYES BERBASIS BACKWARD ELIMINATION

KLASIFIKASI NASABAH ASURANSI JIWA MENGGUNAKAN ALGORITMA NAIVE BAYES BERBASIS BACKWARD ELIMINATION KLASIFIKASI NASABAH ASURANSI JIWA MENGGUNAKAN ALGORITMA NAIVE BAYES BERBASIS BACKWARD ELIMINATION Betrisandi betris.sin@gmail.com Universitas Ichsan Gorontalo Abstrak Pendapatan untuk perusahaan asuransi

Lebih terperinci

KLASTERISASI PADA SUBRUANG DENGAN ALGORITMA PEMBOBOTAN ENTROPI PADA K-MEANS PADA SPARSE DATA BERDIMENSI TINGGI

KLASTERISASI PADA SUBRUANG DENGAN ALGORITMA PEMBOBOTAN ENTROPI PADA K-MEANS PADA SPARSE DATA BERDIMENSI TINGGI TUGAS AKHIR CI1599 KLASTERISASI PADA SUBRUANG DENGAN ALGORITMA PEMBOBOTAN ENTROPI PADA K-MEANS PADA SPARSE DATA BERDIMENSI TINGGI AHMAD DENI DWI PRANOTO NRP 5103 100 015 Dosen Pembimbing I Rully Soelaiman,

Lebih terperinci

PRA-PEMPROSESAN DATA LUARAN GCM CSIRO-Mk3 DENGAN METODE TRANSFORMASI WAVELET DISKRIT

PRA-PEMPROSESAN DATA LUARAN GCM CSIRO-Mk3 DENGAN METODE TRANSFORMASI WAVELET DISKRIT TUGAS AKHIR - ST 1325 PRA-PEMPROSESAN DATA LUARAN GCM CSIRO-Mk3 DENGAN METODE TRANSFORMASI WAVELET DISKRIT ANGGREINI SUPRAPTI NRP 1305 100 005 Dosen Pembimbing Dr. Sutikno, S.Si, M.Si JURUSAN STATISTIKA

Lebih terperinci

DETEKSI JENIS EMOSI DARI TEKS BAHASA INDONESIA MENGGUNAKAN KEYWORD-SPOTTING DAN NAIVE BAYES

DETEKSI JENIS EMOSI DARI TEKS BAHASA INDONESIA MENGGUNAKAN KEYWORD-SPOTTING DAN NAIVE BAYES TESIS DETEKSI JENIS EMOSI DARI TEKS BAHASA INDONESIA MENGGUNAKAN KEYWORD-SPOTTING DAN NAIVE BAYES JULIUS VICTOR MANUEL BATA No. Mhs.: 145302168/PS/MTF PROGRAM STUDI MAGISTER TEKNIK INFORMATIKA PROGRAM

Lebih terperinci

Aplikasi Pembelajaran IPA Berbasis Multimedia Interaktif Menggunakan HTML5 (Studi Kasus: SD Negeri 06 Salatiga)

Aplikasi Pembelajaran IPA Berbasis Multimedia Interaktif Menggunakan HTML5 (Studi Kasus: SD Negeri 06 Salatiga) Aplikasi Pembelajaran IPA Berbasis Multimedia Interaktif Menggunakan HTML5 (Studi Kasus: SD Negeri 06 Salatiga) TUGAS AKHIR Diajukan kepada Fakultas Teknologi Informasi Untuk memperoleh Gelar Sarjana Komputer

Lebih terperinci

DESAIN ROUTING INFORMATION PROTOCOL PADA JARINGAN KOMPUTER DENGAN PENGALOKASIAN JUMLAH HOST PER JARINGAN BERDASARKAN VLSM SKRIPSI

DESAIN ROUTING INFORMATION PROTOCOL PADA JARINGAN KOMPUTER DENGAN PENGALOKASIAN JUMLAH HOST PER JARINGAN BERDASARKAN VLSM SKRIPSI 1 DESAIN ROUTING INFORMATION PROTOCOL PADA JARINGAN KOMPUTER DENGAN PENGALOKASIAN JUMLAH HOST PER JARINGAN BERDASARKAN VLSM SKRIPSI MHD ABDI WAHYUDA LUBIS 111402003 PROGRAM STUDI S1 TEKNOLOGI INFORMASI

Lebih terperinci

BAB IV METODOLOGI PENELITIAN. Penelitian ini dilakukan dengan melalui empat tahap utama, dimana

BAB IV METODOLOGI PENELITIAN. Penelitian ini dilakukan dengan melalui empat tahap utama, dimana BAB IV METODOLOGI PENELITIAN Penelitian ini dilakukan dengan melalui empat tahap utama, dimana tahap pertama adalah proses pengumpulan dokumen teks yang akan digunakan data training dan data testing. Kemudian

Lebih terperinci

L A P O R A N S K R I P S I SISTEM INFORMASI ANGKA PENILAIAN PELANGGARAN SISWA (APPS) DI SMK PUTRA MAHKOTA KAYEN PATI BERBASIS WEB DAN SMS GATEWAY

L A P O R A N S K R I P S I SISTEM INFORMASI ANGKA PENILAIAN PELANGGARAN SISWA (APPS) DI SMK PUTRA MAHKOTA KAYEN PATI BERBASIS WEB DAN SMS GATEWAY L A P O R A N S K R I P S I SISTEM INFORMASI ANGKA PENILAIAN PELANGGARAN SISWA (APPS) DI SMK PUTRA MAHKOTA KAYEN PATI BERBASIS WEB DAN SMS GATEWAY RIKA ANGGRAENI NIM. 201253151 DOSEN PEMBIMBING R. Rhoedy

Lebih terperinci

1. PENDAHULUAN 1.1 Latar belakang Masalah

1. PENDAHULUAN 1.1 Latar belakang Masalah 1. PENDAHULUAN 1.1 Latar belakang Masalah Bahasa Indonesia adalah alat yang mampu menjembatani penduduk Indonesia yang terdiri dari berbagai suku dan bahasa untuk dapat berkomunikasi satu sama lainnya.

Lebih terperinci

TESIS PEMBANGUNAN PERANGKAT LUNAK PERINGKAS DOKUMEN DARI BANYAK SUMBER BERBASIS WEB MENGGUNAKAN SENTENCE SCORING DENGAN METODE TF-IDF

TESIS PEMBANGUNAN PERANGKAT LUNAK PERINGKAS DOKUMEN DARI BANYAK SUMBER BERBASIS WEB MENGGUNAKAN SENTENCE SCORING DENGAN METODE TF-IDF TESIS PEMBANGUNAN PERANGKAT LUNAK PERINGKAS DOKUMEN DARI BANYAK SUMBER BERBASIS WEB MENGGUNAKAN SENTENCE SCORING DENGAN METODE TF-IDF FABIANUS HENDY EVAN No. Mhs.: 125301915/PS/MTF PROGRAM STUDI MAGISTER

Lebih terperinci

PERANCANGAN DAN PEMBUATAN SISTEM INFORMASI GEOGRAFIS OBJEK WISATA DI KABUPATEN LANGKAT BERBASIS ANDROID

PERANCANGAN DAN PEMBUATAN SISTEM INFORMASI GEOGRAFIS OBJEK WISATA DI KABUPATEN LANGKAT BERBASIS ANDROID PERANCANGAN DAN PEMBUATAN SISTEM INFORMASI GEOGRAFIS OBJEK WISATA DI KABUPATEN LANGKAT BERBASIS ANDROID LAPORAN TUGAS AKHIR Disusun Sebagai Salah Satu Syarat Untuk Menyelesaikan Program Pendidikan Diploma

Lebih terperinci

RANCANG BANGUN APLIKASI SISTEM PELAYANAN PADA EPSON SERVICE CENTER DENGAN ESTIMASI WAKTU PENGERJAAN MENGGUNAKAN ALGORITMA FIFO BERBASIS ANDROID

RANCANG BANGUN APLIKASI SISTEM PELAYANAN PADA EPSON SERVICE CENTER DENGAN ESTIMASI WAKTU PENGERJAAN MENGGUNAKAN ALGORITMA FIFO BERBASIS ANDROID RANCANG BANGUN APLIKASI SISTEM PELAYANAN PADA EPSON SERVICE CENTER DENGAN ESTIMASI WAKTU PENGERJAAN MENGGUNAKAN ALGORITMA FIFO BERBASIS ANDROID ARYA TABA RAJA RIZAL 41512010009 PROGRAM STUDI INFORMATIKA

Lebih terperinci

Universitas Bina Nusantara

Universitas Bina Nusantara Universitas Bina Nusantara Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007 ANALISIS DAN PERANCANGAN APLIKASI PENGAWASAN PROYEK PIRANTI LUNAK BERBASIS WEB (STUDI KASUS

Lebih terperinci

APLIKASI MIDDLEWARE UNTUK AKSES PRINTER DI JURUSAN TEKNIK INFORMATIKA ITS

APLIKASI MIDDLEWARE UNTUK AKSES PRINTER DI JURUSAN TEKNIK INFORMATIKA ITS TUGAS AKHIR CI1599 APLIKASI MIDDLEWARE UNTUK AKSES PRINTER DI JURUSAN TEKNIK INFORMATIKA ITS Azhar Bayu Firdaus NRP 5105 100 082 Dosen Pembimbing Royyana Muslim I, S.Kom., M.Kom. JURUSAN TEKNIK INFORMATIKA

Lebih terperinci

SISTEM INFORMASI PENGELOLAAN PASAR PADA DINAS PERDAGANGAN KABUPATEN KUDUS BERBASIS GIS

SISTEM INFORMASI PENGELOLAAN PASAR PADA DINAS PERDAGANGAN KABUPATEN KUDUS BERBASIS GIS L A P O R A N S K R I P S I SISTEM INFORMASI PENGELOLAAN PASAR PADA DINAS PERDAGANGAN KABUPATEN KUDUS BERBASIS GIS KHIKMAH MAULIDIYAH NIM. 201353127 DOSEN PEMBIMBING Putri Kurnia Handayani, M.Kom Diana

Lebih terperinci