• Tidak ada hasil yang ditemukan

Silicon08 Paper Gunawan dan Denny Final

N/A
N/A
Protected

Academic year: 2018

Membagikan "Silicon08 Paper Gunawan dan Denny Final"

Copied!
6
0
0

Teks penuh

(1)

Gunawan dan Denny Cahyadi

Sekolah Tinggi Teknik Surabaya

gunawan@stts.edu, denny.cahyadi@gmail.com

Abstract

Japanese websites usually written in Kanji characters. For the beginner, reading Kanji can be tough since it has many sound variations. One way to read Kanji easier is by using specialized Hiragana character called Furigana to show the proper way of reading.

In this paper a web application which capable to generate Furigana text on Japanese websites which contains Kanji is proposed. Furigana generation is done based on a Japanese dictionary. However it is impossible to lookup a sentence in a dictionary. Hence a task to divide sentence into words is

needed. Since Japanese doesn’t have special

delimiter to separate words, a special segmentation algorithm is needed.

Segmentation is done through Natural Language Processing approach by using d-bigram and linking string model. The model gain knowledge from a corpus and use it to segment the sentence. After segmentation, each word can be looked up on dictionary to produce proper Furigana. Lastly Ruby tag is used to display Furigana on browser.

In the end of this work, a test to reveal the system's performance in accuracy is done. Using the method proposed above, the system can achieve 94% accuracy at character level and 89% accuracy at word level. Based on the research in Kanji to Hiragana conversion so far, the performance achieved by the system is considered good.

1. PENDAHULUAN

Bahasa Jepang merupakan bahasa yang cukup kompleks dalam hal penulisan. Pada bahasa Jepang dikenal empat macam huruf, yaitu Hiragana,

Katakana, Kanji, dan Romaji. Hiragana dan Kata-kana adalah huruf phonemic dimana setiap karakter menyimbolkan satu bunyi tanpa memiliki arti. Huruf kanji yang lebih kompleks, merupakan huruf

pictographic dimana setiap karakter dapat memberi arti pada suatu makna. Romaji adalah huruf latin yang digunakan dalam bahasa Jepang..

Dari keempat huruf tersebut, Kanji merupakan huruf yang paling kompleks karena jumlahnya yang banyak [7] dan adanya variasi bunyi (cara baca). [14] Cara baca huruf Kanji ditentukan oleh konteks katanya. Inilah yang menyebabkan upaya untuk

memperlajari huruf Kanji tidak dapat dilakukan dalam waktu singkat.

Kompleksitas penggunaan huruf Kanji dapat dikurangi dengan penggunaan huruf Furigana. [10]

Furigana merupakan huruf Hiragana yang ditulis di sebelah atau di atas huruf Kanji dan berfungsi untuk menunjukkan cara baca huruf Kanji tersebut.

Gambar 1. Furigana dan Kanji

Penggunaan huruf Furigana sudah umum dilakukan pada buku-buku berbahasa Jepang. Sayangnya huruf ini masih sedikit digunakan pada halaman web. Dengan demikian diperlukan suatu aplikasi yang mampu menghasilkan teks Furigana

pada halaman web berbahasa Jepang yang mengandung huruf Kanji.

Pada sisi lainnya, perkembangan disiplin ilmu

Natural Language Processing (NLP) boleh dikatakan masuk pada masa renaissance saat web

menyediakan miliaran dokumen berbahasa alami dari pelbagai bangsa, termasuk Jepang. Perkembang-an yPerkembang-ang signifikPerkembang-an tampak pada pendekatPerkembang-an kaum

experimentalist, yang ditunjukkan melalui peman-faatan corpus dan terlibatnya disiplin statistika dan

machine learning seperti yang dilakukan pada penelitian ini, yaitu pengembangan aplikasi web generator teks Furigana.

2. LANDASAN TEORI

Terdapat tiga teori yang mendukung penelitian ini. Berikut akan dijelaskan secara singkat mengenai model d-bigram, mutual information, dan model

linking string.

2.1. MODEL

D-BIGRAM

Model d-bigram merupakan varian dari model n-gram yang memperhitungkan jarak pemisah. Model

(2)

Model d-bigram didefinisikan sebagai bigram

dengan pasangan elemen bahasa yang terpisah sejauh satuan jarak d. Pada n-gram perhitungan dilakukan terhadap beberapa elemen bahasa yang berurutan dan saling menempel. Sementara pada d-bigram elemen yang diperhitungkan terpisah sejauh

d satuan elemen. Model d-bigram hanya memperhitungkan kemunculan pasangan dua elemen bahasa, tidak seperti n-gram yang bisa memperhitungkan sejumlah anggota berpasangan sesuai nilai n yang diberikan. Pada penelitian ini elemen bahasa yang diperhitungkan adalah karakter.

Model d-bigram memperoleh pengetahuan dari

corpus untuk menghasilkan tabel d-bigram. Tabel d-bigram adalah tabel yang mencatat peluang kemunculan pasangan karakter yang ditemukan pada

corpus. Tabel ini selanjutnya digunakan untuk melakukan perhitungan linking score pada model

linking string.

2.2.

MUTUAL

INFORMATION

Pada ilmu statistika mutual information dari dua variabel acak merupakan nilai yang menunjukkan hubungan ketergantungan (mutualdependence) antar kedua variabel itu. Dalam hal ini nilai mutual information menunjukkan seberapa besar pengaruh munculnya suatu variabel terhadap variabel lainnya. Dalam konteks analisa bahasa, variabel-variabel yang diperhitungkan adalah karakter-karakter yang muncul pada suatu string. Selain itu tedapat sebuah variabel lagi yang mempengaruhi nilai mutual information, yaitu jarak pemisah antar karakter. Karakter yang muncul berdekatan cenderung memiliki hubungan yang lebih erat daripada karakter yang muncul berjauhan. Dengan demikian jarak pemisah juga ikut diperhitungkan dalam perhitungan

mutual information dengan rumus sebagai berikut:

)

yang terpisah sejauh d karakter

P(x) : peluang kemunculan karakter x P(x, y) : peluang kemunculan karakter x dan y

bersama sama

2.3. MODEL

LINKING STRING

Linking string adalah suatu string (kata) yang terbentuk karena kuatnya hubungan antar karakter yang menyusunnya. Hubungan karater ini dilihat dari seberapa sering suatu pasangan karakter muncul bersama-sama pada sekumpulan teks. Pasangan karakter yang sering muncul bersamaan dianggap sebagai hubungan yang kuat dan sebaliknya.

Hubungan antar karakter ini selanjutnya disebut sebagai linking score, yang didefinisikan sebagai nilai yang menunjukkan peluang kemunculan sebuah karakter terhadap karakter sebelumnya yang dipengaruhi oleh kemunculan beberapa karakter yang mendahuluinya. [12] Dari perspektif statistika

linkingscore sebenarnya pengembangan dari mutual information. Berikut ini adalah rumus yang digunakan untuk perhitungan linking score:

 

dmax : Jarak maksimum yang diperhitungkan

wj : Karakter ke-j

g(d) : Fungsi bobot untuk menentukan pengaruh jarak terhadap perhitungan

3. ARSITEKTUR

Sistem yang dikembangkan berfungsi untuk menambahkan teks Furigana pada suatu halaman

web yang mengandung teks Kanji. Input sistem adalah URL sebuah halaman web yang akan ditambahi teks Furigana. Output sistem adalah teks berformat HTML (halaman web) yang telah ditambahi Furigana. Antara input dan output terdapat beberapa proses yang perlu dilakukan.

Gambar 2. Arsitektur Sistem

Preproses

Halaman web yang telah dilengkapi dengan Furigana Teks yang mengandung kanji

(3)

Pertama kali sistem menerima input berupa URL

sebuah website yang menjadi target. Selanjutnya dilakukan fetching terhadap website target ini. Pada proses fetching dilakukan juga beberapa proses tambahan seperti proses decoding serta pemisahan antara tag dan teks. Proses ini disebut juga sebagai tahap preproses saat program dijalankan (runtime). Tahap ini akan menghasilkan teks yang siap diolah pada proses pembuatan Furigana.

Selanjutnya teks diolah pada tahap pembuatan

Furigana atau disebut juga sebagai proses translasi. Proses translasi memerlukan bantuan berupa tabel d-bigram dan kamus. Keduanyadiperoleh dari corpus

dan kamus yang telah mengalami preproses

sebelumnya. Proses pengambilan data pada corpus

untuk membuat tabel d-bigram dan proses penyesuaian format kamus dilakukan pada tahap

preproses sebelum program dijalankan (offline). Dengan menggunakan tabel d-bigram dan kamus maka proses translasi dapat menghasilkan output berupa teks Furigana. Aliran data berakhir sampai tahap ini, tentu saja setelah data dikirimkan kembali kepada user dalam bentuk halaman web.

4. IMPLEMENTASI

Implementasi sistem ini terbagi ke dalam dua tahap. Tahap pertama adalah tahap preproses yang bertujuan menyiapkan segala data yang diperlukan untuk tahap selanjutnya dan tahap kedua adalah generator Furigana. Berikut ini dijelaskan detail dari masing-masing tahap.

4.1. PREPROSES

Preproses pertama yang dilakukan adalah

cleansing corpus dan pembuatan tabel d-bigram. Tabel d-bigram diperoleh dengan melakukan analisa statistik karakter pada corpus. Corpus yang digunakan adalah Wikipedia XML Corpus yang terdiri dari 187.000 dokumen berbahasa Jepang. Tahap cleansing diperlukan karena isi corpus tidak murni teks berbahasa Jepang, melainkan tercampur dengan tag-tag XML.

Pembuatan tabel d-bigram dilakukan dengan menghitung jumlah kemunculan masing-masing karakter pada corpus. Pada saat scanning, setiap ditemukan karakter baru maka ditambahkan entry

baru pada tabel. Setiap ditemukan karakter yang telah ada, maka jumlah kemuncuka karakter itu di-tambah. Karena informasi yang diinginkan berupa peluang kemunculan maka perlu dihitung juga ratio masing-masing karakter terhadap jumlah total karakter yang terdapat pada corpus. Tabel d-bigram

diimplementasikan dalam bentuk hash table.[13]

Preproses kedua adalah mempersiapkan kamus. Kamus yang digunakan adalah EDICT merupakan kamus Jepang-Inggris berupa plain textfile yang ditulis dengan format EUC-JP. Setiap baris pada

kamus memuat suatu kata lengkap dengan atribut-atributnya seperti cara baca, terjemahan ke bahasa Inggris, jenis kata, dan prioritas. Beberapa atribut lain yang tersedia tidak diperlukan oleh sistem ini, sehingga perlu dilakukan pembuangan atribut yang tidak digunakan. Kamus akan dibuat ke dalam dua jenis. Jenis pertama menyimpan seluruh kata dalam bentuk kata dasar. Sementara itu jenis kedua hanya menyimpan kata-kata yang dapat mengalami per-ubahan bentuk saja yaitu kata kerja dan kata sifat, namun dilengkapi dengan ciri perubahan katanya.

Tahap preproses terakhir merupakan preproses

yang dilakukan setiap kali program dijalankan. Terdapat tiga hal yang dilakukan pada tahap ini yaitu:

ï‚· Mengidentifikasi jenis encoding yang digunakan oleh halaman web. Jenis encoding yang dapat ditangani adalah UTF-8, Shift_JIS, dan EUC-JP. ï‚· Melakukan decoding berdasarkan jenis encoding. ï‚· Melakukan ekstraksi teks, yaitu memisahkan

antara tag dan teks, serta memilih teks mana saja yang mengandung Kanji. Hanya teks yang mengandung Kanji yang akan diproses lebih lanjut.

Tahap preproses menghasilkan output berupa teks yang mengandung huruf Kanji saja. Teks inilah yang selanjutnya diproses pada generator Furigana.

4.2. GENERATOR

FURIGANA

Generator Furigana terbagi menjadi beberapa subproses yaitu perhitungan linking score,

segmentasi, penanganan perubahan kata, lookup

pada kamus, dan penyusunan karakter Furigana. Pada tahap ini terjadi proses segmentasi kalimat secara berulang-ulang hingga didapatkan kata yang cocok.

Gambar 3. Linking Score dan Segmentasi

Pembuatan Furigana diawali dengan perhitungan

(4)

rumus linking score yang telah dijelakskan sebelumnya. Selanjutnya linking score pada tiap-tiap karakter digunakan sebagai pertimbangan untuk melakukan segmentasi.

Proses segmentasi dan proses lookup pada kamus diimplementasikan sebagai fungsi recursive. Dengan menggunakan teknik divide and conquer suatu string bahasa Jepang akan dipotong menjadi segmen-segmen kecil lalu dicari solusi untuk setiap segmen-segmen. Segmen yang belum cukup pendek atau tidak dapat ditemukan pada kamus akan terus dipotong sampai ditemukan pada kamus atau hanya tersisa satu karakter saja.

Segmentasi dilakukan dengan membagi string menjadi dua bagian berdasarkan titik linking score

terendahnya. Segmenatasi yang dilakukan secara

recursive mengasilkan segmen-segmen yang hubungannya dapat digambarkan sebagai sebuah

tree. Pada gambar 4, segmen kiri masih dapat dibagi menjadi dua segmen lagi dan segmen kanan terbagi menjadi tiga segmen.

Gambar 4. Tree Hasil Segmentasi

Pada tree dapat terlihat bahwa tiap-tiap leaf

merupakan segmen yang berhasil ditemukan pada kamus. Pencarian pada kamus akan menghasilkan bunyi Kanji yang bersangkutan berupa karakter

Furigana. Pada beberapa kasus, kata yang diperoleh dari hasil segmentasi tidak dapat langsung ditemukan pada kamus. Hal ini disebabkan oleh adanya perubahan bentuk kata terkait dengan penggunaannya pada kalimat dan tenses (bentuk waktu). Dengan demikian diperlukan sebuah proses lagi untuk mengembalikan kata-kata berimbuhan menjadi bentuk dasarnya. Hal ini dapat dilakukan dengan menganalisa teknik perubahan kata itu. Pencarian pada kamus yang sukses pada akhirnya menghasilkan teks furigana yang cocok untuk setiap kata. Pada tahap terakhir, karakter Furigana disusun menggunakan tag ruby agar dapat ditampilkan pada

browser.

Keseluruhan proses ini dilakukan untuk semua segmen sampai seluruh teks input yang diberikan telah ditambahkan dengan Furigana. Akhirnya teks yang telah dilengkapi dengan tag ruby dikembalikan pada browser dan ditampilkan sebagai Furigana.

5. UJICOBA

Ujicoba dilakukan untuk menguji performa program. Terdapat tiga aspek yang diujicoba yaitu akurasi sistem, kecepatan proses, dan fungsionalitas. Ujicoba akurasi sistem dan kecepatan proses dilakukan terhadap testing corpus. Sedangkan ujicoba fungsionalitas dilakukan terhadap 20 website

berbahasa Jepang.

Ujicoba akurasi sistem dilakukan dengan cara membandingkan output sistem dengan output ideal. Untuk pengujian ini digunakan Microsoft IME Corpus yang terdiri dari 6000 kalimat berbahasa Jepang (160.000 kata) yang diperoleh secara acak dari surat kabar Kyodo dalam periode setahun.

Corpus ini merupakan corpus paralel yang terdiri dari dua bagian. Bagian pertama adalah teks asli (mengandung keempat jenis karakter Jepang) dan bagian kedua adalah cara baca dari bagian pertama yang ditulis dengan Hiragana (Furigana). Bagian kedua corpus ini merupakan cara baca ideal yang telah dibuat oleh para pakar bahasa Jepang.

Pada saat ujicoba, bagian pertama pada corpus diumpan pada sistem sehingga sistem menghasilkan output berupa Furigana. Selanjutnya output dari sistem dibandingkan dengan Furigana pada bagian kedua dari corpus. Persentasi kemiripan output sistem dengan bagian kedua corpus dianggap se-bagai akurasi.

Terdapat dua metode pembandingan yang di-gunakan, yaitu Levensthein Distance dan Word Match. Levensthein Distance menganalisa kemiripan pada level karakter dengan menghitung edit-distance

antara dua string. Hasil ujicoba menunjukkan bahwa output sistem memiliki tingkat kemiripan rata-rata sebesar 94.12%.

Tabel 1. Hasil Ujicoba terhadap 6000 Kalimat Berbahasa Jepang

Pembanding Heuristik Brute Force

L.Dist 1 W.M 2 L.Dist 1 W.M 2

Jumlah kalimat dengan akurasi 100%

1349 1349 2005 2005

Kesalahan Kata

N/A 15819 N/A 13301

Akurasi (total) 94.46% 89.80% 95.54% 91.42%

Akurasi (kanji) N/A 81.78% N/A 84.68%

Kecepatan

Proses3 2 detik 25 ms 10 detik 45 ms

1

Levensthein Distance 2

Word Match 3

pada prosesor Intel T7300 2 GHz

Metode kedua yang digunakan adalah Word Match.

Word Match menganalisa tingkat kemiripan dua

(5)

perhitungan hanya dilakukan untuk kata-kata yang mengandung Kanji saja maka akurasi yang dicapai adalah 81.78%.

Ujicoba kedua yang dilakukan adalah ujicoba kecepatan proses. Ujicoba dilakukan dengan membandingkan kecepatan proses sistem yang menggunakan heuristik berupa perhitungan linking score dengan sistem yang menggunakan metode

brute force. Yang dimaksud dengan brute force

adalah mencoba segala kemungkinan segmen saat melakukan segmentasi. Ujicoba bertujuan untuk mengetahui efisiensi penggunaan perhitungan

linking score beserta tabel d-bigram.

Ujicoba dilakukan dengan mengambil waktu rata-rata dari 10 kali proses terhadap testing corpus. Ujicoba dilakukan pada komputer dengan prosesor

Intel Core2 Duo T7300. Hasil ujicoba menunjukkan bahwa sistem dengan heuristik linking score

memiliki waktu rata-rata 2 detik 25 ms, sedangkan sistem dengan brute force memiliki waktu rata-rata 10 detik 54 ms. Hal ini menunjukkan bahwa

linking score mengurangi sedikit akurasi jika dibandingkan dengan brute force. Brute force

mampu mencapai akurasi 95.54% dengan

Levenstehin Distance dan 91.42% dengan Word Match. Brute force sedikit lebih unggul dalam hal akurasi.

Ujicoba terakhir yang dilakukan adalah menguji kerja sistem pada 20 website berbahasa Jepang. Ujicoba ini berupaya menemukan kelemahan sistem. Hasil ujicoba menunjukkan bahwa sistem berjalan dengan baik pada sebagian besar website

berita bahasa Jepang. Namun demikian terdapat beberapa website yang tidak mampu ditangani akibat teknis pemrograman web tersebut. Halaman tidak dapat ditangani diantaranya halaman yang me-redirect ke halaman lain, halaman yang berada di dalam frame, halaman yang mutlak memerlukan

cookies, atau halaman yang mengunakan encoding

yang tidak umum, di luar UTF-8, EUC-JP dan

Shift_JIS.

5a. Sebelum Proses

5b. Setelah Proses

(6)

6. KESIMPULAN

Aplikasi yang dibuat memiliki kemampuan untuk menghasilkan teks Furigana untuk huruf-huruf kanji yang terdapat halaman web berbahasa Jepang. Berdasarkan hasil ujicoba. huruf Furigana

yang dihasilkan memiliki tingkat akurasi cukup tinggi.

Penggunaan linking score pada proses segmentasi sebagai acuan posisi segmentasi mampu meningkatkan performa sistem dari segi kecepatan secara signifikan. Walaupun demikian, linking score masih memberikan akurasi sedikit lebih rendah daripada metode brute force.

Penggunaan informasi statistik karakter hanya mampu menangani konteks kata. Cara baca yang tergantung pada konteks kalimat tidak mampu ditangani oleh aplikasi yang hanya mengandalkan informasi statistik karakter dan kamus.

Sistem ini merupakan corpus-based learning

sehingga performa sistem sangat tergantung pada isi training corpus. Corpus merupakan sumber informasi bigram yang digunakan pada saat segmentasi. Corpus yang spesifik pada bidang tertentu (misal politik, kesehatan) hanya akan menghasilkan informasi yang spesifik pada bidang tersebut. Dengan demikian kata-kata yang mampu ditangani dengan baik hanyalah kata-kata pada bidang itu juga. Untuk menangani kata dengan konteks umum maka diperlukan training corpus

dengan konteks umum pula.

7. DAFTAR PUSTAKA

[1] Breen, Jim, Edict – Japanese / English Dictio-naryProject, http://www.csse.monash.edu .au/~ jwb/edict.html, 2007.

[2] Brin, Sergey, Lawrence Page, The Anatomy of a Large-Scale Hypertextual Web Search Engine, Computer Networks and ISDN Systems Vol. 30, pp 107-117, Stanford, 1998. [3] Cahyadi, Denny, Studi Analisa Segmentasi

Teks Bahasa Jepang Menggunakan Model D-Bigram, Sekolah Tinggi Teknik Surabaya, Surabaya, 2007.

[4] Cerone, Nick, Max Krause, John Boates,

Lexicon Design Using Perfect Hash Function, Human Interface and the User Interface Vol. 1981, pp.69-78, ACM, New York, 1981. [5] Constantine, P. Papageorgiou, Japanese Word

Segmentation by Hidden Markov Model, Human Language Technology Conrference, pp.283-288, New Jersey, 1994.

[6] Gunawan, Knowledge Discovery in Databases and Data Mining, http://www.hansmichael. com/download/dmkdd03-6up.pdf, 2007. [7] Joyo Kanji List – Japanese Reference,

http://www.jref.com/language/joyo_kanji.shtm l, 2007.

[8] Kubota, Rie Ando, Lillian Lee, Mostly-Unsupervised Statistical Segmentation of Japanese Kanji Sequences, Natural Language Engineering Vol. 9, pp.127-149, Cambridge University Press, Cambridge, 2003.

[9] Manning, Christoper D., Hinrich Schutze,

Foundation of Statistical Natural Language Processing, The MIT Press, London, 2003. [10] Minna no Nihongo Shokyuu I Edisi

Terjemahan dan Keterangan Tatabahasa, IMAF Press, Surabaya, 2006.

[11] Minna no Nihongo Shokyuu II, IMAF Press, Surabaya, 2006.

[12] Nobesawa, Shiho, et al, Segmenting Sentences into Linky Strings Using D-bigram Statistics, In Colling, Copenhagen, 1996.

[13] N-Gram Class - Open NLP, http://opennlp. sourceforge.net/api/opennlp/tools/ngram/Ngra m .html, 2008.

[14] Picone, Joseph, et al., Kanji to Hiragana Conversion Based on a Length-constrained N-gram Analysis, IEEE Transactions on Speech and Audio Processing VOL. 7, pp.685-696, No. 6, 1999.

[15] Ruby - World Wide Web Consortium Working Draft, http://www.w3.org/TR/1998/WD-ruby-19981221, 1998.

Gambar

Tabel d-bigram diperoleh dengan melakukan analisa
Gambar 4. Tree Hasil Segmentasi
Gambar 5. Tampilan Sebelum dan Setelah Proses Generate Furigana

Referensi

Dokumen terkait

ITIL sendiri merupakan suatu framework yang konsisten dan komprehensif dari hasil penerapan yang teruji pada manajemen pelayanan teknologi informasi sehingga suatu

Analisis data yang digunakan untuk menguji hubungan antara sikap terhadap clubbing dengan gaya hidup hedonis, dan untuk menguji hubungan antara konformitas teman sebaya dengan

Bila saya ingin bermain ke rumah teman saya padahal besok ada ulangan, maka sikap orangtua :.. Tidak memperbolehkan

Berdasarkan uraian pertimbangan tersebut, walaupun Terdakwa Syarif Muda Siregar, S.E., M.M., bersalah melakukan perbuatan yang didakwakan kepadanya dalam dakwaan Primair

Hipotesis yang diajukan adalah ada hubungan positif antara sikap siswa terhadap cara mengajar Guru Fisika dengan motivasi belajar Fisika pada siswa SMA.. Penelitian ini

Alhamdulillahi robbil’alamin, puji syukur kehadirat Allah SWT yang telah berkenan melimpahkan segala rahmat, nikmat dan karuniaNya, sehingga penulis dapat menyelesaikan

Penelitian ini memiliki tujuan untuk mengetahui keefektifan upaya Bursa Efek Indonesia dalam meningkatkan likuiditas saham dengan membuktikan apakah terdapat perbedaan pada

Perbandingan rasio solvabilitas yang terdiri dari Rasio Aktiva Tetap dengan Hutang Jangka Panjang pada tahun 2011 ± 2013 mengalami kenaikan namun tidak mencapai 100