• Tidak ada hasil yang ditemukan

Sistem IPOSTagger menerapkan Hidden Markov Model (HMM) untuk POS tagging. Algorima decoding yang diterapkan adalah algoritma viterbi. Algoritma viterbi digunakan untuk menentukan urutan label POS terbaik pada kalimat yang diinputkan. Proses decoding seperti pada persamaan (2) untuk decoding HMM bigram dan persamaan (3) decoding HMM trigram dilakukan dalam bentuk penjumlahan logaritma.

Sebelum sistem melakukan proses decoding HMM, sistem terlebih dulu melakukan beberapa persiapan sebagai berikut :

1. Memilih model HMM yang akan digunakan yaitu model HMM bigram atau HMM trigram.

2. Menyiapkan tagset yang akan digunakan untuk pelabelan yang didapatkan dari proses training korpus latih. Tagset yang digunakan ditunjukan pada tabel 3.

3. Menyiapkan urutan kata perkalimat yang diambil dari korpus uji dalam file korpus-final.txt yaitu korpus uji yang telah melewati proses preprocessing. Sebagi contoh kalimat dalam korpus uji yang akan diberi label misalnya adalah kalimat “Perebutan jamrud Bahia raksasa .”

4. Menyiapkan urutan kata perkalimat dengan memberikan label POS <STARTTAG> pada awal kalimat dan label POS <ENDTAG> pada akhir tiap kalimat pada model bigram dan memberikan label POS <STARTTAG>, <STARTTAG> pada awal kalimat dan label POS <ENDTAG> pada akhir kalimat pada model trigram.

Contoh (bigram): “<STARTTAG> Perebutan jamrud Bahia raksasa . <ENDTAG> ”

Contoh (trigram): “<STARTTAG> <STARTTAG> Perebutan jamrud Bahia raksasa . <ENDTAG> ”

5. Menyiapkan probabilitas emisi untuk known word (kata yang ada dalam korpus latih) dengan menggunakan file Lexicon.trn hasil dari proses

training sebelumnya. Dalam file ini akan didapatkan pasangan kata, label POS dan frekuensinya sehingga dapat digunakan untuk menghitung probabilitas emisi sesuai dengan persamaan (12). Hasil dari probabilitas emisi tiap kata akan diterjemahkan kedalam bentuk logaritma untuk memudahkan proses decoding HMM.

Tabel 6 terdiri dari 4 kolom yaitu kolom Kata yang berisi tiap kata dalam korpus latih, kolom Label POS berisi label-label POS pada tiap kata, kolom Probabilitas Emisi berisi bentuk logaritma dari persamaan (12) dan terakhir kolom Hasil yaitu hasil dari perhitungan probabilitas emisi. Nilai pada kolom Hasil probabilitas emisi ini akan digunakan untuk proses

Tabel 6: Perhitungan probabilitas emisi known word

Kata Label POS Hasil

perebutan NN log(1.0 / 1254.0) -7.1340937212 jamrud NN log(5.0 / 1254.0) -5.5246558088 jamrud NNP log(3.0 / 698.0) -5.4496068141 Bahia NNP log(3.0 / 698.0) -5.4496068141 raksasa JJ log(4.0 / 187.0) -3.8448142557 jaksa NN log(2.0 / 1254.0) -6.4409465406 Kalifornia NNP log(2.0 / 698.0) -5.8550719222 akan MD log(44.0 / 116.0) -0.9694005572 mulai MD log(4.0 / 116.0) -3.36729583 menanyai VB log(1.0 / 585.0) -6.3716118472 kepemilikan NN log(4.0 / 1254.0) -5.7477993601 sejumlah CP log(5.0 / 374.0) -4.314817885 pihak NN log(15.0 / 1254.0) -4.4260435201 untuk IN log(21.0 / 425.0) -3.0075667312 untuk SC log(32.0 / 242.0) -2.0232018234 menentukan VB log(2.0 / 585.0) -5.6784646667 mengenai IN log(5.0 / 425.0) -4.4426512565 mengenai SC log(1.0 / 242.0) -5.4889377262 Probabilitas Emisi log(Ρ(witi))

selanjutnya.

6. Menyiapkan probabilitas transisi untuk model HMM yang dipilih yaitu HMM bigram atau model HMM trigram. Jika model yang dipilih adalah HMM bigram maka sistem menghitung probabilitas transisi bigram dengan Jelinek-Mercer smoothing seperti pada persamaan (4). Proses smoothing akan menghitung nilai bigram dan unigram menggunakan file Ngram.trn yang berisi urutan label POS beserta frekuensinya dan sistem akan memberikan nilai λ = 0.2. Contoh perhitungan probabilitas transisi pada kata perebutan dan jamrud sebagai berikut:

Kata : perebutan Label POS : NN

log(Ρ(titi−1))=log(λ Ρ' (ti)+(1−λ )Ρ ' (titi−1))

log(Ρ(NN∣⟨STARTTAG ⟩))=log(0.2 Ρ ' (NN)+(1−0.2)Ρ' (NN∣⟨STARTTAG⟩)) log(Ρ(NN∣⟨STARTTAG⟩))=log(0.2∗0.22485207100591717+(1−0.2)∗0.15625) log(Ρ(NN∣⟨STARTTAG ⟩))=−1.772130891188254

Kata : jamrud Label POS : NN

log(Ρ(titi−1))=log(λ Ρ' (ti)+(1−λ )Ρ ' (titi−1))

log(Ρ(NN∣NN ))=log(0.2 Ρ' (NN)+(1−0.2)Ρ '(NN∣NN))

log(Ρ(NN∣NN ))=log(0.2∗0.22485207100591717+(1−0.2)0.3413078149920255) log(Ρ(NN∣NN ))=−1.1456514881576636

Kata : jamrud Label POS : NNP

log(Ρ(titi−1))=log(λ Ρ' (ti)+(1−λ )Ρ ' (titi−1))

log(Ρ(NNP∣NN ))=log(0.2 Ρ ' (NNP)+(1−0.2)Ρ ' (NNP∣NN))

log(Ρ(NNP∣NN ))=log(0.2∗0.12515689438766361+(1−0.2)0.0861244019138756) log(Ρ(NNP∣NN ))=−2.365195869067935

Pada contoh perhitungan diatas seperti pada probabilitas emisi nilai akan diubah kedalam bentuk logaritma. Kata perebutan dengan label POS NN sebagai kata awal akan dihitung transisinya dengan label <STARTTAG> sehingga probabilitas transisi <STARTTAG>,NN sebesar -1.772130891188254, pada kata jamrud muncul di korpus uji dengan memiliki dua kemungkinan label POS yaitu NN dan NNP keduanya masing-masing akan dicari nilai probabilitas transisinya jika sebelumnya kata perebutan berlabel POS NN. Nilai probabilitas transisi jamrud berlabel POS NN yang didahului label POS NN sebesar -1.1456514881576636 dan jamrud berlabel POS NNP yang sebelumnya didahului label POS NN sebesar -2.365195869067935.

Sedangkan Jika model yang dipilih adalah HMM trigram maka sistem akan menghitung nilai probabilitas transisi trigram dengan Linier Interpolation smoothing seperti pada persamaan (5). Pada Linier Interpolation smoothing akan dicari nilai trigram, bigram dan unigramnya dari file Ngram.trn lalu sistem akan menentukan nilai λ1 , λ2 , λ3 yang akan memberikan nilai probabilitas transisi maksimal. Perhitungan model HMM trigram dengan Linier Interpolation smoothing pada korpus uji sebagai berikut:

Kata : Perebutan Label POS: NN

log(Ρ(titi−1,ti−2))=log(λ1Ρ' (ti)+λ2Ρ' (titi−1)+λ3Ρ'(titi−1,ti−2)) log(Ρ(NN∣⟨STARTTAG ⟩, ⟨STARTTAG⟩)) =

log(λ1Ρ'(NN )+λ2Ρ' (NN∣⟨ STARTTAG⟩ )+λ3Ρ' (NN∣⟨STARTTAG ⟩, ⟨ STARTTAG ⟩)) = log(0.139033314∗0.224852071+0.273830156∗0.15625+0.5871365299∗0.3125) log(Ρ(NN∣⟨STARTTAG ⟩, ⟨STARTTAG⟩))=−1.3566266091310688

Kata : jamrud Label POS : NN

log(Ρ(titi−1,ti−2))=log(λ1Ρ' (ti)+λ2Ρ' (titi−1)+λ3Ρ'(titi−1,ti−2)) log (Ρ(NN∣NN , ⟨STARTTAG ⟩)) = log (λ1Ρ'(NN )+λ2Ρ' (NN∣NN )+λ3Ρ' (NN∣NN , ⟨STARTTAG ⟩)) log (Ρ(NN∣NN , ⟨STARTTAG ⟩)) = log(0.139033314∗0.224852071+0.273830156∗0.341307815+0.5871365299∗0.416667) log(Ρ(NN∣NN , ⟨STARTTAG ⟩))=−0.9959766737675019 Kata : jamrud Label POS : NNP

log(Ρ(titi−1,ti−2))=log(λ1Ρ' (ti)+λ2Ρ' (titi−1)+λ3Ρ'(titi−1,ti−2)) log(Ρ(NNP∣NN , ⟨STARTTAG⟩)) =

log (λ1Ρ'(NNP )+λ2Ρ' (NNP∣NN )+λ3Ρ'(NNP∣NN , ⟨STARTTAG ⟩))

log(Ρ(NNP∣NN , ⟨STARTTAG⟩)) =

log(0.139033314∗0.1251568944+0.273830156∗0.086124402+0.5871365299∗0.05) log (Ρ(NNP∣NN , ⟨STARTTAG⟩))=−2.6543967005313633

Pada contoh perhitungan diatas sama seperti perhitungan HMM bigram yang menghitung probabilitas transisi bergantung satu label POS sebelumnya model trigram bergantung pada dua label POS sebelumnya. Kata perebutan sebagai kata pertama akan didahului <STARTTAG>,<STARTTAG> sehingga nilai probabilitas transisinya -1.3566266091310688. Kata jamrud yang memiliki kemungkinan label POS NN dan NNP akan dihitung pula probabilitas transisinya bergantung pada dua label POS yang muncul sebelumnya masing-masing nilainya untuk <STARTTAG>,NN,NN yaitu -0.9959766737675019 sedangkan untuk <STARTTAG>,NN,NNP yaitu -2.6543967005313633.

7. Menyiapkan nilai state awal. Pada tahap 4 sebelumnya sistem telah memberikan label <STARTTAG> pada semua kalimat yang ada dalam korpus uji maka hanya ada satu macam label yang akan dihitung

probabilitasnya seperti pada persamaan (9). Jika semisal terdapat 5 kalimat dalam korpus uji dan masing-masing kalimat didahului dengan label <STARTTAG> maka kemungkinan label state awal adalah <STARTTAG> sebagai berikut:

log(Ρ(⟨STARTTAG ⟩))=log(5 5) log(Ρ(⟨STARTTAG⟩))=0

Dari perhitungan diatas maka didapatkan nilai state awal <STARTTAG> adalah 0.

Setelah melakukan persiapan diatas didapatkan nilai probabilitas emisi dan nilai probabilitas transisi, sistem melakukan proses decoding untuk mendapatkan urutan label yang memberikan nilai akhir terbaik. Perhitungan pada proses decoding HMM bigram sesuai persamaan (2) ditunjukkan pada tabel berikut:

Pada tabel 7 diatas terdapat 6 kolom yaitu kolom Kata berisi urutan kata yang diujikan, kolom Label POS berisi kemungkinan label POS pada kata, kolom Probabilitas Sebelumnya berisi akumulasi jumlah probabilitas sebelumnya, kolom Probabilitas Transisi berisi probabilitas transisi tiap label POS bergantung pada label POS sebelumnya, kolom Probabilitas Emisi berisis porbabilitas emisi kata dengan masing-masing label POSnya dan kolom Jumlah yang menunjukkan

Tabel 7: Hasil penghitungan decoding HMM bigram

Kata Label POS Jumlah

Perebutan NN 0 -1.7721308912 -7.134093721 -8.9062246124 jamrud NN -8.9062246124 -1.1456514882 -5.524655809 -15.576531909 jamrud NNP -8.9062246124 -2.3651958691 -5.449606814 -16.721027296 Bahia NNP -15.576531909 -2.3651958691 -5.449606814 -23.391334592 Bahia NNP -16.721027296 -0.9311865758 -5.449606814 -23.101820685 raksasa JJ -23.101820685 -4.4837810717 -3.844814256 -31.430416013 . . -31.430416013 -2.7042287617 -0.005115101 -34.139759875 Probabilitas

jumlah penambahan dari kolom probabilitas sebelumnya. Pada kata Perebutan memiliki nilai 0 pada kolom Probabilitas Sebelumnya karena nilai state awal yaitu <STARTTAG> bernilai 0.

Kata jamrud memiliki dua kemungkinan label POS yaitu NN dan label NNP, untuk menentukan label yang tepat untuk kata jamrud sistem menghitung kemungkinan untuk kata Bahia yang sebelumnya berlabel POS NN yang memiliki jumlah akhir -23.3913345925 atau NNP yang memiliki jumlah akhir -23.1018206854. Kata jamrud yang berlabel POS NNP yang mendahului kata Bahia berlabel POS NN ternyata menunjukkan hasil yang lebih baik dengan selisih 0,289513907, sehingga sistem memilih label NNP untuk label POS kata jamrud.

Gambar 10 diatas menunjukkan ilustrasi pelabelan menggunakan decoding HMM bigram. Hasil akhir dari urutan terbaik yang dihasilkan sistem adalah <STARTTAG>, NN, NNP, NNP, JJ, ., <ENDTAG>.

Sedangkan untuk proses perhitungan decoding pada model HMM trigram ditunjukkan pada tabel 8 dibawah ini.

Sama seperti decoding HMM bigram hanya saja pada kolom Probabilitas Transisi akan menghitung trigram dari urutan label POS lalu Sistem akan memilih urutan label yang menghasilkan nilai akhir terbaik. Hasil akhir pada decoding HMM bigram kata jamrud berlabel NNP memberikan nilai maksimal, namun pada decoding HMM trigram label NN yang memberikan nilai maksimal.

Gambar 11: Ilustrasi decoding HMM trigram Tabel 8: Hasil penghitungan decoding HMM trigram

Kata Label POS Jumlah

Perebutan NN 0 -1.3566266091 -7.134093721 -8.4907203303 jamrud NN -8.4907203303 -0.9959766738 -5.524655809 -15.011352813 jamrud NNP -8.4907203303 -2.6543967005 -5.449606814 -16.594723845 Bahia NNP -15.011352813 -2.3166775493 -5.449606814 -22.777637176 Bahia NNP -16.594723845 -1.1993806875 -5.449606814 -23.243711347 raksasa JJ -22.777637176 -4.4509443816 -3.844814256 -31.073395814 raksasa JJ -23.243711347 4.6174548801 -3.844814256 -31.705980482 . . -31.073395814 -1.7592669919 -0.005115101 -32.837777906 Probabilitas

Gambar 11 diatas menunjukkan ilustrasi pelabelan menggunakan decoding HMM trigram. Hasil akhir dari urutan terbaik yang dihasilkan sistem adalah <STARTTAG>, <STARTTAG>, NN, NN, NNP, JJ, ., <ENDTAG>.

Dokumen terkait