Data Mining von Sequenzdaten - Fachgebiet Datenbanken und ...
Data Mining von Sequenzdaten - Fachgebiet Datenbanken und ...
Data Mining von Sequenzdaten - Fachgebiet Datenbanken und ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
3 ALGORITHMEN 21<br />
aufgenommen. Der Algorithmus ist beendet, wenn am Ende eines Durchlaufs die Menge<br />
L k leer ist <strong>und</strong> somit keine Kandidaten mehr generiert werden kann. In Abbildung 10<br />
ist der GSP-Algorithmus dargestellt.<br />
Eingabe: <strong>Sequenzdaten</strong>bank S, Supportschwelle MinSupport<br />
Ausgabe: Die komplette Menge der sequentiellen Muster<br />
Vorgehen:<br />
1. L 1 = die Menge aller Items in S mit Support(Item) ≥ MinSupport.<br />
2. for (k=2; L k−1 ≠ ∅; k++) {<br />
C k = die Menge der k-Kandidaten, generiert aus L k−1 .<br />
Für jede Sequenz s ∈ S inkrementiere für alle Kandidaten c ∈ C k<br />
den Support(c) wenn c ⊑ s.<br />
L k = die Menge der Kandidaten c ∈ C mit Support(c) ≥ MinSupport.<br />
}<br />
3. Gib ⋃ k L k als die komplette Menge der sequentiellen Muster zurück.<br />
Abbildung 10: GSP-Algorithmus<br />
Im Folgenden wird die Kandidatengenerierung des GSP-Algorithmus beschrieben,<br />
welches aus einer Join- <strong>und</strong> Pruningphase besteht.<br />
1. Joinphase. Ziel der Joinphase ist es, aus der Ausgangsmenge L k−1 die Kandidatenmenge<br />
C k zu generieren. Die k-Kandidaten werden durch einen Verb<strong>und</strong> <strong>von</strong><br />
L k−1 mit L k−1 erzeugt. Dabei wird eine Sequenz s 1 mit einer Sequenz s 2 gejoint,<br />
wenn das (k−2)-Suffix <strong>von</strong> s 1 gleich dem (k−2)-Präfix <strong>von</strong> s 2 ist. Das (k−2)-Suffix<br />
einer k − 1-Sequenz s erhält man, in dem das erste Item <strong>von</strong> s gelöscht wird, respektive<br />
erhält man das (k−2)-Präfix durch das Entfernen des letzten Items <strong>von</strong> s.<br />
Die, aus dem Join <strong>von</strong> s 1 <strong>und</strong> s 2 , entstandene Kandidatensequenz c ist die Sequenz<br />
s 1 erweitert um das letzte Item <strong>von</strong> s 2 . Das hinzugefügte Item aus s 2 wird<br />
als eigenständiges Element in s 1 aufgenommen, wenn es auch ein eigenständiges<br />
Element in s 2 war. Anderenfalls wird es als ein Teil des letzten Elementes in s 1<br />
hinzugefügt.<br />
Eine Ausnahme bildet das Joinen <strong>von</strong> L 1 mit L 1 . In diesem Fall wird das Item<br />
aus s 2 sowohl als eigenständiges Element, als auch als Teil der Itemmenge <strong>von</strong> s 1<br />
hinzugefügt.<br />
2. Pruningphase. In dieser Phase werden diejenigen Kandidatensequenzen aus C k<br />
entfernt, die Teilsequenzen, welche die MinSupport-Bedingung nicht erfüllen, beinhalten.