Fast Algorithm for Mining Association Rules* Vortrag im Rahmen des Seminars Neue Ansätze der Künstlichen Intelligenz Prof. Dr. Katharina Morik Lehrstuhl.

Slides:



Advertisements
Ähnliche Präsentationen
Object Relational Mapping
Advertisements

Algorithmentheorie 08 – Dynamische Programmierung (1)
Christian Scheideler SS 2009
6. Regelbasierte Systeme
1.1.2: Frequent Pattern Growth von Nicolai Voget
Schnelle Matrizenoperationen von Christian Büttner
Apriori-Algorithmus zur Entdeckung von Assoziationsregeln
Team 1 Annemarie Ulbricht, Ariane Kunst, Jan Bierer
WS 03/041 Algorithmentheorie 01 - Einleitung Prof. Dr. S. Albers Prof. Dr. Th. Ottmann.
Objekt – Relationales – Modell Tomasz Makowski IN
3. Kapitel: Komplexität und Komplexitätsklassen
Übung 6.6Schranken 1.Angenommen, Ihr Algorithmus habe einen Aufwand von g(n) = 5n 3 + n für alle n a)Geben sie eine obere Schranke O(g(n)) an. b)Beweisen.
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
Prof.Dr.S. Albers Prof. Dr. Th. Ottmann
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
Prinzipien des Algorithmenentwurfs Backtracking Prof. Dr. Th. Ottmann
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (04 – Entwurfsverfahren) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. 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.
WS Algorithmentheorie 08 – Dynamische Programmierung (3) Konstruktion optimaler Suchbäume Prof. Dr. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
WS 06/07 Algorithmentheorie 01 - Einleitung Prof. Dr. Th. Ottmann Tobias Lauer.
Union-Find-Strukturen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Geometrisches Divide and Conquer
Seminar parallele Programmierung SS 2003
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Steffen Thomas 96I DATA MINING.
Data Cube 1. Einführung 2. Aggregation in SQL, GROUP BY
Externe Datenstruktur lineare Liste
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


§14 Basis und Dimension  (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
Fast Algorithm for Mining Association Rules
Maschinelles Lernen und automatische Textklassifikation
Christian Schulz, Marc Thielbeer, Sebastian Boldt
Einführung in die Programmierung
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Polynome und schnelle Fourier-Transformation
Dynamische Programmierung mit Anwendung auf Sequence Alignment Problem
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Berechnung von Association Rules
Ergebnispräsentation Steffen Ciupke Jörg Hipp
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Das Traveling Salesman Problem (TSP)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Integritätserhaltung und -Überprüfung in deduktiven Datenbanken
Analyse der Laufzeit von Algorithmen
WS03/041 Dynamische Programmierung (3) Konstruktion optimaler Suchbäume Prof. Dr. S. Albers Prof. Dr. Th. Ottmann.
Gliederung der Vorlesung
Matthias Gläfke Data Mining - Seminar im Sommersemester Vortrag Pincer-Search 5. Juni 2007.
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 2 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
CL Tree MW 31.1 Business Intelligence Wintersemester 2015 / 2016 Stanislav Prokupetz.
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
Häufige Teilgraphen:gSpan Seminartitel: Data Mining Seminarthema:1.5.1 Häufige Teilgraphen: gSpan Fernuniversität Hagen SS 2008 Seminarleiter: Ralf.
Mining über RDBMSe von Christian Widmer
 Präsentation transkript:

Fast Algorithm for Mining Association Rules* Vortrag im Rahmen des Seminars Neue Ansätze der Künstlichen Intelligenz Prof. Dr. Katharina Morik Lehrstuhl für Künstliche Intelligenz Mike Duhm 28. Mai 2002 * Rakesh Agrawal, Ramakrishnan Srikant, 20 th VLDB Conference Santiago, Chile

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz Gliederung des Vortrages: 1. Einleitung 2. Der APRIORI Algorithmus 3. Fazit 4. Literatur

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Heranführung an den Algorithmus durch Informelle Darstellung des Problembereichs Formalisierung Probleme / Lösungsansätze

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Informelle Darstellung des Problembereiches: Durch die weit verbreitete Barcode Technik können heute riesige Mengen an Verkaufsdaten gesammelt und gespeichert werden, so genannte Warenkorb-Daten. Grosses Interesse im Marketing: Analyse auf immer wieder kehrende Zusammenhänge (->Assoziationen) zwischen gekauften Produkten. Wer Brot und Butter kauft, kauft oft auch Marmelade Bier, Pizza Chips Nutzung der Erkenntnisse zur Aufstellung des Warensortiments, für Werbemaßnahmen, Katalogdesign,...

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Formalisierung I={i 1, i 2,...,i n } (Menge der Items -> Warensortiment) D : Menge der Transaktionen T und T I (-> Warenkörbe) Jede Transaktion bekommt einen eindeutigen Bezeichner TID. Eine Assoziationsregel ist eine Implikation X=>Y, wobei X,Y I, und X Y=.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Formalisierung (Teil 2) Eine Regel X=>Y hat support s, wenn in s% der Transaktionen aus D X Y auftritt. Einer Regel X=>Y hat confidence c, wenn c% der Transaktionen aus D die X enthalten auch Y enthalten.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Probleme / Lösungsansätze Warenhaussortimente bestehen aus tausenden von Artikeln. Jede Transaktionen T ist Element der Potenzmenge von I, es gibt also potenziell in der Anzahl der Items viele verschiedene, und darin eine riesige Menge möglicher Assoziationsregeln! Ein Anwender hätte sehr viele Hypothesen aufzustellen. Naives Herangehen an das Problem würde horrende Laufzeiten verursachen

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Probleme / Lösungsansätze Das hier vorgestellte Verfahren kommt ohne Hypothesen aus. Ein Anwender muss nur Daten hineinwerfen und er erhält fertige Assoziationsregeln. support und confidence werden genutzt um wirkliche Regeln herauszufinden. Der Benutzer muss also minsup (minimaler support) und minconf (minimale confidence) festlegen. Typische Werte sind: minsup = 0.01, minconf = Itemsets deren support minsup ist werden im Folgenden häufig genannt. Bottom-Up Vorgehen macht die Laufzeit handhabbar.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 1. Einleitung Algorithmisches Vorgehen Einteilung des Problems in zwei Teilprobleme Finden aller häufigen Itemsets Hierfür werden wir die Algorithmen Apriori (und im Weiteren auch AprioriTid und AprioriHybrid) behandeln Benutzung die gefundenen häufigen Itemsets zum Generieren der Assoziationsregeln Hierauf gehe ich nicht weiter ein. Nur soviel: Für alle häufigen Itemsets l und hier wiederum für alle Teilmengen a muss die confidence der Regel (l-a)=>a berechnet und mit minconf verglichen werden.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Kapitelaufbau Finden der häufigen Itemsets Struktur des Algorithmus Konventionen und Notation Der eigentliche Algorithmus Subroutinen

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Finden der häufigen Itemsets Das Besondere des Algorithmus ist die bottom-up-Vorgehensweise: Erst finden der einzelnen Items, welche häufig sind. Daraus Aufbau der zweielementigen Kandidaten Herausschmeissen der Kanditaten, die Teilmengen enthalten, welche nicht häufig sind. Überprüfung der Kandidaten, ob diese wiederum häufig sind an Hand der Datenbasis. Iteratives Vorgehen bis keine neuen häufigen Itemsets mehr gefunden werden können.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Finden der häufigen Itemsets Beispiel:

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Struktur des Algorithmus: Apriori Kandidaten- generierung Überprüfung auf Häufigkeit Zusammenfüh- rung (join) Beschneidung (prune)

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Konventionen und Notation : Items in einer Transaktion sowie innerhalb der Itemsets sind in lexikographischer Ordnung. Die Datenbank besteht aus Einträgen der Form. Ein k-Itemset ist ein Itemset der Grösse k Gebunden an jedes Itemset ist ein Zählerfeld, welches mit 0 initialisiert wird L k ist eine Menge von häufigen k-Itemsets C k ist eine Menge von k-Kandidaten-Itemsets

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Endlich - der eigentliche Algorithmus 1. L 1 = {häufige 1-Itemsets}; 2. for ( k=2 ; L k-1 { } ; k++ ) do begin 3. C k = apriori-gen( L k-1 ); // neue Kandidaten werden erzeugt 4. forall Transaktionen t D do begin 5. C t = subset(C k,t) ; // in t enthaltene Kandidaten 6. forall Kandidaten c C t do 7. c.count++; 8. end 9. L k = {c C k I c.count >= minsup} 10. end 11. return : k L k

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Kandidatengenerierung mit apriori-gen Schritt 1:join Aus je zwei Itemsets aus L k-1 wird ein neuer Kandidat der Größe k. Insert into C k select p.item 1, p.item 2, … p.item k-1, q.item k-1 from L k-1 p, L k-1 q where p.item 1 =q.item 1,….,.item k-2 =q.item k-2 p.item k-1 <q.item k-1

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Kandidatengenerierung mit apriori-gen Schritt 2:prune Kandidaten, welche nicht-häufige Subsets enthalten fallen heraus. Hierbei werden nur (k-1)-subsets der Kandidaten betrachtet. forall itemsets c C k do for all (k-1) –subsets of c do if ( s L k-1 ) then delete c form C k

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Die Subroutine subset Wir speichern unsere Kandidaten aus C k in einem hash-tree. Jeder Knoten ist entweder hash-Tabelle – wenn er innerer Knoten ist – oder Container sonst. Jeder bucket einer hash-table in einem Knoten mit Tiefe d zeigt auf Knoten mit Tiefe d+1. Zum Speichern wird der Baum traversiert, wobei auf Tiefe d die Hashfunktion auf das d-te Item angewendet wird. Alle Knoten starten als Container und werden erst zu hash-Tabellen, wenn sie überfüllt werden

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Die Subroutine subset (Teil 2) Finden aller Kanditaten, die in Transaktion T vorhanden sind: Der Baum wird von der Wurzel aus traversiert. Wenn an einem Blatt angekommen, wird der passende Kandidat in die Ausgabemenge geworfen Wenn ein innerer Knoten durch Anwendung der Hashfunktion auf Item i erreicht worden ist, wird an diesem die Hashfunktion auf alle folgenden items der Transaktion angewendet. Die Korrektheit folgt aus der Anwendung dieses Verfahrens auf die Wurzel

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Die Subroutine subset (Teil 3) Beispiel:

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus Modifikation Im Nachfolgenden gehe ich kurz auf folgende Modifizierten Versionen des Algorithmus ein: AprioriTID AprioriHybrid

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus AprioriTID Der gerade vorgestellte Algorithmus hat gegenüber anderen Performance- Vorteile, jedoch muss nach jeder Kandidatengenerierung die Datenbank komplett durchsucht werden. Idee: Speichern der TID an den Kandidaten, die zugehörige Transaktion enthält. Vorteil: Die support-Bestimmung kommt ohne weitere Datenbankdurchläufe aus. Nachteil: Bei niedrigem k-Wert wird viel Speicherplatz benötigt!

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 2. Der Apriori Algorithmus AprioriTID Die Kombination von Apriori und AprioriTID liefert den AprioriHybrid Algorithmus. Für niedrige k-Werte Nutzung von Apriori Für hohe k-Werte Nutzung von AprioriTID => Stärken beider Algorithmen werden kombiniert.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 3. Fazit Pro: Die beide vorgestellten Algorithmen, insbesondere die daraus resultierende Hybrid-Lösung arbeiten im Vergleich zu früheren Ansätzen (AIS, SETM) mit hoher Performanz. Aber: Was ist, wenn man das Sortiment hierarchisch betrachtet? Es kann gezeigt werden, dass nicht nur sinnvolle Regeln geliefert werden: Beispiel: Betrachtung der CENSUS Datenbank 1990 Militärische Aktivität in der Vergangenheit => Kein Dienst in Vietnam liefert confidence von 0.9

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz 3. Fazit Es gibt sicherlich noch einige andere Aspekte, aber Insgesamt haben wir hier eine gut anwendbare Methode kennengelernt, die spätestens auf den zweiten Blick auch verständlich und handhabbar ist.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz Literatur: 1. R. Agrawal, R. Srikant. Fast Algorithm for Mining Association Rules. In Proc. Of the 20 th VLDB Conference Santaigo, Chile, Kapitel Maschinelles Lernen (und Data Mining) von K. Morik aus G. Görz, J. Schneeberger und C.-R. Rollinger (Hrsg.) Handbuch der KI. Oldenbourg Verlag 3. F. Berzal, I. Blanco, D. Sánchez, M.-A. Vila. A New Framework to Assess Association Rules.

Fast Algorithmus for Mining Association Rules Mike DuhmSeite 2 Lehrstuhl für Künstliche Intelligenz Fast Algorithm for Mining Association Rules Vielen Dank für Eure Aufmerksamkeit :-)