0% menganggap dokumen ini bermanfaat (0 suara)
44 tayangan55 halaman

Text Mining - 01

Text mining adalah proses otomatis untuk menemukan informasi berkualitas tinggi dari teks tak terstruktur. Proses ini melibatkan tahap pengambilan informasi, pemrosesan bahasa alami, dan penambangan data untuk menemukan pola. Fokus utama dalam text mining adalah pada analisis teks dan ekstraksi informasi untuk mendukung pengambilan keputusan.

Diunggah oleh

blacklonghair894
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
44 tayangan55 halaman

Text Mining - 01

Text mining adalah proses otomatis untuk menemukan informasi berkualitas tinggi dari teks tak terstruktur. Proses ini melibatkan tahap pengambilan informasi, pemrosesan bahasa alami, dan penambangan data untuk menemukan pola. Fokus utama dalam text mining adalah pada analisis teks dan ekstraksi informasi untuk mendukung pengambilan keputusan.

Diunggah oleh

blacklonghair894
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

TEXT

MINING
I M A M A H , S . KO M , M . KO M
Text Mining itu apa?
• Penemuan otomatis informasi berkualitas tinggi yang sebelumnya tidak diketahui dari dalam
jumlah besar teks bahasa alami yang sebagian besarnya tidak terstruktur.

Tahap penambangan teks


1. Information retrieval (IR). Mengumpulkan teks masukan yang berpotensi relevan.
2. Natural language processing (NLP). Menganalisis teks untuk mengidentifikasi dan menyusun
informasi yang relevan.
3. Data mining (DM). Menemukan pola dalam informasi terstruktur.

Fokus pada NLP


• NLP adalah inti dari penambangan teks (dan fokus kuliah ini).
• Penambangan teks yang disederhanakan sangat mirip NLP pada teks.
• Tipe informasi yang akan dicarikan biasanya telah ditentukan sebelumnya, yaitu text mining untuk
menangani tugas tertentu.
• Tugas umum: Ekstraksi informasi dan klasifikasi teks
Text Mining
• Text mining mengacu pada proses ekstasi informasi dari dokumen-
dokumen teks tak terstruktur (unstructured)
• Text mining dapat didefinisikan sebagai penemuan informasi baru dan
tidak diketahui sebelumnya oleh computer, yang secara otomatis
mengekstrak informasi dari sumber-sumber teks tak terstruktur yang
berbeda.
What is Structured and
Unstructured Data?
ID Name Age “ Bersama OPOP Jatim
kami telah berkeliling
1 Jaka 18 memberikan pelatihan
dan menfasilitasi
publikasi dalam
2 Joko 19 mendorong percepatan
digitalisasi ini,” kata
3 Jono 20 Kepala Diskominfo
Jatim
Structured Data Semistructured Unstructured Data
Data

4
Information
Extraction

Natural
Text Language
Analysis Processing

Information Text
Visualization
Retrieval Mining

Database
Clustering Technology

Categorization
Text Mining VS Data Mining
• Perbedaan Mendasar terletak pada sumber data yang digunakan
• Pada data mining, pola-pola diekstrak dari basis data yang terstruktur
• sedangkan di text mining, pola-pola diekstrak dari data tekstual
(natural language).

Data Mining
Data mining is a process
adalah proses of mengekstraksi
extracting and
discovering
dan patterns
menemukan polaindalam
large data sets data
kumpulan
involving
besar yangmethods at the
melibatkan intersection
metode of
irisan antara
machine learning, statistics, and database
pembelajaran mesin, statistik, dan sistem
systems.
database.
Analisis Teks
• Proses ekstraksi makna dari dalam teks.
• Misal: menganalisis teks yang ditulis oleh pelanggan saat mengisi survei.
• Fokus: menemukan tema dan tren umum.
• Gagasan: agar dapat memeriksa umpan balik pelanggan untuk menginformasikan bisnis
bagaimana mengambil tindakan strategis untuk meningkatkan pengalaman pelanggan.
Analisis Teks: Input → Proses → Output
Tahapan Text Mining

• Text Prepocessing
• Text Trasformation
• Feature Selection
• Pattern Discovery
Text Prepocessing
• Mempersiapkan teks menjadi data yang akan mengalami pengolahan
lebih lanjut.
• Operasi yang dilakukan ditahap ini adalah
• Part of Speech (Pos) / Tagging
• Parse tree
• Pembersihan teks
Tokenisasi
Untuk mengetahui banyak kata, maka diperlukan tokenisasi

Tokenisasi memecah suatu teks menjadi kata, frasa, simbol atau elemen lainnya yang memiliki
makna atau yang disebut token

Bagaimana cara memecah teks menjadi kata?

Kata merupakan sederetan karakter alfanumerik yang memiliki pemisah (delimiter) mis.
whitespace
◦ Whitespace: spasi, tab, newline
Masalah-masalah dalam
Tokenisasi
Finland’s capital → Finland Finlands Finland’s ?
what’re, I’m, isn’t → What are, I am, is not
Hewlett-Packard → Hewlett Packard ?
state-of-the-art → state of the art ?
Lowercase → lower-case lowercase lower case ?
San Francisco → satu token atau dua?
Prof., m.p.h., PhD. → ??
Segmentasi Kata
Bahasa scriptio continua memerlukan segmentasi kata

Contoh lain:
◦ Frase: keras kepala, tusuk jarum
◦ No telpon
◦ Tanggal
◦ Emoji/emoticon

Menjadi topik ekstraksi informasi


Case Folding
Case folding mengubah huruf besar menjadi huruf kecil
◦ Misalnya “The”, “the”, “THE” dianggap sama

Tapi tidak semua pemrosesan teks mengharuskan case folding!

Untuk sentiment analysis, MT, Information extraction


◦ Huruf besar sangat diperlukan/membantu
◦ US vs us artinya berbeda
Stemming
Stemming adalah proses mereduksi kata-kata berimbuhan (inflected) menjadi kata dasar (word
stem, base word, atau root word)
◦ transportation
◦ transports inflected
◦ transporting
◦ transported
◦ transport base word
◦ Port root word

Permasalahan: stemming tergantung bahasa

Kamus dapat membantu proses stemming


Stemming
Stemming dapat cenderung melakukan over-stemming (pemotongan afiksasi yang berlebihan)
◦ automate(s), automatic, automation direduksi ke automat

Kenapa harus melakukan stemming?


◦ Bagaimana mencari kata “connect”, apabila di korpus ada “connecting”, ”“connected”, “connection”,
“connectivity”, dll?
Permasalahan Stemming bahasa
Indonesia
Imbuhan (afiks) memiliki banyak jenis
◦ Prefiks → ber + tiga
◦ Suffiks → main + an
◦ Konfiks → pen + cegah + an
◦ Infiks → k + em + ilau
◦ Imbuhan serapan → privat + isasi

Perubahan bentuk prefiks


◦ membaca, melihat, mencari, menyapu

Ambiguitas kata
◦ berikan → ber-ikan atau beri-kan?
Permasalahan Stemming bahasa
Indonesia
Overstemming
◦ berikan → ber + i + kan (salah)

Understemming
◦ mengecek → meng - ecek (salah)

Bentuk jamak
◦ pensil-pensil → pensil

Ketergantungan terhadap kamus


◦ selatan → selat + an (salah)
Algoritma Stemming Indonesia
Beberapa algoritma stemming Bahasa Indonesia:
◦ Nazief Adriani
◦ Idris
◦ Ahmad, Yusoff, dan Sembok
◦ Vega
◦ Arifin dan Setiono
Korpus
Korpus
Kalimat dan kata yang sudah disegmentasi nantinya akan disimpan dalam korpus (corpus)
dan/serta lexicon
◦ Bentuk plural corpus adalah corpora

Dalam bidang NLP korpus dan lexicon merupakan sumber daya yang penting

Lexicon berisi kata dasar dan afiksasi (imbuhan, sisipan) serta jenis katanya/lexical entries
(nomina, verba, dll)
Contoh lexical database: WordNet (bahasa Inggris)
Korpus
Korpus merupakan sekumpulan teks yang besar (sekarang dalam bentuk elektronik dan
tersimpan)

Korpus biasanya digunakan untuk proses uji analisis dan hipotesis, mengecek kemunculan atau
memvalidasi aturan linguistik

Masalah perancangan korpus:


◦ Keterwakilan (representativeness)
◦ Ukuran
◦ Jenis
◦ Bahasa
◦ dll.
Korpus
Selain masalah sebelumnya, perancangan korpus disesuaikan dengan kebutuhan analisis teks
◦ Tokenisasi
◦ Anotasi

Korpus umum:
◦ seimbang (balance): mewakili sejumlah genre dan proporsinya
◦ pengambilan sampel (sampling): bagaimana bagian dari teks suatu genre dipilih

Korpus khusus:
◦ derajat tutupan (closure)/kejenuhan (saturation): isi suatu korpus terbatas pada fitur linguistik pada
bahasa, topik tertentu (mis. computer manual)
Jenis-Jenis Corpus
General/reference vs. specialized corpora

Written vs. spoken corpora

Synchronic vs. diachronic corpora

Monolingual vs. multilingual corpora

Comparable vs. parallel corpora

Native vs. learner corpora

Raw vs. annotated corpora

Static/sample vs. dynamic/monitor corpora

Developmental vs. learner/interlanguage corpora


Korpus Brown
Korpus awal berbahasa Inggris Amerika yang terkenal

Dikompilasi tahun 1960-an oleh Henry Kučera, W. Nelson Francis, Universitas Brown

Merupakan korpus umum serta korpus seimbang

Awalnya berisi 1.014.312 kata dipilih dari 15 kategori


Korpus Lainnya
Korpus Domain Bahasa
British National Seimbang British English
Corpus (BNC)
Newswire Corpus Newswire American English
UN atau EU proceed. Hukum 10 bahasa
Broadcast News Ujaran (speech) 7 bahasa
Corpus
Isi Korpus
Berdasarkan penggunaan bahasa:
◦ Teks: artikel, berita kawat (newswire), buku, transkripsi (closed caption/subtitle)
◦ Ujaran: dialog, siaran berita

Berdasarkan media: teks, audio, video


Anotasi
Anotasi adalah penambahan informasi pada korpus yang secara eksplisit sebenarnya tidak ada

Contoh anotasi:
◦ Part-of-speech tagging (POS tagging)
◦ Struktur sintaksis
Anotasi (POS Tagging)
POS Tag adalah proses memberi tanda (tag) atau menandai kata dalam teks (korpus) ke suatu
part-of-speech tertentu, mis. nomina, verba, adjektiva, dll.
◦ Misalnya Penn tag set (45), Brown tag set (87)

Banyak kata memiliki beberapa kategori

Tapi kebanyakan hanya satu kategori

Penandaan (tagging) bisa dilakukan dengan cara manual tapi biasanya dengan cara otomatis
Contoh POS Tag
Description Example
NN noun, singular or mass tiger, chair, laughter
NNS noun, plural tigers, chairs, insects
NNP noun, proper singular Germany, God, Alice
DT determiner the, a, these
JJ adjective nice, easy
B adverb extremely, loudly, hard
RBR adverb, comparative better
RBS adverb, superlative best
Penandaan (Tagging) Otomatis
Contoh: menggunakan Penn Tagger
Input: Some scorpions are able to survive 6 to 12 months of starvation
Output: Some/DT scorpions/NNS are/VBP able/JJ to/TO survive/VB 6/CD to/TO
12/CD months/NNS of/IN starvation/NN

Misalnya:
◦ http://nlp.stanford.edu:8080/parser/
◦ GATE – General Architecture for Text Engineering (http://www.gate.ac.uk)
Anotasi (Sintaksis)
Analisis sintaksis: bagaimana mengartikan suatu kalimat berdasarkan arti kata-kata yang
membentuk kalimat tsb.

Siapa melakukan kepada siapa

Korpus berisi kalimat yang diberi tanda berdasarkan struktur kalimat menggunakan aturan tata
bahasa dengan parse tree disebut treebank
Contoh Parse Tree
NNP VBD P DT NN

Sue walked into the store


Regular Expression
Regular Expression
Dalam pemrosesan teks, ekspresi reguler (regular expression/Regex) sangat
penting

Regex merupakan sederetan karakter tertentu untuk mencari pola string


◦ Hasil yang cocok kemudian bisa diganti
(replace/substitution)

Terdapat beberapa standar Regex


◦ paling banyak digunakan: standar Perl atau Perl Compatible Regular Expressions
(PCRE)
Regular Expression
Biasa digunakan untuk:
◦ Pencarian teks
◦ Modifikasi teks
◦ Parsing
◦ Validasi data

Dapat digunakan untuk ekstraksi informasi

Misalnya, dalam suatu teks:


◦ mencari alamat email atau situs web
◦ mencari tanggal, angka
Regex: Meta characters
Karakter Arti
^ Cocok dengan pola pada awal baris.
. Cocok dengan karakter apapun
$ Cocok dengan pola pada akhir baris
| Cocok dengan salah satu pola
() Pengelompokan
[] Kelas karakter
* Cocok sebanyak 0 atau lebih
+ Cocok sebanyak 1 atau lebih
? Cocok sebanyak 1 atau 0 kali
Regex: Meta characters
Contoh Pola Hasil
k.k. kuku kakiku kok kaku-kaku
^kaki kaki kuda dan lima kaki
$kaki kaki kuda dan lima kaki
kaki|kuda kaki kuda dan lima kaki
a+b aabbbbc, aaaaaabdc, aacc, dbac
a*b aabbbbc, aaaaaabdc, aacc, dbac
Regex: Character class
Kode Arti
[0-9] Cocok dengan angka
[aiueo] Cocok dengan huruf vokal (huruf kecil)
[^aiueo] Cocok dengan huruf konsonan (huruf kecil)
[a-z] Cocok dengan semua huruf (huruf kecil)
[a-z0-9] Cocok dengan semua huruf dan angka (huruf kecil)
[A-Za-z0-9] Cocok dengan semua huruf (besar dan kecil) dan
angka
\w Sama dengan [A-Za-z0-9]
\d Sama dengan [0-9]
\W Sama dengan [^A-Za-z0-9]
\D Sama dengan [^0-9]
\s Whitespace (space, tab, line break, form feed)
Regex: Character class
Pola Hasil

[0-9] Bab 1: Pendahuluan


[aiueo] Bab 1: Pendahuluan
[a-z] Bab 1: Pendahuluan
[A-Z] Bab 1: Pendahuluan
\w Bab 1: Pendahuluan
\W Bab 1: Pendahuluan
(.*?):\s(.*?) Bab 1: Pendahuluan
Group-1: Bab 1
Group-2: Pendahuluan
Perulangan karakter
Kode Arti
{m} Perulangan sebanyak m kali
{m,n} Perulangan sebanyak m sampai n kali
{m,} Perulangan sebanyak m kali atau lebih

Pola Hasil

o{3} oh ooh oooh ooooh oooooh


o{3,} oh ooh oooh ooooh oooooh
\d{4} Pada tahun 2017 angka ekspor naik sebesar 17,5%
Python Regex
Fungsi Regex tersedia di Python melalui modul re
Beberapa fungsi Regex pada modul re
Fungsi Kegunaan
search() Mencari kemunculan pertama suatu pola pada
sebuah string
findall() Mencari semua kemunculan pola pada sebuah
string
sub() Mencari dan mengganti (substitusi) suatu pola pada
string
Modul lain adalah regex, instalasi dengan
pip install regex
Python Regex
Pola tanggal bulan tahun

Import modul re sebelum digunakan


Fungsi search hanya menghasilkan pola pertama yang cocok

Fungsi findall menampilkan semua pola yang cocok


Contoh Aplikasi Regex
Untuk menguji suatu Regex, kita dapat menggunakan tools yang tersedia, misalnya secara online:
◦ https://regex101.com
◦ http://regexr.com/
◦ dsb.

Beberapa editor teks yang melayani Regex:


◦ Notepad++, Notepad2mod, Notepad3
◦ Sublime Text
◦ Geany
◦ dsb.
Case Folding
• mengubah semua huruf dalam dokumen menjadi huruf kecil.
• Karakter selain huruf dihilangkan dan dianggap delimiter.
Tokenizing
• Tahap tokenizing/ parsing adalah tahap pemotongan string input
berdasarkan tiap kata yang menyusunnya.
Filtering
• Filtering adalah tahap mengambil kata-kata penting dari hasil token.
• Stoplist/stopword adalah kata-kata yang tidak deskriptif yang dapat
dibuang dalam pendekatan bag-of-words.
• Contoh stopwords adalah “yang”, “dan”, “di”, “dari”, dan seterusnya
Stemming
• Tahap stemming adalah tahap mencari root kata dari tiap kata hasil
filtering.
• Pada tahap ini dilakukan proses pengembalian berbagai bentukan
kata ke dalam suatu representasi yang sama.
• Sebagai contoh, kata bersama, kebersamaan, menyamai, akan distem
ke root word nya yaitu “sama”.
Word, Token and Tokenization

• Words are separated by a special character: a blank space


• Each word is called a token
• The process of discretizing words within a document is called
tokenization
• For our purpose here, each sentence can be considered a
separate document, although what is considered an
individual document may depend upon the context
• For now, a document here is simply a sequential collection of
tokens

52
Text Trasformation
• Pembentukan atribut mengacu pada proses untuk mendapatkan
representasi dokumen yang diharapkan
• Pengubahan kata-kata kebentuk dasarnya
• Stemming
• Stop words
Feature Selection
• Memilih kata-kata yang memiliki arti penting
• mengurangi dimensi, pemilihan hanya dilakukan terhadap kata-kata
yang relevan yang benar-benar merepresentasikan isi dari suatu
dokumen.
Pattern Discovery
• Pattern discoverymerupakan tahap penting untuk menemukan pola
atau pengetahuan (knowledge) dari keseluruhan teks.
• Tindakan yang lazim dilakukan pada tahap ini adalah operasi text
mining, dan biasanya menggunakan teknik-teknik data mining.

Anda mungkin juga menyukai