Abstraksi dokumen menggunakan analisis kausalitas knowledge graph

(1)

ABSTRAKSI DOKUMEN MENGGUNAKAN

ANALISIS KAUSALITAS

KNOWLEDGE GRAPH

R ZAINAL ARIFIN F S

SEKOLAH PASCA SARJANA

INSTITUT PERTANIAN BOGOR

BOGOR

2009


(2)

ABSTRACT

R ZAINAL ARIFIN F S, 2009. Document Abstraction Using Knowledge Graph Causative Analysis. Under direction of JULIO ADISANTOSO and SRI NURDIATI

Generally, summary of a document is in the format of plain text. Functionally, this summary is able to facilitate information seekers in finding the desired information, but visually, the summary text form needs an extra energy to understand. This is because the electronic summary (which is formed by the system) will return some form of sentences that are not standard. The research will be focused on making early stages of text abstraction using knowledge graph. In this case, the knowledge graph relation which will be focused on a causal relationship. There are 3 rules in Indonesian causal relationship. They are [n]+[v][n]+, [n][v][n]+([v][n]+)*[conj.]*[n]+, and [v][n][definitive][n]+. The study showed that 46% of an extracted text could be identified.


(3)

RINGKASAN EKSEKUTIF

R ZAINAL ARIFIN F S, 2009. Abstraksi Dokumen Menggunakan Analisis Kausalitas Knowledge Graph. Di bawah bimbingan JULIO ADISANTOSO dan SRI NURDIATI.

Rangkuman dari suatu isi dokumen pada umumnya berupa teks biasa. Secara fungsional, rangkuman ini cukup memudahkan para pencari informasi dalam mencari informasi yang diinginkan. Namun, rangkuman membutuhkan daya pikir yang lebih besar dibandingkan rangkuman yang berbentuk visual. Hal ini dikarenakan rangkuman elektronik (yang dibentuk secara sistem) tentu akan mengembalikan beberapa hasil berupa kalimat-kalimat yang tidak baku. Penelitian yang dilakukan menganalisis relasi kausalitas dalam knowledge graph dengan tujuan untuk mereformulasi atau mengabstraksi sebuah teks.

Kalimat-kalimat yang dianalisis kausalitas akan diekstraksi terlebih dahulu dengan tujuan kalimat yang akan diabstraksi adalah kalimat-kalimat penting dari dokumen. Metode yang digunakan untuk mengekstraksi teks adalah kombinasi linear. 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. 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.

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 dilakukan pre-pemrosesan dokumen. Nilai idf menjadi lebih besar dikarenakan nilai dalam lognya adalah dua kali jumlah dokumen dalam koleksi. Oleh karena itu, dalam sebuah kalimat jika ditemukan kemunculan kata buang, bobot dari kata tersebut akan diboboti kembali dengan nilai 0,5. Pemberian bobot untuk kata buang ini memungkinkan kalimat yang memiliki banyak kata buang mengalami penurunan bobot kalimat tersebut. Pemilihan kalimat yang akan diekstraksi menggunakan nilai threshold agar kalimat-kalimat yang memiliki bobot tinggi benar-benar terpilih. Nilai threshold yang digunakan dan dianggap optimal dalam penelitian kali ini adalah 2,0.

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


(4)

bobotnya semula (penelitian ini melakukan perkalian terhadap nilai tf untuk paragraf). Rata-rata nilai kebenaran ekstraksi teks yang dihasilkan penelitian ini adalah 34%.

Proses tagging dilakukan untuk membantu pengenalan kata kerja dan kata benda pada proses berikutnya. Proses ini menggunakan bantuan Kamus Besar Bahasa Indonesia (KBBI) yang sudah disimpan ke dalam basis data. Pengenalan kata ganti kepunyaan sudah dilakukan pada proses ini untuk memunculkan kata benda yang tersembunyi dalam sebuah kata. 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”.

Analisis relasi kausalitas menggunakan metode berbasiskan aturan (rule base) yang mengacu pada jenis-jenis kalimat dalam Bahasa Indonesia, yaitu [n]+[v][n]+, [n][v][n]+([v][n]+)*[conj.]*[n]+, dan [v][n][definitive][n]+. Kata kerja dalam semua aturan di atas hanya berlaku untuk kata kerja berimbuhan “me-” dan “di-“me-”. Hal ini dilakukan karena kedua kata kerja tersebut diasumsikan yang paling relevan menjelaskan hubungan kausalitas dalam suatu kalimat lengkap. Untuk kalimat-kalimat yang tidak memiliki kata kerja “me-” dan “di-” atau tidak sesuai pola aturan kausalitas Knowledge Graph akan dihiraukan dan dianggap tidak memiliki hubungan kausalitas.

Tingkat kepuasan sistem dihitung dan dilakukan perbandingan dengan analisis secara manual yang dilakukan oleh peneliti sendiri. Cara menghitung tingkat kepuasan tersebut dilakukan dengan membandingkan jumlah analisis oleh sistem yang benar dengan analisis manual untuk satu kalimat, kemudian dibagi total jumlah analisis yang dilakukan oleh sistem. Nilai akhir untuk satu dokumen adalah nilai rata-rata dari nilai seluruh kalimat dalam satu dokumen tersebut. Penelitian ini menghasilkan tingkat kepuasan 46% dari kalimat-kalimat yang terekstraksi automatis.


(5)

ABSTRAKSI DOKUMEN MENGGUNAKAN

ANALISIS KAUSALITAS

KNOWLEDGE GRAPH

Oleh:

R ZAINAL ARIFIN F S

G651070054

Tesis

sebagai salah satu syarat untuk memperoleh gelar Magister Sains pada Program Studi Ilmu Komputer

SEKOLAH PASCA SARJANA

INSTITUT PERTANIAN BOGOR

BOGOR

2009


(6)

(7)

Judul Tesis : Abstraksi Dokumen Menggunakan Analisis Kausalitas Knowledge Graph

Nama : R Zainal Arifin F S

NIM : G651070054

Disetujui Komisi Pembimbing

Ir. Julio Adisantoso, M.Kom Dr. Ir. Sri Nurdiati, M.Sc Ketua Anggota

Diketahui

Ketua Program Studi Dekan Sekolah Pascasarjana

Ilmu Komputer

Dr. Ir. Agus Buono, M.Si, M.Kom Prof. Dr. Ir. Khairil A. Notodiputro, M.S


(8)

DAFTAR ISI

Halaman

ABSTRAK ... i

RINGKASAN EKSEKUTIF... ii

LEMBAR PENGESAHAN ... iii

LEMBAR PERNYATAAN ... iv

RIWAYAT HIDUP ... v

KATA PENGANTAR ... vi

DAFTAR ISI ... vii

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... ix

DAFTAR LAMPIRAN ... x

1 PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Tujuan ... 4

1.3 Manfaat ... 4

1.4 Ruang Lingkup ... 4

2 TINJAUAN PUSTAKA ... 5

2.1 Pemotongan Teks ... 5

2.2 Jenis Sistem Pemotongan Teks ... 5

2.3 Analisis Frase ... 6

2.4 Recall and Precision ... 7

2.5 Pre-proses Dokumen ... 7

2.6 Pembobotan... 8

2.7 Stemming ... 9

2.8 Graf ... 10


(9)

2.10 Interpretasi Knowledge Graph ... 11

2.11 Arti Imbuhan dalam Bahasa Indonesia ... 11

2.12 Peringkasan Teks... 15

2.13 Pembentukan Kalimat ... 15

2.14 Dynamic-Link Library ... 17

3 METODE PENELITIAN ... 19

3.1 Tahap Pembentukan Knowledge Graph ... 19

3.2 Analisis Frase ... 20

3.3 Stemming ... 21

3.4 Knowledge Base ... 21

3.5 Peringkasan Teks... 22

3.6 Analisis Relasi Kausalitas (Causative) ... 22

3.7 Representasi Graf ... 22

3.8 Evaluasi Peringkasan Teks ... 23

3.9 Lingkungan Pengembangan ... 23

3.10 Waktu dan Tempat Penelitian ... 23

4 HASIL DAN PEMBAHASAN ... 24

4.1 Pre-pemrosesan Dokumen ... 24

4.2 Parsing ... 25

4.3 Proses Ekstrasi Kalimat ... 26

4.4 Analisis Kausalitas ... 31

4.5 Tingkat Kepuasan Sistem ... 36

4.6 Dynamic-Link Library ... 36

5 SIMPULAN DAN SARAN ... 38

5.1 Simpulan ... 38

5.2 Saran ... 38

DAFTAR PUSTAKA ... 39


(10)

DAFTAR GAMBAR

Halaman

1 Representasi Tabel tRelasiKK dalam Basis Data ... 21

2 Representasi Kausalitas dari Dua Node ... 23

3 Sub Judul yang Terekstraksi Sebagai Kalimat Inti ... 30


(11)

DAFTAR TABEL

Halaman 1 Nilai Kebenaran Hasil Ektraksi Teks ... 30 2 Tabel Perbandingan Hasil Analisis Sebab Akibat

oleh Sistem dan Manual ... 35 3 Nilai Akurasi 15 Dokumen Pengujian ... 36


(12)

© Hak cipta milik IPB, tahun 2009

Hak cipta dilindungi Undang – Undang

1. Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber :

a. Pengutipan hanya untuk kepentingan pendidikan, penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik atau tinjauan suatu masalah.

b. Pengutipan tidak merugikan kepentingan yang wajar IPB.

2. Dilarang mengumumkan dan memperbanyak sebagian atau seluruhnya karya tulis ini dalam bentuk apapun tanpa izin IPB.


(13)

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA TESIS INI ADALAH BENAR-BENAR HASIL KARYA SAYA SENDIRI YANG BELUM

DIGUNAKAN SEBAGAI TESIS ATAU KARYA ILMIAH PADA

PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.

Bogor, November 2009

R Zainal Arifin Fandi Saputra G651070054


(14)

RIWAYAT HIDUP

Penulis bernama R Zainal Arifin Fandi Saputra, lahir pada tanggal 3 Januari 1985 di Surakarta. Penulis adalah anak kedua dari tiga bersaudara, dari pasangan Drs. H. Subandi dan Hj. Dyah Farida. Jenjang pendidikan penulis, pada tahun 1996 penulis menamatkan sekolah dasar pada SDN Pengadilan III Bogor, kemudian melanjutkan ke SLTP Negeri IV Bogor dan lulus pada tahun 1999. Pada tahun yang sama penulis diterima di SMUN V Bogor dan lulus pada tahun 2002.

Pada tahun 2002 penulis melanjutkan studinya di Institut Pertanian Bogor (IPB) melalui jalur Undangan Seleksi Masuk IPB (USMI) dan diterima sebagai mahasiswa Program Studi Ilmu Komputer pada Fakultas Matematika dan Ilmu Pengetahuan Alam. Pada tahun 2007, penulis melanjutkan pendidikan pada program Pasca Sarjana Magister Ilmu Komputer Institut Pertanian Bogor. Saat ini penulis bekerja sebagai technical consultant pada PT. Graha Technosoft Informatika.


(15)

KATA PENGANTAR

Pertama-tama penulis ucapkan puji dan syukur kepada Allah SWT atas segala rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan penyusunan tesis ini. Judul penelitian ini adalah ”Abstraksi Dokumen Menggunakan Analisis Kausalitas Knowledge Graph”. Penelitian ini disusun oleh penulis sebagai salah satu syarat untuk meraih gelar Magister Sains pada program pasca sarjana Ilmu Komputer, Institut Pertanian Bogor.

Penulis mengucapkan terima kasih yang sebesar-besarnya kepada beberapa pihak yang telah memberikan bantuan dalam penyelesaian tesis ini, antara lain:

1. Ir. Julio Adisantoso, M.Kom dan Dr. Ir. Sri Nurdiati, M.Sc selaku pembimbing tesis yang telah memberikan bimbingan baik secara teknis maupun teoritis dalam proses penyusunan sehingga dapat diselesaikan dengan baik.

2. Ahmad Ridha, S.Kom, MS selaku penguji dalam sidang tesis yang telah memberikan kritik dan saran yang sangat berharga dalam penyempurnaan tesis ini.

3. Kedua orang tua penulis Drs. H. Subandi dan Hj. Dyah Farida yang selalu mencurahkan kasih sayang serta mendukung dan mendoakan penulis setiap waktu.

4. Istri penulis Ratna Widyaningsih, S.Kom yang selalu memberikan dukungan dan doa setiap waktu.

5. Mas Ishal yang selalu menjadi panutan adik-adiknya dalam meraih kesuksesan, Risa Fandi Febrina yang selalu memberikan dukungan dan motivasi kepada penulis.

6. Bapak Freddy Tandiary dan Ibu Lily Alie yang telah memberikan saya waktu dan kesempatan untuk melanjutkan studi saya, serta rekan-rekan di PT. Graha Technosoft Informatika yang telah banyak memberikan waktu luang untuk saya kuliah ketika project.

7. Teman-teman angkatan 9, terima kasih atas persahabatan yang indah selama penulis menuntut ilmu di program pasca sarjana ini.


(16)

8. Pak Ruhiyan yang telah banyak membantu penulis dalam menyelesaikan segala macam administrasi-administrasi semasa kuliah. 9. Semua pihak yang telah membantu demi kelancaran tesis ini.

Mudah-mudahan tesis ini bermanfaat bagi penulis dan pihak lain yang membutuhkan.

Bogor, November 2009

R Zainal Arifin Fandi Saputra G651070054


(17)

BAB 1 PENDAHULUAN

1.1. Latar Belakang

Resume atau rangkuman dari suatu dokumen biasanya satu bagian dari dokumen yang pertama kali dibaca oleh pembeli atau peminjam dokumen tersebut. Rangkuman dari dokumen ini biasanya dibuat oleh si pembuat dokumen tersebut atau dengan menyewa tenaga ahli. Rangkuman yang baik akan menambah daya jual dari dokumen tersebut.

Rangkuman dari suatu isi dokumen pada umumnya berupa teks biasa. Secara fungsional, rangkuman ini cukup memudahkan para pencari informasi dalam mencari informasi yang diinginkan. Para pencari informasi tersebut akan membaca isi rangkuman dari situs-situs yang ditemu-kembalikan sebelum mengunduh informasi dari situs tersebut. Secara visual, rangkuman berupa teks mampu melelahkan daya pikir para pencari informasi. Hal ini dikarenakan rangkuman elektronik (yang dibentuk secara sistem) tentu akan mengembalikan beberapa hasil berupa kalimat-kalimat yang tidak baku. Kondisi ini cukup wajar karena rangkuman yang tidak elektronik saja terkadang mampu memusingkan pembaca jika penulis rangkuman bukan merupakan seorang yang ahli dalam hal pembentukan rangkuman yang baik dalam bahasa Indonesia.

Penelitian sebelumnya mengenai peringkasan teks ini sudah pernah dilakukan. Metode yang digunakan adalah rantai leksikal dan Ekstraksi Paragraf Bushy Path. Rantai leksikal digunakan untuk memeroleh kata kunci pada setiap segmen teks dan ekstraksi busy path sebagai algoritme pembangkitan peringkasan teks. Keunggulan rantai leksikal dalam memeroleh kata kunci pada setiap segmen adalah algoritme yang tidak hanya memertimbangkan elemen dengan jumlah perulangan yang banyak tapi juga mempertimbangkan relasi antara kata dalam setiap segmen, sedangkan ekstraksi paragraf memiliki keunggulan dalam hal tingkat keterbacaaan yang lebih baik dibandingkan dengan ekstraksi kalimat yang umumnya digunakan. Sistem dievaluasi dengan membandingkan hasil peringkasan sistem dan hasil peringkasan manual dari beberapa individu. Dengan menggunakan algoritme rantai leksikal dalam memeroleh representasi teks, yang


(18)

tidak hanya memerhitungkan frekuensi kata tapi juga memerhitungkan relasi antara kata, tingkat kepuasan hasil peringkasan yang dibangkitkan sistem terhadap hasil peringkasan manual sebesar 51.67% (Gill 2005).

Penelitian yang pernah dilakukan lainnya adalah ekstraksi kalimat dan mencari kedekatan antar kalimat dengan menggunakan metode stokastik berbasis graf (Erkan & Radev 2004). Peringkasan teks ekstraksi yang dikembangkan mengandalkan kalimat utama dalam paragraf atau dokumen untuk mengidentifikasi kalimat-kalimat yang paling penting dalam sebuah dokumen atau sekumpulan dokumen. Metode Lex Rank digunakan untuk menghitung tingkat kepentingan suatu kalimat berdasarkan konsep pusat vektor ciri dalam sebuah representasi graf dari suatu kalimat.

Dalam model ini, konektivitas suatu matriks berdasarkan pada kesamaan cosines intra-sentence yang digunakan sebagai matriks adjacency dari representasi graf. Hasil dari penelitian ini menunjukkan bahwa metode Lex Rank mampu memberikan hasil yang sangat baik untuk teknik yang berbasis centroid dan teknik-teknik berbasiskan derajat lainnya. Metode Lex Rank dengan threshold mampu menghasilkan hasil yang sangat baik pada metode berbasiskan derajat jika ditambahkan Lex Rank secara kontinu (continuous Lex Rank). Lex Rank juga tidak sensitif terhadap noise dalam data yang diakibatkan oleh tidak sempurnanya pengelompokan (clustering) topik dari suatu dokumen.

Rangkuman dari sebuah dokumen yang dihasilkan oleh suatu sistem peringkasan teks automatis biasanya akan mengalami kesulitan pada bagian mengabstraksi teks. Bagian abstraksi teks ini merupakan bagian tersulit dari suatu usaha peringkasan teks automatis. Proses abstraksi biasanya dilakukan setelah ekstraksi kalimat berhasil dilakukan. Metode ekstraksi kalimat yang akan digunakan adalah metode kombinasi linear. Metode kombinasi linear ini sudah pernah dilakukan untuk permasalahan question answering system (Li 2000). Li menggabungkan teknik sintaktik dan heuristik untuk mendapatkan nilai akhir dari sebuah jawaban. Pada sistem question answering sebelumnya, 94 pertanyaan mampu dijawab pada urutan teratas dari total 162 pertanyaan, sementara dengan menggunakan pendekatan sintaktik dan heuristik ini, 105 pertanyaan mampu


(19)

dijawab pada urutan teratas. Dengan pertimbangan peningkatan 11.7% dari sistem sebelumnya, metode kombinasi linear akan dicobakan untuk permasalahan ekstraksi kalimat.

Pada penelitian ini, abstraksi teks tersebut akan didekati dengan metode knowledge graph. Pemilihan teknik graf sebagai metode peringkasannya dikarenakan rangkuman dalam bentuk visual gambar secara psikis tidak membutuhkan daya pikir lebih besar daripada dalam bentuk teks. Hal ini dikarenakan satu gambar mampu merepresentasikan ribuan teks tergantung interpretasi pelihat gambar. Isi dari media visual secara rata-rata masih dapat ditangkap dalam kondisi daya pikir yang sedang lemah pada umumnya.

Sebuah graf G = (V,E) atau directed graph G= (V,A) terdiri atas sekumpulan V vertex dan sekumpulan edges E, yang saling menghubungkan vertex. Sekumpulan arah panah yang menunjukkan sepasang vertex. Graf gabungan merupakan graf yang terdiri atas edges dan arah panah. Knowledge graph terdiri atas sekumpulan verteks V dari verteks yang belum dilabeli, yang biasa disebut token (Hoede & Nurdiati 2008).

Penelitian tentang teori knowledge graph (KG) diawali oleh para peneliti yang berbasis di Universitas Twente dan Universitas Groningen sekitar dua puluh lima tahun lalu. Penelitian tersebut sampai saat ini masih terus dilanjutkan oleh beberapa peneliti dengan fokus utamanya adalah aplikasi KG untuk menganalisis teks (Blok 1997). Menurut Zhang dan Hoede (2002) teori KG merupakan teori yang sangat erat kaitannya dengan masalah natural language yaitu sistem simbol spesial yang digunakan untuk mengekspresikan ide-ide manusia dalam pembentukan informasi menjadi sebuah pengetahuan.

Knowledge graph memiliki beberapa relasi dasar, di antaranya relasi kausalitas, kesederajatan, bertautan, kesamaan, perbedaan atau ketidaksamaan, attributive, berurutan, dan ketergantungan. Kesemua relasi tersebut merupakan struktur pembentuk knowledge graph agar kesemantikan dari hasil interprestasi dapat terdefinisikan dengan baik. Penelitian ini melakukan analisis automatis salah satu relasi knowledge graph di atas sebagai usaha awal untuk melakukan abstraksi teks menggunakan metode knowledge graph, yaitu relasi kausalitas.


(20)

Pengenalan kata pokok dan relasinya di satu kalimat dalam suatu dokumen dalam ilmu teknologi informasi biasa disebut semantic. Kesemantikan suatu kalimat terkadang memiliki pemahaman yang berbeda meskipun dalam satu kalimat terdapat kata-kata yang sama dengan kalimat dalam dokumen lain. Tema dokumen merupakan suatu hal yang mampu membedakan kesemantikan dalam suatu kalimat. Untuk tahap awal, tema dokumen dalam pelatihan akan dikhususkan dalam bidang pertanian. Algoritme yang akan dicari pemecahannya adalah bagaimana hubungan kausalitas dalam suatu dokumen mampu teridentifikasi secara automatis.

1.2. Tujuan

Tujuan dari penelitian ini adalah melakukan analisis kausalitas suatu kalimat sebagai awal usaha untuk melakukan abstraksi teks menggunakan knowledge graph.

1.3. Manfaat

Manfaat dari penelitian ini adalah menyediakan awal pemikiran teknik abstraksi teks menggunakan metode knowledge graph dengan menganalisis salah satu relasi dasar dalam knowledge graph.

1.4. Ruang Lingkup

Ruang lingkup penelitian ini adalah:

1. Tema dokumen yang digunakan dalam pelatihan adalah pertanian. 2. Dokumen-dokumen yang digunakan berekstensi *.txt.


(21)

Bab 2 TINJAUAN PUSTAKA

2.1. Pemotongan Teks

Pemotongan teks merupakan proses pemilahan teks yang secara sintaktik membuat kata yang saling berhubungan menjadi anggota dari frase yang sama (Sang & Buchholz 2000). Keanggotan hasil pemotongan teks hanya dapat dimiliki oleh satu anggota pemotongan teks, sehingga hasil pemotongan teks tidak bisa saling overlap. Berikut ini adalah representasi pemotongan teks pada sebuah kalimat.

[NP Petani] [VP menggunakan] [NP orang-orangan sawah] [PP sebagai] [NP pengusir] [NP hama]

Pemotongan teks direpresentasikan sebagai sekumpulan kata di dalam tanda kurung. Kata setelah tanda kurung buka merupakan tipe pemotongan teks. Tipe-tipe pemotongan teks dapat didefinisikan sebagai berikut:

1. NP (Kata Benda) 2. VP (Kata Kerja)

3. ADVP (Kata Keterangan) dan ADJP (Kata Sifat) 4. PP (Kata Sambung)

2.2. Jenis Sistem Pemotongan Teks

Berbagai jenis sistem pemotongan teks yang sudah diimplementasikan menghasilkan beberapa hasil yang berbeda (Sang & Buchholz 2000). Algoritme pemotongan teks ini dibagi ke dalam 4 kelompok:

1. Sistem berbasiskan aturan (rules) 2. Sistem berbasiskan memori 3. Sistem statistik

4. Sistem kombinasi

Sistem yang berbasiskan aturan-aturan (rules) telah diimplementasikan dengan banyak cara, salah satunya yang menghasilkan hasil yang paling baik adalah aplikasi yang menggunakan aturan-aturan transformation-based. Sistem berbasiskan aturan yang paling banyak dikembangkan adalah sistem yang


(22)

menggunakan aturan context-sensitive dan context-free untuk menransformasi part-of-speech (POS) ke dalam pemotongan teks.

Penelitian lainnya melakukan analisis dengan menggunakan pendekatan pelatihan dengan berbasiskan memori. Penelitian ini menghasilkan nilai metrik termodifikasi berbeda yang diaplikasikan ke dalam part-of-speech (POS) yang hanya berupa informasi saja mampu bekerja lebih baik. Sistem pemotongan teks yang banyak diimplementasikan adalah yang berbasiskan metode statistik, seperti model Markov dan machine learning.

Sistem kombinasi merupakan kombinasi antara ketiga sistem sebelumnya. Beberapa contoh dari sistem ini adalah penggunaan Weighted Probability Distribution Voting (WPDV) untuk mengombinasikan hasil dari 4 WPDV pemotongan teks dan pemotongan teks yang berbasiskan memori. Performa yang paling baik dari keseluruhan jenis algoritme pemotongan teks adalah sistem kombinasi yang menggunakan metode support vector machine untuk menglasifikasi dan memprediksi pasangan-pasangan hasil pemotongan teks yang unik. Hasil dari klasifikasi tersebut akan dikombinasikan dengan algoritme dynamic programming. Nilai urutan dari teknik tersebut mampu mencapai nilai 93.48 dengan nilai precision 93.45%, dan recall 93.51%.

2.3. Analisis Frase

Frase merupakan sekumpulan kata benda atau kata kerja yang jika disatukan akan memiliki arti berbeda dengan kata dasarnya. Dengan definisi tersebut, maka dalam suatu peringkasan teks, frase jangan sampai teringkas karena akan menyebabkan arti yang berbeda. Makna dari hasil peringkasan pun bisa menjadi tidak mencerminkan isi sesungguhnya dari dokumen tersebut.

Phrase Recognizer merupakan suatu fungsi untuk mencari frase yang memiliki arti dari kalimat x berdasarkan kriteria optimal di bawah ini.

) , ) , ( , ) , (( |) ( max arg )

( x y

y k e s k e s score Y y x P y x ∈ ∈ ⊆ = ℜ

Mekanisme analisis frase yang dilakukan oleh Xavier Carreras dan Lluis Marquez (2005) dideskripsikan dengan jika terdapat kalimat x, identifikasi frase y dalam x: R : X Y. Diasumsikan terdapat dua komponen dalam fungsi ini yang


(23)

digunakan untuk pelatihan analisis frase. Pertama diasumsikan dalam fungsi P diberikan kalimat x, identifikasi setiap set kata dalam kalimat tersebut untuk menjadi kandidat frase dengan mengesampingkan arti kata dari setiap kandidat frase tersebut. Langkah kedua akan memberikan nilai kepada frase-frase yang memiliki makna dari kalimat.

2.4. Recall and Precision

Temu-kembali informasi mempunyai dua peubah untuk mengukur tingkat relevansi dari hasil yang ditemu-kembalikan. Recall merupakan peubah yang digunakan sistem temu-kembali informasi untuk membandingkan dokumen relevan yang ditemu-kembalikan dengan seluruh dokumen relevan dalam koleksi, sedangkan precision merupakan peubah untuk membandingkan dokumen relevan yang ditemu-kembalikan dengan seluruh dokumen yang telah ditemu-kembalikan (Baeza-Yates & Riberio-Neto 1999).

Untuk koleksi dokumen yang besar dan tidak terurut dengan baik, kedua peubah tersebut sulit digunakan. Nilai precision sangat tergantung pada keterurutan dokumen yang ditemu-kembalikan. Semakin terurut dokumen tersebut, semakin tinggi nilai precision (sama dengan satu).

2.5. Pre-proses Dokumen

Pre-proses dokumen merupakan sekumpulan proses operasi teks yang merupakan inisialisasi awal dari proses implementasi sistem temu-kembali informasi (Baeza-Yates & Riberio-Note 1999). Proses operasi teks tersebut dapat dibagi ke dalam lima proses utama, yang pertama dilakukan adalah analisis leksikal terhadap dokumen. Analisis leksikal adalah analisis penggunaan terhadap karakter angka, tanda kutip, tanda penghubung, dan penggunaan huruf besar dan kecil.

Tahap yang kedua adalah proses penghilangan kata buang. Contoh dari kata buang ini adalah nanti, sehingga, sementara, dan lain-lain. Tahap yang ketiga yang merupakan tahap opsional, karena tidak setiap proses temu-kembali memerlukan tahap ini, yaitu proses stemming. Proses stemming ini merupakan proses pembentukan kata dasar dari kata berimbuhan dan bersisipan.


(24)

Proses selanjutnya adalah melakukan pengindeksan untuk kata-kata yang telah melewati proses penghilangan kata buang dan stemming. Pada tahap ini juga akan dianalisis kesemantikan dari suatu kata. Tahap terakhir adalah melakukan pengkategorisasian kata atau istilah dari hasil pemrosesan pada tahap-tahap sebelumnya.

2.6. Pembobotan

Pembobotan istilah/kata dalam sistem temu kembali informasi digunakan untuk menghitung bobot dari suatu istilah/kata, baik yang terdapat dalam dokumen, maupun dalam kueri (Baeza-Yates & Riberio-Note 1999). Hasil dari pembobotan ini dapat digunakan untuk melakukan pemeringkatan istilah/kata yang sering muncul dalam suatu kluster dokumen pelatihan, sehingga hasil pencarian berdasarkan kueri yang diketikkan dapat tertemu-kembalikan secara berurut dari yang paling relevan (nilai pembobotan tertinggi) sampai ke yang kurang relevan dari sisi sistem. Dengan menggunakan pembobotan istilah/kata, penemuan kembali informasi yang relevan dengan kueri menjadi lebih akurat.

Terdapat dua langkah untuk menghitung bobot suatu istilah/kata. Langkah pertama adalah penghitungan term frequency (tf), yaitu penghitungan frekuensi kemunculan suatu istilah/katadalam cluster dokumen pelatihan, dengan rumus:

tf(t,d) = occ(t,d) / occ(tmax,d),

dengan occ(t,d) adalah kemunculan istilah/kata t dalam dokumen d, dan occ(tmax,d) merepresentasikan kemunculan kata/istilah tertinggi dalam dokumen d.

Langkah kedua adalah penghitungan inverse document frequency (idf), yaitu mengukur inverse frekuensi suatu kata/istilah yang terdapat pada dokumen di dalam koleksi pelatihan (cluster document). Hal ini dilakukan dengan pertimbangan suatu kata/istilahyang sering muncul pada banyak dokumen dalam koleksi, tidak dapat digunakan untuk membedakan dokumen yang relevan dengan yang tidak relevan. Penghitungan idf dilakukan dengan rumus:

idf(t,d) = log (N / n(t)),

dengan N adalah banyak dokumen dalam koleksi, dan n(t) adalah banyak dokumen dalam koleksi yang memiliki kata/istilah t. Setelah mendapatkan nilai tf


(25)

dan idf, kemudian dilakukan penghitungan pembobotan istilah/kata (weight), yaitu:

weight(t,d) = tf(t,d) * idf(t),

dengan weight(t,d) adalah bobot kata/istilah t dalam dokumen d (Salton & McGill 1983).

2.7. Stemming

Stemming merupakan suatu teknik untuk mereduksi suatu kata untuk mendapatkan kata dasarnya (Paice & Husk 1980). Kata yang terkena reduksi adalah kata-kata yang memiliki imbuhan. Untuk beberapa kasus, banyak sekali variasi kata dalam Bahasa Indonesia yang seperti memiliki imbuhan, namun sebenarnya imbuhan tersebut tidak terkategorikan sebagai imbuhan dalam kata. Dalam kasus seperti ini, algoritme stemmer tidak boleh mereduksi kata tersebut, karena akan menghilangkan makna dari kata tersebut. Sebagai contoh, kata-kata tersebut adalah, “mekar”, “teralis”, atau “bukan”.

Terdapat beberapa algoritme stemming yang memiliki perbedaan dari sisi performa dan akurasi, dan bagaimana beberapa rintangan atau permasalahan dalam stemming tersebut dapat teratasi. (Baeza-Yates & Riberio-Note 1999) Jenis algoritme pertama adalah algoritme table lookup (brute force). Algoritme ini memiliki tabel relasi antara kata dasar dan kata berimbuhan. Proses stemmingnya dilakukan dengan melakukan kueri ke dalam tabel, jika kata berimbuhan tersebut ditemukan, maka kata dasar yang berelasi akan ditemu-kembalikan.

Jenis algoritme kedua adalah affix removal yang berbasiskan aturan-aturan dalam stemmernya. Salah satu algoritme yang terkenal adalah Algoritme Porter. Algoritme ini melakukan pembuangan morfologi biasa dan akhiran infleksional dari kata-kata dalam Bahasa Inggris. Pemikiran utamanya adalah algoritme ini merupakan bagian dari proses normalisasi istilah yang biasa dilakukan ketika melakukan pemrosesan awal sistem Temu-kembali Informasi (Porter 1980).

Successor variety merupakan jenis algoritme stemming ketiga yang prosesnya berdasarkan penentuan batas morfem. Algoritme ini menggunakan pengetahuan (knowledge) linguistik yang struktural. Jenis algoritme stemmer yang terakhir adalah N-grams stemming, yang menggunakan identifikasi digrams dan


(26)

trigrams. Algoritme ini lebih sering melakukan prosedur pengelompokan istilah (clustering) daripada stemming-stemming yang lainnya.

2.8. Graf

Suatu graf adalah pasangan terurut (V,E) dengan V adalah himpunan berhingga dan tak kosong dari elemen-elemen graf yang disebut simpul (node, vertex) dan E adalah himpunan pasangan tak terurut dari simpul-simpul berbeda di V (Foulds 1992). Setiap {p,q} ∈ E (dengan p,q ∈ V) disebut sisi (edge) dan dikatakan menghubungkan simpul-simpul p dan q. Misalkan diberikan graf G = (V,E).

1. Jika e = {p,q} ∈ E maka p dan q masing-masing dikatakan incident dengan e.

2. Jika e = {p,q} ∈ E maka p dikatakan adjacent dengan q, dan sebaliknya. Himpunan simpul yang adjacent dengan v dinyatakan dengan (v).

3. Jika e = {p,q} ∈ E dan e’ = {p,r} ∈ E maka sisi-sisi e dan e’ dikatakan adjacent karena mempunyai simpul sekutu (“vertex common”), yaitu p. Suatu multigraf adalah pasangan terurut (V,E) dengan V adalah himpunan berhingga dan tak kosong dari simpul-simpul dan E adalah himpunan pasangan tak terurut dari simpul-simpul berbeda di V dan pengulangan diperbolehkan. Graf juga bisa diidentifikasikan memiliki arah/digraf (directed graph) jika pasangan terurut (V,A), dengan V adalah himpunan tak kosong dan hingga dan A adalah himpunan pasangan terurut elemen-elemen berbeda di V. Elemen dari A biasa disebut arc (sisi berarah). Jika (u,v) suatu arc pada suatu digraph, maka v dikatakan predecessor dari v, dan v disebut successor dari u.

Suatu graf G = (V,E) atau digraf D = (V,A) dikatakan terboboti jika terdapat fungsi w: E R atau w: A R (dengan R himpunan bilangan real) yang memadamkan setiap bilangan real (yang disebut bobot) untuk setiap sisi di E (atau A). Setiap bobot w (uv) dengan uv ∈ E atau uv ∈ A biasa dituliskan dengan wuv.

2.9. Knowledge Graph

Komposisi knowledge graph pada prinsipnya terdiri atas konsep dan relasi. Konsep dalam knowledge graph bisa dinyatakan sebagai simpul (node, vertexs),


(27)

token (simbol, tanda, karakteristik, dan sebagainya), atau sebagai tipe (Zhang & Hoede 2002). Knowledge graph ini dapat dibedakan dalam 3 hal seperti berikut: 1. Simbol menandakan adanya sebuah konsep dan dapat disejajarkan dengan

fungsi argumen dalam logika.

2. Tipe digunakan untuk memberikan nama pada sebuah konsep yang umum. 3. Pemberian contoh digunakan untuk menambahkan model atau contoh untuk

memperjelas sebuah konsep. 2.10. Interpretasi Knowledge Graph

Hasil analisis teks pada teori knowledge graph untuk satu persoalan yang sama bisa memberikan hasil yang berbeda (Ikhwati 2007). Hal ini disebabkan adanya perbedaan interpretasi yang bersifat subjektif. Oleh karena itu, untuk memerkecil perbedaan tersebut diperlukan tambahan informasi yang berupa background knowledge serta kemampuan analisis teks yang cukup baik.

2.11. Arti Imbuhan dalam Bahasa Indonesia

Ada banyak ragam pembentukan kata dalam Bahasa Indonesia. Sebagian besar kata dibentuk dengan cara menggabungkan atau menambahkan beberapa komponen yang berbeda. Beberapa imbuhan dalam Bahasa Indonesia dapat mengubah arti dari suatu kata. Selain mengubah arti dari suatu kata, penambahan imbuhan juga mampu mengubah sifat dari suatu kata.

Beberapa imbuhan dalam Bahasa Indonesia beserta arti dari penambahan imbuhan tersebut disebutkan di bawah ini: (Chaer 2006)

1. ber- : menambah prefiks ini akan membentuk verba (kata kerja) yang sering kali mengandung arti (makna) mempunyai atau memiliki sesuatu. Juga dapat menunjukkan keadaan atau kondisi atribut tertentu. Penggunaan prefiks ini lebih aktif berarti mempergunakan atau mengerjakan sesuatu. Fungsi utama prefiks "ber-" adalah untuk menunjukkan bahwa subjek kalimat merupakan orang atau sesuatu yang mengalami perbuatan dalam kalimat itu.

2. me-, meng-, menge-, meny-, mem- : menambah salah satu dari prefiks ini akan membentuk verba yang sering kali menunjukkan tindakan aktif di mana fokus utama dalam kalimat adalah pelaku, bukan tindakan atau objek


(28)

tindakan itu. Jenis prefiks ini sering kali mempunyai arti mengerjakan, menghasilkan, melakukan atau menjadi sesuatu.

3. di- : Prefiks ini mempunyai pertalian yang sangat erat dengan prefiks "me-." Prefiks "me-" menunjukkan tindakan aktif sedangkan prefiks "di-" menunjukkan tindakan pasif, di mana tindakan atau objek tindakan adalah fokus utama dalam kalimat itu, dan bukan pelaku.

4. pe- : Prefiks ini membentuk nomina yang menunjukkan orang atau agen yang melakukan perbuatan dalam kalimat. Kata dengan prefiks ini juga bisa memiliki makna alat yang dipakai untuk melakukan perbuatan yang tersebut pada kata dasarnya. Apabila kata dasarnya berupa kata sifat, maka kata yang dibentuk dengan prefiks ini memiliki sifat atau karakteristik kata dasarnya. 5. ter- : Penambahan afiks ini menimbulkan dua kemungkinan.

Jika menambahkan ke kata dasar adjektif, biasanya menghasilkan adjektif yang menyatakan tingkat atau kondisi paling tinggi (ekstrim) atau superlatif (misalnya: paling besar, paling tinggi, paling baru, paling murah).

Jika menambahkan ke kata dasar yang bukan adjektif, umumnya menghasilkan verba yang menyatakan aspek perfektif, yaitu suatu perbuatan yang telah selesai dikerjakan. Afiks ini juga bisa menunjukkan perbuatan spontanitas, yaitu suatu perbuatan yang terjadi secara tiba-tiba atau tidak disengaja (misalnya aksi oleh pelaku yang tidak disebutkan, pelaku tidak mendapat perhatian atau tindakan natural).

6. se- : menambah prefiks ini dapat menghasilkan beberapa jenis kata. Prefiks ini sering dianggap sebagai pengganti “satu” dalam situasi tertentu. Penggunaan paling umum dari prefiks ini adalah sebagai berikut:

untuk menyatakan satu benda, satuan atau kesatuan (seperti “a” atau “the” dalam Bahasa Inggris)

untuk menyatakan seluruh atau segenap


(29)

untuk menyatakan tindakan dalam waktu yang sama atau menyatakan sesuatu yang berhubungan dengan waktu

7. -an : menambah sufiks ini biasanya menghasilkan kata benda yang menunjukkan hasil suatu perbuatan. Sufiks ini pun dapat menunjukkan tempat, alat, instrumen, pesawat, dan sebagainya.

8. -i : menambah sufiks ini akan menghasilkan verba yang menunjukkan perulangan, pemberian sesuatu atau menyebabkan sesuatu. Sufiks ini sering digunakan untuk memindahkan perbuatan kepada suatu tempat atau objek tak langsung dalam kalimat yang mana tetap dan tidak mendapat pengaruh dari perbuatan tersebut. Sufiks ini pun menunjukkan di mana dan kepada siapa tindakan itu ditujukan.

9. -kan : menambah sufiks ini akan menghasilkan kata kerja yang menunjukkan penyebab, proses pembuatan atau timbulnya suatu kejadian. Fungsi utamanya yaitu untuk memindahkan perbuatan verba ke bagian lain dalam kalimat.

10. -kah : menambah sufiks ini menunjukkan bahwa sebuah ucapan merupakan pertanyaan dan sufiks ini ditambahkan kepada kata yang merupakan fokus pertanyaan dalam kalimat.

11. -lah : sufiks ini memiliki penggunaan yang berbeda dan membingungkan, tetapi secara singkat dapat dikatakan bahwa sufiks ini sering digunakan untuk memperhalus perintah, untuk menunjukkan kesopanan atau menekankan ekspresi.

12. ke-an : Konfiks ini yang paling umum digunakan dan sekitar satu dari tiap 65 kata yang tertulis dalam Bahasa Indonesia memiliki konfiks ini. Konfiks ini memiliki beberapa arti seperti di bawah ini:

membentuk nomina yang menyatakan hasil perbuatan atau keadaan dalam pengertian umum yang menyatakan hal-hal yang berhubungan dengan kata dasar

membentuk nomina yang menunjuk kepada tempat atau asal membentuk adjektif yang menyatakan keadaan berlebihan


(30)

membentuk verba yang menyatakan kejadian yang kebetulan.

13. pe-an, peng-an, peny-an, pem-an : penggunaan salah satu dari keempat konfiks ini biasanya menghasilkan suatu nomina yang menunjukkan proses berlangsungnya perbuatan yang ditunjuk oleh verba dalam kalimat.

14. per-an : menambah konfiks ini akan menghasilkan sebuah nomina yang menunjukkan hasil suatu perbuatan (bukan prosesnya) dan dapat juga menunjukkan tempat. Artinya sering menunjuk kepada suatu keadaan yang ditunjuk oleh kata dasar atau hasil perbuatan verba dalam kalimat. Keadaan ini mirip dengan yang diperoleh dengan menggunakan konfiks “ke-an”, tetapi biasanya kurang umum dan lebih konkrit atau spesifik.

15. se - nya : Konfiks ini seringkali muncul bersama-sama dengan kata dasar tunggal atau kata dasar ulangan untuk membentuk adverbia yang menunjukkan suatu keadaan tertinggi yang dapat dicapai oleh perbuatan kata kerja (misalnya: setinggi-tingginya = setinggi mungkin).

16. -nya : ada penggunaan “-nya” sebagai sufiks murni yang mengubah arti kata dasarnya. Contoh: rupanya, biasanya.

17. -nya, -ku, -mu : satuan-satuan ini bukan merupakan afiks murni. Pada umumnya satuan-satuan ini dianggap sebagai kata ganti yang menyatakan kepemilikan yang digabungkan dengan kata dasar yang mana tidak mengubah arti kata dasar. Misalnya, kata “bukuku” = buku saya, “bukumu” = buku Anda, “bukunya” = buku dia atau buku mereka. Selain sebagai kata ganti yang menyatakan kepemilikan, satuan “-nya” pun dapat memiliki fungsi untuk menunjukkan sesuatu. Misalnya, “bukunya” berarti “buku itu”, bila “-nya” berfungsi sebagai penunjuk.

Penggunaan “-nya” baik sebagai kata ganti maupun penunjuk (bukan sebagai sufiks murni) adalah sangat umum dan sekitar satu dari tiap 14 kata tertulis dalam Bahasa Indonesia memiliki satuan ini. Penggunaan “-ku” dan “-mu” bervariasi sesuai dengan jenis tulisan. Dua jenis kata ganti ini sangat umum digunakan dalam komik, cerpen dan tulisan tidak resmi lainnya, dan jarang digunakan dalam tulisan yang lebih formal seperti surat kabar dan majalah berita.


(31)

2.12. Peringkasan Teks

Peringkasan teks automatis merupakan suatu usaha untuk melakukan peringkasan terhadap dokumen. Beberapa penelitian tentang analisis kebahasaan teks tidak memerlukan kategorisasi yang mendalam dari tipe peringkasan teks yang ada. Tipe peringkasan teks tersebut dapat dibedakan sebagai berikut (Hovy et al. 1999):

1. Ekstraksi teks melakukan seleksi kalimat terhadap dokumen aslinya sementara abstraksi teks melakukan penyingkatan dan reformulasi terhadap dokumen aslinya.

2. Peringkasan generik menyajikan dari sudut pandang penulis, sementara peringkasan berbasiskan kueri lebih terfokus kepada apa yang menjadi ketertarikan pengguna.

3. Peringkasan yang informatif merefleksikan isi dari teks aslinya, menyajikan ulang argumen dalam teks, sementara peringkasan yang indikatif semata-mata hanya mengindikasikan tentang apa isi dari dokumen asli tersebut. 4. Peringkasan just-the-news hanya menyajikan fakta terbaru, meng-asumsikan

pembaca mengerti topik yang dibahas dalam dokumen tersebut, sedangkan peringkasan background lebih mengajarkan ke topik dalam dokumen tersebut.

5. Peringkasan yang netral akan berusaha untuk bersifat lebih objektif, sementara peringkasan bias mengekstraksikan dan mereformulasikan isi dokumen dari beberapa sudut pandang.

2.13. Pembentukan Kalimat

Kalimat adalah satuan bahasa yang berisi suatu “pikiran” atau “amanat” yang lengkap (Chaer 2006). Lengkap, berarti di dalam satuan bahasa yang disebut kalimat itu terdapat:

1. Unsur atau bagian yang menjadi pokok pembicaraan, yang lazim disebut dengan istilah subjek (S).

2. Unsur atau bagian yang menjadi “komentar” tentang subjek, yang lazim dengan istilah predikat (P).


(32)

3. Unsur atau bagian yang merupakan pelengkap dari predikat, yang lazim disebut dengan istilah objek (O).

4. Unsur atau bagian yang merupakan “penjelasan” lebih lanjut terhadap predikat dan subjek, yang lazim disebut dengan istilah keterangan (K). Setiap kalimat dalam struktur lahirnya (lisan/tulis) sekurang-kurangnya memiliki predikat. Dengan kata lain, jika suatu pernyataan memiliki predikat, pernyataan itu merupakan kalimat, sedangkan suatu untaian kata yang tidak memiliki predikat disebut frasa/klausa (Sugono 2009). Sementara itu menurut Chaer (2006), selain unsur subjek, predikat, objek, dan keterangan setiap kalimat harus pula dilengkapi dengan unsur intonasi. Di dalam bahasa tulis intonasi kalimat ini di lambang dengan tanda baca titik (.), tanda tanya (?), dan tanda seru (!).

Berkenaan dengan unsur klausanya, terdapat beberapa jenis kalimat yang dapat dibentuk, diantaranya (Chaer 2006):

1. Kalimat sederhana

Kalimat sederhana dibentuk dari sebuah klausa yang unsur-unsurnya berupa kata atau frase sederhana. Menurut strukturnya (adanya subjek, predikat, objek, dan keterangan) sebuah kalimat sederhana dalam bahasa Indonesia memiliki pola

(1)Subjek + Predikat

(2)Subjek + Predikat + Objek

(3)Subjek + Predikat + Objek + Keterangan (4)Subjek + Predikat + Objek + Objek 2. Kalimat luas rapatan

(1)Rapatan subjek (Subjek + Predikat + Objek + Kata Sambung + Predikat + Objek)

(2)Rapatan predikat (Subjek + Predikat + Objek + Kata Sambung + Subjek + Objek)


(33)

(3)Rapatan objek (Subjek + Predikat + Objek + Kata Sambung + Subjek + Predikat)

(4)Rapatan keterangan (Keterangan + Subjek + Predikat + Objek + Kata Sambung + Subjek + Predikat + Objek)

(5)Rapatan kompleks (Subjek + Predikat + *Objek / *Subjek + Predikat + Objek / Subjek + *Predikat + Objek)

3. Kalimat luas bersisipan (Subjek + Predikat + Objek + Predikat + Objek) 4. Kalimat luas setara

Kalimat luas setara dibentuk dari dua buah klausa atau lebih yang digabungkan menjadi sebuah kalimat, baik dengan bantuan kata penghubung ataupun tidak.

5. Kalimat luas bertingkat

Kalimat luas bertingkat dibentuk dari dua buah klausa, yang digabungkan menjadi satu. Biasanya dengan bantuan kata penghubung sebab, kalau, meskipun, dan sebagainya.

6. Kalimat luas kompleks

Kalimat luas kompleks dibentuk dari tiga klausa atau lebih yang kedudukan klausa-klausanya itu merupakan campuran dari struktur kalimat luas setara dan kalimat luas bertingkat.

7. Kalimat elips

Kalimat elips adalah kalimat yang dibentuk dari sebuah klausa yang tidak lengkap. Klausa dalam kalimat elips ini mungkin tidak bersubjek, mungkin tidak berpredikat, dan mungkin juga tidak mempunyai subjek dan predikat; yang ada hanya keterangan saja.

2.14. Dynamic-Link Library

Dynamic-link library (DLL) adalah sebuah modul yang terdiri atas fungsi-fungsi dan data yang bisa digunakan oleh modul lain (aplikasi atau DLL) (Microsoft 2009). Sebuah DLL bisa mendefinisikan dua jenis fungsi, yaitu exported dan internal. Fungsi exported diperuntukkan untuk dipanggil oleh modul


(34)

lain, sebaik jika dipanggil dari DLL yang didefinisikan. Fungsi internal biasaya diperuntukkan untuk dipanggil hanya dari DLL yang didefinisikan. DLL memberikan solusi untuk memodulasikan aplikasi sehingga fungsi-fungsi di dalamnya bisa diperbaharui dan digunakan kembali dengan lebih mudah. DLL juga membantu aplikasi dalam mengurangi kelebihan beban memori ketika beberapa aplikasi menggunakan fungsi yang sama pada satu waktu, karena meskipun setiap aplikasi menerima salinan dari data DLL, aplikasi bersama-sama menggunakan DLL tersebut (share).


(35)

BAB 3 METODE PENELITIAN

3.1. Tahap Pembentukan Knowledge Graph

Sekumpulan kata-kata dalam suatu dokumen tidak akan terepresentasi sepenuhnya ke dalam graf. Bagian inti dokumen yang akan menyebabkan kehilangan makna jika dihilangkan yang akan menjadi node dalam graf. Pengambilan bagian-bagian inti dokumen ini harus melewati beberapa tahap dengan tujuan mengurangi kehilangan makna dari beberapa kata yang dihilangkan. Salah satu jenis kata yang tidak boleh terpecah karena penghilangan bagian-bagian dokumen adalah frase.

Frase adalah sekumpulan kata dasar yang memiliki sifat kata benda atau kata kerja, yang akan memberikan makna baru ketika sekumpulan kata tersebut digabungkan. Makna baru yang dihasilkan dari penggabungan sekumpulan kata tersebut yang menjadi penyebab tidak bolehnya sekumpulan kata tersebut terhilangkan. Asumsi pengenalan frase yang digunakan dalam penelitian ini adalah sekumpulan dua kata saja. Hal ini dengan pertimbangan sebagian frase dalam Bahasa Indonesia terdiri atas dua kata.

Kamus frase yang dibentuk dari hasil pelatihan akan disimpan dalam server dan akan terus diperbaharui setiap ada dokumen pengujian yang diuji ke dalam sistem. Kamus frase ini akan berbentuk dokumen berekstensi *.txt, hal ini dengan tujuan kecepatan akses pencarian ke dokumen teks biasa lebih cepat daripada perangkat basis data yang enterprise. Selain itu, hal yang mendukung lainnya dalam penggunaan dokumen teks sebagai media penyimpanan adalah basis pengembangan aplikasi yang dalam basis desktop.

Langkah berikutnya adalah melakukan pengenalan sifat kata kerja dan pemangkasan imbuhan untuk mendapatkan kata dasarnya (stemming). Metode stemming yang akan dilakukan adalah menggunakan metode table lookup (brute force). Tabel yang dibentuk akan menggunakan bantuan Kamus Besar Bahasa Indonesia. Hal ini dilakukan untuk mendapatkan hasil yang sangat akurat dari proses stemmingnya.


(36)

Proses ekstraksi kalimat diharapkan mampu menyaring kalimat-kalimat yang benar-benar mencirikan dokumen. Hal ini dengan tujuan, proses analisis kausalitas hanya fokus pada kalimat-kalimat inti saja. Penentuan variabel-variabel yang akan digunakan sebagai perhitungan dalam kombinasi linear akan dianalisis berikut bobot untuk tiap variabelnya.

Langkah penelitian berikutnya adalah analisis kausalitas dan merepresentasikannya ke dalam graf. Analisis hubungan kausalitas ini dapat dilakukan pertama-tama dengan mengenali sifat kata kerja penghubung antara subjek dengan objeknya. Kata kerja ini akan direpresentasikan ke dalam verteks, sementara subjek dan objek akan direpresentasikan ke dalam node. Verteks-verteks dalam Knowledge Graph akan memiliki beberapa simbol berbeda untuk beberapa sifat kata kerja.

3.2. Analisis Frase

Analisis frase merupakan langkah pertama penelitian untuk mengidentifikasi setiap kemungkinan frase yang terdapat dalam dokumen. Pengenalan frase ini sangat penting dalam peringkasan teks agar kata yang seharusnya menjadi satu frase tidak teringkas. Metode yang digunakan dalam analisis frase ini adalah FR-Perceptron Learning hasil penelitian dari Carreras Xavier dan Marquez Lluis (2005).

Analisis frase ini akan melakukan pelabelan terhadap kata benda dan kata kerja. Pelabelan yang hanya sebatas kata benda dan kata kerja dilakukan dengan pertimbangan bahwa frase dibentuk oleh kata benda dan kata kerja dasar. Hasil dari analisis frase ini akan dikumpulkan dalam knowledge base, dan akan terus dilakukan pembaharuan setiap ada dokumen pengujian yang masuk.

Kamus kata benda dan kata kerja ini dibuat dari Kamus Besar Bahasa Indonesia, yang disimpan dalam 2 dokumen *.txt terpisah untuk masing-masing kamus kata benda dan kata kerja. Proses pencariannya menggunakan metode regular expressions dengan rule exact match. Hal ini dilakukan untuk memercepat proses pengidentifikasian kata benda dan kata kerja tersebut.

Aturan dalam pengidentifikasian frase ini adalah dengan menganggap setiap sederetan kata yang berurutan, tidak dipisahkan oleh tanda baca dan kata


(37)

penghubung, dan kata tersebut merupakan kata dasar yang bersifat kata benda atau kata kerja, adalah kandidat frase. Setiap kandidat frase ini akan dihitung nilai kemunculannya di semua dokumen yang ada dalam koleksi. Setelah nilai dari setiap kandidat frase ini didapat, langkah berikutnya adalah akan dilakukan penyaringan berdasarkan nilai kemunculan terkecil.

3.3. Stemming

Proses stemming perlu dilakukan dalam pre-pemrosesan sistem ini dikarenakan token-token graf yang dibentuk memerlukan kata-kata dasar dari dokumen. Selain itu, proses stemming ini akan disisipkan proses identifikasi sifat imbuhan dalam kata tersebut. Metode stemming yang dilakukan adalah table lookup (Brute Force).

Gambar 1 Representasi Table tRelasiKK Dalam Basis Data

Field makna dalam tabel tRelasiKK tersebut merepresentasikan makna verteks penghubung antar node. Makna yang akan diperbaharui sementara hanya yang bermakna kausatif (causative) atau menyebabkan tindakan aktif. Berdasarkan makna-makna imbuhan pada tinjauan pustaka di atas, imbuhan-imbuhan yang memiliki relasi dengan sifat kausalitas adalah “me-“, “meng-“, “menge-“, “meny-“, “mem-“, “di-“, “-an”, “-kan”, “pe-an”, “peng-an”, “peny-an”, “pem-an”, dan “per-an”.

3.4. Knowledge Base

Knowledge Base disini adalah media penyimpanan hasil pelatihan dokumen untuk pengenalan frase dan sifat-sifat imbuhan dari suatu kata. Knowledge Base ini akan berbentuk dokumen teks dan perangkat enterprise basis data, yang akan diperbaharui secara berkala setiap ada dokumen pengujian yang masuk. Penggunaan perangkat enterprise basis data (SQL Server / MySQL) digunakan karena metode stemming yang digunakan (table lookup), sehingga memerlukan


(38)

perangkat lunak basis data yang mampu menyimpan dengan baik jutaan data. Penyimpanan media teks biasa kurang mampu menanganinya dikarenakan objek yang akan disimpan begitu banyak. Selain itu juga diharapkan agar representasi ke dalam graf menjadi lebih cepat.

3.5. Peringkasan Teks

Sifat penyederhanaan graf yang akan melakukan reformulasi isi dokumen, mengategorikan peringkasan ini ke dalam abstraksi teks. Namun metode ekstraksi peringkasan teks melalui identifikasi kalimat utama dengan menggunakan metode kombinasi linear akan dicoba untuk menyederhanakan kalimat-kalimat yang akan direpresentasikan ke dalam graf. Variabel-variabel yang valid akan dianalisis untuk mendapatkan representasi kepentingan dari isi suatu dokumen. Nilai threshold dari bobot antara kalimat tersebut akan dianalisis untuk mendapatkan nilai optimal.

3.6. Analisis Relasi Kausalitas

Jenis relasi Knowledge Graph yang akan dianalisis adalah relasi kausalitas. Pembentuk relasi kausalitas ini adalah dengan adanya kata kerja berawalan “me-” atau “di-”, dengan dua kata benda yang mengapitnya (subjek dan objek). Pengambilan 2 jenis awalan tersebut dengan alasan hampir semua kata berimbuhan “me-” atau “di-” memiliki makna kausalitas, sementara untuk imbuhan “pe-” yang juga memiliki makna tindakan aktif, lebih sering muncul kata-kata yang bermakna pembentuk kata benda dalam beberapa dokumen. Analisis relasi kausalitas ini akan menggunakan metode berbasiskan aturan (rule base). Aturan-aturan ini akan dianalisis dari beberapa dokumen contoh yang direpresentasi manual.

3.7. Representasi Graf

Sekumpulan relasi kausalitas yang didapat dari proses sebelumnya akan semakin memudahkan dalam representasi ke dalam graf. Penerjemahan sekumpulan relasi kausalitas tersebut akan menggunakan representasi graf hasil penelitian Hoede dan Nurdiati (2008) seperti pada Gambar 2 di bawah ini.


(39)

Gambar 2 Representasi Kausalitas dari Dua Node (Hoede & Nurdiati 2008) 3.8. Evaluasi Peringkasan Teks

Evaluasi hasil analisis kausalitas akan dilakukan secara manual. Hasil analisis kausalitas automatis akan dibandingkan dengan hasil analisis manual, dan menghitung perbandingannya dengan jumlah representasi relasi kausalitas yang benar melalui representasi automatis, dengan seluruh kemungkinan relasi kausalitas yang dilakukan secara manual. Dokumen pengujian yang akan digunakan adalah minimal 15 dokumen selain dokumen pelatihan. Dokumen-dokumen yang digunakan adalah Dokumen-dokumen bagus (Dokumen-dokumen tercetak) dan dokumen dalam dunia nyata (didapat dari dunia maya).

3.9. Lingkungan Pengembangan

Lingkungan pengembangan yang akan digunakan dalam penelitian ini adalah sebagai berikut:

- Perangkat lunak: Windows XP Professional, Visual C# .Net 2008, SQL Server 2008.

- Perangkat keras: Intel® CPU T2130 @ 1.86 GHz, 1024 MB RAM.

3.10. Waktu dan Tempat Penelitian

Penelitian dilaksanakan di laboratorium Pasca Sarjana Departemen Ilmu Komputer Institut Pertanian Bogor mulai bulan Oktober 2008 sampai dengan bulan Juli 2009.


(40)

BAB 4 HASIL DAN PEMBAHASAN

4.1. Pre-pemrosesan Dokumen

Pre-pemrosesan pertama yang dilakukan adalah analisis frase dari sekumpulan dokumen pelatihan. Dari kurang lebih 1,300 dokumen pelatihan, metode FR-Perceptron mampu mengenali 15,789 frase. Seluruh frase tersebut disimpan dalam file berformat *.txt untuk mempercepat penemu-kembaliannya. Proses penemu-kembaliannya dengan menggunakan metode regular expressions karena waktu yang diperlukan untuk pembandingannya sangat cepat. Pada kamus frase yang berhasil dibentuk juga ditambahkan beberapa nama negara yang terdiri atas 2 kata.

Pengenalan frase automatis tersebut juga mengenali beberapa frase yang salah. Frase yang salah ini yaitu frase-frase yang tidak ada dalam ejaan Bahasa Indonesia yang benar. Frase-frase yang salah terkenali ini dikarenakan adanya kata-kata yang saling berdampingan yang secara kebetulan muncul lebih dari satu kali dalam satu dokumen yang disebabkan oleh adanya topik atau pembahasan yang sangat menonjol dalam satu dokumen, misalnya frase “x meter”, atau “iv menteri”. Frase “x meter” muncul dikarenakan adanya pendefinisian panjang dari suatu tanaman. Huruf x sering dijadikan simbol pengganti angka dalam matematika, sehingga dalam beberapa dokumen, huruf tersebut banyak muncul jika ada pendefinisian ukuran.

Untuk kata-kata seperti keputusan presiden atau keputusan menteri, biasanya akan muncul angka atau huruf romawi di sebelum atau sesudah kata presiden atau menteri. Dalam satu dokumen, biasanya kalimat tentang keputusan menteri atau presiden itu akan muncul lebih dari satu kali, sehingga frase “iv menteri” bisa terkenali.

Pada tahap pengindeksan, hasil pengindeksan disimpan dalam basis data karena jumlah baris yang dihasilkan sangat banyak. Tahap pengindeksan merupakan tahap akhir dalam pre-pemrosesan dokumen. Hasil pengindeksan tersebut akan digunakan untuk proses ekstraksi kalimat dan analisis kausalitas pada tahap berikutnya. Algoritme dari proses pelatihan mendapatkan kandidat frase dapat dilihat di bawah ini.


(41)

Public void getCandidatePhrase(document) For each word in a document

If (isNounType(word[i]) || isVerbType(word[i])) && (isNounType(word[i+1]) || isNounType(word[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


(42)

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 getIndexSentence(document) For each sentence in document For each word in sentence

_tempWord = getCandidateWord(word[i], word[i+1])

_IdxValue+= (TF(sentence,_tempWord)

*(_tempWord==stoplist() ? 0.5 : 1))*IDF(_tempWord) Next word

Next sentence

_IdxSentValue = _IdxSentValue / _totalWordInAdocument

Public string getCandidateWord(word1, word2) /*mencari bobot dari kata dasarnya*/ _weight1 = getWeightWord(word1)

/*mencari bobot dari kemungkinan frase*/ _weight2 = getWeightWord(word1 + “ “ + word2)


(43)

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


(44)

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 . 0

+

Nt N

)

Nilai Nt akan bernilai 0 karena tidak ditemukan kata buang tersebut dalam koleksi, sehingga rumus dalam lognya akan menjadi

5 . 0

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


(45)

(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.


(46)

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 0

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


(47)

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

Kalimat-kalimat yang telah terekstraksi melalui proses ektraksi teks akan dianalisis hubungan kausalitas yang ada dalam teks tersebut. Hubungan kausalitas dalam Bahasa Indonesia pada penelitian ini memiliki 3 aturan. Ketiga aturan tersebut didapat dari hasil analisis relasi kausalitas secara manual terhadap beberapa dokumen. Setelah melakukan analisis manual terhadap beberapa dokumen, aturan-aturan tersebut juga dilakukan pembandingan terhadap bentuk-bentuk kalimat dalam Bahasa Indonesia. Aturan tersebut dapat dilihat di bawah ini dalam notasi regular expression.

1. [n]+[v] [n]+ (kalimat sederhana)

2. [n][v][n]+([v][n]+)*[kata penghubung]*[n]+ (kalimat luas kompleks) 3. [v][n][kata definisi][n]+ (kalimat rapatan predikat)

Kata kerja dalam semua aturan di atas hanya berlaku untuk kata kerja berimbuhan “me-” dan “di-”. Hal ini dilakukan karena kedua kata kerja tersebut diasumsikan yang paling relevan menjelaskan hubungan kausalitas dalam suatu kalimat lengkap. Sebuah kalimat lengkap dalam Bahasa Indonesia memiliki subjek, predikat, dan objek. Kata kerja berimbuhan lain diabaikan dalam penelitian ini dikarenakan kontribusinya yang kecil terhadap memertegas hubungan kausalitas dalam kalimat.

Kedua kata kerja berimbuhan yang dipilih akan diberikan aturan untuk meminimalisasi kata benda yang teridentifikasi. Untuk aturan analisis yang pertama ([n]+[v] [n]+), pada kata kerja berimbuhan “di-”, kata benda ([n]) pertama hanya akan diambil satu kata benda sebelum kata kerja ([v]) pertama dengan mencari nilai indeks terbesar dari sekumpulan kata benda tersebut. Kata benda ([n]) kedua pada kata kerja berimbuhan “di-” bisa terdiri atas sekumpulan kata benda, yang seluruhnya berelasi kausalitas dengan kata benda pertama. Sebaliknya, untuk kata kerja berimbuhan “me-”, kata benda ([n]) pertama yang terdiri atas sekumpulan kata benda yang berelasi kausalitas dengan satu kata benda kedua. Penggalan algoritme di bawah ini merupakan algoritme untuk


(48)

mendefinisikan hasil CAU untuk kedua jenis imbuhan (“me” dan “di”) pada aturan pertama.

if substr(tempVerb,0,2) == “me” then for each Noun1 in NounR11

CAUResult[counter] = Noun1[i] + tempVerb + Noun2 Counter++

Next Noun1

Else if substr(tempVerb,0,2) == “di” then For each Noun2 in NounR12

CAUResult[counter] = Noun1 + tempVerb + Noun2[i] Counter++

Next Noun2 end if

Aturan analisis hubungan kausalitas yang kedua dan ketiga tidak memiliki aturan eksklusif untuk kata kerja berimbuhan “me” dan “di” tersebut. Hal ini dikarenakan kedua struktur aturan tersebut merupakan struktur kalimat yang tidak normal (subjek, predikat, dan objek), sehingga jika pada aturan ke-2, semua kata benda setelah kata kerja pertama dianggap berelasi kausalitas terhadap kata benda pertama. Penentuan tersebut berdasarkan asumsi bahwa pada kalimat panjang dengan beberapa kata kerja di dalamnya, kata kerja pertama lebih bersifat memberikan penegasan terhadap kata sebelumnya dengan memberikan beberapa kata benda dan kata kerja setelahnya. Begitu juga dengan aturan ke-3, kata kerja yang muncul di awal kalimat serta terdapatnya kata yang bermakna memberikan definisi seperti “yaitu” atau “adalah” setelah kata benda pertama memberikan makna bahwa kata benda ke-2 merupakan penjelasan terhadap kata benda pertama dengan penegasan kata kerja di awal kalimat tersebut.

Salah satu ciri dari aturan ke-2 dan ke-3 adalah adanya kata penghubung dan kata yang bersifat memberikan definisi. Pemberian bobot 0.5 pada tahap ekstraksi kalimat mempunyai tujuan untuk memberikan identifikasi kausalitas yang lebih baik untuk dokumen yang isinya banyak mendefinisikan sesuatu hal. Jika bobot yang diberikan 0 untuk kata buang tersebut, maka ada kemungkinan aturan ke-2 dan ke-3 tidak tersentuh oleh identifikasi karena semakin kecilnya kemungkinan kalimat-kalimat tersebut terekstraksi.


(49)

Penggalan algoritme di bawah ini menjelaskan bahwa aturan ke-2 dan ke-3 selalu hanya menempatkan 1 jenis kata benda pertama saja. Berbeda dengan algoritme untuk aturan ke-1 yang terdapat kondisi pengecekan imbuhan dari kata kerjanya.

For each Noun2 in NounR12

CAUResult[counter] = Noun1 + tempVerb + Noun2[i] Counter++

Next Noun2

Setiap aturan di atas, akan dicobakan untuk setiap sekumpulan kalimat yang telah terekstraksi. Penentuan aturan mana yang akan dijadikan hasil akhir ditentukan dengan skor. Skor ini didapat dari pencocokan sifat kata dari sebuah kalimat terhadap pola aturan kausalitas dalam Knowledge Graph. Setelah didapatkan skor pencocokan, hasil tersebut akan dibagi dengan total aturan dari setiap aturan Knowledge Graph. Untuk aturan pertama, nilai pembagi adalah 3, aturan kedua nilai pembaginya bernilai 7, dan aturan ketiga nilai pembaginya bernilai 4. Skor tertinggi dari setiap pola, akan dijadikan hasil akhir dari analisis kausalitas ini. Untuk kalimat-kalimat yang tidak memiliki kata kerja “me-” dan “di-” atau tidak sesuai pola aturan kausalitas Knowledge Graph akan dihiraukan dan dianggap tidak memiliki hubungan kausalitas.

Algoritme analisis hubungan kausalitas untuk ketiga aturan tersebut secara lengkap dapat dilihat pada Lampiran 4. Variabel counter1, counter2, dan counter3 merupakan sebuah penanda untuk break point dari ketiga rule kausalitas. Nilai break point ketiga counter tersebut sesuai dengan nilai pembagi untuk mendapatkan nilai akhir analisis untuk setiap aturan, yaitu 3 untuk aturan pertama, 7 untuk aturan ke-2, dan 4 untuk aturan ke-3.

Dari hasil peringkasan ektraksi kalimat di Lampiran 3, sistem mampu mengenali beberapa hubungan kausalitas. Namun, masih banyak kekurangan dari hasil analisis oleh sistem ini, seperti kata benda yang teridentifikasi sebagai subjek atau objek bukan kata benda baku. Hal ini dikarenakan pemilihan kata benda berdasarkan nilai indeks terbesar, padahal bisa saja kata benda yang relevan memiliki nilai indeks yang lebih kecil dari kata benda yang tidak relevan. Kata benda tidak relevan yang memiliki nilai indeks tinggi biasanya lebih bersifat ke kata sambung, seperti kata ‘karena’ dan ‘diri’. Kata ‘karena’ merupakan kata yang


(1)

01298 0,030704 rasa

01298 0,090754 rasa percaya 01298 0,039216 sadar 01298 0,249115 salt bush 01298 0,110524 sama sekali 01298 0,05695 sampai ke 01298 0,082902 sampai tahun 01298 0,105473 satu tim 01298 0,058844 sebar 01298 0,06065 sedia 01298 0,034836 sehat 01298 0,05695 selenggara 01298 0,350174 selesai 01298 0,093432 semak belukar 01298 0,066671 sewa

01298 0,036611 sifat 01298 0,043545 sisa

01298 0,072517 sistem produksi 01298 0,105473 spesies pohon 01298 0,096599 struktur sosial 01298 0,051257 suai, bersuai 01298 0,134736 sumber daya 01298 0,075217 tahan 01298 0,091877 tahu 01298 0,024298 tambah 01298 0,067647 tanam 01298 0,055918 tanggap 01298 0,035811 tani 01298 0,085178 tantang 01298 0,045818 tanya 01298 0,128012 tarik

01298 0,090754 teknologi produksi 01298 0,155802 teliti

01298 0,058844 tempat 01298 0,08139 tempat tinggal 01298 0,084888 temu

01298 0,249115 temu lapang 01298 0,032691 tengah 01298 0,032003 terap 01298 0,059219 terbit 01298 1,020522 ternak 01298 0,100475 tiga prinsip 01298 0,062306 tiga tahun 01298 0,013901 tingkat 01298 0,050258 tuju, menuju 01298 0,093432 tujuh tahun 01298 0,055918 tukar 01298 0,063013 tumbuh

01298 0,105473 tumbuh kembali 01298 0,054021 tunggu

01298 0,169327 ubah 01298 0,042745 uji 01298 0,054323 uji coba 01298 0,092392 urus 01298 0,049472 usaha


(2)

01298 0,105473 vegetasi alami 01298 0,055587 wakil

01298 0,124558 waktu paling 01299 0,041184 ada

01299 0,08347 air di 01299 0,043833 air tanah 01299 0,037759 akar 01299 0,050924 akhir 01299 0,026661 alam

01299 0,08897 anakan batang 01299 0,052434 anggota keluarga 01299 0,020115 atur

01299 0,007246 bagi 01299 0,015593 baik 01299 0,02182 beda 01299 0,109133 bendung 01299 0,069655 beri

01299 0,071768 biaya usaha 01299 0,038586 buah 01299 0,063167 buah kakao 01299 0,019641 buka 01299 0,050615 bukit 01299 0,02655 bukti 01299 0,056223 bulan juli 01299 0,08897 bulan panen 01299 0,056223 buluh 01299 0,04289 busuk 01299 0,026942 butuh 01299 0,159595 camat 01299 0,027476 campur 01299 0,030093 cipta 01299 0,024603 dan di 01299 0,027144 dapat 01299 0,01724 dasar 01299 0,024883 dekat 01299 0,08897 desa p 01299 0,058136 di akhir 01299 0,018236 di daerah 01299 0,024193 di desa 01299 0,074862 di lahan 01299 0,075338 dua batang 01299 0,020557 dusuk 01299 0,058136 dusun desa

01299 0,114286 ekonomi masyarakat 01299 0,032997 gabung

01299 0,054952 ganti 01299 0,06896 giat 01299 0,160738 hama kutu 01299 0,029462 hambat 01299 0,024742 harap 01299 0,160738 harga panen 01299 0,067223 hasil 01299 0,082391 hemat 01299 0,023477 hidup 01299 0,020912 ikut


(3)

01299 0,031827 imbang 01299 0,043197 jawa timur 01299 0,075338 jejak pak 01299 0,018658 jual

01299 0,053814 kabupaten jawa 01299 0,051377 kebun

01299 0,055003 kembang 01299 0,095245 ketua kelompok 01299 0,064824 kian

01299 0,08897 kulit daging 01299 0,045785 kurang 01299 0,095245 lahan kering 01299 0,080369 limbah kulit 01299 0,028764 luang 01299 0,036431 luas lahan 01299 0,016533 makan 01299 0,047187 masak 01299 0,030532 masalah 01299 0,028195 masuk 01299 0,080369 mei sampai 01299 0,020505 milik

01299 0,064824 minggu sekali 01299 0,052434 minhaj 01299 0,099615 muka 01299 0,075338 muncul ke 01299 0,021931 mungkin 01299 0,038165 musim hujan 01299 0,148606 naung, bernaung 01299 0,021546 oleh

01299 0,086393 pakan ternak 01299 0,036253 pandang 01299 0,321476 panen bulan 01299 0,080369 panen kayu 01299 0,080369 panen pisang 01299 0,031703 pasok 01299 0,05199 pelihara

01299 0,023928 perhati, memperhatikan 01299 0,059971 pikir

01299 0,043511 pola tanam 01299 0,068999 pola usaha 01299 0,061706 populasi hama 01299 0,057143 resap, meresap 01299 0,080369 rumpun pisang 01299 0,030589 sakit

01299 0,059216 sapi perah 01299 0,033844 satu 01299 0,051192 satu jenis 01299 0,050063 satu tahun 01299 0,042031 sebar 01299 0,063903 sebut 01299 0,024883 sehat 01299 0,023863 serang 01299 0,252669 sisip 01299 0,055661 subur 01299 0,026879 sulit


(4)

01299 0,044854 sumber air 01299 0,071635 tahan 01299 0,057722 tahun 01299 0,08897 tahun guna 01299 0,017355 tambah 01299 0,08897 tanah hama 01299 0,211397 tanam 01299 0,059685 tani 01299 0,022859 tarik 01299 0,067334 tekan 01299 0,032595 tenaga kerja 01299 0,031827 timbang 01299 0,021987 tinggi 01299 0,015003 tumbuh 01299 0,017472 turun 01299 0,02655 tutup 01299 0,017278 ubah 01299 0,04289 unsur hara 01299 0,01853 untung 01299 0,022799 urai 01299 0,032997 urus 01299 0,017669 usaha

01299 0,080369 usaha ekonomi 01299 0,080369 usaha pak 01299 0,070465 usaha tani 01299 0,045584 variasi 01300 0,075887 aju 01300 0,031269 akhir 01300 0,098223 alam

01300 0,148048 aliansi organis 01300 0,060287 alih

01300 0,06919 anggap 01300 0,081355 anggota

01300 0,075405 anggota kelompok 01300 0,087915 arti

01300 0,026695 bagi 01300 0,027056 bangun 01300 0,113422 bantu 01300 0,088156 beli 01300 0,163892 beli wortel 01300 0,083288 berat 01300 0,01833 beri 01300 0,080745 betul 01300 0,148048 biaya budi 01300 0,105263 bingung 01300 0,132204 bisa memilih 01300 0,059991 buat

01300 0,327784 budaya kelompok 01300 0,224973 budi daya 01300 0,036181 buka

01300 0,11126 cara pandang 01300 0,042671 cari

01300 0,310708 cek 01300 0,047601 coba 01300 0,03969 dagang


(5)

01300 0,031758 dasar 01300 0,102533 di tingkat 01300 0,11167 didik 01300 0,044444 dorong 01300 0,050613 ganti 01300 0,03197 gantung 01300 0,031758 giat 01300 0,039742 guna 01300 0,132204 halal 01300 0,107093 harga beli 01300 0,07108 harga jual 01300 0,10155 harus 01300 0,063729 hitung 01300 0,148048 i jawa 01300 0,163892 instan wortel 01300 0,132204 jiwa

01300 0,137483 jual 01300 0,113668 jual beli 01300 0,07108 juang, berjuang 01300 0,132204 jujur

01300 0,035757 kait 01300 0,053528 kali 01300 0,025826 kandung 01300 0,035423 kelola 01300 0,063165 kelompok tani 01300 0,113668 kelompok usaha 01300 0,204379 kemas

01300 0,050661 kembang 01300 0,046907 kendali

01300 0,132204 konsumen produk 01300 0,048464 kumpul

01300 0,091936 laku 01300 0,044444 lanjut 01300 0,086261 lapang 01300 0,133701 libat, melibat 01300 0,0286 lihat

01300 0,086029 lindung, berlindung 01300 0,034609 lingkung

01300 0,052986 luang 01300 0,13878 luar desa 01300 0,068475 maju 01300 0,27756 mana peran 01300 0,141378 minum 01300 0,075887 mitra 01300 0,041345 nyata 01300 0,036181 olah

01300 0,132204 ongkos angkut 01300 0,055835 padu

01300 0,114164 paham 01300 0,113668 pancing 01300 0,084441 pasar 01300 0,067783 pasti 01300 0,127104 patuh 01300 0,036613 perlu 01300 0,11126 perlu terus


(6)

01300 0,077394 pertama kali 01300 0,055236 pikir 01300 0,13878 proses budi 01300 0,093238 proses produksi 01300 0,088156 putus

01300 0,055236 ragam

01300 0,327784 rantai distribusi 01300 0,080799 rasa

01300 0,163892 rasa malu 01300 0,592192 rencana usaha 01300 0,107093 rp rp

01300 0,041999 rusak 01300 0,0516 sadar 01300 0,13878 satu dua 01300 0,026601 sedia 01300 0,045837 sehat 01300 0,104913 sejahtera 01300 0,163892 semangat usaha 01300 0,05211 soal

01300 0,163892 sosial ke 01300 0,126329 sumbang 01300 0,088642 sumber daya 01300 0,119413 swadaya masyarakat 01300 0,040297 tahu

01300 0,053165 tahun 01300 0,011126 tanam 01300 0,073576 tanggap 01300 0,149212 tani 01300 0,060287 tanya 01300 0,042109 tarik 01300 0,070305 tawar 01300 0,132204 teguh 01300 0,074463 temu 01300 0,083122 tentu 01300 0,084219 terap 01300 0,387713 terima 01300 0,071477 tidak 01300 0,232721 tindas 01300 0,091455 tingkat 01300 0,122936 tipu 01300 0,057732 tugas 01300 0,031828 ubah 01300 0,06827 untung 01300 0,121569 urus 01300 0,163892 waktu harga 01300 0,186476 warga desa