Fast Algorithm for Mining Association Rules

Slides:



Advertisements
Ähnliche Präsentationen
Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Advertisements

Informatik II: Algorithmen und Datenstrukturen SS 2013
Eine dynamische Menge, die diese Operationen unterstützt,
1.1.2: Frequent Pattern Growth von Nicolai Voget
Dr. Brigitte Mathiak Kapitel 10 Physische Datenorganisation.
Apriori-Algorithmus zur Entdeckung von Assoziationsregeln
Fast Algorithm for Mining Association Rules* Vortrag im Rahmen des Seminars Neue Ansätze der Künstlichen Intelligenz Prof. Dr. Katharina Morik Lehrstuhl.
Indizierung von Graphen durch häufige Subgraphen (2)
Suche in Texten (Stringsuche )
3. Kapitel: Komplexität und Komplexitätsklassen
Kapitel 6. Suchverfahren
Synonyme: Stapel, Keller, LIFO-Liste usw.
Wasserfall-Ansätze zur Bildsegmentierung
Genetische Algorithmen für die Variogrammanpassung
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
FH-Hof Effizienz - Grundlagen Richard Göbel. FH-Hof Inhalt Einführung Aufwand für Anfragen ohne Indexierung Indexstrukturen für Anfragen an eine Tabelle.
Effizienz: Indexstrukturen
Heuristiken Automatic Problem Solving Institut für Informatik
Algorithmentheorie 04 –Hashing
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Union-Find-Strukturen
Steffen Thomas 96I DATA MINING.
Christian Schindelhauer
Was sind Histogramme? (1)
Minimum Spanning Tree: MST
Vortrag: Ingo Gensch, Mathias Reich am:
Beispielrelation Buchbestellungen H = Menge der bedeutenden Ziele = {a, d} Schwelle T = 4 Stichprobe S = {a, b, a, a, a, a} mit s = |S| = 6 N = Anzahl.
Intelligentes Crawling im WWW mit Hilfe intuitiver Suchbedingungen
Hauptseminar Automaten und Formale Sprachen

Christian Schulz, Marc Thielbeer, Sebastian Boldt
Ideen der Informatik Suchen und Sortieren [Ordnung muss sein…]
Effiziente Algorithmen
Effiziente Algorithmen
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Effiziente Algorithmen
Computational Thinking Suchen und Sortieren [Ordnung muss sein…]
Einführung in die Programmierung
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Polynome und schnelle Fourier-Transformation
Berechnung von Association Rules
Ergebnispräsentation Steffen Ciupke Jörg Hipp
Datenbanken Dantenbanksystem Data Base System Datenbasis (Daten)
CEF 2001, New Haven Genetic Neural Fuzzy Explorer GENEFER Konzeption, Technologien und Einsatzmöglichkeiten Eric Ringhut Muenster Institute for Computational.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
CEF 2001, New Haven Zinsprognosen mit GENEFER ein Fuzzyregel-basiertes Modell zur Prognose des EZB- Refinanzierungszinssatzes Eric Ringhut Muenster Institute.
Matthias Gläfke Data Mining - Seminar im Sommersemester Vortrag Pincer-Search 5. Juni 2007.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
CL Tree MW 31.1 Business Intelligence Wintersemester 2015 / 2016 Stanislav Prokupetz.
Mining über RDBMSe von Christian Widmer
2.3 Gruppierte Datensätze
 Präsentation transkript:

Fast Algorithm for Mining Association Rules Oliver Müller Künstliche Intelligenz II WS09/10 Leibniz Universität Hannover

Inhalt Problemstellung Formalisierung Algorithmus Apriori Algorithmus AprioriTid Algorithmus AprioriHybrid Ergebnisse Zusammenfassung Fast Algorithm for Mining Association Rules

Problemstellung Verkaufs-Transaktionen aufzeichnen Mittels Barcode-Technologie Großer Datenbestand Einzelner Datensatz bestehend aus Datum, gekaufte Artikel Fast Algorithm for Mining Association Rules

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

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

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

Notation Menge von Items ( -Itemset) Fast Algorithm for Mining Association Rules

Notation Menge von Items ( -Itemset) Transaktion ist eine Menge von Items mit Transaktion: Vorstellung wie ein Warenkorb Fast Algorithm for Mining Association Rules

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

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

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

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

Formale Definition des Problems Generierung einer Liste aller Assoziations-Regeln mit und Fast Algorithm for Mining Association Rules

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

Andere Algorithmen AIS SETM Knowledge Discovery Klassifikations Regeln Kausale Regeln Function fitting KID3 Fast Algorithm for Mining Association Rules

Ablauf Finden von Itemsets mit Support Diese werden groß genannt, alle anderen klein Wichtige Definition Fast Algorithm for Mining Association Rules

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

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

Finden großer Itemsets Mehrere Durchläufe von Fast Algorithm for Mining Association Rules

Finden großer Itemsets Mehrere Durchläufe von 1. Durchlauf: Zähle Support von einzelnen Items Fast Algorithm for Mining Association Rules

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

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

Idee Intuition: Jedes Subset eines großen Itemsets ist groß Fast Algorithm for Mining Association Rules

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

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

Algorithmus Apriori 1. Schritt: Zähle Support 1-Items Fast Algorithm for Mining Association Rules

Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt Fast Algorithm for Mining Association Rules

Algorithmus Apriori 1. Schritt: Zähle Support 1-Items k-ter Schritt: Erzeuge neue Kandidaten Fast Algorithm for Mining Association Rules

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

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

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

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

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

Algorithmus Apriori – Apriori-Gen Beispiel: Join: Prune: , da nicht in Fast Algorithm for Mining Association Rules

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

Algorithmus Apriori - Problem In jeder Iteration wird die gesamte Datenbank durchsucht! Fast Algorithm for Mining Association Rules

Modifikation - Algorithmus AprioriTid Durchsucht die Datenbank nur einmal Fast Algorithm for Mining Association Rules

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

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

Algorithmus AprioriTid - Beispiel Minimum support = 2 TID Items 100 1 3 4 200 2 3 5 300 1 2 3 5 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

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

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

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

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

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

Ergebnisse Fast Algorithm for Mining Association Rules

Ergebnisse Apriori ist bei großen Problemen besser als AprioriTid Fast Algorithm for Mining Association Rules

Vergleich Apriori – AprioriTid AprioriTid benutzt statt . Passt in den Speicher, so ist AprioriTid schneller als Apriori. Fast Algorithm for Mining Association Rules

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

AprioriHybrid Verwende Apriori in den ersten Iterationen Wenn als klein genug angenommen wird, wechsle zu AprioriTid Fast Algorithm for Mining Association Rules

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

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

AprioriHybrid – Ergebnisse AprioriHybrid ist meist noch besser als Apriori und AprioriTid Fast Algorithm for Mining Association Rules

Zusammenfassung Assoziationsregeln sind ein wichtiges Werkzeug zur Analyse von Datenbeständen Fast Algorithm for Mining Association Rules

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

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

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

Fast Algorithm for Mining Association Rules