Authentication
329x Tipe PDF Ukuran file 0.21 MB Source: media.neliti.com
KAMUS BAHASA ARAB– INDONESIA ONLINE
DENGAN PEMECAHAN SUKU KATA
MENGGUNAKAN METODE PARSING
Anny Yuniarti, Aris Tjahyanto, Imam Kuswardayan
Jurusan Teknik Informatika,
Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember
Kampus ITS, Jl. Raya ITS, Sukolilo – Surabaya 60111, Tel. + 62 31 5939214, Fax. + 62 31 5913804
Email: anny@its-sby.edu, aris@its-sby.edu, imam@its-sby.edu
ABSTRAK
Kebutuhan umat Islam akan fasilitas penunjang belajar bahasa Arab di Indonesia masih belum
terpenuhi dengan optimal. Kamus bahasa Arab yang beredar di pasaran sulit dipahami karena minimnya
pengetahuan tentang ilmu tata bahasa Arab di kalangan umat Islam.
Pada penelitian ini dikembangkan sebuah perangkat lunak yang berfungsi menerjemahkan kata
berbahasa Arab dengan metode parsing sehingga dapat mencakup kata-kata yang telah mengalami perubahan
bentuk dari bentuk dasarnya. Karena kata bahasa Arab memiliki turunan kata yang jumlahnya cukup besar,
dan supaya kamus efisien, maka tidak semua turunan kata disimpan dalam basisdata. Oleh sebab itu diperlukan
suatu cara untuk mengenali pola kata, dan cara mengetahui bentuk dasar suatu kata. Keseluruhan perangkat
lunak ini diimplementasikan berbasis web sehingga memudahkan pengaksesan pengguna. Dan pengguna tidak
memerlukan proses instalasi perangkat lunak atau sistem operasi tertentu.
Pembuatan perangkat lunak ini didahului dengan perancangan proses dan perancangan interface.
Kemudian rancangan tersebut diimplementasikan menjadi sebuah perangkat lunak yang siap untuk dipakai.
Perangkat lunak yang sudah jadi tersebut telah diuji coba sesuai dengan spesifikasi kebutuhan dan kemampuan
yang dimiliki yaitu melakukan manajemen pada basisdata rules dan basisdata kamus. Dengan demikian
perangkat lunak ini dapat dipakai sebagai kamus bahasa Arab digital.
Kata kunci : Parser, Bahasa Arab, Unicode.
1. PENDAHULUAN kata berbahasa Arab ke dalam kata berbahasa
Indonesia meskipun kata tersebut telah mengalami
1.1. Latar Belakang Masalah perubahan bentuk sehingga kata yang diterima lebih
Pada bahasa Arab, sebuah kata dapat diturunkan banyak dan kamus lebih efisien.
menjadi banyak kata. Dan pada kamus bahasa Arab, Permasalahan yang dihadapi dalam pembuatan
seringkali turunan kata tersebut tidak dicantumkan perangkat lunak ini adalah:
atau diselipkan di bagian kata dasarnya, sehingga bagaimana metode/ cara yang efisien untuk
menyulitkan pengguna yang masih awam dalam mengenali pola kata berbahasa Arab
bahasa Arab karena pengguna harus mengetahui bagaimana cara pengenalan pola kata bahasa
bentuk dasarnya, baru dicari arti kata yang dimaksud Arab bisa berkembang dan bisa dimodifikasi
di bagian (indeks) kata bentuk dasar. andaikata terdapat penyempurnaan
Pembuatan perangkat lunak kamus bahasa Arab bagaimana mengambil bentuk dasar dari kata
yang dirancang sedemikian rupa sehingga pengguna masukan yang telah diketahui polanya, yang
tidak perlu mengetahui bentuk dasar suatu kata kemudian akan dicocokkan dengan data kamus
terlebih dahulu akan sangat memudahkan pengguna. bagaimana data kamus bisa berkembang serta
Implementasi berbasis web juga memudahkan bisa dimodifikasi sebagai langkah
pengguna karena pengguna dapat mengakses aplikasi penyempurnaan
secara online tanpa harus melakukan instalasi bagaimana implementasi pengenalan pola kata,
perangkat lunak atau sistem operasi tertentu yang pencarian kata dasar, dan penampilan kamus
mendukung seperti pada aplikasi yang bukan bahasa Arab-Indonesia dalam web.
berbasis web. 1.3. Batasan Masalah
1.2. Masalah Untuk lebih memperjelas dan mencapai tujuan
Penelitian ini bertujuan membuat perangkat utama pembuatan perangkat lunak ini, maka
lunak yang memiliki kemampuan menerjemahkan penelitian ini dibatasi oleh hal-hal berikut:
9
Volume 3 No 1 Januari 2004 : 9– 16
1. Bentuk-bentuk kata yang dimasukkan pola 1. Kata benda tunggal (isim mufrod), yaitu kata
dasarnya tergantung dari aturan (rules) yang benda yang menunjukkan arti tunggal, contoh:
terdapat dalam basis data. ﺔَﻤِﻠْﺴُﻣ (seorang wanita muslim)
2. Kata yang dapat diterjemahkan adalah kata yang 2. Kata yang menunjukkan arti dua (isim
ada dalam basisdata aturan dan/ atau basisdata tatsniyah), yaitu kata benda yang menunjukkan
kamus. dua benda, contoh: ِنﺎَﺘَﻤِﻠْﺴُﻣ (dua orang wanita
3. Internet browser mendukung Javascript dan muslim)
Arabic Language Support. 3. Kata benda jamak, yaitu kata benda yang
menunjukkan jumlah tiga atau lebih. Contoh:
2. APLIKASI KAMUS BAHASA ARAB- ٌتﺎَﻤِﻠْﺴُﻣ (wanita wanita muslim)
INDONESIA ONLINE Kata kerja (fiil) dibedakan berdasarkan banyak
hurufnya dan bentuk (bina)nya. Berdasarkan banyak
2.1. Teori Bahasa dan Teknologi Pemrosesan hurufnya, fiil terbagi dua bagian yaitu:
Bahasa 1. Fiil Tsulatsy (huruf asalnya tiga)
Pada dasarnya bahasa merupakan suatu bentuk 2. Fiil Rubai (huruf asalnya empat)
representasi dari suatu pesan yang ingin Fiil tsulatsy mujarrad (tanpa tambahan)
dikomunikasikan antar manusia. Bentuk utamanya terbagi 6 macam sebagai berikut:
adalah dalam bentuk suara/ucapan (spoken 1. Faala – yafulu, contoh: ُﺮُﺼْﻨَﯾ َﺮَﺼَﻧ
language), tetapi sering juga dinyatakan dalam 2. Faala – yafilu, contoh: ُبِﺮْﻀَﯾ َبَﺮَﺿ
bentuk tulisan. 3. Faala – yafalu, contoh: ُلَﺄْﺴَﯾ َلَﺄَﺳ.
Selain bahasa alami yang merupakan bahasa 4. Faila – yafalu; contoh: ُﻢَﻠْﻌَﯾ َﻢِﻠَﻋ
komunikasi antar manusia, juga dikenal bahasa 5. Faila – yafilu, contoh: ُﺐِﺴْﺤَﯾ َﺐِﺴَﺣ
buatan yang dibuat secara khusus untuk kebutuhan 6. Faula – yafulu, contoh: ُﻦُﺴْﺤَﯾ َﻦُﺴَﺣ dan
tertentu, seperti bahasa pemodelan atau bahasa sebagainya.
pemrograman. Dari sinilah lahir bidang ilmu Natural Macam-macam huruf ada banyak sekali,
Language Processing (NLP) yang melakukan menurut Djuha ada 16 macam, beberapa diantaranya
pemrosesan bahasa secara simbolik dengan teknologi seperti huruf jarr, huruf athaf, huruf nashab, huruf
komputer. jazm dan sebagainya.
Saat ini, teknologi yang berkaitan dengan bahasa Arab dikenal adanya perubahan pola kata
pemrosesan bahasa alami sering disebut sebagai (tasrif). Adapun menurut istilah, tasrif berarti
”speech and language technology”, atau dalam mengubah dari bentuk asal (pokok) ke bentuk yang
beberapa pertemuan ilmiah disepakati penggunaan lain..
istilah ”teknologi bahasa” oleh beberapa peneliti di Perubahan bentuk tersebut berfungsi untuk
Indonesia. mendapatkan arti yang berbeda, seperti:
Suatu sistem pemrosesan bahasa alami dapat 1 َﺮَﺼَﻧ = fiil madli, artinya sudah menolong.
diberntuk dari tiga sub-sistem, yaitu: 2 ُﺮُﺼْﻨَﯾ = fiil mudlari, artinya sedang/ akan
1. Sub-Sistem Natural Language Processing menolong.
(NLP), berfungsi melakukan pemrosesan secara 3 اًﺮْﺼَﻧ = masdar, artinya pertolongan (kata
simbolik terhadap bahasa tulisan. Beberapa benda).
contoh aplikasi sub-sistem ini adalah translator
bahasa alami (misalnya dari Bahasa Inggris ke 4 ٌﺮِﺻﺎَﻧ = isim fail, artinya yang menolong
Bahasa Indonesia), sistem pemeriksa sintaks (subyek).
bahasa, dan sebagainya. 5 ٌرْﻮُﺼْﻨَﻣ = isim maful, artinya yang ditolong
2. Sub-Sistem Text to Speech (TTS), berfungsi (obyek).
untuk mengubah teks (bahasa tulisan) menjadi 6 ْﺮُﺼْﻧُا = fiil amar, artinya perintah untuk
ucapan (bahasa lisan).
3. Sub-Sistem Speech Recognition (SR), berfungsi menolong.
untuk mengubah atau mengenali suatu ucapan 7 ْﺮُﺼْﻨَﺗَﻻ = fiil nahi, artinya jangan menolong
(bahasa lisan) menjadi teks (bahasa tulisan). (menunjukkan larangan).
2.2. Konsep Bahasa Arab 8 ٌﺮَﺼْﻨَﻣ = isim makan, artinya tempat menolong
Kata (kalam) dalam bahasa Arab terdiri dari tiga (keterangan tempat).
bagian, yaitu: 9 ٌﺮَﺼْﻨَﻣ = isim zaman, artinya waktu menolong
1. Kata Benda (Isim) (keterangan waktu).
2. Kata Kerja (Fiil) 10 ٌﺮَﺼْﻨِﻣ = isim alat, artinya alat untuk
3. Huruf menolong.
Berdasarkan jumlahnya kata benda terdiri dari:
2.3. Konsep Parsing
10
Yuniarti, Kamus Bahasa Arab – Indonesia Online
Lexical Analyzer (scanner) bertujuan untuk
memisahkan teks yang dimasukkan menjadi bagian-
bagian atau token-token. Syntax analyzer (parser)
menghasilkan sebuah output berupa syntax tree
(pohon sintaks) dimana daunnya adalah token-token.
Sebuah grammar (sekumpulan aturan) dapat
digunakan syntax analyzer untuk menentukan
struktur dari source program. Proses pengenalan ini
disebut parsing, oleh karenanya syntax analyzer Gambar 1. Top-down parsing
sering disebut sebagai parser. 2.3.2. Bottom-up Parsing
Sebuah grammar terdiri dari sekumpulan aturan Top-down parser memiliki keterbatasan ketika
finite nonempty atau produksi yang terdapat rule yang bersifat Left-Recursive berbentuk
menspesifikasikan sintaks suatu bahasa. Grammar A A B (“untuk memparsing A, dibutuhkan
juga merepresentasikan struktur kalimat bahasa. memparsing A dan ...). Salah satu cara menangani
2.3.1. Top-down Parsing rule yang left-recursive adalah dengan bottom-up
Top-down parser membentuk sebuah pohon parsing. Bottom-up parser menerima kata-kata
parsing dimulai dari root (yaitu simbol teratas dari kemudian mengkom-binasikannya membentuk
grammar) dan berkembang menggunakan aturan- kesatuan. Pada contoh kalimat “the dog barked”,
aturan grammar. bottom-up parser akan:
Contoh sebuah grammar sederhana: Menerima sebuah kata: the.
S NP VP The adalah sebuah D.
NP D N Kata selanjutnya adalah: dog.
VP V NP Dogadalah sebuah N.
VP V DdanNmembentukNP.
D the, all, every Kata selanjutnya adalah: chase.
N dog, dogs, cat, cats Chase adalah sebuah V.
V chase, chases, see, sees Kata selanjutnya adalah: the.
Cara kerja top-down parsing dapat diilustrasikan The adalah sebuah D.
dengan contoh parsing kalimat berikut: the dog chase Kata selanjutnya adalah: cat.
the cat, maka parser akan : Cat adalah sebuah N.
mencari S. Untuk mendapatkan S, dibutuhkan DdanNmembentukNP.
sebuah NP dan VP. VdanNPmembentukVP.
Untuk mendapatkan NP, dibutuhkan sebuah D NPdanVPmembentukS.
dan N. Diagram pohon dari langkah-langkah diatas
Untuk mendapatkan D, dapat digunakan kata the. kemudian dapat dibentuk sebagai berikut:
Untuk mendapatkan N, dapat digunakan dog,
sehingga NP didapatkan.
Untuk mendapatkan VP, dibutuhkan V dan NP.
Untuk mendapatkan V, dapat digunakan chase,
sehingga VP didapatkan,
Untuk mendapatkan NP, dibutuhkan sebuah D
dan N.
Untuk mendapatkan D, dapat digunakan kata the.
Untuk mendapatkan N, dapat digunakan cat,
sehingga NP didapatkan, VP didapatkan, dan S
didapatkan pula.
Sebuah pohon digambar untuk mengilustrasikan
langkah-langkah top-down parsing pada contoh
diatas:
Gambar 2. Bottom-up parsing
11
Volume 3 No 1 Januari 2004 : 9– 16
Parser bottom-up modern menggunakan dimana α = Φ B t dan B β adalah produksi yang
i
Deterministic Finite Automaton (DFA) untuk telah dibaca. Oleh karena rightmost derivation, t
mengimplementasikan tokenizer dan state machine haruslah string dari simbol-simbol terminal.
untuk memparsing token yang terbentuk. Algoritma Sebuah grammar dikatakan LR(k) jika untuk
ini mudah diimplementasikan karena bergantung suatu input string yang diberikan, pada setiap tahap
pada tabel-tabel untuk menentukan aksi yang diambil derivasi handle β dapat dideteksi dengan memeriksa
dan transisi state/keadaan, sehingga komputasi tabel- string Φβ dan membaca simbol-simbol k pertama
tabel inilah yang menghabiskan waktu dan cukup dari string input t yang tidak dapat digunakan.
kompleks. Beberapa definisi pada konsep LR parser adalah:
DFA bersifat deterministic yang artinya dari titik Item. Yaitu produksi dengan sebuah titik (·) di
manapun hanya ada satu jalur menuju titik yang lain, produksi sisi kanan. Sebuah item dikatakan
dengan kata lain tidak ada ambiguitas dalam complete jika (·) adalah simbol yang paling
jalurnya. DFA juga bersifat finite/ terbatas, yang kanan.
artinya terdapat sejumlah titik (yang disebut state) viable prefixes, yaitu string dari simbol-simbol
dan percabangan yang tetap jumlahnya. DFA inisial pada bentuk sederhana paling kanan yang
membaca input dan memutuskan apakah sekumpulan tidak meliputi simbol pada sisi lain handle.
karakter dapat dikenali sebagai sebuah token. Viable prefix dari bentuk Φβt, dimana β
menandakan handle, adalah suatu prefiks atau
string kepala dari Φβ. Oleh karenanya jika Φβ =
u u … u, string u u … u, dimana 1 ≤ i ≤ r,
1 2 r 1 2 i
adalah viable prefix dari bentuk Φβt. Viable
prefix tidak dapat berisi simbol-simbol yang ada
di sebelah kanan handle (misalnya simbol-
simbol dalam t). Selama dalam viable prefix,
pencarian akan dilanjutkan dengan simbol
selanjutnya. Ketika telah sampai pada akhir
viable prefix terpanjang, maka posisi tersebut
Gambar 3. Contoh DFA adalah posisi kanan paling akhir dari handle.
Gambar 3 adalah sebuah contoh DFA dengan Pada titik ini akan dilakukan reduksi.
tiga state. Misal dimasukkan kata “parser”. Dari State Parser LR, seperti kebanyakan tipe parser yang
1 (state inisial), DFA berpindah ke State 2 ketika lain, adalah sebuah mesin pushdown yang
membaca “p”. Untuk karakter selanjutnya, “a”, “r”, mempunyai input sebuah string, stack, dan
“s”, “e”, dan “r”, DFA berjalan terus (loop) ke State mekanisme finite-control. Mekanisme ini adalah
2. mesin finite-state dengan banyak state. State read
Secara desain, tokenizer akan berusaha menyebabkan terjadinya transisi dari satu state ke
mencocokkan sepanjang mungkin kumpulan karakter state yang lain ketika membaca simbol terminal atau
untuk diputuskan sebagai sebuah token. Setiap kali nonterminal.
sebuah token berhasil diidentifikasi, akan segera Aksi yang dapat dilakukan dalam parser LR
dialihkan ke parser engine dan tokenizer akan antara lain:
kembali ke state awal. 1. shift, mentransfer input selanjutnya ke dalam
Salah satu metode bottom-up parsing yakni LR stack
parsing. LR parsing membaca masukan dari kiri ke 2. reduce, untuk X w, gantikan w dengan X
kanan dan bertujuan untuk menemukan rightmost pada stack
derivation. (L mengindikasikan left, R 3. accept, string yang dimasukkan termasuk dalam
mengindikasikan rightmost derivation). Pencarian grammar bahasa
dilakukan dari kiri ke kanan sampai ditemukan 4. error, string yang dimasukkan tidak termasuk
sebuah handle, yakni sebuah frase untuk me-reduce dalam grammar bahasa
selanjutnya. Sebuah grammar G adalah grammar LR(0) jika:
Sebuah parser LR mengkonstruksi kebalikan a. Simbol start dari grammar ini tidak terdapat di
dari rightmost derivation sebuah string input. Sebuah semua produksi sebelah kanan
grammar G memiliki simbol start S. Untuk sebuah b. Untuk setiap viable prefix γ dari G, jika A α ·
string input x, maka rightmost derivation dari input adalah item yang complete dan valid untuk γ,
ini adalah: maka tidak terdapat item complete yang lain
Sα α …α α = x dengan sebuah terminal di sebelah kanan titik (·)
1 2 m-1 m yang valid untuk γ.
dimana nonterminal paling kanan pada masing- Sebuah parser LR(k) membaca string input yang
masing α untuk setiap 1 ≤ i < m, adalah yang dipilih
i, diberikan dari kiri ke kanan dan mengkonstruksi
untuk ditulis. Representasi dari langkah derivasi ini kebalikan dari rightmost derivation string tersebut.
adalah dalam bentuk: Sebuah parser LR(k) membuat semua keputusan
Φ B t Φ β t
12
no reviews yet
Please Login to review.