Selasa, 16 Juli 2013

Tugas Ke-1 Bahasa indonesia

 

Rosa A. Sukamto, Dwi H. Widyantoro

Sekolah Teknik Elektro dan Informatika

Institut Teknologi Bandung, Bandung INDONESIA

rosa_if_itb_01@yahoo.com, dwi@if.itb.ac.id

Abstract

   Tulisan ini berisi hasil penelitian kami menggunakan pengurai Collins untuk menguraikan kalimat berbahasa Indonesia. Kami melakukan adaptasi pada semua file masukan pengurai Collins agar dapat digunakan untuk bahasa Indonesia. Pengurai Collins adalah pengurai yang dibuat untuk bahasa Inggris. Kumpulan file masukan pengurai Collins antara lain file leksikon, file grammar, file events, file simbol non terminal, dan file korpus.

 

   Kendala terbesar dari penelitian ini adalah tidak adanya treebank berbahasa Indonesia. Treebank digunakan untuk menghitung probabilitas grammar. Untuk menanggulanginya kita dapat melakukan translasi treebank berbahasa Inggris ke bahasa Indonesia atau membangun sebuah perkumpulan untuk membuat treebank berbahasa Indonesia secara manual.

 

1. Pendahuluan

     Pohon pola tata bahasa (parse tree) adalah pohon yang merepresentasikan struktur sintaks dari kalimat berdasarkan aturan grammar. Pohon pola tata bahasa sangat bermanfaat, misalnya untuk pemeriksaan tata bahasa (grammar checking) pada mesin pemrosesan kata (word processing system), mesin translasi, mesin penanya dan penjawab (question answering), pengekstrak informasi, aplikasi leksikografi, dan pengenalan ucapan (speech recognizers).

 

     Pohon pola tata bahasa dapat dibangkitkan secara otomatis dengan menggunakan pengurai (parser). Dengan memberikan aturan grammar yang benar maka sebuah pengurai (parser) akan dapat membangkitkan pohon pola tata bahasa yang benar. Beberapa penelitian telah mengembangkan berbagai algoritma penguraian dengan berbagai pendekatan. Pendekatan yang dilakukan bisa dengan pencarian berbasis hasil (goal-directed search) bersifat top-down atau pencarian berbasis data.(data-directed search) yang bersifat bottom-up. Pengurai yang sedang berkembang saat ini diantaranya adalah menggunakan pendekatan probabilistik.

 

  

     Pengurai Collins [6] merupakan pengurai dengan pendekatan probabilistik yang cukup populer saat ini. Meskipun sangat bermanfaat, tapi semua masukan dan penguraian dikemas untuk bahasa Inggris. Bahasa Indonesia memiliki kesamaan dan perbedaan dengan bahasa Inggris maka sangat memungkinkan menggunakan pengurai Collins untuk bahasa Indonesia.

2. Metodologi Penelitian

     Penelitian dalam penguraian dengan pendekatan probabilistik pada tulisan ini diawali dengan penelitian yang dilakukan oleh Schabes dan Water yang mendiskusikan Stochastic Lexicalized Context-Free Grammar (SLCFG) [11] yang juga dikenal sebagai Probabilistic Lexicalized Context-Free Grammar (PLCFG) yang merupakan model turunan dari Probabilistic Context-Free Grammar (PCFG). Glen Carol mengembangkan SINGER (Single Reader) yang menggunakan aturan sebagai masukan dan menggunakan PCFG untuk membangkitkan aturan yang baru. Mark Johnson melakukan penelitian dengan membandingkan PCFG dengan model lain untuk penguraian menggunakan pendekatan probabilistik. Penelitian tersebut menghasilkan bahwa performansi PCFG cukup bagus untuk berbagai kasus.

 

     Charniak [3, 4] membangun sebuah pengurai bottom-up untuk bahasa Inggris menggunakan treebank (kumpulan pohon kalimat) untuk menghitung probabilitas dari kalimat yang diuraikan. Berikutnya Charniak mengembangkan pengurai top-down yang menggunakan treebank dan pencarian entropi maksimum [5], mirip dengan menggunakan pohon keputusan. Collins membangun sebuah pengurai dengan pendekatan statistik dengan menghitung kebergantungan kata (bigram lexical), berikutnya Collins membangun sebuah pengurai berbasis headdriven (pencarian kepala kata pada setiap level pohon pola tata bahasa). Bikel mengembangkan model pengurai berbasis statistik (framework pengurai) dengan menggunakan parameter leksikal [2].

    

     Aziz berserta rekan-rekannya mencoba untuk menguraikan bahasa Melayu (Malaysia) menggunakan aturan produksi CFG. Walau kelihatan mirip, bahasa Indonesia dan bahasa Malaysia memiliki perbedaan sehingga hasil dari penelitian tersebut tidak dapat langsung diimplementasikan pada bahasa Indonesia. Lefuel dan Ross mencoba membuat pengurai dengan metode hibrid menggunakan pengurai dengan pendekatan statistik dan algoritma genetik [9]. Jurafsky dan Martin memberikan bahasan yang lebih mendalam mengenai penguraian dengan pendekatan probabilistik untuk bahasa Inggris.

 

   Collins memaparkan tiga buah model penguraian dengan pendekatan probabilistik. Pada model yang pertama, PCFG penggunakan aturan produksi berikut:

P(h) Ln(ln)...L1(l1)H(h)R1(r1)...Rm(rm)

   dimana H adalah kepala pada aturan P. Ln(ln)...L1(l1) serta R1(r1)...Rm(rm) adalah aturan sisi kiri dan aturan sisi kanan dilihat dari H. Collins memberikan parameter jarak (mempertimbangkan posisi simbol non terminal) sebagai pertimbangan pada model ini agar tidak terjadi dominasi sebagian aturan produksi.

 

     Model kedua merupakan lanjutan dari model pertama yang membedakan subkalimat yang berperan sebagai keterangan atau pelengkap (frase keterangan/frase pelengkap). Model ketiga memberikan penanganan terhadap kalimat  majemuk dan kalimat tanya Bagaimana perhitungan probabilitas untuk semua mode serta penjelasan lebih detail dapat dilihat pada disertasi Michael Collins [6].

     Pengurai Collins menggunakan PCFG untuk memodelkan pola tata bahasa dan menggunakan algoritma penguraian chart. Modul-modul pada pengurai Collins merupakan model-model pembelajaran.

 

  

   Menjalankan pengurai Collins untuk bahasa Indonesia membutuhkan adaptasi dari kumpulan file berikut:

 

                       File events untuk menyimpan events yang dibangkitkan secara heuristik (probabilitas kebergantungan elemen kalimat) dari WSJ (Wall Street Journal) Treebank menggunakan format Collins. File ini digunakan untuk menghitung probabilitas grammar (aturan produksi).

                       Sebuah korpus yang berisi kalimat-kalimat yang telah diberi tag, kalimat-kalimat inilah yang akan dijadikan pohon pola tata bahasa.

                       File yang berisi aturan grammar sebagai referensi penguraian.

                       File yang berisi simbol-simbol non terminal yang digunakan.

                       Sebuah leksikon untuk memeriksa tag kata

3. HASIL PENELITIAN DAN PEMBAHASAN

    Penyesuaian Pengurai Collins untuk Bahasa Indonesia

     Bagian ini akan membahas beberapa modifikasi yang diperlukan guna melakukan adaptasi kumpulan file masukan pengurai Collins untuk bahasa Indonesia sebagai pemrosesan awal (preprocessing).

 

1) File Event

   Collins membangkitkan events dari sebuah bagian di Penn WSJ treebank [10]. Bagian ini merupakan bagian yang rumit karena tidak adanya treebank berbahasa Indonesia. Hal tersebut akan didiskusikan pada Bab 6. Berikut adalah contoh sebagian dari file events berbahasa Indonesia:

 

 

2) File Korpus

   Kalimat yang akan diuraikan perlu diberi tag untuk setiap katanya (part of speech tagging). File korpus memiliki format sebagai berikut:

   jumlah_kata kata1 tag1 kata2 tag2 …

   seperti contoh berikut:

 

4 Yohanes NN memukul VB Bill NN . PU (hits)

 

   Gambar 1 merupakan langkah-langkah proses POS tagging yang digunakan pada penelitian ini. Pertama kata akan ditentukan tag-nya dengan melihat pada kamus. Jika kata masih belum dapat ditentukan tag-nya maka akan ditentukan dengan analisis morfologi. Jika kata masih belum dapat ditentukan tag-nya maka akan ditentukan dengan analisis bigram menggunakan aturan grammar yang ada, misalnya pada frase “sedang menggambar” dimana tag untuk “sedang” adalah RB dan tag untuk “menggambar” tidak diketahui maka jika ada aturan grammar VP RB VB dan setelah dihitung memiliki probabilitas yang terbesar maka dapat disimpulkan bahwa “menggambar” memiliki tag VB.

 

  Gambar 1. POS Tagging

 

   Bahasa Indonesia memiliki aturan morfologi yang dapat digunakan untuk memprediksi kelas kata atau tag kata. Tabel 1 merupakan beberapa aturan morfologi dalam bahasa Indonesia. Urutan proses prediksi tag kata dengan analisis morfologi adalah sebagai berikut:

                       Pemeriksaan kata bilangan; jika kata mengandung angka.

                       Pemeriksaan kata singkatan; jika semua huruf pada kata merupakan huruf besar; termasuk kata benda.

                       Pemeriksaan awalan, misalnya “menari” berasal dari kata dasar “tari” dengan awalan meN maka akan disimpulkan sebagai kata kerja,

                       Pemeriksaan akhiran, misalnya “terangi” berasal dari kata dasar “terang” mendapat akhiran –i yang berarti termasuk kata kerja,

                       Pemeriksaan konfiks (ada awalan dan akhiran),

                       Pemeriksaan pengulangan kata (baik pengulangan kata dasar atau pengulangan berimbuhan), misal “buku-buku” dimana termasuk kata benda (sama dengan jenis kata dasarnya),

                       Pemeriksaan nama; kata yang diawali dengan huruf besar yang berarti termasuk kata benda.

 

 

   Kami menggunakan 33 aturan prefiks/awalan, 29 aturan sufiks/akhiran, dan 17 konfiks untuk analisis morfologi.

 

3) Grammar dan Simbol Non-Terminal

      File grammar dibangkitkan dari treebank. Seperti halnya file events, disini juga ditemukan kendala yaitu tidak adanya treebank berbahasa Indonesia. Tata bahasa (grammar) pada bahasa Indonesia mirip dengan tata bahasa Inggris seperti adanya subyek-predikat-obyek, tapi tetap saja ada beberapa perbedaan antara bahasa Inggris dan bahasa Indonesia, misalnya kalimat berbahasa Indonesia tidak mengenal perbedaan kata kerja karena waktu kejadian. Bahasa Indonesia memiliki pola frase DM (diterangkan-menerangkan) misalnya buku biru, sedangakan bahasa Inggris memiliki pola frase MD (menerangkan diterangkan) misalnya blue book. Kata benda pada bahasa Indonesia juga tidak membedakan benda jamak dan tidak jamak.

 

   Aturan grammar pada pengurai Collins yang masih bisa digunakan untuk bahasa Indonesia juga kami gunakan sebagai aturan grammar untuk bahasa Indonesia. Contoh tata bahasa (grammar) untuk bahasa Indonesia adalah sebagai berikut:

 

  S NP VP NN

  NP NN JJ (misalnya: anak kecil)

  VP RB VB (misalnya: sedang menulis)

  

 

4) File Leksikon

   Pengurai Collins menggunakan file leksikon untuk memeriksa tag dari kata. Penelitian ini menggunakan KEBI (Kamus Elektronik Bahasa Indonesia) yang dapat digunakan untuk keperluan penelitian. KEBI dikembangkan oleh Badan Pengkajian dan Penerapan Teknologi (BPPT). KEBI berisi 29.396 kata. KEBI membagi kelas kata/jenis kata mejadi lima belas kelompok yaitu kata sifat (adjektiva), kata keterangan (adverbia), kata sandang (dibedakan menjadi determiner dan article), kata bantu (auxiliary), kata hubung (konjungsi), kata seru (interjeksi), kata benda (nomina), kata bilangan (dibedakan menjadi numeral dan ordinal), kata tugas partikel, kata fatis (kata yang menekankan seperti assalamualaikum, bismillah), kata depan (preposisi), kata ganti (pronomina), dan kata kerja (verba). Kamus tersebut masih harus dikonversikan menjadi format pengurai Collins.

 

Eksperimen    

   Eksperimen yang dilakukan bertujuan untuk memeriksa  apakah pengurai Collins dapat digunakanuntuk bahasa Indonesia menggunakan kumpulan file yang telah diadaptasi untuk bahasa Indonesia. Untuk eksperimen dibuat dua buah kelompok. Kelompok pertama terdiri dari 42 pohon kalimat pada treebank dan 7 kalimat sederhana untuk korpus. Pengurai Collins berhasil menguraikan semua kalimat pada kelompok pertama dengan enam kalimat diuraikan dengan benar dan satu kalimat diuraikan dengan kurang tepat. Kurang tepat karena aturan grammar yang tepat tidak ada dalam treebank yang digunakan. Gambar 2 merupakan salah satu hasil penguraian kalimat dari kelompok pertama.

 

 

4. Kesimpulan

   Secara teori sangat memungkinkan menggunakan pengurai Collins untuk bahasa Indonesia karena semua file masukan dapat diadaptasi ke bahasa Indonesia. Kendala terbesar dari penelitian ini adalah tidak adanya treebank untuk bahasa Indonesia sehingga hasil eksperimen awal kurang konsisten. Oleh karena itu sangat perlu dibuat treebank berbahasa Indonesia beserta korpus berbahasa Indonesia untuk memajukan penelitian di bidang bahasa Indonesia.

5. Referensi

                       Azis, Mohd Juzaiddin et al. (2006) Pola Grammar Technique for Grammatical Relation Extraction of Malay Language, Malaysian Journal of Computer Science, 19, 59-72

                       Bikel, Daniel M. (2004) : On The Parameter Space of Generative Lexicalized Statistical Parsing Models, Disertasi, University of Pennsylvania. 1-20, 141-148

                       Charniak, Eugene. (1993) : Statistical Language Learning, Massachusetts Institute of Technology.

                       Charniak, Eugene. (1997) : Statistical Parsing with a Context-free Grammar and Word Statistics, American Association for Artificial Intelligence: AAAI Press. 1-6

                       Charniak, Eugene. (2000) : A Maximum-Entropy-Inspired Parser, Proceedings of NAACL-2000. 132-139.

                       Collins, Michael. (1999) : Head-Driven Statistical Models for Natural Language Parsing, Disertasi program Doctor of Philosophy, University of Pennsylvania. 1-265.

                       Collins, Michael, Jan Hajic, Lance Ramshaw, Cristoph Tillmann (1999) : A Statistical Parser for Czech, Proceedings of the 37th Annual Meeting of the ACL.

                       Gusmita, Ria Hari & Ruli Manurung (2008) Some initial experiments with Indonesian probabilistic parsing. Second MALINDO Workshop. 1-5.

                       Lefuel, Ramon & Brian J. Ross (2004) Parsing Probabilistic Context Free Language with Multiple-Objective Genetic Algorithm, Technical Report, Brock University. 1-11.

                       Marcus, Mitchell P. dkk (1992) : Building a Large Annotated Corpus of English: The Penn Treebank. Departmet of Computer and Information Science University of Pennsylvania.

                       Schabes, Yves & Waters, Richard C (1993) Stochastic Lexicalized Context-Free Grammar, International Workshop on Parsing Technology. 1-10.

1 komentar:

  1. ini mah bkan tugas bahasa indonesia om, tapi tugas AI

    BalasHapus