Public void getCandidatePhrasedocument For each word in a document
If isNounTypeword[i] || isVerbTypeword[i] isNounTypeword[i+1] || isNounTypeword[i+1] then
_temp = word[i] + “ ” + word[i+1] If notExistPhrase_temp
addToList_temp, 1 else
_sumPhrase = getFromList_temp updateList_temp, _sumPhrase
End if End if
Next word
4.2. Parsing
Proses parser atau pemisahan dari elemen-elemen pembentuk dokumen ke dalam satuan terkecil, yaitu kata, ditambahkan analisis pengenalan kata ganti
kepunyaan. Kata ganti kepunyaan yang dipisahkan dalam penelitian ini adalah “nya” dan “mu”, dimana kata ganti “nya” akan diganti menjadi kata “dia”, dan
kata ganti “mu” akan diganti menjadi kata “kamu”. Terdapat beberapa pengecualian pemisahan kata ganti tersebut karena akhiran “nya” dan “mu”
tersebut muncul di kata dasar sebagai bukan akhiran. Kata-kata dasar yang memiliki akhiran “nya” menurut Kamus Besar Bahasa Indonesia KBBI adalah
“bahwasanya”, “empunya”, “hanya”, “hanyasanya”, “kenya”, “nyanya”, “nyonya”, “punya”, “sanya”, “segianya”, “sekiranya”, “seyogjanya”, dan “tanya.
Kata-kata dasar yang memiliki akhiran “mu” diwakili oleh “ilmu”, “jamu”, “jejamu”, “jemu”, “kamu”, “kemu”, “kemumu”, “ketemu”, “mertamu”, “mu”,
“ramu”, “selumu”, “semu”, “tamu”, “temu”, “tetamu”, “timutimu”, “tumu”. Penggantian kata ganti kepunyaan ini memiliki tujuan mencoba
memunculkan subjek atau objek yang hilang dari sebuah kalimat karena tersirat dalam kata ganti tersebut. Pada proses tagging pemotongan kata, kata pengganti
ini akan dikenali sebagai kata benda, sehingga akan membantu analisis kausalitas menemukan pasangan subjek atau objeknya.
Tidak semua akhiran “nya” memiliki makna kata ganti kepunyaan selain kata-kata pengecualian yang telah disebutkan di atas, namun ada yang mempunyai
arti penegasan terhadap suatu kata. Sebagai contoh pada kata “hilangnya”, “hancurnya”, atau “rusaknya”. Algoritme pada penelitian ini tidak mampu
menangani untuk kasus akhiran “nya” yang memiliki makna selain kepunyaan.
4.3. Proses Ektraksi Kalimat
Proses ekstraksi kalimat dilakukan dengan menggunakan metode kombinasi linear dengan variabel-variabel yang digunakan adalah jenis kata kata dasar atau
frase, jenis kata buang stop list indeks kata dalam satu dokumen yang sama, dan indeks kata dalam satu paragraf yang sama. Proses ektraksi kalimat dilakukan
untuk menyaring kalimat-kalimat inti dari suatu dokumen dengan tujuan proses analisis kausalitas yang akan dilakukan setelah proses ini benar-benar hanya
kalimat pokok saja. Sesuai dengan tujuan awal yaitu untuk melakukan peringkasan teks, maka diusahakan sekecil mungkin kalimat-kalimat yang bukan
kalimat inti memberikan hasil identifikasi kausalitas. Variabel jenis kata dalam metode kombinasi linear ini digunakan untuk
mencari nilai indeks terbesar yang akan mengakumulasi nilai indeks kalimat. Pencarian nilai indeks terbesar memiliki tujuan kata-kata yang paling relevan
sebisa mungkin memiliki pengaruh besar terhadap nilai indeks kalimat. Algoritme dari penghitungan nilai indeks suatu kalimat dapat dilihat pada uraian di bawah
ini.
Public void getIndexSentencedocument For each sentence in document
For each word in sentence _tempWord = getCandidateWordword[i], word[i+1]
_IdxValue+= TFsentence,_tempWord
_tempWord==stoplist ? 0.5 : 1IDF_tempWord Next word
Next sentence _IdxSentValue = _IdxSentValue _totalWordInAdocument
Public string getCandidateWordword1, word2 mencari bobot dari kata dasarnya
_weight1 = getWeightWordword1 mencari bobot dari kemungkinan frase
_weight2 = getWeightWordword1 + “ “ + word2
maxValue = _weight1 _CandWord = word1
If maxValue = _weight2 then maxValue = _weight2
_CandWord = word1 + “ “ + word2 End if
Return _CandWord Public double TF_sentenceID, _word
Return _CountWordInAdoc
_AllWordInAdoc _CountWordInApargf _AllWordInAdoc
Penggunaan nilai maksimum untuk setiap jenis kata yang akan dicari indeksnya dikarenakan hasil yang lebih optimal daripada pemberian bobot di
setiap variabel jenis katanya lalu dijumlahkan. Pemberian bobot tersebut dapat dilihat pada rumus di bawah ini.
BobotKata = 1 _BaseWord + 0.5 _Phrase Pemberian bobot kata terbesar diberikan kepada kata dasar dikarenakan
kemunculan kata dasar dalam setiap dokumen lebih besar daripada variabel lainnya. Namun metode pemberian bobot ini menghasilkan akurasi yang lebih
lemah karena adanya kemungkinan satu kata teridentifikasi oleh 2 variabel, sementara salah satu variabel tersebut merupakan kata yang benar-benar
mencirikan isi dokumen dan bobot yang teridentifikasi untuk kata tersebut tidak bernilai 1. Kata dasar memiliki bobot terbesar yang menyebabkan suatu bobot
kata lebih didominasi oleh kata dasar, padahal beberapa frase memiliki makna yang lebih memerjelas arti dari sebuah kalimat.
Operasi maksimum yang digunakan memungkinkan lebih mencirikan kepentingan kata. Kemungkinan kata yang memiliki bobot lebih besar
diasumsikan merupakan kata pembentuk pokok pikiran utama dari dokumen tersebut karena memiliki tingkat kemunculan lebih besar. Variabel kemunculan
suatu kata dalam dokumen dan dalam paragraf yang sama memiliki tingkat kepentingan yang sama besarnya. Oleh karena itu, untuk mendapatkan nilai term
frequency tf dari satu kata, akan dikalikan antara kemunculan dalam satu
dokumen dan dalam paragraf yang sama. Untuk mendapatkan nilai inverse
document frequency idf, tidak ada proses yang berbeda dengan perhitungan
standarnya. Kemunculan kata buang membuat bobot sebuah kalimat menjadi signifikan
besar dikarenakan nilai idf dari kata buang tersebut lebih tinggi daripada kata yang memiliki kemunculan normal dalam koleksi indeks. Kata buang tidak
terdapat dalam koleksi indeks karena telah dibuang terlebih dahulu ketika melakukan pre-pemrosesan dokumen. Nilai idf menjadi lebih besar dikarenakan
nilai dalam lognya adalah dua kali jumlah dokumen dalam koleksi. Jika sebuah kata tidak ditemukan dalam koleksi, maka akan ditambahkan 0.5, seperti pada
rumus di bawah ini. Idf = Log
5 .
+ Nt
N Nilai Nt akan bernilai 0 karena tidak ditemukan kata buang tersebut dalam
koleksi, sehingga rumus dalam lognya akan menjadi 5
. N
atau 2N. Semakin tinggi nilai idf mengartikan bahwa kata tersebut dianngap penting oleh koleksi karena
kemunculannya yang tidak banyak, padahal kata buang tidak memiliki nilai kepentingan terhadap dokumen. Oleh karena itu, jika ditemukan sebuah kata
buang dalam kalimat, bobot kata yang didapat akan dikalikan 0.5, selainnya akan dikalikan 1. Pemberian bobot 0.5 untuk kata buang memungkinkan kalimat yang
memiliki banyak kata buang mengalami penurunan nilai, sehingga dapat disimpulkan bahwa semakin banyak kemunculan kata buang dalam sebuah
kalimat, maka kalimat tersebut menjadi tidak penting karena strukturnya yang tidak baku. Nilai 0.5 tersebut juga diberikan dengan tujuan analisis kausalitas
yang akan dilakukan setelah proses ini. Analisis kausalitas membutuhkan kata penghubung dan kata bersifat pemberian definisi untuk mengidentifikasi aturan
yang relevan untuk sebuah kalimat. Pembahasan lebih lanjut akan didefinisikan pada sub bab analisis kausalitas.
Proses stemming tidak dilakukan pada tahap ini, baik dalam penghitungan bobot maupun taggingnya. Hal ini dikarenakan kata kerja sangat diperlukan untuk
keperluan analisis kausalitas pada tahap setelah ekstraksi kalimat ini. Tidak digunakannya proses stemming ini juga memiliki dampak terhadap besarnya
bobot kata tersebut karena dalam koleksi tidak ditemukan kata tersebut pre-
pemrosesan dokumen menggunakan stemming, yang tentu saja akan menaikkan bobot kalimat tersebut. Semakin banyak kata berimbuhan di dalam sebuah kalimat
memiliki peluang semakin besar juga bobot kalimat tersebut. Hal ini tidak menjadi masalah karena tujuan dari penelitian ini adalah untuk menganalisis relasi
kausalitas dalam sebuah kalimat. Semakin banyak variasi kalimat yang akan dicobakan terhadap analisis kausalitas automatis ini, akan semakin banyak pula
ditemukan kekurangan dan kasus-kasus dari relasi kausalitas tersebut. Pada pre- pemrosesan dokumen, proses stemming diperlukan karena proses tersebut bersifat
umum digunakan oleh semua jenis sistem temu-kembali informasi. Setelah bobot suatu kata didapat, bobot suatu kalimat merupakan
penjumlahan dari setiap bobot kata dalam sebuah kalimat, dan kemudian dibagi jumlah kata yang terdapat pada kalimat tersebut. Setelah nilai indeks dari setiap
kalimat didapat, ditentukan nilai threshold untuk memilih kalimat mana saja yang dianggap pokok pikiran utama dari suatu dokumen. Nilai threshold yang
digunakan dan dianggap optimal dalam penelitian kali ini adalah 2,0. Dengan nilai 2,0 ini, kalimat-kalimat yang merupakan kalimat penyambung dari kalimat utama
semakin sedikit terekstraksi. Nilai 2.0 ini didapat dari melakukan eksperimen terhadap 5 dokumen bagus dokumen dari buku terbitan.
Kalimat-kalimat yang memiliki bobot besar tidak selamanya mengartikan pentingnya kalimat tersebut. Sub judul juga memiliki bobot yang besar karena
elemennya terdiri atas beberapa kata saja, sementara beberapa kata tersebut biasanya merupakan kata-kata yang memiliki tingkat kepentingan tinggi terhadap
dokumen, sehingga bobot per katanya juga tinggi. Sub judul teridentifikasi sebagai kalimat dalam suatu paragraf karena diakhiri oleh tanda titik . atau
diikuti oleh karakter carriage return dan line feed. Parameter sebuah kalimat dalam penelitian ini dikenali jika ditemukan tanda titik ., sementara paragraf
dikenali jika ditemukan karakter carriage return line feed ascii 10 dan 13. Sub judul teridentifikasi sebagai 1 kalimat dalam 1 paragraf yang sama juga
menyebabkan tingginya bobot dari kalimat ini karena nilainya dua kali dari bobotnya semula penelitian ini melakukan perkalian terhadap nilai tf untuk
paragraf. Contoh sub judul yang terekstraksi dalam sistem dapat dilihat pada Gambar 3 di bawah ini.
Gambar 3 Sub Judul yang Terekstraksi Sebagai Kalimat Inti Bobot kalimat yang besar juga terjadi untuk kasus penjabaran poin-poin.
Penggunaan penomoran, karakter alfabet, atau simbol-simbol tertentu membuat kalimat menjadi tidak baku di awal kalimatnya. Selain itu, kalimat juga terlihat
lebih sederhana namun memiliki bobot yang tinggi karena biasanya banyak terdapat kata-kata penting dalam dokumen tersebut, karena poin-poin ini biasanya
berisi rangkuman dari apa yang sudah dijelaskan sebelumnya. Tabel 1 Nilai Kebenaran Hasil Ekstraksi Teks
Nama Dokumen Nilai
dokumen1 0.25
dokumen2 0.285714286
dokumen3 0.333333333
dokumen4 0.333333333
dokumen6 0.333333333
281 0.375
agusartikel20071228.txt 0.666666667
bustafin01202008.txt 0.2
bustafin01212008.txt 0.5
bustafin01282008.txt 0.5
bustafin02212008.txt 0.5
bustafin02282009.txt 0.333333333
bustafin03242008.txt 0.25
bustafin03312008.txt 0.333333333
bustafin04282008.txt Rata-rata
0.346269841
Pengujian ekstraksi teks ini dilakukan dengan bantuan pihak ke-3 untuk melakukan pemilihan kalimat-kalimat yang dianggap penting atau layak untuk
terekstraksi. Kemudian hasil ekstraksi kalimat tersebut akan dilakukan pengecekan dengan yang dilakukan sistem. Prosentase jumlah yang benar dari
sistem berikan dengan total ekstraksi yang dilakukan manual merupakan nilai kebenaran dari hasil ektraksi tersebut. Rata-rata nilai kebenaran ekstraksi teks
yang dihasilkan penelitian ini adalah 34. Tabel 1 menunjukkan nilai kebenaran untuk tiap-tiap dokumen pengujian dan rata-rata nilai kebenarannya.
4.4. Analisis Kausalitas