22
Penambangan Teks Makalah Individu Mata Kuliah Penambangan Data dan Intelijen Bisnis Semester Genap 2010/2011 Ivan Razela Lanin NPM: 0906593750 Program Studi Magister Teknologi Informasi Fakultas Ilmu Komputer Universitas Indonesia

Penambangan Teks (Text Mining)

Embed Size (px)

DESCRIPTION

Ikhtisar penambangan teks

Citation preview

Page 1: Penambangan Teks (Text Mining)

Penambangan Teks

Makalah Individu Mata Kuliah Penambangan Data dan Intelijen Bisnis

Semester Genap 2010/2011

Ivan Razela Lanin

NPM: 0906593750

Program Studi Magister Teknologi Informasi

Fakultas Ilmu Komputer

Universitas Indonesia

Mei 2011

Page 2: Penambangan Teks (Text Mining)

Daftar isi

Daftar isi......................................................................................................................................i

Daftar gambar.............................................................................................................................i

1. Pendahuluan........................................................................................................................1

2. Pemrosesan bahasa alami....................................................................................................1

3. Penambangan teks...............................................................................................................3

4. Proses penambangan teks...................................................................................................4

5. Alat penambangan teks.......................................................................................................7

6. Bidang penerapan penambangan teks.................................................................................8

7. Penerapan penambangan teks bahasa Indonesia.................................................................9

Daftar pustaka............................................................................................................................ii

Indeks........................................................................................................................................iii

Daftar gambar

Gambar 1. Diagram konteks proses penambangan data............................................................4

Gambar 2. Ringkasan artikel otomatis pada Bataviase..............................................................9

Gambar 3. Beranda SITTI........................................................................................................10

Gambar 4. Laman beranda Gresnews yang menunjukkan tren topik berita............................11

Page 3: Penambangan Teks (Text Mining)

Penambangan Teks 1

1. Pendahuluan

Penambangan teks (text mining) berkembang dari kebutuhan untuk memproses data tak

terstruktur (unstructured data) dalam bentuk teks. Penambangan teks diturunkan dari

penambangan data (data mining) dan karenanya banyak memiliki kesamaan metode dalam

penerapannya. Penambangan teks juga memiliki ketergantungan erat dengan bidang

pemrosesan bahasa alami (natural language processing, NLP) karena masukan yang

diolahnya adalah teks dalam bentuk bahasa alami.

Makalah ini membahas sedikit dasar NLP yang terkait, dilanjutkan dengan penjabaran

konsep, proses, dan perangkat lunak untuk penambangan teks. Makalah ditutup dengan

pembahasan penerapan penambangan teks dalam beberapa bidang umum serta contoh

penerapan untuk bahasa Indonesia.

Makalah ini diharapkan dapat menjadi dasar untuk memahami penambangan teks dan potensi

pemanfaatannya.

2. Pemrosesan bahasa alami

Pemrosesan bahasa alami (NLP) adalah penerapan ilmu komputer, khususnya kecerdasan

buatan (artificial intelligence), dan linguistik, khususnya linguistik komputasional

(computational linguistics), untuk mengkaji interaksi antara komputer dengan bahasa (alami)

manusia. NLP berupaya memecahkan masalah untuk memahami bahasa alami manusia,

dengan segala aturan gramatika dan semantiknya, dan mengubah bahasa tersebut menjadi

representasi formal yang dapat diproses oleh komputer.

Dalam penerapannya, tujuan NLP untuk memahami bahasa manusia ini memiliki banyak

tantangan, yang antara lain adalah sebagai berikut:

1. Penandaan kelas kata (part-of-speech tagging). Sulit untuk menandai kelas kata (kata

benda, kata kerja, kata sifat, dsb.) suatu kata dalam teks karena pengelasan kata sangat

bergantung kepada konteks penggunaannya.

2. Segmentasi teks (text segmentation). Penentuan segmentasi sulit dilakukan pada

bahasa tulis yang tidak memiliki pembatas kata spesifik (mis. bahasa Mandarin,

Jepang, dan Thailand) serta pada bahasa lisan yang kadang membaurkan bunyi

antarkata.

Page 4: Penambangan Teks (Text Mining)

Penambangan Teks 2

3. Disambiguasi makna kata (word sense disambiguation). Banyak kata memiliki lebih

dari satu makna, baik dalam bentuk homonim (makna berbeda dan tidak terkait, mis.

“bisa” dalam makna “dapat” dan “racun”) maupun polisemi (makna berbeda, namun

terkait, mis. “ragu” dalam makna “bimbang” dan “sangsi”). Pembedaan makna hanya

dapat dilakukan dengan melihat konteks penggunaan.

4. Ambiguitas sintaksis (syntactic ambiguity). Suatu bahasa memiliki berbagai

kemungkinan struktur kalimat. Pemilihan struktur yang paling tepat biasanya

membutuhkan gabungan informasi semantik dan kontekstual.

5. Masukan yang tak sempurna atau tak teratur (imperfect or irregular input). Aksen

dalam bahasa lisan serta kesalahan ejaan dan gramatikal dalam bahasa tulis

menyulitkan pemrosesan bahasa alami.

6. Pertuturan (speech act). Struktur kalimat saja kadang tidak dapat dengan tepat

menggambarkan maksud penutur atau penulis. Kadang gaya bahasa dan konteks

menentukan maksud yang diinginkan.

Di luar dari kesulitan-kesulitan tersebut, NLP telah berhasil diterapkan untuk berbagai tugas

yang semula hanya dapat dilakukan oleh manusia. Beberapa bidang populer dalam penerapan

NLP adalah sebagai berikut:

1. Pemerolehan informasi (information retrieval). Pencarian dokumen yang relevan,

pencarian informasi spesifik di dalam dokumen, serta pembuatan metadata.

2. Penjawaban pertanyaan (question answering). Secara otomatis menjawab pertanyaan

yang diajukan dengan bahasa alami dengan jawaban dalam bahasa alami pula.

3. Perangkuman otomatis (automatic summarization). Pembuatan versi singkat berisi

butir-butir penting dari suatu dokumen dengan menggunakan program komputer.

4. Penerjemahan mesin (machine translation). Penerjemahan otomatis dari suatu bahasa

alami ke bahasa lain.

5. Pengenalan wicara (speech recognition). Pengubahan bahasa lisan menjadi masukan

yang dikenali oleh mesin, misalnya pada pendiktean bahasa lisan kepada komputer

untuk menghasilkan bahasa tulis atau pelaksanaan suatu perintah oleh komputer

berdasarkan bahasa lisan dari manusia.

6. Sintesis wicara (speech synthesis). Pengubahan bahasa tulis menjadi bahasa lisan,

kebalikan dari pengenalan wicara.

Page 5: Penambangan Teks (Text Mining)

Penambangan Teks 3

7. Pengenalan karakter optis (optical character recognition). Pengubahan tulisan tangan

atau teks tercetak (biasanya melalui pemindai) menjadi dokumen yang dapat dikenali

oleh mesin.

8. Analisis sentimen (sentiment analysis). Ekstraksi informasi dari sumber data teks

untuk mendeteksi pandangan positif atau negatif terhadap suatu objek. Biasanya

diterapkan untuk mengidentifikasi tren opini publik terhadap suatu produk atau

perusahaan.

3. Penambangan teks

Penambangan teks adalah proses semiotomatis untuk mengekstraksi pola (informasi dan

pengetahuan yang berguna) dari sejumlah besar sumber data tak terstruktur. Penambangan

teks memiliki tujuan dan menggunakan proses yang sama dengan penambangan data, namun

memiliki masukan yang berbeda. Masukan untuk penambangan teks adalah data yang tidak

(atau kurang) terstruktur, seperti dokumen Word, PDF, kutipan teks, dll., sedangkan masukan

untuk penambangan data adalah data yang terstruktur. Penambangan teks dapat dianggap

sebagai proses dua tahap yang diawali dengan penerapan struktur terhadap sumber data teks

dan dilanjutkan dengan ekstraksi informasi dan pengetahuan yang relevan dari data teks

terstruktur ini dengan menggunakan teknik dan alat yang sama dengan penambangan data.

Area penerapan penambangan teks yang paling populer adalah:

1. Ekstraksi informasi (information extraction): Identifikasi frasa kunci dan keterkaitan

di dalam teks dengan melihat urutan tertentu melalui pencocokan pola.

2. Pelacakan topik (topic tracking): Penentuan dokumen lain yang menarik seorang

pengguna berdasarkan profil dan dokumen yang dilihat pengguna tersebut.

3. Perangkuman (summarization): Pembuatan rangkuman dokumen untuk

mengefisienkan proses membaca.

4. Kategorisasi (categorization): Penentuan tema utama suatu teks dan pengelompokan

teks berdasarkan tema tersebut ke dalam kategori yang telah ditentukan.

5. Penggugusan (clustering): Pengelompokan dokumen yang serupa tanpa penentuan

kategori sebelumnya (berbeda dengan kategorisasi di atas).

Page 6: Penambangan Teks (Text Mining)

Penambangan Teks 4

6. Penautan konsep (concept linking): Penautan dokumen terkait dengan identifikasi

konsep yang dimiliki bersama sehingga membantu pengguna untuk menemukan

informasi yang mungkin tidak akan ditemukan dengan hanya menggunakan metode

pencarian tradisional.

7. Penjawaban pertanyaan (question answering): Pemberian jawaban terbaik terhadap

suatu pertanyaan dengan pencocokan pola berdasarkan pengetahuan.

4. Proses penambangan teks

Penambangan teks memerlukan model proses standar berdasarkan praktik terbaik seperti

model CRISP-DM (Cross-Industry Standard Process for Data Mining) untuk penambangan

data. Delen & Crossland (2008) telah mengusulkan suatu diagram konteks untuk proses

penambangan teks seperti pada Gambar 1. Diagram tersebut menggambarkan masukan

(panah dari arah kiri), keluaran (panah ke arah kanan), batasan (panah dari arah atas), serta

mekanisme (panah dari arah bawah) untuk proses penambangan data. Tujuan utama dari

penambangan data adalah memproses data tak terstruktur (teks) untuk memperoleh pola yang

bermakna dan dapat ditindaklanjuti untuk pengambilan keputusan yang lebih baik.

Gambar 1. Diagram konteks proses penambangan data

Turban et.al. (2011) membagi proses penambangan data menjadi tiga urutan proses utama

sebagai berikut:

1. Pembuatan korpus. Proses ini mengumpulkan semua dokumen yang terkait dengan

topik kajian, termasuk transkripsi rekaman suara. Semua dokumen ini selanjutnya

Page 7: Penambangan Teks (Text Mining)

Penambangan Teks 5

diubah menjadi satu bentuk yang seragam (mis. berkas teks ASCII) untuk diproses

oleh komputer.

2. Pembuatan daftar istilah. Proses ini bertujuan untuk membuat daftar istilah dan

frekuensi kemunculannya dalam bentuk matriks istilah-dokumen (term-document

matrix, TDM). Beberapa hal yang harus diperhatikan dalam pembuatan daftar istilah

ini adalah sebagai berikut:

a. Kata hentian (stop words) seperti partikel “yang” atau “dan” yang ada pada

semua dokumen dan tidak memiliki daya pembeda dan harus dikecualikan dari

daftar.

b. Kamus atau istilah cakupan (include terms) berupa daftar istilah yang disusun

lebih dulu untuk disertakan dalam daftar.

c. Sinonim yang diperlakukan sebagai satu istilah (mis. “distribusi” dan

“penyebaran”);

d. Istilah khusus seperti kata majemuk (mis. “manajemen risiko”, “rekayasa

perangkat lunak”) yang diperlakukan sebagai satu kesatuan;

e. Pemangkalan (stemming) yaitu pemotongan kata untuk menemukan kata

dasarnya agar dapat mengelompokkan bentukan yang berasal dari kata dasar

yang sama (mis. “bertemu”, “menemukan”, “penemu”, dan “pertemuan”

diperlakukan sama karena sama-sama berasal dari kata dasar “temu”).

Daftar istilah yang diperoleh perlu diolah lebih lanjut dengan menentukan dua hal

sebagai berikut:

a. Pemilihan representasi indeks. Frekuensi kemunculan istilah sering kali harus

dinormalisasikan untuk mendapatkan TDM yang lebih konsisten. Metode-

metode yang sering dipakai untuk normalisasi TDM antara lain adalah (1)

frekuensi logaritmik, (2) frekuensi biner, dan (3) frekuensi dokumen inversi.

b. Pengurangan dimensi matriks. Jumlah istilah yang ditemukan sering kali harus

dikurangi agar memudahkan pengelolaan. Metode pengurangan yang dapat

dilakukan antara lain adalah (1) pemilihan istilah yang kontekstual oleh pakar,

(2) penghapusan istilah dengan kemunculan yang sangat sedikit pada sangat

sedikit dokumen, dan (3) pengubahan matriks dengan menggunakan

dekomposisi nilai tunggal (singular value decomposition, SVD).

Page 8: Penambangan Teks (Text Mining)

Penambangan Teks 6

3. Ekstraksi pengetahuan. TDM yang telah diolah dengan baik selanjutnya dapat

diekstraksi, kadang dengan tambahan data terstruktur lain, untuk mendapatkan pola

pada masalah yang dikaji. Beberapa kategori metode ekstraksi utama adalah sebagai

berikut:

a. Klasifikasi. Metode ini bertujuan untuk mengelompokkan suatu teks ke dalam

kategori yang telah dibuat. Contoh penerapan metode ini antara lain adalah

pengindeksan teks, pemfilteran spam, kategorisasi hierarkis laman web,

pembuatan metadata, deteksi genre, dll. Dua pendekatan utama dalam

klasifikasi teks adalah rekayasa pengetahuan (knowledge engineering) dan

pembelajaran mesin (machine learning). Metode rekayasa pengetahuan

menggunakan pengetahuan pakar tentang pengetahuan yang dimasukkan ke

dalam sistem baik secara deklaratif maupun dalam bentuk prosedur aturan

klasifikasi. Metode pembelajaran mesin memanfaatkan proses induktif untuk

membuat penggolong (classifier) yang belajar dari himpunan contoh yang ada.

Peningkatan pesat jumlah dokumen dan kesulitan untuk mendapatkan pakar

membuat metode pembelajaran mesin semakin menjadi metode pilihan untuk

klasifikasi.

b. Penggugusan. Metode ini bertujuan untuk mengelompokkan kumpulan objek

ke dalam kelompok–disebut gugus (cluster)–yang bermakna tanpa supervisi

dan pengetahuan sebelumnya. Contoh utama penerapan metode ini adalah

dalam perbaikan hasil penelusuran web, misalnya oleh Google, dengan asumsi

dasar bahwa dokumen yang relevan cenderung untuk lebih memiliki

kemiripan antara satu dengan yang lainnya. Dua metode penggugusan paling

populer adalah penggugusan sebar/kumpul (scatter/gather) dan kueri-khusus

(query-specific).

c. Asosiasi. Metode ini bertujuan untuk mengidentifikasi hubungan antarkonsep

yang dinyatakan dengan dua ukuran dasar: keyakinan (confidence) dan

dukungan (support). Contoh penerapannya antara lain terhadap teks literatur

web untuk mengidentifikasi keterkaitan antara wilayah penyebaran, spesies

yang terinfeksi, dan tindakan yang dilakukan pada kasus flu burung.

d. Analisis tren. Metode ini bertujuan untuk mengidentifikasi perbedaan

kecenderungan beberapa subkoleksi dari satu koleksi teks yang sama. Contoh

Page 9: Penambangan Teks (Text Mining)

Penambangan Teks 7

penambangan teks yang pernah dilakukan dilakukan dengan metode ini adalah

identifikasi evolusi topik sistem informasi yang dibahas dalam jurnal

akademis pada berbagai waktu.

5. Alat penambangan teks

Berikut ini beberapa perangkat lunak komersial dan bebas yang dapat digunakan sebagai alat

untuk melakukan penambangan teks.

A. Komersial

Berikut ini daftar beberapa perangkat lunak komersial untuk penambangan teks.

1. ClearForest http://www.clearforest.com/solutions.html

2. IBM Intelligent Miner Data Mining Suite (bagian dari IBM InfoSphere Warehouse)

http://www.ibm.com/infosphere/warehouse/

3. Megaputer TextAnalyst http://www.megaputer.com/textanalyst.php

4. SAS Text Analytics http://www.sas.com/text-analytics/

5. SPSS Text Mining for Clementine http://www.spss.com/text_mining_for_clementine/

6. Statistica Text Miner http://www.statsoft.com/products/statistica-text-miner/

7. VantagePoint http://www.thevantagepoint.com/

8. WordStat http://www.provalisresearch.com/wordstat/wordstat.html

B. Bebas

Berikut ini daftar beberapa perangkat lunak bebas untuk penambangan teks. Beberapa di

antaranya juga merupakan perangkat lunak sumber terbuka.

1. GATE (General Architecture for Text Engineering) http://gate.ac.uk/

2. LingPipe http://alias-i.com/lingpipe/

3. LPU (tadinya S-EM) http://www.cs.uic.edu/~liub/LPU/LPU-download.html

4. RapidMiner http://www.rapidminer.com/

5. UIMA http://uima.apache.org/

Page 10: Penambangan Teks (Text Mining)

Penambangan Teks 8

C. Daring

Berikut beberapa alat daring yang dapat digunakan untuk penerapan spesifik penambangan

teks.

1. Ranks.nl http://www.ranks.nl/

2. Wordle http://www.wordle.net/

6. Bidang penerapan penambangan teks

Penambangan data telah diaplikasikan dalam beberapa bidang seperti dijabarkan berikut ini.

1. Pemasaran. Penambangan teks terhadap transkripsi percakapan pusat panggilan (call

center), tulisan blog, ulasan produk oleh situs independen, dan diskusi pada forum

diskusi daring telah digunakan untuk menganalisis persepsi dan sentimen konsumen

terhadap produk atau produsen. Informasi ini dapat dipakai untuk meningkatkan

kepuasan dan nilai produk bagi pelanggan.

2. Keamanan. Penambangan teks telah digunakan antara lain sebagai sumber intelijen

dalam Perang Dingin (Echelon oleh Amerika Serikat, Australia, Inggris, Kanada, dan

Selandia Baru), pelacakan kejahatan terorganisasi lintas negara (OASIS oleh Europol,

Uni Eropa), serta pemantauan keamanan gabungan oleh FBI, CIA, dan Departemen

Keamanan AS. Selain itu, penambangan teks telah dipakai untuk mendeteksi

kebohongan terhadap pernyataan tertulis, sebagai alternatif dari metode poligraf yang

hanya dapat diterapkan untuk pernyataan lisan.

3. Biomedis. Penambangan teks berpotensi untuk memproses literatur dalam bidang ini

secara otomatis karena (1) jumlah publikasi meningkat pesat, (2) literatur bidang

medis lebih terstandardisasi dan teratur, dan (3) terminologi yang digunakan relatif

konstan dengan ontologi yang cukup baku.

4. Akademis. Penambangan teks telah dimanfaatkan oleh berbagai penerbit jurnal

akademis dan lembaga pendidikan untuk memproses basis data artikel besar yang

memerlukan pengindeksan untuk membantu para pencari informasi. Prakarsa yang

telah dilakukan pada bidang ini antara lain adalah Open Text Mining Interface

(Nature), Journal Publishing Document Type Definition (National Institute of Health),

Page 11: Penambangan Teks (Text Mining)

Penambangan Teks 9

National Centre for Text Mining (University of Manchester and Liverpool), serta

BioText (University of California, Barkeley).

7. Penerapan penambangan teks bahasa Indonesia

Berikut adalah beberapa contoh penerapan penambangan data untuk bahasa Indonesia yang

dapat ditemukan di Internet.

A. Bataviase: Perangkum berita otomatis

Bataviase <http://bataviase.co.id/> adalah situs yang membuat ringkasan atau rangkuman

berita secara otomatis. Bataviase menerapkan perangkuman otomatis dari penambangan teks

untuk membuat ringkasan berita dari berbagai surat kabar di Indonesia. Selain itu, Bataviase

juga menerapkan kategorisasi berdasarkan 19 kategori yang telah ditentukan serta pelacakan

topik dalam bentuk artikel terkait.

Gambar 2. Ringkasan artikel otomatis pada Bataviase

Page 12: Penambangan Teks (Text Mining)

Penambangan Teks 10

B. SITTI: Platform iklan kontekstual

SITTI <http://www.sitti.co.id/> adalah layanan platform iklan kontekstual yang menampilkan

iklan sesuai dengan target yang diinginkan pemasang iklan. SITTI memanfaatkan ekstraksi

informasi untuk mencari kata kunci yang terkait dengan suatu laman web dan pelacakan topik

untuk menampilkan iklan yang sesuai dengan pengunjung laman tersebut.1 Platform lain yang

memanfaatkan teknologi yang mirip dengan SITTI adalah Google AdWords.

Gambar 3. Beranda SITTI

C. Gresnews: Laboratorium penambangan teks

Gresnews <http://gresnews.com/> adalah situs yang mengorganisasikan dan menganalisis

informasi dari beberapa situs berita berbahasa Indonesia dan menyajikannya dalam berbagai

dimensi. Gresnews dapat dianggap sebagai laboratorium penambangan data karena berupaya

menggunakan semua penerapan dan metode penambangan teks seperti ekstraksi informasi,

pelacakan topik, kategorisasi, penggugusan, dan penautan konsep. Gresnews juga tampaknya

1 http://www.sitti.co.id/tentang-sitti.html

Page 13: Penambangan Teks (Text Mining)

Penambangan Teks 11

sedang mengembangkan analisis sentimen dan pengenalan entitas bernama yang juga

merupakan bagian dari penerapan NLP.2

Gambar 4. Laman beranda Gresnews yang menunjukkan tren topik berita

2 http://www.gresnews.com/about

Page 14: Penambangan Teks (Text Mining)

Penambangan Teks ii

Daftar pustaka

Berry, M.W., & Kogan, J. (2010). Text Mining: Application and Theory. Chichester: John

Wiley & Sons, Ltd.

Feldman, R., & Sanger, J. (2007). The Text Mining Handbook: Advanced Approaches in

Analyzing Unstructured Data. New York: Cambridge University Press.

Gresnews. About Gresnews. http://www.gresnews.com/about. Diambil pada 29 Mei 2011.

SITTI. Tentang SITTI. http://www.sitti.co.id/tentang-sitti.html. Diambil pada 29 Mei 2011.

Turban, E., et.al. (2011). Decision Support and Business Intelligence Systems 9th Edition.

New Jersey: Pearson Education, Inc.

Page 15: Penambangan Teks (Text Mining)

Penambangan Teks iii

Indeks

ambiguitas sintaksis (syntactic ambiguity),

2

analisis sentimen (sentiment analysis), 3

analisis tren (trend analysis), 7

asosiasi (association), 7

CRISP-DM (Cross-Industry Standard

Process for Data Mining), 4

data tak terstruktur (unstructured data), 1

dekomposisi nilai tunggal (singular value

decomposition, SVD), 6

disambiguasi makna kata (word sense

disambiguation), 2

dukungan (support), 7

ekstraksi informasi (information

extraction), 4

gugus (cluster), 7

kata hentian (stop words), 5

kategorisasi (categorization), 4

keyakinan (confidence), 7

klasifikasi (classification), 6

korpus, 5

kueri-khusus (query-specific), 7

matriks istilah-dokumen (term-document

matrix, TDM), 5

NLP → pemrosesan bahasa alami, 1

pelacakan topik (topic tracking), 4

pemangkalan (stemming), 6

pembelajaran mesin (machine learning), 6

pemerolehan informasi (information

retrieval), 2

pemrosesan bahasa alami (natural

language processing, NLP), 1

penambangan data (data mining), 1

penambangan teks (text mining), 1

penandaan kelas kata (part-of-speech

tagging), 1

penautan konsep (concept linking), 4

penerjemahan mesin (machine

translation), 3

pengenalan karakter optis (optical

character recognition), 3

pengenalan wicara (speech recognition), 3

penggolong (classifier), 7

penggugusan (clustering), 4

penjawaban pertanyaan (question

answering), 2, 4

perangkuman (summarization), 3, 4

pertuturan (speech act), 2

Page 16: Penambangan Teks (Text Mining)

Penambangan Teks iv

rekayasa pengetahuan (knowledge

engineering), 6

sebar/kumpul (scatter/gather), 7

segmentasi teks (text segmentation), 2

sintesis wicara (speech synthesis), 3

SVD → dekomposisi nilai tunggal, 6

TDM → matriks istilah dokumen, 5