Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Leudbold Albach Geändert vor über 10 Jahren
1
Fast Algorithm for Mining Association Rules
Oliver Müller Künstliche Intelligenz II WS09/ Leibniz Universität Hannover
2
Inhalt Problemstellung Formalisierung Algorithmus Apriori
Algorithmus AprioriTid Algorithmus AprioriHybrid Ergebnisse Zusammenfassung Fast Algorithm for Mining Association Rules
3
Problemstellung Verkaufs-Transaktionen aufzeichnen
Mittels Barcode-Technologie Großer Datenbestand Einzelner Datensatz bestehend aus Datum, gekaufte Artikel Fast Algorithm for Mining Association Rules
4
Problemstellung Verkaufs-Transaktionen aufzeichnen
Mittels Barcode-Technologie Großer Datenbestand Einzelner Datensatz bestehend aus Datum, gekaufte Artikel Interesse von Firmen meist für Marketing-Zwecke Kundenspezifische Vermarktungs-Strategien (Cross-Marketing, Attached Mailing, Katalog Design, etc.) Fast Algorithm for Mining Association Rules
5
Problemstellung Verkaufs-Transaktionen aufzeichnen
Mittels Barcode-Technologie Großer Datenbestand Einzelner Datensatz bestehend aus Datum, gekaufte Artikel Interesse von Firmen meist für Marketing-Zwecke Kundenspezifische Vermarktungs-Strategien (Cross-Marketing, Attached Mailing, Katalog Design, etc.) Ziel: Mining von Assoziations-Regeln im Datenbestand Fast Algorithm for Mining Association Rules
6
Problemstellung Verkaufs-Transaktionen aufzeichnen
Mittels Barcode-Technologie Großer Datenbestand Einzelner Datensatz bestehend aus Datum, gekaufte Artikel Interesse von Firmen meist für Marketing-Zwecke Kundenspezifische Vermarktungs-Strategien (Cross-Marketing, Attached Mailing, Katalog Design, etc.) Ziel: Mining von Assoziations-Regeln im Datenbestand Beispiel: Reifen ^ Zubehör Kfz-Dienstleistung Zu 98% Sicherheit (Confidence) Beispiel: 98% aller Kunden welche Reifen und Zubehör kaufen, bekommen auch Kfz-Dienstleistungen erledigt. Fast Algorithm for Mining Association Rules
7
Notation Menge von Items ( -Itemset)
Fast Algorithm for Mining Association Rules
8
Notation Menge von Items ( -Itemset)
Transaktion ist eine Menge von Items mit Transaktion: Vorstellung wie ein Warenkorb Fast Algorithm for Mining Association Rules
9
Notation Menge von Items ( -Itemset)
Transaktion ist eine Menge von Items mit Menge von Transaktionen: TID = Unique Identifier für jede Transaktion Lexikographische Sortierung D enthält alle Transaktionen z.B. in Form einer Datenbank, Textdatei etc. Fast Algorithm for Mining Association Rules
10
Notation Menge von Items ( -Itemset)
Transaktion ist eine Menge von Items mit Menge von Transaktionen: TID = Unique Identifier für jede Transaktion Lexikographische Sortierung Assoziations-Regel: wenn gilt: und Beispiel von vorhin: I bestehend aus (Reifen, Zubehör, Kfz-Dienstleistung), X aus (Reifen, Zubehör), Y aus (Kfz-Dienstleistung) Fast Algorithm for Mining Association Rules
11
Notation Menge von Items ( -Itemset)
Transaktion ist eine Menge von Items mit Menge von Transaktionen: TID = Unique Identifier für jede Transaktion Lexikographische Sortierung Assoziations-Regel: wenn gilt: und Confidence : aller Transaktionen in die enthalten, enthalten auch Beispiel von vorhin: c war 98% Fast Algorithm for Mining Association Rules
12
Notation Menge von Items ( -Itemset)
Transaktion ist eine Menge von Items mit Menge von Transaktionen: TID = Unique Identifier für jede Transaktion Lexikographische Sortierung Assoziations-Regel: wenn gilt: und Confidence : aller Transaktionen in die enthalten, enthalten auch Support : aller Transaktionen in enthalten Fast Algorithm for Mining Association Rules
13
Formale Definition des Problems
Generierung einer Liste aller Assoziations-Regeln mit und Fast Algorithm for Mining Association Rules
14
Formale Definition des Problems
Generierung einer Liste aller Assoziations-Regeln mit und Achtung: Probabilistische Eigenschaft der Assoziations-Regeln beachten: nicht unbedingt eingehalten nicht unbedingt eingehalten Fast Algorithm for Mining Association Rules
15
Andere Algorithmen AIS SETM Knowledge Discovery Klassifikations Regeln
Kausale Regeln Function fitting KID3 Fast Algorithm for Mining Association Rules
16
Ablauf Finden von Itemsets mit Support Diese werden groß genannt, alle anderen klein Wichtige Definition Fast Algorithm for Mining Association Rules
17
Ablauf Finden von Itemsets mit Support Diese werden groß genannt, alle anderen klein Nutze große Itemsets zur Generierung der Regeln: Fast Algorithm for Mining Association Rules
18
Ablauf Finden von Itemsets mit Support Diese werden groß genannt, alle anderen klein Nutze große Itemsets zur Generierung der Regeln: Sei ein großes Itemset Für jedes erzeuge Regel , wenn L großes Itemset z.B. (Reifen, Zubehör, Kfz-Dienstleistung) a = (Reifen, Zubehör) Fast Algorithm for Mining Association Rules
19
Finden großer Itemsets
Mehrere Durchläufe von Fast Algorithm for Mining Association Rules
20
Finden großer Itemsets
Mehrere Durchläufe von 1. Durchlauf: Zähle Support von einzelnen Items Fast Algorithm for Mining Association Rules
21
Finden großer Itemsets
Mehrere Durchläufe von 1. Durchlauf: Zähle Support von einzelnen Items k-ter Durchlauf: Erzeuge neue Kandidaten aus großen Itemsets von vorherigen Durchläufen Verwerfe Kandidaten mit zu geringem Support Fast Algorithm for Mining Association Rules
22
Finden großer Itemsets
Mehrere Durchläufe von 1. Durchlauf: Zähle Support von einzelnen Items k-ter Durchlauf: Erzeuge neue Kandidaten aus großen Itemsets von vorherigen Durchläufen Verwerfe Kandidaten mit zu geringem Support Terminiere, wenn keine großen Itemsets mehr gefunden werden Fast Algorithm for Mining Association Rules
23
Idee Intuition: Jedes Subset eines großen Itemsets ist groß
Fast Algorithm for Mining Association Rules
24
Idee Intuition: Jedes Subset eines großen Itemsets ist groß Finde Kandidaten für große k-Itemsets durch Kombination großer (k-1)-Itemsets k-Itemset = Itemset mit k Items Fast Algorithm for Mining Association Rules
25
Idee Intuition: Jedes Subset eines großen Itemsets ist groß Finde Kandidaten für große k-Itemsets durch Kombination großer (k-1)-Itemsets Entferne alle Kandidaten, welche kleine Subsets enthalten Fast Algorithm for Mining Association Rules
26
Algorithmus Apriori 1. Schritt: Zähle Support 1-Items
Fast Algorithm for Mining Association Rules
27
Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt
Fast Algorithm for Mining Association Rules
28
Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt:
Erzeuge neue Kandidaten Fast Algorithm for Mining Association Rules
29
Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt:
Erzeuge neue Kandidaten Durchsuche alle Transaktionen Alle Kandidaten aus t Zähle den Support hoch Fast Algorithm for Mining Association Rules
30
Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt:
Erzeuge neue Kandidaten Durchsuche alle Transaktionen Alle Kandidaten aus t Zähle den Support hoch Übernehme nur die mit genügend Support Fast Algorithm for Mining Association Rules
31
Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt:
Erzeuge neue Kandidaten Durchsuche alle Transaktionen Alle Kandidaten aus t Zähle den Support hoch Übernehme nur die mit genügend Support Fast Algorithm for Mining Association Rules
32
Algorithmus Apriori – Apriori-Gen
Besteht aus 2 Schritten 1. Schritt: Join (Kombination von zwei Itemsets) und sind in den ersten Einträgen identisch Fast Algorithm for Mining Association Rules
33
Algorithmus Apriori – Apriori-Gen
Besteht aus 2 Schritten 1. Schritt: Join (Kombination von zwei Itemsets) 2. Schritt: Prune und sind in den ersten Einträgen identisch Kleine Subsets = Subsets, die nicht groß sind, sprich nicht in L_(k-1) sind Entferne alle Kandidaten, welche kleine Subsets enthalten Fast Algorithm for Mining Association Rules
34
Algorithmus Apriori – Apriori-Gen
Beispiel: Join: Prune: , da nicht in Fast Algorithm for Mining Association Rules
35
Algorithmus Apriori - Subset
Benutzt Hash-Tree Hash-Wert in i-ter Ebene berechnet sich durch i-ten Item aus c Laufzeit O(max(k, size(t))) Wichtig: Items lexikographisch sortiert. Fast Algorithm for Mining Association Rules
36
Algorithmus Apriori - Problem
In jeder Iteration wird die gesamte Datenbank durchsucht! Fast Algorithm for Mining Association Rules
37
Modifikation - Algorithmus AprioriTid
Durchsucht die Datenbank nur einmal Fast Algorithm for Mining Association Rules
38
Modifikation - Algorithmus AprioriTid
Durchsucht die Datenbank nur einmal Kandidaten werden auch hier mit apriori-gen erzeugt. Zur Berechnung des Supports wird dann jedoch die Menge statt benutzt Fast Algorithm for Mining Association Rules
39
Modifikation - Algorithmus AprioriTid
Durchsucht die Datenbank nur einmal Kandidaten werden auch hier mit apriori-gen erzeugt. Zur Berechnung des Supports wird dann jedoch die Menge statt benutzt Einträge von haben die Form <TID, > Idee: Speichere zu jeder Transaktion eine Liste aller potentiell großen -Itemsets entspricht dabei der Datenbank Fast Algorithm for Mining Association Rules
40
Algorithmus AprioriTid - Beispiel
Minimum support = 2 TID Items 100 1 3 4 200 2 3 5 300 400 2 5 TID Set-of-Itemsets 100 { {1}, {3}, {4} } 200 { {2}, {3}, {5} } 300 { {1}, {2}, {3}, {5} } 400 { {2}, {5} } Itemset Support {1} 2 {2} 3 {3} {5} Itemset Support {1 2} 1 {1 3} 2 {1 5} {2 3} {2 5} 3 {3 5} TID Set-of-Itemsets 100 { {1 3} } 200 { {2 3}, {2 5}, {3 5} } 300 { {1 2}, {1 3}, {1 5}, {2 3}, {2 5}, {3 5} } 400 { {2 5} } Itemset Support {1 3} 2 {2 3} {2 5} 3 {3 5} Itemset Support {2 3 5} 1 TID Set-of-Itemsets 200 { {2 3 5} } 300 Itemset Support {2 3 5} 2 Fast Algorithm for Mining Association Rules
41
Ergebnisse Vergleich von Apriori und AprioriTid mit den Algorithmen
AIS (Kandidaten für große Itemsets on-the-fly erzeugen) SETM (on-the-fly, SQL optimiert) AIS und SETM haben gleichen Aufbau wie Apriori/AprioriTid, erzeugen große Itemsets aber anders. Fast Algorithm for Mining Association Rules
42
Ergebnisse Vergleich von Apriori und AprioriTid mit den Algorithmen
AIS (Kandidaten für große Itemsets on-the-fly erzeugen) SETM (on-the-fly, SQL optimiert) AIS und SETM erzeugen sehr viel mehr Kandidaten Fast Algorithm for Mining Association Rules
43
Ergebnisse Vergleich von Apriori und AprioriTid mit den Algorithmen
AIS (Kandidaten für große Itemsets on-the-fly erzeugen) SETM (on-the-fly, SQL optimiert) AIS und SETM erzeugen sehr viel mehr Kandidaten Wie vergleichen? Mit synthetisch generierten Daten (welches Modell?) (Reale Daten) Fast Algorithm for Mining Association Rules
44
Synthetische Daten Gutes Modell für reales Käufer-Verhalten:
Tendenz zum Kauf mehrerer Artikel gleichzeitig. Transaktionen haben eine typische Größe (Parameter |T| ) Große Itemsets haben eine typische Größe (Parameter |I|) Große Itemsets haben oft gemeinsame Items Nicht alle Artikel eines großen Itemsets werden immer zusammen gekauft Weitere Parameter: |D| Anzahl der Transaktionen N Anzahl Items (hier: N =1000) ... Fast Algorithm for Mining Association Rules
45
Ergebnisse SETM Zeiten für T>5 sind sehr viel höher
T = typische Transaktionsgröße I = typische Itemset-Größe D = #Transaktionen SETM Zeiten für T>5 sind sehr viel höher Fast Algorithm for Mining Association Rules
46
Ergebnisse Fast Algorithm for Mining Association Rules
47
Ergebnisse Apriori ist bei großen Problemen besser als AprioriTid
Fast Algorithm for Mining Association Rules
48
Vergleich Apriori – AprioriTid
AprioriTid benutzt statt . Passt in den Speicher, so ist AprioriTid schneller als Apriori. Fast Algorithm for Mining Association Rules
49
Vergleich Apriori – AprioriTid
AprioriTid benutzt statt . Passt in den Speicher, so ist AprioriTid schneller als Apriori. Wenn zu groß wird, passt es nicht in den Speicher und die Ladezeiten erhöhen sich sehr (Schreiben/Lesen auf Festplatte). Fast Algorithm for Mining Association Rules
50
AprioriHybrid Verwende Apriori in den ersten Iterationen
Wenn als klein genug angenommen wird, wechsle zu AprioriTid Fast Algorithm for Mining Association Rules
51
AprioriHybrid Verwende Apriori in den ersten Iterationen
Wenn als klein genug angenommen wird, wechsle zu AprioriTid Verwende dazu eine Heuristik: Fast Algorithm for Mining Association Rules
52
AprioriHybrid Verwende Apriori in den ersten Iterationen
Wenn als klein genug angenommen wird, wechsle zu AprioriTid Verwende dazu eine Heuristik: Umschaltung verbraucht Zeit Ist meistens immer noch besser Fast Algorithm for Mining Association Rules
53
AprioriHybrid – Ergebnisse
AprioriHybrid ist meist noch besser als Apriori und AprioriTid Fast Algorithm for Mining Association Rules
54
Zusammenfassung Assoziationsregeln sind ein wichtiges Werkzeug zur Analyse von Datenbeständen Fast Algorithm for Mining Association Rules
55
Zusammenfassung Assoziationsregeln sind ein wichtiges Werkzeug zur Analyse von Datenbeständen Es wurden Algorithmen vorgestellt, welche schneller und Ressourcensparender arbeiten als bisherige Ansätze Fast Algorithm for Mining Association Rules
56
Zusammenfassung Assoziationsregeln sind ein wichtiges Werkzeug zur Analyse von Datenbeständen Es wurden Algorithmen vorgestellt, welche schneller und Ressourcensparender arbeiten als bisherige Ansätze AprioriHybrid schlägt AIS und SETM dabei um Größenordnungen bei großen Datenbeständen Fast Algorithm for Mining Association Rules
57
Zusammenfassung Assoziationsregeln sind ein wichtiges Werkzeug zur Analyse von Datenbeständen Es wurden Algorithmen vorgestellt, welche schneller und Ressourcensparender arbeiten als bisherige Ansätze AprioriHybrid schlägt AIS und SETM dabei um Größenordnungen bei großen Datenbeständen Aber: Was ist mit hierarchisch sortierten Daten? Beispiel: is-a-Beziehung (Spülmaschine ist ein Küchengerät …) Regeln nicht immer sinnvoll (Rückgang #Piraten Zunahme globale Erwärmung) Fast Algorithm for Mining Association Rules
58
Fast Algorithm for Mining Association Rules
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.