Achim Eisele, Thema 1.4.3: Sequenzielle Muster 1 FernUniversität in Hagen Seminar 01912 im Sommersemester 2008 Erkennung Sequenzieller Muster Algorithmen und Anwendungen Thema 1.4.3: Sequenzielle Muster Referent: Achim Eisele Agrawal, Srikant Mining sequential patterns Srikant, Agrawal Mining S equential P atterns: G eneralizations and P erformance Improvements Neckel, Knobloch C ustomer R elationship Analytics Achim Eisele, Thema 1.4.3: Sequenzielle Muster Inhalt Einleitung ● Data Mining und KDD ● Grundlagen Sequenzieller Muster ● Lösungsansatz ● Generierung von Sequenzkandidaten ● Algorithmen ● Speicherverwaltung ● Einordnung des Problems ● Kommerzieller Einsatz ● Zusammenfassung ● 2 Achim Eisele, Thema 1.4.3: Sequenzielle Muster 3 Einleitung ● Muster, die in zeitlicher Abhängigkeit zueinander stehen ● Musterbeispiel: „Krieg der Sterne“, „Das Imperium schlägt zurück“, „Die Rückkehr der Jedi-Ritter“ ● Einführung der Barcode Technologie ● E-commerce ● Kommerzieller und wissenschaftlicher Einsatz ● Erste Vorstellung 1995 von Agrawal und Srikant Achim Eisele, Thema 1.4.3: Sequenzielle Muster Data Mining und KDD ● Datenanalysekonzept ● Knowledge Discovery in Databases (KDD) ● Verfahren zur Mustererkennung ● in Prozessmodell eingebettet 4 Achim Eisele, Thema 1.4.3: Sequenzielle Muster KDD Phasen Phasen eines Datenanalyseprozesses ● Selektion ● Exploration und Modifikation ● Transformation ● Analyse / Data Mining ● Interpretation 5 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Sequenzielle Muster – Grundlagen ● Datenbank D mit Kundentransaktionen ● itemset (Warenkorb einer Transaktion) i = (i1,i2...in) ● Sequenz (geordnete Liste von itemsets) s = <s1,s2...sn> ● Größe einer Sequenz: Anzahl seiner Elemente (itemsets) ● Länge einer Sequenz: Anzahl seiner items (Produkte) Eine Sequenz der Länge k ist eine k-Sequenz 6 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Sequenzielle Muster – Grundlagen ● Maximal eine Transaktion pro Kunde und Zeiteinheit ● Menge eines items wird nicht beachtet 7 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Sequenzielle Muster – Grundlagen ● Teilsequenz (Sequenz, die in einer anderen Sequenz enthalten ist) <(2,3)(5)(8,9)> ● <(2,3,4)(5,6)(8,9)> Zusammenhängende Teilsequenz erstes oder letztes Element oder item aus si, falls |si| > 1 ● Kundensequenz: zeitlich sortierte Transaktionen ● Unterstützung: Anteil der Sequenzen aus S, die einer benutzerdefinierten minimalen Unterstüzung genügen Gesucht: häufige/große Sequenzen / sequenzielle Muster 8 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Sequenzielle Muster – Grundlagen 9 Achim Eisele, Thema 1.4.3: Sequenzielle Muster 10 Lösungsansatz Problemlösung in 5 Phasen ● Sortierphase (Vorbereitung der Datenbank) ● Litemset-Phase (Finden häufiger Sequenzen, anfangs 1-Sequenzen ● Transformationsphase (adäquate Datenstruktur) ● Sequenzierungsphase (Suche neuer häufiger Sequenzen) ● Maximierungsphase (maximale Sequenzen) Achim Eisele, Thema 1.4.3: Sequenzielle Muster Algorithmen-Familien Count-All-Familie Berechnung aller großen Sequenzen (auch nicht-maximale) ● Anschließendes Aussortieren der nicht-maximalen Sequenzen ● AprioriAll ● Count-Some-Familie Berechnen lediglich maximale Sequenzen ● Vorwärts-/Rückwärtsphase ● AprioriSome, DynamicSome ● 11 Achim Eisele, Thema 1.4.3: Sequenzielle Muster 12 Generierung von Sequenzkandidaten apriori-generate ● Join Phase (Verknüpfung Lk-1 mit sich selbst) ● Prune Phase (Aussortieren von Sequenzkandidaten, deren Teilsequenzen nicht der minimalen Unterstützung genügen) on the fly generation ● (k + j) Sequenzen Achim Eisele, Thema 1.4.3: Sequenzielle Muster Algorithmus I AprioriAll 13 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Algorithmus II AprioriSome ● Vorwärtsphase 14 Achim Eisele, Thema 1.4.3: Sequenzielle Muster 15 Algorithmus II AprioriSome ● Next (Überspringen bestimmter k-Sequenzen in der Vorwärtsphase) Achim Eisele, Thema 1.4.3: Sequenzielle Muster Algorithmus II AprioriSome ● Rückwärtsphase 16 Achim Eisele, Thema 1.4.3: Sequenzielle Muster 17 Algorithmus III Dynamic Some ● Initialisierungsphase (1 ... step) ● AprioriSome generiert Ck aus Ck-1 (falls Lk-1 nicht bekannt) ● DynamicSome generiert Ck on-the-fly ● Intermediate Phase generiert Kandidaten für die übersprungenen Längen der Vorwärtsphase ● Rückwärtsphase identisch mit AprioriSome Achim Eisele, Thema 1.4.3: Sequenzielle Muster Algorithmus IV GSP (Generalized Sequential Patterns) ● Taxonomien – Klassifizierung (ist-ein Beziehung) ● Sliding window (Aufweichung des Begriffs Transaktion) ● Zeitbindung (Mindest-/Maximalabstand) 18 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Algorithmus IV GSP ● Laufzeitoptimierung versucht so wenig Sequenzkandidaten wie möglich zu generieren, ohne große Sequenzen auszulassen (Hashtree) ● Ermittlung der Unterstützung ist nicht mehr trivial (Zeitbindung, Taxonomien) 19 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Ausblick Weitere Entwicklungen ● IncSpan (inkrementell) ● CCSM (Caching der Sequenzkandidaten) ● SPADE (nur 3 Durchläufe) ● PrefixSpan (Prefix Projection) ● SPIRIT (reguläre Ausdrücke) 20 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Speicherverwaltung Bei großen Datenbanken und niedriger Unterstützung ● Die Menge der k-Sequenzkandidaten Ck passt nicht in den Arbeitsspeicher → Ck aufteilen ● Die Menge der großen k-1 Sequenzen Lk-1 passt nicht in den Arbeitsspeicher → Merge/Join Verfahren 21 Achim Eisele, Thema 1.4.3: Sequenzielle Muster 22 Einordnung des Problems ● Ähnlichkeiten mit Erkennung von Assoziationsregeln ● Intra- vs. Intertransaktionsmuster ● Datengetriebene Vorgehensweise (bottom-up) vs. Hypothesengetriebene Vorgehensweise (top-down) „Die Technik selbst ist nicht die Antwort, sondern nur das Werkzeug, das den Analytiker dabei unterstützen soll, eine Antwort zu finden“, Dorian Pyle Achim Eisele, Thema 1.4.3: Sequenzielle Muster Kommerzieller Einsatz ● Teil der Warenkorbanalyse ● Gezielte Werbemaßnahmen ● Recommendation Engine ● Nutzerprofile 23 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Zusammenfassung ● Reihe von Algorithmen zur Erkennung sequenzieller Muster ● Beliebter Gegenstand der Forschung ● Ähnlichkeit mit Erkennung von Assoziationsregeln ● Kommerzieller und wissenschaftlicher Einsatz 24 Achim Eisele, Thema 1.4.3: Sequenzielle Muster Diskussion Fragen ??? 25