Association Rule (Apriori Algorithm)

Slides:



Advertisements
Presentasi serupa
MODUL 10 APRIORI.
Advertisements

Sistem Basis Data Lanjut
Topik-Topik Lanjutan Sistem Informasi Johanes Kevin Lumadi Deny Setiawan Machliza Devi Sasmita Silvia Line Billie.
T R I G G E R.
1 Algoritma Bahasa Pemrograman dan Bab 1.1. Pengertian Algoritma.
DATA MINING 1.
BAB I Pendahuluan.
Kemajuan teknologi informasi & komunikasi memungkinkan sebuah perusahaan untuk memperoleh dan menyimpan data transaksional dan demografi secara.
Algoritma A priori.
Market Basket Analysis
Pengenalan Datawarehouse
Chapter 10 ALGORITME for ASSOCIATION RULES
Algoritma Data Mining Object-Oriented Programming Algoritma Data Mining
M ANAJEMEN D ATA “Pengaksesan Data”. P ENDAHULUAN Selama beberapa waktu, teknologi informasi berkonsentrasi pada pembangunan sistem bermisi kritis,- sistem.
Data Mining.
Data Mining Sequential Pattern Mining
Pertemuan XIV FUNGSI MAYOR Assosiation. What Is Association Mining? Association rule mining: –Finding frequent patterns, associations, correlations, or.
Market Basket Analysis - #3
Pengenalan Datawarehouse
Aplikasi Penjualan Pada Toko SUSU ABC DENGAN MENGGUNAKAN Gulang Wruhadi for further detail, please visit
Association Rules.
SQL (Structured Query Language) Materi Pertemuan
1 Diselesaikan Oleh KOMPUTER Langkah-langkah harus tersusun secara LOGIS dan Efisien agar dapat menyelesaikan tugas dengan benar dan efisien. ALGORITMA.
PEMBUATAN MODEL DATA dan DESAIN DATABASE
Pertemuan XIV FUNGSI MAYOR Assosiation. What Is Association Mining? Association rule mining: –Finding frequent patterns, associations, correlations, or.
Association Rules and Frequent Item Analysis
1 Pertemuan 15 Game Playing Matakuliah: T0264/Intelijensia Semu Tahun: Juli 2006 Versi: 2/1.
Pengenalan Data Mining
Algoritma-algoritma Data Mining Pertemuan XIV. Classification.
Dosen Pengampu : Edhy Sutanta, ST.,M.Kom.. Hoby Renang Badminton Traveling.
A rsitektur dan M odel D ata M ining. Arsitektur Data Mining.
JENIS-JENIS SISTEM INFORMASI
Association Rules (Kaidah Asosiasi)
ANALISIS ASOSIASI BAGIAN 1
ANALISIS ASOSIASI.
ANALISIS ASOSIASI BAGIAN 2
Association Rule Ali Ridho Barakbah Mata kuliah Data Mining.
SEMINAR TUGAS AKHIR 16 JULY 2008
Oleh: Tri Endah Wijayanti G
ANALISIS ASOSIASI BAGIAN 1
OLEH : HANDAYANI RETNO SUMINAR G PEMBIMBING :
ALGORITMA A PRIORI Wahyu Nurjaya WK, S.T., M.Kom.
FIKRI FADLILLAH, S.T., MMSI
Peran Utama Data Mining
Assocation Rule Data Mining.
ANALISIS ASOSIASI BAGIAN 1
Analisa Algoritma (IF1282)
Konsep Data Mining Ana Kurniawati.
Firman Ardiansyah, S.Kom, M.Si. Imas S. Sitanggang, S.Si., M.Kom
ANALISA ASOSIASI DATA MINING.
Data Mining Junta Zeniarja, M.Kom, M.CS
Pertemuan 24 Teknik Searching
Pertemuan 5 KONVERSI NFA MENJADI DFA
Modul 6 : Analisis Algoritma dan Struktur Data
Analisa Algoritma : Pendahuluan
.: ALGORITMA APRIORI :. DSS - Wiji Setiyaningsih, M.Kom
ANALISIS KERANJANG PASAR MENGGUNAKAN ALGORTIMA PREDICTIVE Ninditya Kharisma, for further detail, please visit
APLIKASI DATA MINING MENGGUNAKAN ATURAN ASOSIASI
Master data Management
FP-Growth Darmansyah Rahmat Hasbullah
DIAGRAM AKTIVITAS ACTIVITY DIAGRAM.
ANALISIS ASOSIASI APRIORI.
Sistem Berkas 2. ORGANISASI FILE.
MODUL 10 APRIORI.
Apa dan untuk apa data mining
Aplikasi Graph Minimum Spaning Tree Shortest Path.
Konsep Data Mining Ana Kurniawati.
ASSOCIATION RULE DAN PENERAPANNYA
Textbooks. Association Rules Association rule mining  Oleh Agrawal et al in  Mengasumsikan seluruh data categorical.  Definition - What does.
ASSOCIATION RULES APRIORI.
Transcript presentasi:

Association Rule (Apriori Algorithm)

Tujuan Mahasiswa mampu mendeskripsikan arti aturan asosiasi, market basket analysis dan analisis afinitas Mahasiswa mampu mendeskripsikan kasus yang tepat untuk diterapkannya aturan asosiasi Mahasiswa mampu mendeskripsikan cara dan prosedur penggunaan aturan asosiasi Mahasiswa mampu mendemonstrasikan aturan asosiasi dalam kasus nyata

Pendahuluan Aturan asosiasi (association rules) sering juga disebut analisis afinitas (affinity analysis) – analisis pertalian Studi mengenai ‘apa bersama apa’ atau “sesuatu memiliki pertalian dengan sesuatu” Misal pada transaksi di supermarket: Jika seseorang membeli susu bayi biasanya seseorang juga membeli diapers, dapat dikatakan susu bayi besama diapers atau susu bayi memiliki pertalian dengan diapers Karena studi ini diawali pada database transaksi pelanggan, maka studi ini juga disebut “market basket analysis”

Aturan Asosiasi dalam Penjualan Tersedianya database market basket / transaksi pembelian pada pusat-pusat penjualan (apapun) mendorong pengembangan teknik-teknik yang secara otomatis menemukan asosiasi produk atau item-item yang tersimpan dalam database tersebut. Market basket database tersebut mengandung record dalam jumlah yang amat besar. Tiap record mencatat semua item yang dibeli oleh pelanggan dalam transaksi tunggal. Pengambil keputusan memerlukan data mengenai pola transaksi

Aturan Asosiasi dalam Penjualan (cont) Manfaat bagi manajer: Dapat ditentukannya penempatan barang-barang dalam layout dengan lebih tepat. Misal: susu diletakkan berdekatan dengan diapers Promosi produk Segmentasi pembeli Pembuatan katalog Melihat pola kecenderungan pola belanja pelanggan Aturan asosiasi juga dapat diterapkan dalam bentuk sistem rekomendasi, misal: Sistem rekomendasi pembelian buku atau dvd online (www.amazon.com) Sistem rekomendasi pencarian artikel dalam search engine Sistem rekomendasi peminjaman atau pengadaan buku pada perpustakaan

Aturan Asosiasi dalam Penjualan (cont) Hal terpenting yang dilakukan oleh aturan asosiasi adalah: Penyajian informasi transaksi ke dalam bentuk “if-then”atau “jika maka” Aturan ini dihitung dari sifat probabilistik yang dimiliki oleh data yang ada.

Association Rule Mining Jika diberikan sekumpulan data transaksi, tentukan suatu aturan yang akan memprediksi kemunculan suatu item berdasar kemunculan item yang lain dalam transaksi tersebut Contoh dari Association Rules Market-Basket transactions {Diaper}  {Beer}, {Milk, Bread}  {Eggs,Coke}, {Beer, Bread}  {Milk}, Pengertian dari pernyataan tersebut adalah co-occurrence, bukan sebab akibat (kausalitas)!

Definisi: Frequent Itemset Sekumpulan satu atau lebih item Misal: {Milk, Bread, Diaper} k-itemset Suatu itemset yang terdiri dari k item Support count () Frekuensi kemunculan suatu itemset Misal: ({Milk, Bread,Diaper}) = 2 Support Pecahan transaksi yang terdiri dari suatu itemset Misal: s({Milk, Bread, Diaper}) = 2/5 Frequent Itemset Suatu itemset yang memiliki nilai support lebih tinggi atau sama dengan batas minimum support (minsup)

Definisi: Association Rule Persamaan dalam bentuk X  Y, di mana X dan Y merupakan itemset Misal: {Milk, Diaper}  {Beer} Rule Evaluation Metrics Support (s) Pecahan transaksi yang terdiri dari kedua item X dan Y Confidence (c) Ukuran seberapa sering item dalam y muncul darlam transaksi yang terdiri dari X Misal:

Tugas Association Rule Mining Jika diberikan sekumpulan transaski T, tujuan dari association rule mining adalah menemukan semua aturan yang memiliki: support ≥ batas minsup confidence ≥ batas minconf Pendekatan Brute-force : Daftar semua association rules yang mungkin Hitung support dan confidence untuk masing-masing Pangkas (Prune) aturan yang tidak memenuhi batas minsup dan minconf  Computationally prohibitive!

Mining Association Rules Contoh dari Aturan: {Milk,Diaper}  {Beer} (s=0.4, c=0.67) {Milk,Beer}  {Diaper} (s=0.4, c=1.0) {Diaper,Beer}  {Milk} (s=0.4, c=0.67) {Beer}  {Milk,Diaper} (s=0.4, c=0.67) {Diaper}  {Milk,Beer} (s=0.4, c=0.5) {Milk}  {Diaper,Beer} (s=0.4, c=0.5) Pengamatan: Semua aturan di atas merupakan partisi biner dari itemset yang sama: {Milk, Diaper, Beer} Aturan yang dibentuk dari itemset yang sama memiliki support yang identik tetapi dapat memiliki nilai confidence yang berbeda Dengan demikian kita dapat memisahkan persyaratan support dan confidence

Mining Association Rules Dua tahap pendekatan dalam proses mendapatkan aturan asosiasi, yaitu: Frequent Itemset Generation Membentuk semua itemset yang memiliki support  minsup Rule Generation Membentuk high confidence rules dari masing-masing frequent itemset, di mana setiap rule merupakan binary partitioning dari suatu frequent itemset Pembentukan frequent itemset masih merupakan proses komputasi yang mahal

Frequent Itemset Generation Jika diberikan d item, maka akan terdapat 2d kemungkinan kandidat itemset

Frequent Itemset Generation Brute-force approach: Masing-masing itemset dalam kisi-kisi tersebut merupakan candidate frequent itemset Hitung support untuk masing-masing candidate dengan mencarinya dalam database Cocokkan masing-masing transaksi dengan setiap kandidat yang ada Kompleksitas adalah ekuivalen dengan O(NMw) => Expensive karena M = 2d !!!

Strategi Pembentukan Frequent Itemset Kurangi jumlah kandidat (M) Complete search: M=2d Gunakan teknik pemangkasan (pruning) untuk mengurangi M Kurangi jumlah transaksi (N) Kurangi ukuran N saat ukuran dari itemset meningkat Kurangi jumlah proses pencocokan (NM) Gunakan struktur data yang efisien untuk menyimpan kandidat ataupun transaksi Tidak diperlukan untuk mencocokkan setiap kandidat dengan tiap-tiap transaksi yang ada

Mengurangi Jumlah Kandidat Prinsip Apriori : Jika suatu itemset seringkali muncul, maka semua himpunan bagiannya semestinya juga sering muncul Prinsip Apriori memiliki kecenderungan sifat ukuran support sebagai berikut: Support dari suatu itemset tidak pernah melampaui support dari subsetnya Hal ini dikenal sebagai sifat anti-monotone dari support

Gambaran Prinsip Apriori Found to be Infrequent Pruned supersets

Gambaran Apriori Principle Items (1-itemsets) Pairs (2-itemsets) (Tidak diperlukan membentuk kandidat yang melibatkan Coke ataupun Eggs) Minimum Support = 3 Triplets (3-itemsets)

Algoritma Apriori — Contoh Database D L1 C1 Scan D C2 C2 L2 Scan D C3 L3 Scan D

Algoritma Apriori Langkah penggabungan: Ck dibangun dengan menggabungkan Lk-1 dengan dirinya sendiri Langkah pemangkasan: Setiap (k-1)-itemset yang tidak sering muncul (not frequent) tidak dapat menjadi subset dari frequent k-itemset Pseudo-code: Ck: Candidate itemset of size k Lk : frequent itemset of size k L1 = {frequent items}; for (k = 1; Lk !=; k++) do begin Ck+1 = candidates generated from Lk; for each transaction t in database do increment the count of all candidates in Ck+1 that are contained in t Lk+1 = candidates in Ck+1 with min_support end return k Lk;

Bagaimana Membentuk Kandidat? Andaikan item dalam Lk-1 terdaftar dalam suatu transaksi Langkah 1: self-joining Lk-1 insert into Ck select p.item1, p.item2, …, p.itemk-1, q.itemk-1 from Lk-1 p, Lk-1 q where p.item1=q.item1, …, p.itemk-2=q.itemk-2, p.itemk-1 < q.itemk-1 Langkah 2: pruning forall itemsets c in Ck do forall (k-1)-subsets s of c do if (s is not in Lk-1) then delete c from Ck

Contoh Pembentukan Kandidat L3={abc, abd, acd, ace, bcd} Self-joining: L3*L3 abcd from abc and abd acde from acd and ace Pruning: acde is removed because ade is not in L3 C4={abcd}