32
INTELLIGENTE DATENANALYSE IN MATLAB Unüberwachtes Lernen: Clustern von Attributen

INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

INTELLIGENTE DATENANALYSE

IN MATLAB

Unüberwachtes Lernen: Clustern von Attributen

Page 2: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

J. Han, M. Kamber: Data Mining – Concepts and

Techniques.

J. Han et. al: Mining Frequent Patterns without

Candidate Generation.

C. Zhang, S. Zhang: Association Rule Mining.

Literatur

2

Page 3: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Schritte der Datenanalyse:

Überblick

3

Aggregation und

Selektion von

Daten.

Integration und

Säuberung der

Daten.

Feature-

Extraktion.

Algorithmen für

das Optimieren

des Zielkriteriums

finden.

Implementieren

der Algorithmen.

Modell-Selektion

& -Anpassung.

Training &

Evaluation des

Modells auf

gegebenen Daten.

Vorhersage für

neue Daten.

Daten-

vorverarbeitungProblemlösung

Anwendung

der LösungProblemanalyse

Bestimmen von

gegeb./gesuchten

Größen.

Wahl des

Performanzmaß/

Zielkriteriums.

Modellraum und

Modellannahmen.

Page 4: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Clustern von Instanzen:

Finden und deterministische bzw. probabilistische Zuweisung

zu Bereichen mit vielen Datenpunkten (Cluster).

Clustern von Attributen:

Häufig zusammen auftretende (ähnliche bzw. korrelierte)

Attribute finden.

Clustern von Instanzen & Attributen (Co-Clustern):

Gleichzeitiges Clustern von Instanzen und Attributen.

Outlier Detection:

Suche nach seltenen/auffälligen Datenpunkten.

Unüberwachtes LernenArten von Modellen & Lernproblemen

4

Page 5: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Gegeben: Menge von n Trainingsdaten mit m

Attributen (Datenmatrix mit Spaltenvektoren xi).

Gesucht:

Numerische Attribute:

Cluster von ähnlichen, assoziierten oder redundanten Attributen analog

zu Clustern von Instanzen (transponierte Datenmatrix segmentieren).

Diskrete Attribute:

Finden von Frequent Itemsets, d.h. häufig auftretender Muster bspw.

für Kompression, Visualisierung etc.

Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die

Werte a, b, c annehmen, dann haben die Attribute 4, 5 die Werte d, e“.

Clustern von AttributenProblemstellung

5

m nX X

m

i Xx

Page 6: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Warenkorbanalyse.

z.B. für Katalog-Design, Cross-/Up-Selling, Empfehlungs-

systeme, Produktanordnung in Supermärkten usw.

Analyse des Surfverhaltens von Internetnutzern.

z.B. zur Optimierung der Navigation auf einer Webseite.

Gruppierung von Dokumenten.

z.B. für Email-Batch-Erkennung, Plagiat-Erkennung.

Clustern von AttributenAnwendung

6

Page 7: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Gesucht sind Assoziationsregeln der Form „wenn die

Attribute pi der Menge bestimmte

Werte yi annehmen, dann haben die Attribute qj der

Menge die Werte “.

Definition: Boolesche Funktion

Definition: Assoziationsregel

Lernen von Assoziationsregeln

7

( , , )p

p

wahr x yg p y

falsch x y

x

1 1 1 1( , , ) ( , , ) ( , , ) ( , , )s s t tg p y g p y g q y g q y x x x x

1{ ,..., } {1,..., }sP p p m

1{ ,..., } {1,..., }, tQ q q m P Q jy

Page 8: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Beispiel Warenkorbanalyse:

Welche Produkte werden (nicht)

zusammen gekauft?

Mögliche boolesche Fragen:

Kaufte Kunde 1 Milch?

Kaufte Kunde 3 keine Eier?

Mögliche Assoziationsregeln:

Wer Milch kauft, kauft auch Müsli:

Wer Bier und Eier kauft, kauft kein Brot:

Lernen von AssoziationsregelnBeispiel

8

1( ,Milch, ja)g wahrx

( ,Milch, ja) ( ,Müsli, ja)g gx x

3( ,Eier,nein)g falschx

( ,Bier, ja) ( ,Eier, ja) ( ,Brot,nein)g g g x x x

Kunde Brot Milch Eier Bier Müsli

1 nein ja ja nein ja

2 ja ja nein ja nein

3 nein nein ja ja nein

4 nein ja ja nein ja

Page 9: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Wertebereich der Attribute:

Binäre/boolesche, nominale oder ordinale Attribute.

Numerische Attribute: müssen zuvor diskretisiert werden.

Bedeutung der Attribute:

Verschiedene Attribute/Belegungen unterschiedlich „wichtig“.

z.B. „Wer Computer kauft, kauft auch Computer-Zubehör“ ist evtl.

informativer als „Wer einen Dell-PC kauft, kauft auch eine Maus“.

z.B. „Wer Milch kauft, kauft auch Müsli“ ist evtl. informativer als

„Wer Milch kauft, kauft kein Bier“.

Redundanz, d.h. Ähnlichkeit/Korrelation zwischen Attributen

führt zu semantisch gleichen (redundanten) Regeln.

Lernen von AssoziationsregelnDateneigenschaften

9

Page 10: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Es gibt exponentiell viele mögliche Assoziationsregeln.

Assoziationsregeln unterschiedlich stark durch Daten

gestützt, d.h. unterschiedlich wahrscheinlich.

Betrachten Ereignisse:

Frage: Wie wahrscheinlich ist eine Assoziationsregel

gegeben die Daten?

Aus folgt jedoch .

Lernen von AssoziationsregelnBewertung von Assoziationsregeln

10

1 1

1 1

( , , ) ( , , )

( , , ) ( , , )

s s

t t

A g p y g p y

B g q y g q y

x x

x x

A B

( | ) ( | ) 1 ( | ) ( , | )P A B P A B P A P A B X X X X

( | ) 0P A X ( | ) 1P A B X

Page 11: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Betrachten daher zwei Kriterien:

Rückhalt (support), d.h. wie häufig treten die Ereignisse A

und B gemeinsam ein:

Vertrauen (confidence), d.h. wie oft tritt B ein wenn A

eingetreten ist:

Assoziationsregel ist stark mit Mindest-Support smin

und Mindest-Konfidenz cmin falls:

und

Lernen von AssoziationsregelnBewertung von Assoziationsregeln

11

supp( ) ( , | )A B P A B X

conf ( ) ( | , ) ( , | ) ( | )A B P B A P A B P A X X X

minsupp( )A B s minconf ( )A B c

A B

Page 12: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Beispiel für smin = 40% und cmin = 60%:

Wer Milch kauft, kauft auch Müsli:

Wer Bier und Eier kauft, kauft kein Brot:

Lernen von AssoziationsregelnBeispiel (Fortsetzung)

12

Kunde Brot Milch Eier Bier Müsli

1 nein ja ja nein ja

2 ja ja nein ja nein

3 nein nein ja ja nein

4 nein ja ja nein ja

supp ( ( ,Milch, ja), ( ,Müsli, ja))P g g x x2

4

conf ( ( ,Müsli, ja) | ( ,Milch, ja))P g g x x2

3

supp ( ( ,Bier, ja), ( ,Eier, ja), ( ,Brot,nein))P g g g x x x

conf ( ( ,Brot,nein) | ( ,Bier, ja), ( ,Eier, ja))P g g g x x x

1

4

1

Starke Assoziationsregel

Schwache Assoziationsregel

( ,Milch, ja) ( ,Müsli, ja)g gx x

( ,Bier, ja) ( ,Eier, ja) ( ,Brot,nein)g g g x x x

Page 13: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Frequent-Itemset-Suche: Finde zunächst alle Mengen

mit Mindest-Support, d.h. .

Regel-Extraktion: Für jede dieser Mengen I, bilde alle

nicht-leeren Teilmengen und prüfe ob

erfüllt ist; falls ja, ist starke Assoziationsregel.

Lernen von AssoziationsregelnLösungsansatz

13

1 1{ ( , , ), , ( , , )}h hI g p y g p y x x

1 1 min( ( , , ), , ( , , ))h hP g p y g p y sx x

D I

min

( )conf ( \ )

( )

P ID I D c

P D

\D I D

Page 14: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Für eine gegebene Menge

gelten folgende Aussagen:

Der Support von I ist größer oder gleich dem Mindest-

Support, d.h. .

Ereignisse wurden in den Daten häufig

gemeinsam beobachtet.

Menge I bildet ein Frequent Itemset.

Jede Teilmenge von I bildet ein Frequent Itemset.

Frequent-Itemset-Suche

14

1 1{ ( , , ), , ( , , )}h hI g p y g p y x x

1 1( , , ), , ( , , )h hg p y g p yx x

1 1 minsupp( ) ( ( , , ), , ( , , ))h hI P g p y g p y s x x

Page 15: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

A-Priori-Eigenschaft: Jede Teilmenge eines Frequent

Itemsets ist ein Frequent Itemset.

Beispiel: Wenn Milch & Müsli oft gekauft wird, wird auch

Milch oft gekauft bzw. wird auch Müsli oft gekauft.

Folge: Frequent Itemset mit k +1 Elementen besteht aus

Vereinigung zweier k-elementiger Frequent Itemsets

(mit k – 1 gleichen Elementen).

Beginnend mit 1-elementigen Frequent Itemsets lassen sich

so beliebig große Frequent Itemsets finden (Apriori-

Algorithmus).

Frequent-Itemset-Suche

15

Page 16: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Algorithmus:Apriori(Datenmatrix X, Mindest-Support smin)

Setze k = 0,

DO

k = k + 1

FOR

IF THEN

FOR

IF THEN

WHILE

RETURN

Frequent-Itemset-SucheApriori-Algorithmus

16

1 {{ ( , , )}|1 , }i i iC g i y i m y Y x

Ck sind alle Kandidaten für Frequent

Itemsets der Größe k

kI C

1, k kL C

Lk sind alle Frequent Itemsets der

Größe kminsupp( )I s

{ }k kL L I

kJ L

1I J k

1 1 { }k kC C I J

1kC

1 kL L

I und J sind Frequent Itemsets der

Größe k mit k – 1 gleichen Elementen

Page 17: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Betrachten beispielhaft nur

„positive“ Items und smin = 50%:

Frequent-Itemset-SucheApriori-Algorithmus: Beispiel

17

Kunde Brot Milch Eier Bier Müsli

1 nein ja ja nein ja

2 ja ja nein ja nein

3 nein nein ja ja nein

4 nein ja ja nein ja

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

b g Brot ja

b g Brot nein

m g Milch ja

m g Milch nein

e g Eier ja

e g Eier nein

r g Bier ja

r g Bier nein

s g Müsli ja

s g Müsli nein

x

x

x

x

x

x

x

x

x

xEl

em

ent

are

reig

nis

se (Item

s)

Itemset Support Itemset Support Itemset Support

1C 1L 2C

{ }m

{ }m

{ }b

{ }e

{ }r

{ }s

{ }e

1 4

3 4

3 4

1 2

1 2

3 4

3 4

{ , }m e 1 2

{ }r

{ }s

1 2

1 2

{ , }m r 1 4

{ , }e r 1 4

{ , }m s 1 2

{ , }e s 1 2

{ , }r s 0

1 {{ },{ },{ },{ }}L m e r s

Page 18: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Betrachten beispielhaft nur

„positive“ Items und smin = 50%:

Frequent-Itemset-SucheApriori-Algorithmus: Beispiel

18

Kunde Brot Milch Eier Bier Müsli

1 nein ja ja nein ja

2 ja ja nein ja nein

3 nein nein ja ja nein

4 nein ja ja nein ja

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

b g Brot ja

b g Brot nein

m g Milch ja

m g Milch nein

e g Eier ja

e g Eier nein

r g Bier ja

r g Bier nein

s g Müsli ja

s g Müsli nein

x

x

x

x

x

x

x

x

x

xEl

em

ent

are

reig

nis

se (Item

s)

Itemset Support Itemset Support

2L 3C

Itemset Support

2C

{ , }m e 1 2

{ , }m r 1 4

{ , }e r 1 4

{ , }m s 1 2

{ , }e s 1 2

{ , }r s 0

{ , }m e 1 2

{ , }m s 1 2

{ , , }m e s 1 2

{ , }e s 1 2

1 {{ },{ },{ },{ }}L m e r s

2 {{ , },{ , },{ , }}L m e m s e s

Page 19: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Betrachten beispielhaft nur

„positive“ Items und smin = 50%:

Frequent-Itemset-SucheApriori-Algorithmus: Beispiel

19

Kunde Brot Milch Eier Bier Müsli

1 nein ja ja nein ja

2 ja ja nein ja nein

3 nein nein ja ja nein

4 nein ja ja nein ja

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

b g Brot ja

b g Brot nein

m g Milch ja

m g Milch nein

e g Eier ja

e g Eier nein

r g Bier ja

r g Bier nein

s g Müsli ja

s g Müsli nein

x

x

x

x

x

x

x

x

x

xEl

em

ent

are

reig

nis

se (Item

s)

Itemset Support Itemset Support

3L 4C

Itemset Support

3C

{ , , }m e s 1 2 { , , }m e s 1 2

3 {{ , , }}L m e s

1 {{ },{ },{ },{ }}L m e r s

2 {{ , },{ , },{ , }}L m e m s e s

Page 20: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Mengenoperationen:

Verwendung von Hashs bzw. Hash-Bäumen.

Berechnung des Supports:

Ignoriere Items die nicht Element eines Frequent Itemset der

Größe k sind bei Berechnungen für Itemsets der Größe >k.

Partitionierung der Daten:

Frequent Itemset bzgl. aller Daten muss Frequent Itemset

mindestens einer Partition sein.

Berechne Frequent Itemsets aller Partitionen und prüfe welche

davon auch Frequent Itemsets bzgl. aller Daten sind.

Frequent-Itemset-SucheApriori-Algorithmus: Implementierung

20

Page 21: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Vorteile:

Effektiv und relativ einfach zu implementieren.

Nachteile:

Sehr viele Kandidaten (hohe Laufzeit/Speicherverbrauch).

104 elementare Frequent Itemsets erzeugen 107 zwei-elementige

Kandidaten.

Suche nach Frequent Itemset der Größe 100 erfordert mindestens

2100 1030 Kandidaten.

Viele Iterationen über die Daten.

Frequent Itemset der Größe k erfordert k + 1 Iterationen.

Frequent-Itemset-SucheApriori-Algorithmus: Bewertung

21

Page 22: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Idee: Daten als Frequent-Pattern-Baum darstellen und daraus Frequent Itemsets extrahieren.

Aufbau des FP-Baums:

Speichert nur Informationen welche zum Finden von Frequent

Itemsets notwendig sind (Sufficient Statistics).

Benötigt lediglich 2 Iterationen über die Daten.

Extraktion der Frequent Itemsets:

Divide & Conquer-Ansatz, d.h. Reduktion des Suchproblems

in viele kleine Optimierungsprobleme.

Vermeidung aufwendiger Kandidaten-Generierung.

Frequent-Itemset-SucheFP-Growth-Algorithmus

22

Page 23: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Bestimmung aller Elementar-

ereignisse (Items) und Sortierung

nach ihrer Häufigkeit.

Entferne alle Attribute mit zu

kleinem Support.

Frequent-Itemset-SucheFP-Growth-Algorithmus: Aufbau des FP-Baums

23

Kunde Brot Milch Eier Bier Müsli

1 nein ja ja nein ja

2 ja ja nein ja nein

3 nein nein ja ja nein

4 nein ja ja nein ja

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

( , , )

b g Brot ja

b g Brot nein

m g Milch ja

m g Milch nein

e g Eier ja

e g Eier nein

r g Bier ja

r g Bier nein

s g Müsli ja

s g Müsli nein

x

x

x

x

x

x

x

x

x

xEl

em

ent

are

reig

nis

se (Item

s)

Kunde

1 1 1 1 0 1 1 0 0 0 0

2 0 1 0 1 0 0 1 1 0 1

3 1 0 1 1 0 0 1 0 1 0

4 1 1 1 0 1 1 0 0 0 0

Häufigkeit 3 3 3 2 2 2 2 1 1 1

Page 24: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Betrachten beispielhaft nur

„positive“ Items.

Konstruktion des Präfix-Baums

der Instanzen:

Frequent-Itemset-SucheFP-Growth-Algorithmus: Aufbau des FP-Baums

24

Kunde m e r s b

1 1 1 0 1 0

2 1 0 1 0 1

3 0 1 1 0 0

4 1 1 0 1 0

1

1

1

2

1

1

1

3

2

2

Nicht berücksichtigt bei

Konstruktion des FP-Baums

da zu kleiner Support

Page 25: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Alle Frequent Itemsets, welche gk enthalten und gk+1,…, gm

nicht enthalten, sind Teilmengen eines Pfades von der

Wurzel zu einem Knoten gk.

Idee: Rekursiv alle Frequent Itemsets extrahieren.

Frequent-Itemset-SucheFP-Growth-Algorithmus: Extraktion der Frequent Itemsets

25

1

1

1

3

2

2

3

2

3

2

Page 26: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Algorithmus:

Für alle Knoten (Items) gk, betrachte Teilbaum mit allen

Pfaden von der Wurzel zu einem Knoten (Item) gk.

Berechne Support der Items für diesen Teilbaum.

Falls gk ein Frequent Item ist:

Erzeuge FP-Baum mit allen Frequent Items gp (p < k) des Teilbaumes

und bestimme davon rekursiv alle Frequent Itemsets I1,…, Iz.

Rückgabe aller Frequent Itemsets .

Sonst, Rückgabe der leeren Menge.

Frequent-Itemset-SucheFP-Growth-Algorithmus: Extraktion der Frequent Itemsets

26

1{ }, { },..., { }k k z kg I g I g

Page 27: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Beispiel für n = 5, smin = 40%:

Frequent-Itemset-SucheFP-Growth-Algorithmus: Extraktion der Frequent Itemsets

27

1

1

1

4

3

3

4

4

3

3

2

2

3

3

1

1

1

1

1

2

2

2

2

2

1

2

3

2

1

2

2

Teilbaum für g6:

Page 28: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Beispiel für n = 5, smin = 40%:

Frequent-Itemset-SucheFP-Growth-Algorithmus: Extraktion der Frequent Itemsets

28

1

1

1

4

3

3

4

4

3

3

2

2

3

3

1

1

1

12

2

2

2

2

3

2

2

Teilbaum für g6:

Frequent Items des Teilbaumes

Page 29: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Beispiel für n = 5, smin = 40%:

Frequent-Itemset-SucheFP-Growth-Algorithmus: Extraktion der Frequent Itemsets

29

1

1

1

4

3

3

4

4

3

3

2

2

3

3

1

1

1

3

2

2

2

2

3

2

2

Teilbaum für g6:

FP-Baum des Teilbaumes

Page 30: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Beispiel für n = 5, smin = 40%:

Frequent-Itemset-SucheFP-Growth-Algorithmus: Extraktion der Frequent Itemsets

30

Rekursion bzgl. g6 ergibt:

2

1 2 1

3 2 3 1 3 2 1 3

5 2 5 1 5 2 1 5 3 5 2 3 5 1 3 5 2 1 3 5

{ }

{ },{ , }

{ },{ , },{ , },{ , , }

{ },{ , },{ , },{ , , },{ , },{ , , },{ , , },{ , , , }

g

g g g

g g g g g g g g

g g g g g g g g g g g g g g g g g g g g

3

2

2

2

2

3

2

2

Teilbaum für g6:

6 2 6 1 6 2 1 6 3 6 2 3 6 1 3 6 2 1 3 6{ },{ , },{ , },{ , , },{ , },{ , , },{ , , },{ , , , },...g g g g g g g g g g g g g g g g g g g g

Page 31: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Vorteile:

FP-Growth ist deutlich schneller als Apriori.

Keine Kandidaten-Generierung.

Iterationen über kompakte Datenstruktur (FP-Baum) statt

über alle Daten.

Nachteile:

Höherer Implementierungsaufwand.

Innerhalb der Rekursion werden viele gleiche Bäume erzeugt;

viele redundante Berechnungen.

Frequent-Itemset-SucheFP-Growth-Algorithmus: Bewertung

31

Page 32: INTELLIGENTE DATENANALYSE IN MATLAB - cs.uni-potsdam.de · Lernen von Assoziationsregeln der Form „wenn die Attribute 1, 2, 3 die Werte a, b, c annehmen, dann haben die Attribute

Ziel: Identifikation ähnlicher bzw. korrelierter Attribute.

Assoziationsregeln, Frequent Itemsets, Sequenzmuster.

Frequent-Itemset-Suche mit Kandidaten-Generierung (z.B. Apriori-Algorithmus):

Idee: Teilmenge eines Frequent Itemsets ist wieder ein Frequent Itemset Konstruktion großer Itemsets aus kleinen.

Frequent-Itemset-Suche ohne Kandidaten-Generierung (z.B. FP-Growth-Algorithmus):

Idee: Konstruktion eines Präfix-Baumes Finden von Frequent Itemsets durch rekursives Traversieren undRestrukturieren des Baumes.

Zusammenfassung

32