01.11.2013 Aufrufe

Data Mining von Sequenzdaten - Fachgebiet Datenbanken und ...

Data Mining von Sequenzdaten - Fachgebiet Datenbanken und ...

Data Mining von Sequenzdaten - Fachgebiet Datenbanken und ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

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.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!