Text Mining for Clementine Improve Insights with Text Mining
Association Rules pada Text Mining
Transcript of Association Rules pada Text Mining
ASSOCIATION RULES
PADA TEXT MINING Budi Susanto
versi 1.4
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 1
Tujuan
• Memahami algoritma Apriori dan FP-Growth
• Memahami penerapannya pada penambangan dokumen
• Memamahmi algoritma GSP
• Memahami penerapannya pada penambangan dokumen
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 2
Pendahuluan
• Analisis aturan asosiasi merupakan tugas dasar pada
data mining.
• Tujuannya:
• Menemukan hubungan kemunculan bersamaan (asosiasi) diantara
item-item data.
• Aplikasi klasik yang menggunakan metode ini adalah
market basket data analysis.
• Tujuannya: menemukan bagaimana item-item barang yang dibeli
oleh pelanggan diasosiasikan.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 3
Pendahuluan
• Contoh:
• Sabun Mandi Pasta Gigi
• [support: 40%, confidence = 80%]
• 40% pelanggan membeli Sabun Mandi dan Pasta Gigi bersamaan
• 80% pelanggan membeli Sabun Mandi juga membeli Pasta Gigi.
• Dalam text mining, association rules dapat digunakan
untuk menemukan hubungan kemunculan kata.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 4
Konsep Dasar Association Rules
I = i1, i2,..., im{ }
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 5
Himpunan item
T = t1, t2,..., tn{ } Himpunan transaksi
Ti adalah himpunan item dimana ti Í I
Bentuk implikasi pada association rules:
X Y, dimana X Ì I,Y Ì I,XÇY = 0
Ukuran
• Support
• Seberapa sering aturan yang dihasilkan berlaku pada himpunan
transaksi T.
• Confidence
• Dilihat sebagai probabilitas kondisional terhadap aturan.
• Aturan yang terpilih adalah aturan yang memenuhi
minimum support dan minimum confidence
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 6
Contoh
• Terdapat himpunan transaksi I:
• Chicken, Clothes Milk [sup = 3/7, conf = 3/3]
• Clothes Milk, Chicken [sup = 3/7, conf = 3/3]
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 7
Algoritma Apriori
• Terdapat dua tahap utama:
• Hasilkan semua frequent itemsets (itemset yang memiliki support >
minsupport)
• Hasilkan semua aturan asosiasi dari frequent itemsets (confident >
minconfident)
• Jumat item dalam sebuah itemset ditentukan, k.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 8
Apriori: pembentukan itemset
• Apriori menganut prinsip downward closure property
• Jika sebuah itemset memiliki support minimum, maka setiap subset
non-empty dari itemset tersebut juga memiliki support minimum.
• Item-item dalam I, sudah dalam keadaan terurutkan
secara lexicographic order.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 9
Algoritma Apriori
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 10
Algoritma Apriori: pembentukan kandidat
itemset
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 11
Contoh: Data
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 12
TID Item-item
001 1,2,3,5
002 2,3,4
003 2,3,6
004 1,2,4
005 1,3,4,5
006 2,3,5
007 1,3
008 1,2,3,5
009 1,2,3
010 1,2,3,4,5
Min Support: 40%, dan Min Confident: 60%
Contoh: Kandidat 2-itemsets
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 13
C2 itemsets Support Count
{1, 2} 5
{1, 3} 6
{1, 4} 3
{1, 5} 4
{2, 3} 7
{2, 4} 3
{2, 5} 4
{3, 4} 3
{3, 5} 5
{4, 5} 2
Pruning 2-itemsets
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 14
C2 itemsets Support Count
{1, 2} 5
{1, 3} 6
{1, 5} 4
{2, 3} 7
{2, 5} 4
{3, 5} 5
Kandidat 3-itemsets
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 15
C3 itemsets Support Count
{1, 2, 3} 4
{1, 3, 5} 4
{2, 3, 5} 4
Pruning 3-itemsets
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 16
C3 itemsets Support Count
{1, 2, 3} 4
{1, 3, 5} 4
{2, 3, 5} 4
Algoritma: pembentukan rule
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 17
Contoh Pembentukan Rule
• Candidate Rule 1: • Rule1: {1,2} {3}
• Support: 4/10
• Confident: 4/5
• Rule 2: {1,3} {2}
• Support: 4/10
• Confident: 4/6
• Rule 3: {2,3} {1}
• Support: 4/10
• Confident: 4/7
• H1 = {{2}, {3}}, sehingga H2 = {2,3} • Rule 4: {1} {2,3}
• Support: 4/10
• Confident: 4/7
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 18
FP-Tree
• Menghasilkan frequent items tanpa perlu membuat
kandidat-kandidatnya.
• Kepadatan struktur tinggi
• Tidak perlu melakukan penelurusan database keseluruhan setiap
saat
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 19
FP-Tree: Algoritma
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 20
Contoh
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 21
Contoh
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 22
Item Support Count
3 9
2 8
1 7
5 5
4 4
6 1
Asosiasi untuk Kategori
• Metode asosiasi, seperti Apriori dan FP-Tree, tidak
memiliki sasaran pada klausa consequent.
• Klausa consequent ditentukan juga dari itemset dalam transaksi.
• Jika asosiasi dilakukan terhadap suatu consequent
dengan target tertentu, Y, maka metode yang digunakan
disebut sebagai class association rules.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 23
Asosiasi untuk Kategori
• T adalah himpunan transaksi sebanyak n.
• Setiap transaksi diberi label y.
• I adalah himpunan semua item dalam T, dan Y adalah
himpunan label class (target) dan I Y = θ.
• Sebuah Class Association rule (CAR) adalah bentuk
implikasi dari
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 24
X® y,X Ì I, yÎY
Ç
Contoh
I = {Student, Teach, School, City, Game, Baseball,
Basketball, Team, Coach, Player, Spectator}
Y = {Education, Sport}.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 25
Contoh
• Misal minsup = 20% dan minconf = 60%, maka:
• Student, School Education
• [sup= 2/7, conf = 2/2]
• Game Sport
• [sup= 2/7, conf = 2/3]
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 26
Pembangkit Rule
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 27
Contoh CAR
• F1: {({School}, Education):(3, 3), ({Student}, Education):(2, 2), ({Teach}, Education):(2, 2), ({Baseball}, Sport):(2, 2), ({Basketball}, Sport):(3, 3), ({Game}, Sport):(3, 2), ({Team}, Sport):(2, 2)}
• CAR1: • School Education [sup = 3/7, conf = 3/3]
• Student Education [sup = 2/7, conf = 2/2]
• Teach Education [sup = 2/7, conf = 2/2]
• Baseball Sport [sup = 2/7, conf = 2/2]
• Basketball Sport [sup = 3/7, conf = 3/3]
• Game Sport [sup = 2/7, conf = 2/3]
• Team Sport [sup = 2/7, conf = 2/2]
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 28
Contoh CAR
• C2: {
• ({School, Student}, Education),
• ({School, Teach}, Education),
• ({Student, Teach}, Education),
• ({Baseball, Basketball}, Sport),
• ({Baseball, Game}, Sport),
• ({Baseball, Team}, Sport),
• ({Basketball, Game}, Sport),
• ({Basketball, Team}, Sport),
• ({Game, Team}, Sport)
}
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 29
Contoh CAR
• F2: {
• ({School, Student}, Education):(2, 2),
• ({School, Teach}, Education):(2, 2),
• ({Game, Team}, Sport):(2, 2)
}
• CAR2:
• School, Student Education
• [sup = 2/7, conf = 2/2]
• School, Teach Education
• [sup = 2/7, conf = 2/2]
• Game, Team Sport
• [sup = 2/7, conf = 2/2]
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 30
Lift Ratio
• Jika suatu rule memiliki confidence tinggi, berarti rule
tersebut mencirikan aturan asosiasi yang kuat.
• Pemilihan rule berdasar confidence bisa menipu, sebab
jika (A)ntecedent/(C)onsequent memiliki support yang
tinggi, maka rule dapat memiliki confidence tinggi,
walaupun sebetulnya independen.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 31
Lift Ratio
• Ukuran yang lebih baik untuk mengukur kekuatan aturan
asosiasi adalah
• Membandingkan confidence rule dengan confidence yang
diharapkan.
• Kemunculan consequent itemset dalam transaksi bersifat independen
terhadap kemunculan antecedent tiap rulenya.
• Support consequent dibagi dengan jumlah transaksi.
• Expected confidence dari sebuah rule adalah perkalian
support antecedence dan consequence dibagi dengan
support dari antecedence.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 32
Lift Ratio
• Sebuah lift ratio > 1.0 menyatakan Ant dan Cons muncul
lebih sering dari yang diharapkan
• kemunculan rule Ant memiliki efek positif terhadap kemunculan
Cons
• Sebuah lift ratio < 1.0 menyatakan Ant dan Cons muncul
lebih jarang dari yang diharapkan
• kemunculan rule Ant memiliki efek negatif terhadap kemunculan
Cons
• Sebuah list ratio ≈ 1.0 menyatakan Ant dan Cons muncul
hampir selalu bersamaan seperti yang diharapkan
• kemunculan rule Ant hampir tidak memiliki pengaruh terhadap
kemunculan Cons
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 33
Lift Ratio
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 34
c AÞC( ) = P C | A( ) =s AÈC( )s A( )
c ' AÞC( ) =s(A)´ s(C)
s A( )
Contoh Lift Ratio
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 35
Contoh Lift Ratio
A C c(A) s(C) c(A U C) conf lift
{1,2} {5} 4 2/9 2 2/4 18/8
{1,5} {2} 2 7/9 2 2/2 9/7
{2,5} {1} 2 6/9 2 2/2 9/6
{1} {2,5} 6 2/9 2 2/6 9/6
{2} {1,5} 7 2/9 2 2/7 9/7
{5} {2,1} 2 4/9 2 2/2 9/4
{1,2} {3} 4 6/9 2 2/4 9/12
{1,3} {2} 4 7/9 2 2/4 18/28
{2,3} {1} 4 6/9 2 2/4 9/12
{1} {2,3} 6 4/9 2 2/6 9/12
{2} {1,3} 7 4/9 2 2/7 9/14
{3} {1,2} 6 4/9 2 2/6 9/12
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 36
SEQUENCE PATTERN
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 37
Sequential Pattern Mining
• Diberikan sebuah himpunan sequential, temukan
himpunan lengkap dari frequent subsequences.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 38
Database
Sebuah sequence : < (ef) (ab) (df) c b >
An element may contain a set of items.
Items within an element are unordered
and we list them alphabetically.
<a(bc)dc> sebuah subsequence
dari <a(abc)(ac)d(cf)>
Diberikan min_sup =2, <(ab)c> adalah sebuah
sequential pattern
SID sequence
10 <a(abc)(ac)d(cf)>
20 <(ad)c(bc)(ae)>
30 <(ef)(ab)(df)cb>
40 <eg(af)cbc>
Tantangan Sequental Pattern Mining
• Sejumlah besar pola sekuensial tersembunyi dalam
database.
• Sebuah algoritma mining harus
• Menemukan himpulan pola-pola lengkap, yang memenuhi ambang
batas minimum support (frekuensi).
• Harus efisien, scalable, melibatkan hanya sejumlah kecil
penelurusan database.
• Mampu dikaitkan dengan berbagai macam user-specific constraint.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 39
Konsep Sequence Pattern
• Association Rule tidak memperhatikan urutan dari
transaksi.
• I = {i1, i2, ..., im} adalah himpunan item
• Sebuah sequence adalah daftar urutan dari itemset.
• X ⊆ I, dimana X adalah itemset.
• s =<a1a2...ar>, ai adalah sebuah itemset (elemen dari s).
• ai = {x1, x2, ..., xk}, dimana xj ∈ I adalah item.
• Sebuah item hanya dapat muncul sekali dalam suatu sequence.
• Ukuran suatu sequence adalah jumlah itemset dalam sequence
• Panjang suatu sequence adalah jumlah item dalam suquence.
• k-sequence adalah sequence dengan panjang k.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 40
Konsep Sequence Pattern
• s1 = <a1a2...ar> adalah sebuah subsequence s2 =
<b1b2...bv>, atau s2 adalah supersequence dari s1, jika
terdapat integer 1≤j1 <j2 <...<jr-1<jr ≤ v sehinga a1
⊆ bj, a2 ⊆ bj, ..., ar ⊆ bjr.
• Kita juga mengatakan s2 berisi s1.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 41
Konsep Sequence Pattern
• c adalah subsequence dari s jika memenuhi salah satu
kondisi berikut:
• c diturunkan dari s dengan membuang sebuah item dari salah satu
sequence baik s1 atau sn.
• c diturunkan dari s dengan membuang sebuah item dari sebuah
elemen sj yang memiliki minimum 2 item.
• c adalah contiguous subsequence dari ċ dan ċ adalah contiguous
subsequence dari s.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 42
Contoh
• I = {1, 2, 3, 4, 5, 6, 7, 8, 9}
• s1 = <{3}{4, 5}{8}>
• Ukuran = 3
• Panjang = 4
• s2 = <{6} {3, 7}{9}{4, 5, 8}{3, 8}>
• s1 subsequence s2 karena
• {3} ⊆ {3, 7}, {4, 5} ⊆ {4, 5, 8}, dan {8} ⊆ {3, 8}
• Sedangkan <{3}{8}> bukan subsequence <{3, 8}>,
demikian juga sebaliknya.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 43
Contoh
SID sequence
10 <a(abc)(ac)d(cf)>
20 <(ad)c(bc)(ae)>
30 <(ef)(ab)(df)cb>
40 <eg(af)cbc>
• Bagaimana dengan:
• <a(bc)dc>
• <(ab)c>
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 44
Data sequence Subsequence Contain?
< {2,4} {3,5,6} {8} > < {2} {3,5} > Yes
< {1,2} {3,4} > < {1} {2} > No
< {2,4} {2,4} {2,5} > < {2} {4} > Yes
Contoh
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 45
Minsup = 50%
Examples of Frequent Subsequences:
< {1,2} > s=60%
< {2,3} > s=60%
< {2,4}> s=80%
< {3} {5}> s=80%
< {1} {2} > s=80%
< {2} {2} > s=60%
< {1} {2,3} > s=60%
< {2} {2,3} > s=60%
< {1,2} {2,3} > s=60%
Object Timestamp Events
A 1 1,2,4
A 2 2,3
A 3 5
B 1 1,2
B 2 2,3,4
C 1 1, 2
C 2 2,3,4
C 3 2,4,5
D 1 2
D 2 3, 4
D 3 4, 5
E 1 1, 3
E 2 2, 4, 5
GSP
• Generalized Sequential Patterns: Srikant & Agrawal @
EDBT’96
• Berdasar algoritma Apriori (Agrawal & Sirkant’94)
• Jika sebuah sequence S bukan frekuen,
• Maka tidak ada super-sequences dari S adalah frekuen.
• Contoh:
• <hb> adalah infrequent, maka
• <hab> dan <(ah)b>
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 46
GSP
• Outline dari metode GSP:
• Inisialisasi, setiap item dalam DB sebagai sebuah kandidat length-
1.
• Untuk setiap level (sequence length-k)
• Scan database untuk mengumpulkan support count untuk setiap
kandidat sequence.
• Hasilkan kandidat length-(k+1) sequence dari length-k frequent
sequence menggunakan Apriori.
• Ulangi sampai tidak ada frekuen sequence atau tidak ada lagi
kandidat yang ditemukan.
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 47
Algoritma GSP
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 48
candidate-gen-SPM(Fk-1)
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 49
Contoh candidate-gen-SPM()
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 50
Contoh GSP
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 51
<a(bd)bcb(ade)> 50
<(be)(ce)d> 40
<(ah)(bf)abf> 30
<(bf)(ce)b(fg)> 20
<(bd)cb(ac)> 10
Sequence Seq. ID
min_sup =2 Cand Sup
<a> 3
<b> 5
<c> 4
<d> 3
<e> 3
<f> 2
<g> 1
<h> 1
GSP - Kandidat Length-2
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 52
<a> <b> <c> <d> <e> <f>
<a> <aa> <ab> <ac> <ad> <ae> <af>
<b> <ba> <bb> <bc> <bd> <be> <bf>
<c> <ca> <cb> <cc> <cd> <ce> <cf>
<d> <da> <db> <dc> <dd> <de> <df>
<e> <ea> <eb> <ec> <ed> <ee> <ef>
<f> <fa> <fb> <fc> <fd> <fe> <ff>
<a> <b> <c> <d> <e> <f>
<a> <(ab)> <(ac)> <(ad)> <(ae)> <(af)>
<b> <(bc)> <(bd)> <(be)> <(bf)>
<c> <(cd)> <(ce)> <(cf)>
<d> <(de)> <(df)>
<e> <(ef)>
<f>
Proses GSP
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 53
<a> <b> <c> <d> <e> <f> <g> <h>
<aa> <ab> … <af> <ba> <bb> … <ff> <(ab)> … <(ef)>
<abb> <aab> <aba> <baa> <bab> …
<abba> <(bd)bc> …
<(bd)cba>
1st scan: 8 cand. 6 length-1 seq.
pat.
2nd scan: 51 cand. 19 length-2 seq.
pat. 10 cand. not in DB at all
3rd scan: 46 cand. 19 length-3 seq.
pat. 20 cand. not in DB at all
4th scan: 8 cand. 6 length-4 seq.
pat.
5th scan: 1 cand. 1 length-5 seq.
pat.
Cand. cannot
pass sup.
threshold Cand. not in DB at all
<a(bd)bcb(ade)> 50
<(be)(ce)d> 40
<(ah)(bf)abf> 30
<(bf)(ce)b(fg)> 20
<(bd)cb(ac)> 10
Sequence Seq. ID
min_sup =2
Contoh Transaksi
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 54
Contoh Sequence
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 55
Contoh Pola Sequence
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 56
SPADE
• SPADE (Sequential PAttern Discovery using Equivalent
Class) dikembangkan oleh Zaki 2001
• Sebuah metode format vertikal sequential pattern mining
• Sebuah sequence database dipetakan ke suatu
himpunan dari
• Item: <SID, EID>
• Sequential pattern mining dikerjakan dengan
• Menumbuhkan subsequences (patterns) satu item pada satu waktu
dengan menggunakan Apriori candidate generation
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 57
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 58
TERIMA KASIH. Akhir pertemuan #4
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 59