Data Mining Sequential Pattern Mining

Slides:



Advertisements
Presentasi serupa
Panduan untuk Pembeli Cara untuk Mendaftar dan Berbelanja di Qoo10.
Advertisements

MENGGUNAKAN INTERNET UNTUK KEPERLUAN INFORMASI DAN KOMUNIKASI
MODUL 10 APRIORI.
Agung Anugrah Prahara
MENGGUNAKAN INTERNET UNTUK KEPERLUAN INFORMASI DAN KOMUNIKASI
Manajemen Sumber Daya Data
MENGELOLA SUMBER DAYA DATA
Minggu 6 Prinsip & Konsep Desain
KNOWLEDGE TRANSFER IN THE e - WORLD
SEO (Search Engine Optimization)
BROWSER DAN SEARCH ENGINE
Market Basket Analysis
Manajemen Sumber Daya Data
Chapter 10 ALGORITME for ASSOCIATION RULES
BAHASA PEMROGRAMAN VISUAL FOXPRO: INDEX, SEARCHING, OBJECT FORM, MULTITABLE DAN MEMBUAT LAPORAN Oleh Munawar Asikin.
Pertemuan XIV FUNGSI MAYOR Assosiation. What Is Association Mining? Association rule mining: –Finding frequent patterns, associations, correlations, or.
Market Basket Analysis - #3
WEB USAGE MINING mulaab. Web usage mining process Bing Liu2.
Association Rules.
Association Rule (Apriori Algorithm)
Konsep Database dan Pengenalan Access
BAB 5 Mengakses Internet.
PENGANTAR DATA MINING.
Algoritma dan Struktur Data
Manajemen Sistem File Konsep File Metode Akses Struktur Direktori
Pengenalan Data Mining
A rsitektur dan M odel D ata M ining. Arsitektur Data Mining.
Interaksi Manusia & Komputer Website
Database design Siti Asmiatun, M.Kom.
Universitas Gunadarma
DATA MINING 25 Januari 2008.
ANALISIS ASOSIASI BAGIAN 1
ANALISIS ASOSIASI.
ANALISIS ASOSIASI BAGIAN 2
Konsep sistem informasi a
Association Rule Ali Ridho Barakbah Mata kuliah Data Mining.
SEMINAR TUGAS AKHIR 16 JULY 2008
ANALISIS ASOSIASI BAGIAN 1
ALGORITMA A PRIORI Wahyu Nurjaya WK, S.T., M.Kom.
MANAJEMEN DATA.
Assocation Rule Data Mining.
Pengantar Teknologi Mobile
ANALISIS ASOSIASI BAGIAN 1
Outline: MENU CONTEXT MENU TOOLBAR PROGRESS BAR VALIDASI DATA
Data Mining Junta Zeniarja, M.Kom, M.CS
MEMBUAT MENU SWITCHBOARD
Universitas Gunadarma
Struktur Data Array.
Adi Rachmanto,S.Kom UNIKOM
SISTEM MANAJEMEN DATABASE
.: ALGORITMA APRIORI :. DSS - Wiji Setiyaningsih, M.Kom
Sistem Manajemen Basis Data Web
Proses Bisnis Program Studi Sistem Informasi
PERTEMUAN I “EHAT PERMANA”
Associasion Rule dengan RapidMiner
Yorika Indah Pratiwi Nababan Zaida Kumala
2 Sistem Penunjang Keputusan (Decission Support System) 2 SKS
Adi Rachmanto,S.Kom UNIKOM
Adi Rachmanto,S.Kom UNIKOM
Pertemuan 10 REPORT SWITCHBOARD
ANALISIS ASOSIASI APRIORI.
Associasion Rule dengan RapidMiner
Manajemen Sistem File Konsep File Metode Akses Struktur Direktori
MODUL 10 APRIORI.
Pengembangan Web Topik Project Akhir.
ASSOCIATION RULE DAN PENERAPANNYA
Textbooks. Association Rules Association rule mining  Oleh Agrawal et al in  Mengasumsikan seluruh data categorical.  Definition - What does.
THE PATTERN THE PATTERN.
ASSOCIATION RULES APRIORI.
UNIVERSITAS GUNADARMA 2010
Transcript presentasi:

Data Mining Sequential Pattern Mining

Data Sequence Database Sequence: Object Timestamp Events A 10 2, 3, 5 20 6, 1 23 1 B 11 4, 5, 6 17 2 21 7, 8, 1, 2 28 1, 6 C 14 1, 8, 7

Contoh Data Sequence Elemen (Transaksi) Kejadian (Item) Elemen Database Sequence Elemen (Transaksi) Kejadian (Item) Customer Transaksi-transaksi penjualan yang dilakukan oleh konsumen tertentu Item – item yang dibeli konsumen dalam waktu t. Buku, diary Produk, CD, dll. Web Data Aktifitas browsing pada pengunjung web tertentu Sekumpulan File-file yang dilihat pengunjung web setelah melakukan proses single mouse click Home page, index page, contact info, dll Event data Kejadian – kejadian yang dihasilkan oleh sensor tertentu Kejadian-kejadi yang timbul dari sensor saat waktu t Jenis-jenis tanda(alarm) yang dihasilkan oleh sensor Genome sequences DNA sequence dari spesies tertentu Elemen dari DNA sequence Bases A,T,G,C Elemen (Transaksi) Kejadian (Item) E1 E2 E1 E3 E2 E2 E3 E4 Sequence

Definisi Sequence Sebuah sequence adalah urutan dari elemen-elemen (transaksi) s = < e1 e2 e3 … > Setiap elemen terdiri dari kumpulan kejadian-kejadian (item) ei = {i1, i2, …, ik} Setiap elemen merupakan atribut yang dihubungkan dengan suatu lokasi atau waktu tertentu (spesifik) Panjang Sequence, |s|, adalah banyaknya unsur-unsur sequence yang diberikan. A k-sequence adalah sebuah sequence yang terdiri dari k kejadian (item)

Contoh Sequence Web sequence: < {Homepage} {Electronics} {Digital Cameras} {Canon Digital Camera} {Shopping Cart} {Order Confirmation} {Return to Shopping} > Sequence kejadian kecelakaan yang disebabkan oleh ledakan nuklir pada 3-mile Island: (http://stellar-one.com/nuclear/staff_reports/summary_SOE_the_initiating_event.htm) < {clogged resin} {outlet valve closure} {loss of feedwater} {condenser polisher outlet valve shut} {booster pumps trip} {main waterpump trips} {main turbine trips} {reactor pressure increases}> Sequence buku checked out pada perpustakaan: <{Fellowship of the Ring} {The Two Towers} {Return of the King}>

Definisi Subsequence Data sequence Subsequence Contain? Sebuah sequence <a1 a2 … an> terdapat dalam sequence lain <b1 b2 … bm> (m ≥ n) jika terdapat integer i1 < i2 < … < in maka a1  bi1 , a2  bi1, …, an  bin Support subsequence w didefinisikan sebagai bagian dari data sequence yang berisi w Sequential pattern adalah subsequence yang sering muncul (yaitu, support subsequence ≥ minsup) 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} >

Definisi : Sequential Pattern Mining Terdapat: Database sequence Minimum menetapkan user yang mendukung(support), minsup Task: Menemukan semua subsequence dengan user yang mendukup ≥ minsup

k=4: Y _ _ Y Y _ _ _ Y <{a} {d e} {i}> Tantangan : Sequential Pattern Mining Diberikan sebuah sequence: <{a b} {c d e} {f} {g h i}> contoh subsequence: <{a} {c d} {f} {g} >, < {c d e} >, < {b} {g} >, dll. Berapakah banyaknya k-subsequences yang dapat diekstraksi dari n-sequence yang diberikan? <{a b} {c d e} {f} {g h i}> n = 9 k=4: Y _ _ Y Y _ _ _ Y <{a} {d e} {i}>

Contoh : Sequential Pattern Mining Minsup = 50% Contoh Frequent Subsequence: < {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%

Ekstraksi Sequential Pattern Terdapat n kejadian: i1, i2, i3, …, in Candidate 1-subsequence: <{i1}>, <{i2}>, <{i3}>, …, <{in}> Candidate 2-subsequence: <{i1, i2}>, <{i1, i3}>, …, <{i1} {i1}>, <{i1} {i2}>, …, <{in-1} {in}> Candidate 3-subsequence: <{i1, i2 , i3}>, <{i1, i2 , i4}>, …, <{i1, i2} {i1}>, <{i1, i2} {i2}>, …, <{i1} {i1 , i2}>, <{i1} {i1 , i3}>, …, <{i1} {i1} {i1}>, <{i1} {i1} {i2}>, …

Generalisasi Sequential Pattern (GSP) Step 1: Langkah pertama mengabaikan database sequence D untuk menghasilkan semua 1-element frequent sequence Step 2: Ulangi sampai tidak (ada) frequent sequences baru yang ditemukan Candidate Generation: Gabungkan frequent subsequences yang ditemukan ( k-1)th untuk menghasilkan candidate sequence yang berisi k item Candidate Pruning: Prune candidate k-sequence yang berisikan infrequent(k-1)-subsequences Support Counting: Mencari hal yang baru dalam sequence database D untuk menemukan support pada candidate sequence tersebut. Candidate Elimination: Meng-eliminasi candidate k-sequences yang actual support kurang dari minsup

Generalisasi Candidate Kasus Dasar (k=2): Penggabungan dua frequent 1-sequences <{i1}> dan <{i2}> akan menghasilkan dua candidate 2-sequences: <{i1} {i2}> dan <{i1 i2}> Kasus Umum (k>2): Sebuah frequent (k-1)-sequence w1 digabungkan dengan frequent yang lain (k-1)-sequence w2 untuk menghasilkan sebuah candidate k-sequence jika subsequence yang diperoleh dengan memindahkan event pertama di w1 adalah sama dengan subsequence yang diperoleh dengan memindahkan event terakhir in w2 Hal ini menghasilkan candidate setelah penggabungan diberi oleh sequence w1 diperluas sampai dengan event yang terakhir dari w2 Jika yang terakhir dua event didalam Cara lainnya, event yang terakhir di dalam w2 menjadi suatu element terpisah dengan menambahkan pada ujung w1 mempunyai element yang sama, kemudian peristiwa yang terakhir di dalam w2 menjadi bagian dari element yang terakhir di dalam w1 Cara lainnya, event yang terakhir di dalam w2 menjadi suatu element terpisah dengan menambahkan pada ujung w1

Contoh : Candidate Generation Penggabungan sequences w1=<{1} {2 3} {4}> dan w2 =<{2 3} {4 5}> akan menghasilkan candidate sequence < {1} {2 3} {4 5}> karena dua event yang terakhir didalam w2 (4 and 5) merupakan element yang sama Penggabungan sequences w1=<{1} {2 3} {4}> dan w2 =<{2 3} {4} {5}> akan menghasilkan candidate sequence < {1} {2 3} {4} {5}> karena dua event yang terakhir w2 (4 and 5) bukan merupakan element yang sama Tidak dapat dilakukan penggabungan sequence w1 =<{1} {2 6} {4}> dan w2 =<{1} {2} {4 5}> menghasilkan candidate < {1} {2 6} {4 5}> karena jika yang terakhir adalah viable candidate,lalu tersebut dapat diperoleh dari penggabungan w1 dengan < {1} {2 6} {5}>

GSP Example

Timing Constraints (I) {A B} {C} {D E} xg: max-gap ng: min-gap ms: maximum span <= xg >ng <= ms xg = 2, ng = 0, ms= 4 Data sequence Subsequence Contain? < {2,4} {3,5,6} {4,7} {4,5} {8} > < {6} {5} > Yes < {1} {2} {3} {4} {5}> < {1} {4} > No < {1} {2,3} {3,4} {4,5}> < {2} {3} {5} > < {1,2} {3} {2,3} {3,4} {2,4} {4,5}> < {1,2} {5} >

Mining Sequential Pattern Dengan Timing Constraints Pendekatan 1: Menemukan sequential pattern tanpa timing constraints Postprocess menentukan pattern Pendekatan 2: Memodifikasi GSP untuk langsung menjadi prune candidates namun melanggar timing constraints Question: Apa apriori prinsip masih dipegang ?

Apriori Principle Untuk Data Sequence Suppose: xg = 1 (max-gap) ng = 0 (min-gap) ms = 5 (maximum span) minsup = 60% <{2} {5}> support = 40% but <{2} {3} {5}> support = 60% Problem ada dikarenakan terdapat max-gap constraint Tidak terdapat problem jika max-gap tanpa batas

Contiguous Subsequences s merupakan contiguous subsequence dari w = <e1>< e2>…< ek> jika memenuhi kriteria berikut ini : s diperoleh dari w dengan menghapus suatu item dari e1 or ek s diperoleh w dengan menghapus sebuah item dari elemen ei yang terdiri lebih dari 2 item. s dikatakan contiguous subsequence dari s’ dan s’ dikatakan a contiguous subsequence dari w (recursive definition) Contoh: s = < {1} {2} > contiguous subsequence < {1} {2 3}>, < {1 2} {2} {3}>, dan < {3 4} {1 2} {2 3} {4} > BUKAN contiguous subsequence < {1} {3} {2}> and < {2} {1} {3} {2}>

Langkah Modifikasi Candidate Pruning Without maxgap constraint: Candidate k-sequence dikatakan pruned jika salah satunya (k-1)-subsequences adalah infrequent With maxgap constraint: Candidate k-sequence dikatakan pruned jika salah satunya contiguous (k-1)-subsequences adalah infrequent

Timing Constraints (II) xg: max-gap ng: min-gap ws: window size ms: maximum span {A B} {C} {D E} <= ms <= xg >ng <= ws xg = 2, ng = 0, ws = 1, ms= 5 Data sequence Subsequence Contain? < {2,4} {3,5,6} {4,7} {4,6} {8} > < {3} {5} > No < {1} {2} {3} {4} {5}> < {1,2} {3} > Yes < {1,2} {2,3} {3,4} {4,5}> < {1,2} {3,4} >

Langkah Modifikasi Support Counting Step Candidate pattern: <{a, c}> Beberapa data sequences terdiri dari <… {a c} … >, <… {a} … {c}…> ( dimana time({c}) – time({a}) ≤ ws) <…{c} … {a} …> (dimana time({a}) – time({c}) ≤ ws) yang digunakan dalam menentukan candidate pattern

Formula Lain Dalam beberapa domain, kita hanya mempunyai satu very long time series Contoh: monitoring network traffic events for attacks Monitoring siatuasi network traffic untuk mencari penyelesaian suatu masalah monitoring telecommunication alarm signals Memonitor sinyal telecommunication Bertujuan untuk menemukan kejadian- kejadian frequent sequences dalam time series Masalah ini juga untuk mengetahui frequent episode mining E1 E2 E3 E4 E1 E2 E1 E2 E2 E4 E3 E5 E1 E2 E2 E3 E5 E1 E2 E3 E4 E3 E1 Pattern: <E1> <E3>

Skema General Support Counting Asumsi: xg = 2 (max-gap) ng = 0 (min-gap) ws = 0 (window size) ms = 2 (maximum span)