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
Top Related