POS TAGGER TWITTER BAHASA INDONESIA MENGGUNAKAN STANFORD NLP
TUGAS AKHIR Diajukan Untuk Memenuhi Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun oleh : SUSI SETYOWATI 201110370311138
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2015
KATA PENGANTAR Puji Syukur kepada Tuhan Yang Maha Esa yang melimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan Tugas Akhir dengan judul “POS Tagger Twitter Bahasa Indonesia Menggunakan Stanford NLP” Pada penelitian ini menggunakan sebuah sistem dari Stanford NLP yang dimana nantinya akan membantu memberi tag atau bagian-bagian kata pada tweettweet yang menggunakan bahasa Indonesia. Penulis menyadari bahwa penelitian ini masih jauh dari sempurna. Oleh karena itu penulis mengharapkan saran dan kritik guna untuk menyempurnakan sistem ini kedepannya. Perangkat lunak ini juga masih membutuhkan pengembangan lebih lanjut sehingga dapat lebih bermanfaat. Akhir kata penulis mengucapkan terima kasih kepada semua pihak yang telah membantu hingga tugas akhir ini selesai.
Malang, 02 0ktober 2015 Penulis
Susi Setyowati
DAFTAR ISI Lembar Persetujuan ……………………………………………………... i Lembar Pengesahan …………………………………………………….. ii Lembar Pernyataan ……………………………………………………… iii Lembar Persembahan …………………………………………………… iv Kata Pengantar …………………………………………………………... vi Abstrak …………………………………………………………………… vii Daftar Isi …………..……………………………………………………... ix Daftar Gambar …………………………………………………………... xii Daftar Tabel ……………………………………………………………… xiii Bab 1 Pendahuluan ……………………………………………………... 1 1.1 Latar Belakang Masalah ………………………………………. 1 1.2 Rumusan Masalah……………………………………………… 2 1.3 Tujuan ………………………………………………………..... 3 1.4 Batasan Masalah ………………………………………………. 3 1.5 Metodelogi …………………………………………………….. 3 1.6 Sistematis Penulisan …………………………………………... 4 Bab 2 Landasan Teori …………………………………………………... 6 2.1 Twitter ………………………………………………………… 6 2.2 Bahasa Indonesia Formal ……………………………………... 7 2.3 Aturan Tata Bahasa …………………………………………… 8 2.3.1 Kalimat ……………………………………………… 8 2.3.2 Kelas Kata …………………………………………… 8 2.3.3 KBBI ………………………………………………… 10 2.3.4 TAG …………………………………………………. 10 2.4 Natural Languange Processing ……………...………………... 12
2.4.1 Part-Of-Speech Tagger ……………………………… 15 2.4.2 Stanford NLP ………………………………………... 15 2.4.3 Tokenisasi …………………………………………… 17 2.4.3.1 Twokenize …………………………………. 17 Bab 3 Analisis dan Perancangan Sistem ................................................... 19 3.1 Analisis Sistem ………………………………………………... 19 3.1.1 Analisis Kebutuhan Fungsional ……………………... 20 3.1.2 Analisis Kebutuhan Non Fungsional ………………... 20 3.1.3 Analisis Tweet Berbahasa Indonesia Formal ………... 21 3.2 Perancangan Sistem …………………………………………… 24 Bab 4 Implementas dan Pengujian ………………………………………30 4.1 Implementasi …………………………………………………... 30 4.1.1 Kebutuhan Fungsional ………………………………. 30 4.1.2 File Yang Digunakan ………………………………... 31 4.1.2.1 Model ……………………………………… 32 4.1.2.2 Train ……………………………………….. 33 4.1.2.3 Props ………………………………………. 34 4.1.3 Implementasi Membuat Model POS Tagger Stanford NLP ………………………………………………………... 34 4.1.3.1 Kode pada Command Prompt ……………... 34 4.1.3.2 Tampilan File Model Setelah di Implementasi Pada Command Prompt …………………………… 35 4.1.4 Melakukan Tag ……………………………………… 36 4.1.4.1 File Test ………………………………….... 36 4.1.4.2 Kode pada Command Prompt ……………... 37 4.1.4.3 Hasil Test ………………………………….. 37 4.2 Pengujian ……………………………………………………… 38
4.2.1 Per Kalimat ………………………………………….. 39 4.2.2 Per Kata ……………………………………………… 39 4.1.3 Per Tag ………………………………………………. 39 4.3 Hasil pengujian ……………………………………………….. 40 4.3.1 Per Kalimat ………………………………………….. 40 4.3.2 Per Kata ……………………………………………... 41 4.3.3 Per Tag ………………………………………………. 41 4.3.4 Analisa Hasil Kesimpulan ……………………………49 Bab 5 Penutup ……..……………………………………………………... 50 5.1 Kesimpulan ……………………………………………………. 50 5.2 Saran …………………………………………………………... 50 Daftar Pustaka …………………………………………………………… 51
DAFTAR GAMBAR 2.1 Logo Twitter …………………………………………………………... 7 2.2 Proses Tokenisasi ……………………………………………………… 17 2.3 Tahap Twokenize Tweet NLP ………………………………………… 18 3.1 Flowchart Pembuatan Model ………………………………………….. 20 3.2 Flowchart Tes File …………………………………………………….. 21 3.3 Arsitektur Sistem ……………………………………………………… 24 3.4 Cotoh Tweet …………………………………………………………… 25 3.5 KBBI Online …………………………………………………………... 27 3.6 KBBI Offline ………………………………………………………….. 28 3.7 Contoh Data Yang Telah Di tag ……………….……………………... 28 4.1 File-file Yang Digunakan ……………………………………………... 31 4.2 File Model ……………………………………………………………... 32 4.3 File Train ………...……………………………………………………. 33 4.4 File Props ……………………………………………………………… 34 4.5 Kode Diterapkan Pada CMD ………………………………………….. 35 4.6 Perubahan File Model …………………………………………………. 35 4.7 File Test ……………………………………………………………….. 36 4.8 Kode Pada CMD ………………………………………………………. 37 4.9 Hasil Data Yang Telah Di Tag Menggunakan POS Tagger Stanford NLP ……………………………………………………………………. 37 4.10 Proses Percobaan 1…………………………………………………… 38 4.11 Proses Percobaan 2 …………………………………………………... 38 4.12 Grafik Nilai Precision ………………………………………………... 45 4.13 Grafik Nilai Recall …………………………………………………… 46 4.14 Grafik Nilai F-Measure ……………………………………………… 47 4.15 Grafik Nilai Akurasi …………………………………………………. 48
DAFTAR TABEL Tabel 1.1 Tagset [7] ……………………………………………………….. 10 Tabel 1.2 Tagset [8] ……………………………………………….. ………12 Tabel 3.1 Tagset …………………………………………………………… 25 Tabel 4.1 Spesifikasi Perangkat Keras Untuk Implementasi ……………… 30 Tabel 4.2 Spesifikasi Perangkat Lunak Untuk Implementasi …………...… 31 Tabel 4.3 Confusion Matrix ……………………………………………….. 40 Tabel 4.4 Hasil Nilai Per Kalimat …………………………………………. 40 Tabel 4.5 Hasil Nilai Per Kata …………………………………………….. 41 Tabel 4.6 Hasil Nilai Per Tag ……………………………………………... 41 Tabel 4.7 Nilai Rata-rata …………………………………………............... 43
DAFTAR PUSTAKA
[1] Herny Februariyanti, “Membangun Aplikasi Natural Language Processing Menggunakan Instant Messenger untuk Informasi Bencana”. [2] Jayanti, Santi Dwi. (2011) “Twitter Sebagai Bentuk Citizen Journalism Baru di Internet. [3] Twitter, https://about.twitter.com/company/brand-assets , diakses pada tanggal 4 Agustus 2015. [4] Windu Anggara, Dian Memory, Doddy Rivay, Maro Bimo, Nikson Aldino. (200). “Penggunaan Bahasa Yang Baik danBenar”. [5] Alwi H, Dardjowidjojo S, Lapoliwa H, Moeliono A M. (2003) “Tata Bahasa Baku Bahasa Indonesia. Balai Pustaka. Jakarta, Indonesia. [6] Kridalaksana H. (2007) “Kelas Kata Dalam Bahasa Indonesia. Ed 2. Gramedia. Jakarta. [7] Alfan Farizki Wicaksono, Ayu Purwarianti. (). “HMM Based Part-ofSpeech Tagger for Bahasa Indonesia”. [8] Kevin Gimoel, Nathan Schneider, Brendan O’Connor, Dipanjan Das, Daniel Mills, Jacob Eisenstein, Michael Heilman, Dani Yogatama, Jeffrey Flanigan, and Noah A. Smith. (2011). “Part-of-Speech Tagging for Twitter: Annotation, Features, and Experiments. [9] Vini Christanti M, Jeanny Pragantha, Endah Purnamasari. (2012). “Implementasi Brill Tagger untuk memberikan POS-Tagging pada Dokumen Bahasa Indonesia. [10] The Stanford Natural Language Processing Group, Stanford Log-Linier Part-of-Speech Tagger, http://nlp.stanford.edu/software/tagger.shtml , diakses pada tanggal 5 Agustus 2015. [11]
Raymond J. (2006). Machine Learning Text. University of Text at Austin.
[12] Tweet NLP, Part-of-Speech Taging. http://www.ark.cs.cmu.edu/TweetNLP/ , diakses pada tanggal 5 Agustus 2015.