Text Mining and Information Retrieval

  

Text Mining and Text Mining and

Information Information Retrieval Retrieval Text Mining Text Mining

Data Mining Data Mining

  

Data mining adalah suatu proses yang Data mining adalah suatu proses yang

  secara secara otomatis otomatis mencari mencari atau atau

  

menemukan menemukan informasi informasi yang yang

bermanfaat dan suatu kumpulan data bermanfaat dan suatu kumpulan data

yang besar. yang besar.

Tahapan Data Mining Tahapan Data Mining

  Data Mining lebih dekat pada bidang Data Mining lebih dekat pada bidang pencarian pengetahuan pencarian pengetahuan dalam basis data dalam basis data

(knowledge discovery in database / KDD), yang (knowledge discovery in database / KDD), yang

merupakan proses merupakan proses konversi dari data mentah konversi dari data mentah

menjadi informasi yang bermanfaat. menjadi informasi yang bermanfaat.

Kelompok Data Mining Kelompok Data Mining

   Data mining dibagi dalam dua Data mining dibagi dalam dua kelompok jenis tugas analisis data: kelompok jenis tugas analisis data:

    bertugas untuk memprediksi bertugas untuk memprediksi

  Predictive task : Predictive task : nilai nilai sebuah atribut tertentu (target) didasarkan sebuah atribut tertentu (target) didasarkan pada nilai atribut lain (explanatory) pada nilai atribut lain (explanatory)

    bertugas bertugas mendapatkan mendapatkan

  Descriptive task : Descriptive task :

pola pola analisis asosiasi (association analysis), analisis asosiasi (association analysis),

pengelompokan (clustering), penyimpangan pengelompokan (clustering), penyimpangan

(anomaly detection) yang meringkas hubungan- (anomaly detection) yang meringkas hubungan- hubungan dalam data hubungan dalam data

Text Mining Text Mining

  

Text mining merupakan penerapan Text mining merupakan penerapan

  konsep dan teknik data mining untuk konsep dan teknik data mining untuk

  mencari pola dalam teks mencari pola dalam teks

Teks Mining : Proses penganalisisan Teks Mining : Proses penganalisisan

teks guna menyarikan informasi teks guna menyarikan informasi yang yang bermanfaat bermanfaat untuk untuk tujuan tujuan tertentu. tertentu.

Text Mining Text Mining

  

Perbedaan mendasar dengan Data Perbedaan mendasar dengan Data

Mining pada umumnya, Text Mining Mining pada umumnya, Text Mining

  mengolah data mengolah data teks yang tidak teks yang tidak

  

terstruktur terstruktur, maka proses text mining , maka proses text mining

  memerlukan beberapa tahap awal memerlukan beberapa tahap awal

  

(preprocessing) (preprocessing) yang pada intinya yang pada intinya

  adalah mempersiapkan agar teks dapat adalah mempersiapkan agar teks dapat diubah menjadi lebih terstruktur. diubah menjadi lebih terstruktur.

Text Mining Text Mining Perbedaan Data Mining Text Mining

  Data Object Numerical & categorical data Textual data Data structure Structured Unstructured & semi- structured Data representation Straightforward Complex

  Space dimension < tens of thousands > tens of thousands Methods Data analysis, machine learning, Neural Network, etc.

  Data mining, information Retrieval, NLP, etc. Maturity Broad implementation since 1994

  Broad implementation starting 2000

  

Tahapan Text Mining Tahapan Text Mining

  

Masalah Umum yang ditangani Masalah Umum yang ditangani

   Pengorganisasian dan Clustering Dokumen Pengorganisasian dan Clustering Dokumen

  

   Klasifkasi Dokumen Klasifkasi Dokumen

  

   Information Extraction Information Extraction

  

   Web Mining Web Mining

  

   Natural Language Processing (NLP) Natural Language Processing (NLP)

  

   Information Retrieval (IR) Information Retrieval (IR)

Clustering Dokumen Clustering Dokumen

   Clustering adalah pengorganisasian Clustering adalah pengorganisasian

  kumpulan pola ke dalam cluster kumpulan pola ke dalam cluster (kelompok-kelompok) berdasar atas (kelompok-kelompok) berdasar atas kesamaannya. kesamaannya.

   Pola-pola dalam suatu cluster akan Pola-pola dalam suatu cluster akan

  memiliki kesamaan ciri/sifat daripada memiliki kesamaan ciri/sifat daripada pola-pola dalam cluster yang lainnya. pola-pola dalam cluster yang lainnya.

Clustering Dokumen Clustering Dokumen

   Clustering bermanfaat untuk Clustering bermanfaat untuk melakukan analisis pola-pola yang melakukan analisis pola-pola yang

  ada, mengelompokkan, dan membuat ada, mengelompokkan, dan membuat keputusan. keputusan.

   Metodologi clustering lebih cocok Metodologi clustering lebih cocok

  digunakan untuk eksplorasi hubungan digunakan untuk eksplorasi hubungan antar data untuk membuat suatu antar data untuk membuat suatu penilaian terhadap strukturnya. penilaian terhadap strukturnya.

Klasifkasi Dokumen Klasifkasi Dokumen

   Klasifkasi adalah mengelompokkan Klasifkasi adalah mengelompokkan

  dokumen berdasarkan data training dokumen berdasarkan data training yang sudah dilabeli. yang sudah dilabeli.

  

Perbedaanya dengan clustering adalah Perbedaanya dengan clustering adalah

  pada klasifkasi, kelas/kategorinya pada klasifkasi, kelas/kategorinya sudah ditentukan di awal, sedangkan sudah ditentukan di awal, sedangkan pada clustering tidak. pada clustering tidak.

  

Information Extraction Information Extraction

Information Extraction Information Extraction

  

 Information Extraction bermanfaat untuk menggali

struktur informasi dari sekumpulan dokumen.

   Dalam menerapkan IE, perlu sekali dilakukan pembatasan domain problem.

   IE sangat memerlukan NLP untuk mengetahui gramatikal dari setiap kalimat yang ada.

   Sebagai contoh:

 “Indonesia dan Singapore menandatangani MoU

kerjasama dalam bidang informasi dan komunikasi.”  KerjaSama(Indonesia, Singapore, TIK)

   Information Extraction bermanfaat untuk menggali struktur informasi dari sekumpulan dokumen.

   Dalam menerapkan IE, perlu sekali dilakukan pembatasan domain problem.

  

  IE sangat memerlukan NLP untuk mengetahui gramatikal dari setiap kalimat yang ada.

   Sebagai contoh:

  “Indonesia dan Singapore menandatangani MoU kerjasama dalam bidang informasi dan komunikasi.” KerjaSama(Indonesia, Singapore, TIK)

  

Information Extraction Information Extraction

  Dengan IE, kita dapat menemukan: Dengan IE, kita dapat menemukan:

  

   concepts (CLASS) concepts (CLASS)

  

   concept inheritance (SUBCLASS-OF) concept inheritance (SUBCLASS-OF)

  

   concept instantiation (INSTANCE-OF) concept instantiation (INSTANCE-OF)

  

   properties/relations (RELATION) properties/relations (RELATION)

  

   domain and range restrictions domain and range restrictions

  (DOMAIN/RANGE) (DOMAIN/RANGE) 

   equivalence equivalence

Web Mining: Karakteristik Web Web Mining: Karakteristik Web

  

   Jumlah data/informasi di web sangat besar Jumlah data/informasi di web sangat besar dan terus bertambah. dan terus bertambah.

    tipe data beragam tipe data beragam   informasi pada web sangat beragam. informasi pada web sangat beragam.

  

 informasi-informasi di web saling terhubung. informasi-informasi di web saling terhubung.

  informasi di web sangat "kotor". informasi di web sangat "kotor".   web juga merupakan service. web juga merupakan service.   web dinamis web dinamis   web merupakan sarana komunitas sosial virtual. web merupakan sarana komunitas sosial virtual.

Web Mining Web Mining

    Web Mining bertujuan untuk menemukan Web Mining bertujuan untuk menemukan informasi atau pengetahuan dari informasi atau pengetahuan dari

    Web hyperlink structure, contoh : Web hyperlink structure, contoh :     menemukan halaman web terpenting menemukan halaman web terpenting menemukan komunitas pemakai yang berbagi menemukan komunitas pemakai yang berbagi ketertarikan topik yang sama ketertarikan topik yang sama

    Page content Page content   usage data, contoh : usage data, contoh :

   menemukan pola akses pemakai terhadap web, menemukan pola akses pemakai terhadap web, melalaui click stream. melalaui click stream.

NLP NLP

  Natural Language Processing (NLP) Natural Language Processing (NLP) adalah melakukan pengolahan untuk adalah melakukan pengolahan untuk

  

memahami memahami Bahasa Bahasa alami alami yang yang

  diucapkan manusia diucapkan manusia

NLP NLP

  

Bahasa alami adalah bahasa yang Bahasa alami adalah bahasa yang

secara umum digunakan oleh manusia secara umum digunakan oleh manusia

  dalam berkomunikasi satu sama lain. dalam berkomunikasi satu sama lain.

  

Bahasa yang diterima oleh komputer Bahasa yang diterima oleh komputer

  butuh untuk diproses dan dipahami butuh untuk diproses dan dipahami terlebih dahulu supaya maksud dari terlebih dahulu supaya maksud dari user bisa dipahami dengan baik oleh user bisa dipahami dengan baik oleh komputer. komputer.

  

Information Retrieval Information Retrieval

Information Retrieval Information Retrieval

  Konsep dasar dari IR adalah pengukuran Konsep dasar dari IR adalah pengukuran

  kesamaan kesamaan   sebuah perbandingan antara dua dokumen, sebuah perbandingan antara dua dokumen,

  mengukur sebearapa mirip keduanya. mengukur sebearapa mirip keduanya.

   

  Setiap input query yang diberikan, dapat Setiap input query yang diberikan, dapat dianggap sebagai sebuah dokumen yang akan dianggap sebagai sebuah dokumen yang akan dicocokan dengan dokumendokumen lain. dicocokan dengan dokumendokumen lain.  

  Pengukuran kemiripan serupa dengan metode Pengukuran kemiripan serupa dengan metode klasifkasi yang disebut metode nearest- klasifkasi yang disebut metode nearest-

Information Retrieval Information Retrieval

  Perbedaan mendasar antara Text Mining dan IR : Perbedaan mendasar antara Text Mining dan IR : 

   Text Mining : Discovery of novel information Text Mining : Discovery of novel information

  Extracting Ore from otherwise worthless rock : Extracting Ore from otherwise worthless rock : menemukan informasi yang relevan dan bermanfaat menemukan informasi yang relevan dan bermanfaat dari sekumpulan data besar yang kelihatanya tidak dari sekumpulan data besar yang kelihatanya tidak berguna. berguna.

   

  IR : Retrieval of Non-novel Information Finding needles in a needle-stack : mencari Finding needles in a needle-stack : mencari informasi yang relevan di antara informasi-informasi informasi yang relevan di antara informasi-informasi lain yang berguna namun tidak relevan lain yang berguna namun tidak relevan

  IR : Retrieval of Non-novel Information

Search Engine Search Engine

  

Search Engine merupakan aplikasi nyata

dari Information Retrieval pada bidang

web.

  

Search Engine merupakan aplikasi nyata

  dari Information Retrieval pada bidang web.

  Search Engine Search Engine

  Information Retrieval Information Retrieval Text Mining - Text Mining & Information Retrieval Text Mining - Text Mining & Information Retrieval

  

Boolean Retrieval Model Boolean Retrieval Model

 Pada Boolean Information Retrieval Pada Boolean Information Retrieval

  query yang digunakan berupa query yang digunakan berupa Boolean. Boolean.

   Dokumen-dokumen yang ada Dokumen-dokumen yang ada

  dibedakan menjadi sesuai atau tidak dibedakan menjadi sesuai atau tidak sesuai dengan query tersebut sesuai dengan query tersebut

Boolean Retrieval Model Boolean Retrieval Model

  

  Contoh, Query : Antony AND mercy Contoh, Query : Antony AND mercy   Antony and Julius The Cleopatra Caesar Tempest Hamlet Othello Macbeth Calpurnia Caesar Antony Brutus 1 1 1 1 1 1 1 1 1 1 1 1 Cleopatra worser mercy 1 1 1 1 1 1 1 1 1 1

  

  Maka yang dianggap relevan adalah Maka yang dianggap relevan adalah

  dokumen nomor 1 ( dokumen nomor 1 ( Antony and Cleopatra Antony and Cleopatra ) dan ) dan

dokumen nomor 6 ( dokumen nomor 6 ( Macbeth Macbeth ), karena kedua ), karena kedua

  dokumen tersebut mengandung kata dokumen tersebut mengandung kata

Boolean Retrieval Model Boolean Retrieval Model

   Contoh, Query : Calpurnia OR Brutus Contoh, Query : Calpurnia OR Brutus   Antony and Julius The Cleopatra Caesar Tempest Hamlet Othello Macbeth Calpurnia Caesar Antony Brutus 1 1 1 1 1 1 1 1 1 1 1 1 Cleopatra worser mercy 1 1 1 1 1 1 1 1 1 1

  

Maka yang dianggap relevan adalah dok nomor Maka yang dianggap relevan adalah dok nomor

  1 ( 1 ( Antony and Cleopatra Antony and Cleopatra ), dok nomor 2 ( ), dok nomor 2 ( Julius Julius Caser Caser

  Hamlet Hamlet ), dan dok nomor 4( ), dan dok nomor 4( ) karena ketiga ) karena ketiga dokumen tersebut mengandung salah satu atau dokumen tersebut mengandung salah satu atau dua2nya (OR) dari kata Calpurnia dan kata dua2nya (OR) dari kata Calpurnia dan kata

Kelebihan Boolean IR Kelebihan Boolean IR

    Mengembalikan dokumen pencarian yang Mengembalikan dokumen pencarian yang match saja atau tidak sama sekali. match saja atau tidak sama sekali.

   

  Sangat cocok untuk expert user yang sudah Sangat cocok untuk expert user yang sudah pengalaman tentang kebutuhan pencarian pengalaman tentang kebutuhan pencarian mereka mereka (misalnya (misalnya di di library library search, search, bookstore search, etc). bookstore search, etc).

    Aplikasi dengan konsep Boolean Retrieval Aplikasi dengan konsep Boolean Retrieval Model dapat menghemat konsumsi waktu Model dapat menghemat konsumsi waktu pencarian dokumen dalam search engine. pencarian dokumen dalam search engine.

Kekurangan Boolean IR Kekurangan Boolean IR

    Tidak bagus untuk sebagian besar pengguna. Tidak bagus untuk sebagian besar pengguna. 

   Sebagian besar pengguna tidak mampu menulis Sebagian besar pengguna tidak mampu menulis

  Query Boolean dengan baik (mereka berpikir itu Query Boolean dengan baik (mereka berpikir itu akan menambah pekerjaan dalam pencarian). akan menambah pekerjaan dalam pencarian).

  

   Sebagian besar pengguna tidak ingin mengarungi Sebagian besar pengguna tidak ingin mengarungi

  hasil pencarian yang banyak dan kurang spesifk hasil pencarian yang banyak dan kurang spesifk (misalnya, web search). (misalnya, web search).

Kekurangan Boolean IR Kekurangan Boolean IR

  

 Query Boolean sering menghasilkan pencarian

dengan jumlah yang kadang-kadang terlalu sedikit (=0) atau terlalu banyak (=1000000). Contohnya : Query 1: “standard AND user AND dlink AND 650” → 200,000 hits

   Query 2: “standard AND user AND dlink AND 650 AND NO found” → 0 hits  Butuh skill bagus dalam memilih query agar menghasilkan hasil pencarian yang tepat.

  

 AND memberikan hasil terlalu sedikit; OR memberikan

hasil terlalu banyak 

  Query Boolean sering menghasilkan pencarian dengan jumlah yang kadang-kadang terlalu sedikit (=0) atau terlalu banyak (=1000000). Contohnya : Query 1: “standard AND user AND dlink AND 650” → 200,000 hits

   Query 2: “standard AND user AND dlink AND 650 AND NO found” → 0 hits

  Butuh skill bagus dalam memilih query agar menghasilkan hasil pencarian yang tepat. AND memberikan hasil terlalu sedikit; OR memberikan hasil terlalu banyak Ch. 6

Ranked retrieval models Ranked retrieval models

  

   Pada ranked retrieval, system Pada ranked retrieval , system

  mengurutkan dokumen-dokumen mengurutkan dokumen-dokumen berdasarkan relevansinya, bukan hanya berdasarkan relevansinya, bukan hanya relavan atau tidak relevan. relavan atau tidak relevan.

  

   Dokumen yang paling relevan memiliki Dokumen yang paling relevan memiliki

  ranking tertinggi dan dokumen yang kurang ranking tertinggi dan dokumen yang kurang relevan memiliki ranking lebih rendah relevan memiliki ranking lebih rendah

Ranked retrieval models Ranked retrieval models

    Setiap dokumen diberikan skor sesuai tingkat Setiap dokumen diberikan skor sesuai tingkat relevansinya. relevansinya.

   

  Misal diberikan nilai dalam rentang [0, 1] Misal diberikan nilai dalam rentang [0, 1]

  pada setiap dokumen pada setiap dokumen

    Skor tersebut mengukur tingkat kococokan Skor tersebut mengukur tingkat kococokan

  antara dokumen dan query antara dokumen dan query

Ranked retrieval models Ranked retrieval models

  

Metode yang paling sering digunakan Metode yang paling sering digunakan

  adalah adalah Vector Space Model untuk Vector Space Model untuk

  

representasi representasi fturnya fturnya dan dan Cosine Cosine

Similarity Similarity untuk menghitung kemiripan untuk menghitung kemiripan

  antara dokumen dan query antara dokumen dan query

Ranked retrieval models Ranked retrieval models

  

Vector Space Model Vector Space Model adalah Model adalah Model

  proses pencarian informasi dari query proses pencarian informasi dari query yang menggunakan ekspresi kemiripan yang menggunakan ekspresi kemiripan berdasarkan frekuensi terms/token/kata berdasarkan frekuensi terms/token/kata yang terdapat pada dokumen. yang terdapat pada dokumen.

Ranked retrieval models Ranked retrieval models

  

Vector Space Model Vector Space Model adalah Model adalah Model

  proses pencarian informasi dari query proses pencarian informasi dari query yang menggunakan ekspresi kemiripan yang menggunakan ekspresi kemiripan berdasarkan frekuensi terms/token/kata berdasarkan frekuensi terms/token/kata yang terdapat pada dokumen. yang terdapat pada dokumen.

Ranked retrieval models Ranked retrieval models

    Contoh Vector Space Model Contoh Vector Space Model W t,d Cleopatra Antony & Caesar Tempest Julius The Hamlet Othello Macbeth

  Antony 1.524831652 1.366152196

Caesar 0.266483532 0.265734309 0.103017176 0.079181246 0.07918

Brutus 0.482268112 0.962061659 0.301029996 Cleopatra Calpurnia 1.556302501

Mercy 0.103017176 0.116960302 0.134526562 0.134526562 0.07918

2.144487465 Worser

0.22910001 0.176091259 0.176091259 0.176091259

Ranked retrieval models Ranked retrieval models

    Cosine similarity Cosine similarity adalah fungsi yang adalah fungsi yang digunakan untuk menghitung besarnya digunakan untuk menghitung besarnya

derajat kemiripan diantara dua vektor. derajat kemiripan diantara dua vektor.

    Ukuran nilai Cosine similarity dihitung Ukuran nilai Cosine similarity dihitung berdasarkan besarnya nilai fungsi berdasarkan besarnya nilai fungsi cosine terhadap sudut yang dibentuk cosine terhadap sudut yang dibentuk oleh dua vektor. oleh dua vektor.

Ranked retrieval models Ranked retrieval models

  Misalnya :

  • Apakah D atau D yang
  • 1 2 D + = 2T + 3T 1 1 2 lebih besar kemiripannya

      T 3 terhadap Q?

      5T 3 Bagaimana cara menghitung D + = 3T + 7T 2 1 2

    5

    besarnya kemiripan

      T 3 (similarity) diantara setiap dua vektor tersebut?

      Q = 0T + 0T + D = 2T + 3T + 5T 1 1 1 2 2 3

      2T 3 Q = 0T + 0T + 2T 2 3 1 2 3 T 1 D = 3T + 7T + T 2 1 2 3

    Ranked retrieval models Ranked retrieval models

       

      Rumus untuk menghitung nilai similarity diantara Rumus untuk menghitung nilai similarity diantara

      dua vektor adalah sebagai berikut : dua vektor adalah sebagai berikut : t   ( ) j w w ij iq d q i 1

       CosSim(d , q) = t t j j 2 2 d qw ij w iq

       

    i

      1 i 1

    Ranked retrieval models Ranked retrieval models

      Membuat vektor “query/dokumen yang dicari/keyword pencarian” dalam bentuk terms weighting Membuat vektor “dokumen” dalam terms weighting Menghitung nilai “Cosine Similarity” dari vektor space “query” terhadap setiap vektor space “dokumen”

      Meranking dokumen berdasarkan query/dokumen yang dicari/keyword pencarian