Vectorisasi Dokumen

advertisement
4/1/13 Text dan Web Mining - Budi Susanto UKDW
1
VEKTORISASI
DOKUMEN
Budi Susanto
Text dan Web Mining - Budi Susanto UKDW
2
Tujuan
•  Memahami metode-metode yang diterapkan untuk
pembentukan vektor dokumen
1 4/1/13 Text dan Web Mining - Budi Susanto UKDW
3
Pendahuluan
•  Dokumen bukanlah data terstruktur karena jauh dari
bentuk tabel (baris dan kolom).
•  Perlu metodologi pembentukan suatu data terstruktur
untuk mewakili dokumen.
•  Langkah awal adalah harus menentukan features yang
mewakiliki seluruh kumpulan dokumen.
Text dan Web Mining - Budi Susanto UKDW
4
Koleksi Dokumen
•  Dalam suatu permasalahan text mining, dokumen-
dokumen yang akan diproses harus diidentifikasikan.
•  Intervensi manusia dalam pengumpulan dokumen dapat
mengontrol integritas proses koleksi dokumen
•  Selanjutnya fokus pada pembersihan dokumen-dokumen
tersebut dan memastikan berkualitas.
2 4/1/13 Text dan Web Mining - Budi Susanto UKDW
5
Koleksi Dokumen
•  Ketika koleksi dokumen dalam jumlah yang sangat besar,
terkadang dibutuhkan penerapan teknik data sampling:
•  Untuk memilih himpunan dokumen yang relevan
•  Contoh berdasar timestamp
•  Contoh lain berdasar kemiripan dokumen
Text dan Web Mining - Budi Susanto UKDW
6
Koleksi Dokumen
•  Marijn Koolen dan Jaap Kamps (2010) mengungkapkan
bahwa:
•  The amount of relevant information increases with collection size.
•  Menambahkan dokumen ke dalam koleksi akan menyebabkan semakin
berkurangnya informasi yang dikebalikan: karena semakin banyak
informasi yang sudah ditutupi oleh koleksi, maka akan semakin sulit
menambahkan informasi baru.
•  The amount of redundant information increases with collection size.
•  Redudansi informasi akan menyebabkan kolek dokumen yang besar
berpotensi merugikan.
http://dl.acm.org/citation.cfm?
id=1835586&dl=ACM&coll=DL&CFID=155824736&CFTOKEN=35757112
3 4/1/13 Text dan Web Mining - Budi Susanto UKDW
7
Koleksi Dokumen
Text dan Web Mining - Budi Susanto UKDW
8
Memilih Sampling
•  Pendekatan umum:
•  Dipilih secara acak n% dari m dokumen
•  Pendekatan Kennard-Stone
4 4/1/13 Text dan Web Mining - Budi Susanto UKDW
9
Pendeteksi Duplikasi Dokumen
•  Conrad et al. (2004) mengatakan “dua dokumen adalah
near duplicate jika berbagi lebih dari 80% terminologi
yang sama dan perbedaan panjang keduanya tidak lebih
dari 20%.
•  Pemanfaatan nilai hash (MD5 misalnya) terhadap tiap dokumen
(exact duplicate)
•  Menerapkan Shingles (Word N-grams)
•  Jarak dengan Jaccar, SMC, Cosine
Text dan Web Mining - Budi Susanto UKDW
10
K-Shingling
•  K-Singling suatu dokumen mentransformasikan dokumen ke
dalam suatu himpunan yang berisi semua window dari k kata
bersambungan.
•  Contoh: “Nama saya text dan web mining. Matakuliah ini adalah luar
biasa.”
•  4-singles = {
•  nama saya text dan
•  Saya text dan web
•  Text dan web mining
•  Dan web mining matakuliah
•  Web mining matakuliah ini
•  Mining matakuliah ini adalah
•  Matakuliah ini adalah luar
•  Ini adalah luar biasa
•  }
5 4/1/13 Text dan Web Mining - Budi Susanto UKDW
11
K-Shingling
•  Sk(d) menyatakan k-shingling dokumen d
•  Ressemblance (kemiripan) d1 dan d2
R(d1,d2) = |Sk(d1) ∩ Sk(d2)| / |Sk(d1) ∪ Sk(d2)|
•  Ukuran jarak d1 dan d2
Δ(d1,d2) = 1-R(d1,d2)
Text dan Web Mining - Budi Susanto UKDW
12
Jaccard dan SMC
•  SMC (Simple Matching Coefficient)
•  jaccard
6 4/1/13 Text dan Web Mining - Budi Susanto UKDW
13
Cossine
•  Sering digunakan untuk frekuensi kemunculan kata suatu
dokumen
Text dan Web Mining - Budi Susanto UKDW
14
Beberapa Koleksi
•  Reuters corpus RCV1
•  Brown corpus
•  Lancaster-Oslo-Bergen corpus (LOB)
•  Penn Tree Bank
•  TREC (Text Retrieval and Evaluation Conferences)
•  Gutenberg Project
•  MEDLINE
7 4/1/13 Text dan Web Mining - Budi Susanto UKDW
15
Standarisasi Dokumen
•  Koleksi dokumen juga sebaiknya di simpan dalam suatu
format dokumen yang seragam.
•  Format XML menjadi pilihan terbaik.
•  DBMS yang mendukung penyimpanan teks dapat dimanfaatkan.
Text dan Web Mining - Budi Susanto UKDW
16
Deretan Karakter
•  Hal pertama yang perlu dipertimbangkan adalah format
character set yang digunakan.
•  ASCII tidak menjadi masalah
•  Bagaimana dengan UTF, UNICODE?
•  Bagaimana dengan dokumen MS WORD?
•  XML? yang mengandung entitas karakter   © dan
sebagainya.
•  Sistem penulisan karakter
•  Arabic apakah sama dengan Latin atau Katagana atau sejenis
yang lain?
8 4/1/13 Text dan Web Mining - Budi Susanto UKDW
17
Unit Dokumen
•  File dalam suatu folder
•  Email dalam suatu inbox
•  Mengandung attachment
•  Sebuah file EPUB terdiri dari beberapa file HTML.
Text dan Web Mining - Budi Susanto UKDW
18
Bagaimana Anda melakukan Tokenisasi?
JEJU, KOMPAS.com - Persediaan tuna global menipis akibat
penangkapan berlebih. Menurut daftar merah International Union for
Conservation of Nature (IUCN), saat ini lima dari delapan spesies tuna
tergolong kategori terancam atau hampir punah.
Para pemerhati konservasi mengemukakan peringatan mengenai hal ini
pula dalam Kongres Konservasi Dunia (World Conservation Congress)
IUCN di Jeju, Korea Selatan, hari Sabtu (8/9).
Tuna sirip biru Atlantik adalah yang paling terancam ketersediaannya.
Ikan ini merupakan favorit para pecinta makanan sushi Jepang, dan
dihargai tinggi. Rekor tertinggi seekor ikan dengan berat 592 pon (269
kilogram) pernah dinilai seharga 56,49 juta yen (sekitar 737.000 USD).
http://sains.kompas.com/read/2012/09/12/20015474/Lima.dari.Delapan.Spesies.Tuna.Hampir.Punah
9 4/1/13 Text dan Web Mining - Budi Susanto UKDW
19
Tokenisasi
•  A token is an instance of a sequence of characters in
some particular document that are grouped together as a
useful semantic unit for processing.
•  A type is the class of all tokens containing the same
character sequence.
•  A term is a (perhaps nor- malized) type that is included in
the IR system’s dictionary.
Text dan Web Mining - Budi Susanto UKDW
20
Tokenisasi
•  Pada pendekatan modern, yang tersimpan dalam index
atau vektor adalah suatu bentuk token yang telah melalui
proses normalisasi.
•  Tokenisasi perlu juga memperhatikan bahasa yang digunakan
dalam dokumen.
•  Terdapat beberapa token yang tidak umum
•  Singkatan
•  Sebutan suatu produk
•  Email, url, nomor nota, dan sebagainya
10 4/1/13 Text dan Web Mining - Budi Susanto UKDW
21
Identifikasi Bahasa
•  Latih pengenalan suatu identifikasi bahasa berdasar
suatu corpus teks besar dari suatu bahasa terpilih.
•  Pelatihan yang dimaksud untuk mendapatkan frekuensi/kompresi
terhadap kemunculan n-gram.
•  Gunakan hasil pelatihan untuk menilai teks yang baru.
Text dan Web Mining - Budi Susanto UKDW
22
Pelatihan Identifikasi Bahasa
•  Untuk tiap corpus, kumpulkan statistik kemunculan dari
kemunculan n-gram dalam corpus c dengan panjang |c|.
•  Hitung probabilitas kemunculan n-gram i
William B. Cavnar and John M. Trenkle, N-Gram-Based Text Categorization.
11 4/1/13 Text dan Web Mining - Budi Susanto UKDW
23
Identifikasi Bahasa suatu Teks
•  Untuk setiap pengenal bahasa
•  Untuk sebuah dokumen tidak dikenal, hitung statistik kemunculan
dari n-gram dalam dokumen d dengan panjang |d|.
•  Hitung probabilitas kemunculan n-gram j
•  Hitung jarak dengan model tiap bahasa
Text dan Web Mining - Budi Susanto UKDW
24
N-Gram-Based Text Categorization
12 4/1/13 Text dan Web Mining - Budi Susanto UKDW
25
Contoh sederhana
Sample 1
Test
Sample 2
Test
Saya makan nasi
makan
I eat rice
makan
say
1
0.0769
ie
1
0.125
aya
1
0.0769
ea
1
0.125
ya
1
0.0769
eat
1
0.125
am
1
0.0769
at
1
0.125
ma
1
0.0769
tr
1
0.125
mak
1
0.0769
1 0.3333
0.256410
ri
1
0.125
aka
1
0.0769
1 0.3333
0.256410
ric
1
0.125
kan
1
0.0769
1 0.3333
0.256410
ice
1
0.125
an
1
0.0769
nn
1
0.0769
0 mak
1 0.3333 0.3333333
na
1
0.0769
0 aka
1 0.3333 0.3333333
nas
1
0.0769
0 kan
1 0.3333 0.3333333
asi
1
0.0769
13
0.7692308
8
Text dan Web Mining - Budi Susanto UKDW
1
26
Pendeteksian dengan ML
(n-gram kata)
13 4/1/13 Text dan Web Mining - Budi Susanto UKDW
27
Contoh Sederhana add-one smoothing
Text dan Web Mining - Budi Susanto UKDW
28
Contoh Sederhana add-one smoothing
14 4/1/13 Text dan Web Mining - Budi Susanto UKDW
29
Stemming dan Lemmatization
•  Tujuan: untuk mengurangi perubahan bentuk atau turunan
dari suatu kata.
•  Stemming
•  Menggunakan proses heuristik untuk membuang awalan dan akhiran
•  Lemmatization
•  Menerapkan kamus kontrol dan analisis morfologi
•  Biasanya membuang akhiran
Text dan Web Mining - Budi Susanto UKDW
30
Stemmer untuk Indonesia
•  Algoritma Nazief dan Adriani
•  Algoritma Idris dan Mustapha
•  Algoritma Arifin dan Setiono
•  Algoritma Ahmad, Yussof dan Sembok
•  Algoritma Vega
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.59.4851&rep=rep1&type=pdf
15 4/1/13 Text dan Web Mining - Budi Susanto UKDW
31
Afiks (Imbuhan) Bahasa Indonesia
•  Empat macam:
•  Prefiks
•  afiks yang dilekatkan di depan kata dasar
•  Sufiks
•  afiks yang dilekatkan di belakang kata dasar
•  Konfiks
•  gabungan prefiks dan sufiks yang mengapit kata dasar dan membuat
suatu kesatuan
•  infiks
•  bentuk afiks yang diletakkan di tengah kata dasar
Text dan Web Mining - Budi Susanto UKDW
32
Algoritma Bobby Nazief dan Mirna Adriani
Cari kata yang akan distem dalam kamus. Jika
ditemukan maka diasumsikan bahwa kata tesebut
adalah root word. Maka algoritma berhenti.
2.  Inflection Suffixes (“-lah”, “-kah”, “-ku”, “-mu”, atau “nya”) dibuang. Jika berupa particles (“-lah”, “-kah”, “tah” atau “-pun”) maka langkah ini diulangi lagi untuk
menghapus Possesive Pronouns (“-ku”, “-mu”, atau “nya”), jika ada.
1. 
16 4/1/13 Text dan Web Mining - Budi Susanto UKDW
33
Algoritma Bobby Nazief dan Mirna Adriani
3. 
Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika
kata ditemukan di kamus, maka algoritma berhenti.
Jika tidak maka ke langkah 3a
a. 
b. 
Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut adalah
“-k”, maka “-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam
kamus maka algoritma berhenti. Jika tidak ditemukan maka lakukan
langkah 3b.
Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke
langkah 4.
Text dan Web Mining - Budi Susanto UKDW
34
Algoritma Bobby Nazief dan Mirna Adriani
4. 
Hapus Derivation Prefix. Jika pada langkah 3 ada
sufiks yang dihapus maka pergi ke langkah 4a, jika
tidak pergi ke langkah 4b.
a. 
b. 
Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan.
Jika ditemukan maka algoritma berhenti, jika tidak pergi ke
langkah 4b.
For i = 1 to 3, tentukan tipe awalan kemudian hapus awalan.
Jika root word belum juga ditemukan lakukan langkah 5, jika
sudah maka algoritma berhenti. Catatan: jika awalan kedua
sama dengan awalan pertama algoritma berhenti.
17 4/1/13 Text dan Web Mining - Budi Susanto UKDW
35
Algoritma Bobby Nazief dan Mirna Adriani
Melakukan Recoding.
6.  Jika semua langkah telah selesai tetapi tidak juga
berhasil maka kata awal diasumsikan sebagai root
word. Proses selesai.
5. 
Text dan Web Mining - Budi Susanto UKDW
36
Algoritma Bobby Nazief dan Mirna Adriani
•  Tipe awalan ditentukan melalui langkah-langkah berikut:
1.  Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka tipe
awalannya secara berturut-turut adalah “di-”, “ke-”, atau “se-”.
2.  Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-” maka
dibutuhkan sebuah proses tambahan untuk menentukan tipe
awalannya.
3.  Jika dua karakter pertama bukan “di-”, “ke-”, “se-”, “te-”, “be-”,
“me-”, atau “pe-” maka berhenti.
4.  Jika tipe awalan adalah “none” maka berhenti. Jika tipe awalan
adalah bukan “none” maka awalan dapat dilihat pada Tabel 2.
Hapus awalan jika ditemukan.
18 4/1/13 Text dan Web Mining - Budi Susanto UKDW
37
Algoritma Bobby Nazief dan Mirna Adriani
Text dan Web Mining - Budi Susanto UKDW
38
Algoritma Bobby Nazief dan Mirna Adriani
19 4/1/13 Text dan Web Mining - Budi Susanto UKDW
39
Algoritma Bobby Nazief dan Mirna Adriani
Text dan Web Mining - Budi Susanto UKDW
40
Feature Selection
•  Memilih k-top dari bobot
•  Bobot dapat dilakukan dengan TF/IDF
•  Dapat menerapkan validasi regresi linier
•  Information Gain untuk tiap kategori
20 4/1/13 Text dan Web Mining - Budi Susanto UKDW
41
TERIMA KASIH!
21 
Download