Die Berechnung <strong>de</strong>r 1er-Sequenzen erfolgt mit einem Datenbankscan. Für je<strong><strong>de</strong>s</strong>Item wird die erwähnte ctid-Liste angelegt, in <strong>de</strong>n Speicher gela<strong>de</strong>n und die Unterstützunggezählt. Das Sequenz-Template hat logischerweise <strong>de</strong>n Wert 0. ZurErmittlung <strong>de</strong>r 2er-Sequenzen wird an Hand ihrer Schnittmengen die Häufigkeitberechnet. In diesem Falle wird kurzer Hand auch das horizontale Datenschemaverwen<strong>de</strong>t, um die Datenbankoperationen in diesem Schritt so gering wie möglichzu halten. Um nun die k-Sequenzen zu ermitteln, wer<strong>de</strong>n die häufigen Sequenzenauf Äquivalenz-Klassen verteilt, so dass die unterschiedlichen Klassen unabhängigvon einan<strong>de</strong>r verwen<strong>de</strong>t wer<strong>de</strong>n können. Die Klassen wer<strong>de</strong>n nun in absteigen<strong>de</strong>rReihenfolge bearbeitet, um das beschnei<strong>de</strong>n <strong>de</strong>r Kandidaten zu erleichtern. Zu Beginnenthält je<strong>de</strong> Klasse die 2er-Sequenzen bis dann im nächsten Schritt iterativdie Kandidaten für die nächste Stufe ermittelt wer<strong>de</strong>n. Je<strong>de</strong> Klasse erstellt dabeieine Menge neuer Klassen, die zum Schluss in eine Klasse mit <strong>de</strong>m neuen In<strong>de</strong>x kverschmolzen wer<strong>de</strong>n. Dieser Vorgang stoppt erst dann, wenn alle häufigen Klassen- und damit auch die Sequenzen - generiert wur<strong>de</strong>n.5.4 Analyse zeitlicher AssoziationsregelnZum Abschluss <strong>de</strong>r temporalen Datenanalyse soll noch kurz auf die Ermittlung temporalerAssoziationsregeln eingegangen wer<strong>de</strong>n. Die folgen<strong>de</strong>n Ausführungen orientierensich dabei an die Arbeit von Chris P. Rainsford [Rai99].Wie bereits im Kapitel <strong>de</strong>r zeitlichen Assoziationsregeln erläutert (siehe 4.2), han<strong>de</strong>ltes sich hierbei um eine Erweiterung <strong>de</strong>r bekannten Assoziationsregeln, die Zusammenhängezwischen Items innerhalb einer Transaktion beschreiben. Wenn mansich allerdings das praktische Beispiel eines Shops vor Augen führt, wo ein Kun<strong>de</strong> in<strong>de</strong>r Regel mehrere Transaktionen bzw. Einkäufe vornimmt, wird klar, dass Zusammenhängemit einem zeitlichen Horizont zusätzliche Informationen liefern können.Eine Regel wird mitX ⇒ Y ∧ P 1 ∧ P 2 · · · ∧ P n (31)notiert. X und Y sind bestimmte Attribute während P für ein Prädikat steht. DiePrädikate entsprechen Allens Taxonomie (siehe Abbildung 4) und können beliebigverknüpft wer<strong>de</strong>n. Rainsford verwen<strong>de</strong>t darüberhinaus Konfi<strong>de</strong>nzfaktoren c und tc,die für die Konfi<strong>de</strong>nz <strong>de</strong>r Regel bzw. <strong><strong>de</strong>s</strong> jeweiligen Prädikats gelten.Bei Allens Taxonomie gibt es dreizehn zeitliche Beziehungen, aber keine Verallgemeinerungen.In [Rai99] wird <strong><strong>de</strong>s</strong>halb darüberhinaus die Generalisierung von Freksa[Fre91] verwen<strong>de</strong>t, was <strong>de</strong>n Vorteil hat, dass zusätzliche, verallgemeinern<strong>de</strong> Regelngefun<strong>de</strong>n wer<strong>de</strong>n können.Der Vorgang <strong>de</strong>r Analyse wird in vier Phasen eingeteilt. In <strong>de</strong>r ersten Phase wer<strong>de</strong>nauf herkömmlichen Wege alle Assoziationsregeln in <strong>de</strong>n vorhan<strong>de</strong>n Daten gesucht.Um Zusammenhänge auch über <strong>de</strong>n Rahmen einer einzelnen Transaktion hinauszu fin<strong>de</strong>n, wer<strong>de</strong>n die Transaktionen eines je<strong>de</strong>n Kun<strong>de</strong>n dabei in ein gemeinsamesItemset überführt. Dies hat zur Folge, dass die 1. Normalform gebrochen wer<strong>de</strong>nmuß und in einem Tupel jeweils ein Kun<strong>de</strong> mit allen zugehörigen Items verbleibt.Dabei erhalten temporale Attribute eine beson<strong>de</strong>re Berücksichtigung in <strong>de</strong>m diedazugehörigen Zeitpunkte und Intervalle ebenfalls gespeichert wer<strong>de</strong>n.Nicht-temporale Items wer<strong>de</strong>n in dieser Phase entfernt, da sie nicht Teil einer zeitlichenBeziehung sein können.Erst wenn die nicht-temporalen Regeln aufgestellt sind, wird unter <strong>de</strong>nen, die diegewünschte Unterstützung erreichen, die Kandidatenliste für die temporalen Regelnerstellt.In <strong>de</strong>r zweiten Phase wer<strong>de</strong>n alle zeitlichen Beziehungen gesucht. Besteht eine Regeldabei aus z.B. drei Items müssen Beziehungen zwischen allen drei Items untersucht24
while not EOFread next itemset into current itemset;y = first candidateitem relationship;R y = rule associated with y;for x = 0 to candcount dobeginif (R y is a subset of the itemset)begin<strong>de</strong>termine relationship between the two items in y;increment the relationship count for this for thisrelationship for the candidate y;endy = next candidate item relationship;R y = rule associated with y;en<strong>de</strong>ndwhileAbbildung 8: Algorithmus <strong>de</strong>r dritten Phasewer<strong>de</strong>n. Tupel, die eine Regel unterstützen, wer<strong>de</strong>n mit Allens Taxonomie verglichen.Für je<strong>de</strong> <strong>de</strong>r dreizehn Beziehungen und je<strong><strong>de</strong>s</strong> Attributpaar wird ein Zählerangelegt. Diese Zähler wer<strong>de</strong>n beim nächsten Datenbankscan gepflegt und zeigendann an, ob zwischen <strong>de</strong>n einzelnen Elementen temporale Beziehungen bestehen.Zur Vereinfachung wird in dieser Phase davon ausgegangen, dass ein Item nur einmalin einem Itemset sein kann, ebenso wer<strong>de</strong>n die Generalisierungen von Freksa nochvernachlässigt. Der Algorithmus in Abbildung 8 soll die Funktionsweise dieser Phasever<strong>de</strong>utlichen. In <strong>de</strong>r letzten Phase geht es nun darum mit Hilfe <strong>de</strong>r Zähler die bestehen<strong>de</strong>nBeziehungen zu bestimmen. Sollte die Unterstützung für die Beziehungennach Allen nicht reichen, existieren vielleicht allgemeinere Beziehungen wie die nachFreksa. Die sogenannten ”Nachbarschaftsbeziehungen“ o<strong>de</strong>r auch ”Semi-Intervallbasieren<strong>de</strong>“-Beziehungenfassen jeweils einige von Allens Beziehungen zusammen.Das Ergebnis sind dann die bereits genannten Assoziationsregeln mit <strong>de</strong>n jeweiligenPrädikaten.6 AusblickJe besser man etwas personalisieren möchte, <strong><strong>de</strong>s</strong>to notwendiger sind temporale<strong>Aspekte</strong>. Im Rahmen <strong><strong>de</strong>s</strong> Projekts ”DIKO“ (<strong>Data</strong> in Knowlowdge out) wird es sichum einen Kartenanbieter han<strong>de</strong>ln, <strong>de</strong>r Händler unterschiedlicher Art bei <strong>de</strong>r Personalisierungihrer Angebote unterstützen will. Mit Hilfe von Kun<strong>de</strong>nkarten wer<strong>de</strong>n<strong>de</strong>mographische Daten erfasst, die mit <strong>de</strong>n getätigten Transaktionen <strong><strong>de</strong>s</strong> Karteninhabersin Verbindung gebracht wer<strong>de</strong>n können. Durch die Anwendung von <strong>Data</strong><strong>Mining</strong> und <strong>de</strong>n entsprechen<strong>de</strong>n Assoziationsregeln etc. wird es möglich sein, Vorhersagenüber das Einkaufsverhalten bestimmter Kun<strong>de</strong>n und Kun<strong>de</strong>ngruppen zutreffen. Man wird von Milch auf Brot und von Brot auf Butter schließen können undkann so <strong>de</strong>n Käufer bei seinem Einkauf ”unterstützen“. Diese Unterstützung durch<strong>de</strong>n Händler führt natürlich auch dazu, dass <strong>de</strong>r Umsatz zu gesteigert wird, aberobjektiv gesehen kann auch <strong>de</strong>r Kun<strong>de</strong> bei qualitativ hochwertiger Personalisierungseinen Nutzen haben.Das Thema ”<strong>Temporale</strong> <strong>Aspekte</strong>“ kann wie folgt von großem Vorteil für DIKOsein. In <strong>de</strong>r Mo<strong>de</strong>llierungsphase können alle Schmemata um temporale Attribute25