17.07.2013 Aufrufe

Methoden zur Klassifikation - OptiV

Methoden zur Klassifikation - OptiV

Methoden zur Klassifikation - OptiV

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Inhaltsverzeichnis<br />

<strong>Methoden</strong> <strong>zur</strong> <strong>Klassifikation</strong><br />

Mike Hüftle<br />

31. Juli 2006<br />

1 Einleitung 2<br />

1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />

2 Diskriminanzanalyse 3<br />

2.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

2.2 <strong>Methoden</strong>beschreibung . . . . . . . . . . . . . . . . . . . . . . . . 4<br />

2.3 <strong>Methoden</strong>beschreibung . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

2.3.1 Nebenpfad: Klassifizierung von Objekten . . . . . . . . . 6<br />

2.4 Anwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

3 Naive Bayes-Klassifikatoren 8<br />

3.1 <strong>Methoden</strong>beschreibung . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

3.2 Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br />

3.2.1 Nebenpfad: Bedingte Wahrscheinlichkeiten für das Beispiel 9<br />

3.3 Anwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />

4 Bayes-Netzwerke 12<br />

4.1 <strong>Methoden</strong>beschreibung . . . . . . . . . . . . . . . . . . . . . . . . 12<br />

4.2 Anwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />

5 Entscheidungsbäume 14<br />

5.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14<br />

5.2 ID3-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

5.2.1 Nebenpfad: Window-Technik des ID3 . . . . . . . . . . . 15<br />

5.2.2 Nebenpfad: Informationskriterium . . . . . . . . . . . . . 16<br />

5.3 Anwendung von ID3 . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

5.4 Weitere Entscheidungsbäume . . . . . . . . . . . . . . . . . . . . 19<br />

5.4.1 Nebenpfad: Pruning-Verfahren . . . . . . . . . . . . . . . 19<br />

5.4.2 Nebenpfad: . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />

5.4.3 Nebenpfad: . . . . . . . . . . . . . . . . . . . . . . . . . . 21<br />

5.4.4 Nebenpfad: GID3-IV-Algorithmus . . . . . . . . . . . . . 22<br />

5.4.5 Nebenpfad: SLIQ-Algorithmus . . . . . . . . . . . . . . . 22<br />

5.4.6 Nebenpfad: Chaid-Algorithmus . . . . . . . . . . . . . . . 23<br />

1


6 Weitere <strong>Klassifikation</strong>smethoden 24<br />

6.1 Support Vector Machines . . . . . . . . . . . . . . . . . . . . . . 24<br />

6.2 Support Vector Machines . . . . . . . . . . . . . . . . . . . . . . 25<br />

6.3 Regelgenerierungsverfahren . . . . . . . . . . . . . . . . . . . . . 26<br />

6.4 Logistische Regression . . . . . . . . . . . . . . . . . . . . . . . . 27<br />

7 Literatur und <strong>Methoden</strong>verzeichnis 28<br />

7.1 Literatur <strong>zur</strong> Diskriminanzanalyse . . . . . . . . . . . . . . . . . 28<br />

7.1 Literatur zu Naiven-Bayes-Klassifikatoren und Bayes-Netzwerken 28<br />

7.1 Literatur zu Entscheidungsbäumen . . . . . . . . . . . . . . . . . 29<br />

7.1 Literatur zu weiteren Verfahren . . . . . . . . . . . . . . . . . . . 30<br />

7.1 <strong>Methoden</strong>verzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . 30<br />

2


<strong>Klassifikation</strong><br />

vs.<br />

Segmentierung<br />

Vorgehensweise<br />

bei der<br />

<strong>Klassifikation</strong><br />

1 Einleitung<br />

1.1<br />

Neben der Segmentierung ist die <strong>Klassifikation</strong> die zweite Möglichkeit, um Objekte<br />

in verschiedene Gruppen oder Klassen einzuteilen. Im Gegensatz<br />

<strong>zur</strong> Segmentierung setzt die <strong>Klassifikation</strong> jedoch die Kenntnis des Kriteriums<br />

voraus, nach dem die Gruppierung durchgeführt wird. Es werden also Objekte<br />

mit unbekannter Gruppenzugehörigkeit der richtigen Gruppe zugeordnet.<br />

Um eine Zuordnung zu ermöglichen wird bei allen <strong>Methoden</strong> der <strong>Klassifikation</strong><br />

eine Entscheidungsfunktion oder Regel vorausgesetzt, nach der die Daten<br />

in Gruppen eingeteilt werden.<br />

Diese Funktion oder Regel wird aus einer Menge von Trainingsdaten erlernt,<br />

von denen die Einteilung in die verschiedenen, im voraus festgelegten Gruppen<br />

bekannt ist. Die so abgeleiteten Klassifizierungsmodelle können beispisweise die<br />

Form von <strong>Klassifikation</strong>sregeln der Form ” wenn-dann“ oder von Neuronalen<br />

Netzen haben.<br />

Anwendungsbereiche Typische Beispiele für die Anwendung der <strong>Klassifikation</strong> sind die medizinische<br />

der Diagnose anhand von Krankheitssymptomen, die Überprüfung der Korrektheit<br />

<strong>Klassifikation</strong> von Steuererklärungen oder das Filtern von Spam-Emails.<br />

3


2 Diskriminanzanalyse<br />

2.1 Allgemeines<br />

Die Diskriminanzanalyse ist ein multivariates statistisches Verfahren <strong>zur</strong><br />

Analyse von Gruppenunterschieden und <strong>zur</strong> Prognose der Gruppenzugehörigkeit<br />

von Objekten.<br />

Die Diskriminanzanalyse gehört wie auch die Regresionsanalyse oder die Varianzanalyse<br />

<strong>zur</strong> Gruppe der strukturprüfenden statistischen Verfahren.<br />

Während die Merkmalsvariablen der Objekte metrisch skaliert sein müssen, wird<br />

die Gruppenzugehörigkeit durch eine nominal skalierte Variable ausgedrückt.<br />

Mittels der Diskriminanzanalyse werden Objekte, die bestimmte Kombinationen<br />

von Merkmalsausprägungen haben, in vorher bekannte Gruppen eingeordnet.<br />

Dabei wird versucht, aus einer Trainingsmenge, deren Klassenzugehörigkeit<br />

bekannt ist, eine Diskriminanzfunktion zu schätzen, welche die Objekte der<br />

Stichprobe richtig klassifiziert.<br />

Weitere Objekte, deren Klassenzugehörigkeit unbekannt ist, können anhand<br />

dieser Funktion mit einer gewissen Wahrscheinlichkeit einer Klasse zugeordnet<br />

werden.<br />

4


2.2 <strong>Methoden</strong>beschreibung<br />

<strong>Methoden</strong>beschreibung Das Ziel der Diskriminanzanalyse ist, die Werte eines abhängigen Merkmals<br />

durch die Werte von einem oder mehreren unabhängigen Merkmalen zu erklären.<br />

Dazu müssen zunächst anhand von Objekten, für welche die Merkmalsausprägungen<br />

bekannt sind, eine oder mehrere Diskriminanzfunktion(en) geschätzt<br />

werden. Diese dienen dann <strong>zur</strong> <strong>Klassifikation</strong> des abhängigen Merkmals, wenn<br />

nur die unabhängigen Merkmale eines Objektes beobachtet wurden.<br />

Der Ablauf der Diskriminanzanalyse lässt sich in zwei Schritte gliedern.<br />

1. Im ersten Schritt werden die Gruppen definiert sowie eine Diskriminanzfunktion<br />

geschätzt und geprüft (die Definition der Gruppen kann sich unmittelbar<br />

aus dem realen Problem ergeben oder das Ergebnis einer vorgeschalteten<br />

Clusteranalyse sein).<br />

2. Im zweiten Schritt werden neue Objekte klassifiziert.<br />

Die Vorgehensweise der Diskriminanzanalyse ist ähnlich der Regressionsanalyse,<br />

jedoch hat das abhängige Merkmal nominalesoder ordinales Skalenniveau<br />

und drückt somit eine Gruppenzugehörigkeit aus (vgl. Tabachnik/ Fidell 1996,<br />

S. 507 ff.).<br />

Eine zu schätzende Diskriminanzfunktion hat die Form<br />

D = b0 + b1 · X1 + b2 · X2 + ... + bn · Xn<br />

mit den unabhängigen Merkmalen Xi und den zu schätzenden Koeffizienten bi,<br />

mit denen die Merkmale in die Diskriminanzfunktion eingehen. D ist der so<br />

genannte Diskriminanzwert.<br />

5


Schätzung der<br />

Diskriminanzfunktion<br />

Überprüfung<br />

der Güte der<br />

Diskriminanzfunktion<br />

2.3 <strong>Methoden</strong>beschreibung<br />

Es gibt eine Reihe von Verfahren <strong>zur</strong> Schätzung der Diskriminanzfunktion.<br />

Das bekannteste ist der Ansatz von Fisher, welcher die Koeffizienten bi so<br />

wählt, dass die Funktionswerte der Diskriminanzfunktion für verschiedene Gruppen<br />

möglichst weit auseinanderliegen bzw. das Verhältnis von erklärter Streuung<br />

(zwischen den Gruppen) zu nicht erklärter Streuung (innerhalb der Gruppen)<br />

möglichst groß ist.<br />

max<br />

G<br />

G<br />

g=1<br />

g=1 ng · ( ¯ Dg − ¯ D) 2<br />

ng<br />

i=1 (Dgi − ¯ Dg)<br />

Streuung zwischen den Gruppen<br />

=<br />

2 Streuung innerhalb der Gruppen<br />

Hierbei ist ng die Anzahl der Fälle in einer Klasse g, ¯ D das gesamte Mittel aller<br />

Diskriminanzwerte D, ¯ Dg das Mittel aller Diskriminanzwerte in einer Klasse g<br />

und Dgi der Diskriminanzwert des i-ten Falles in der Klasse g (vgl. Tabachnik/Fidell<br />

1996, S. 514 f.).<br />

Dieses Maximierungsproblem wird über ein Eigenwertproblem gelöst. Weitere<br />

Diskriminanzfunktionen werden so ermittelt, dass diese einen maximalen Anteil<br />

der bis dahin nicht erklärten Streuung erklären können.<br />

Die gebräuchlichsten Kriterien <strong>zur</strong> Überprüfung der Güte der Diskriminanzfunktion<br />

sind der kanonische Korrelationskoeffizient und Wilks Lambda<br />

im Falle zweier Gruppen sowie das multivariate Wilks Lambda bei mehreren<br />

Gruppen. Mit der Anwendung von Wilks Lambda sind Wahrscheinlichkeitsaussagen<br />

über die Unterschiedlichkeit der Gruppen möglich. Hierdurch kann die<br />

statistische Signifikanz ermittelt werden.<br />

Der Kanonische Korrelationskoeffizient misst den Anteil der Streuung zwischen<br />

den Klassen an der gesamten Streuung der Daten. Je größer der Wert des Koeffizienten<br />

ist, desto größer ist die Streuung der Merkmalsausprägungen zwischen<br />

den Gruppen, im Verhältnis <strong>zur</strong> Streuung innerhalb der Gruppen.<br />

Klassifizierung Die Klassifizierung von Objekten mit unbekannter Klassenzugehörigkeit<br />

lässt sich nach verschiedenen <strong>Methoden</strong> durchführen. Zu den bekanntesten gehören<br />

die Distanzmethode, das Wahrscheinlichkeitskonzept und die Klassifizierungsfunktionen<br />

von Fischer.<br />

6


2.3.1 Nebenpfad: Klassifizierung von Objekten<br />

Distanzmethode Gemäß der Distanzmethode wird ein neues Objekt derjenigen Gruppe g zugeordnet<br />

deren mittlerer Distanzwert ¯ Dg dem Distanzwert Dgi des zu klassifizierenden<br />

Objektes am nächsten liegt.<br />

Bei mehreren Diskriminanzfunktionen reicht die Berücksichtigung der signifikanten<br />

Funktionen aus. Die Distanzmethode setzt gleiche Streuungenin den<br />

verschiedenen Gruppen voraus. Ist dies nicht der Fall, so müssen modifizierte<br />

Distanzen verwendet werden.<br />

Wahrscheinlichkeitskonzept Das Wahrscheinlichkeitskonzept ist die flexibelste Methode <strong>zur</strong> Klassifizierung.<br />

Es ermöglicht die Berücksichtigung von A-priori-Wahrscheinlichkeiten<br />

Pi(g), die vor der Durchführung der Diskriminanzanalyse bekannt sind oder<br />

geschätzt werden.<br />

Diese geben an, mit welcher Wahrscheinlichkeit ein Objekt i einer bestimmten<br />

Gruppe g angehört. Hieraus wird mittels des Satzes von Bayes die Wahrscheinlichkeit<br />

P (g|Di) berechnet, mit der ein Objekt mit einem bestimmten Distanzwert<br />

Di zu einer Gruppe g gehört.<br />

Fischer’s Klassifizierungsfunktionen<br />

P (g|Di) = G P (Di|g)·Pi(g)<br />

; g = 1, ..., G<br />

P (Di|g)·Pi(g)<br />

g=1<br />

P (Di|g) sind bedingte Wahrscheinlichkeiten, die angeben wie wahrscheinlich ein<br />

Diskriminanzwert Di für Objekt i wäre, wenn es <strong>zur</strong> Gruppe g gehören würde.<br />

Zusätzlich können Fehlklassifikationskosten berücksichtigt werden, die falsche<br />

<strong>Klassifikation</strong>en in bestimmte Gruppen bestrafen.<br />

Fischers Klassifizierungsfunktionen sind ein Hilfsmittel, um eine Klassifizierung<br />

ohne Anwendung der Diskriminanzfunktion vornehmen zu können. Die<br />

Methode ist nur durchführbar wenn gleiche Streuung innerhalb der Gruppen<br />

unterstellt werden kann.<br />

Für jede Gruppe ist eine Klassifizierungsfunktion zu bestimmen. Zur Klassifizierung<br />

eines Objektes sind dessen Funktionswerte für jede Klassifizierungsfunktion,<br />

also jede Gruppe, zu berechnen. Das Objekt wird der Gruppe zugeordnet,<br />

für die der berechnete Funktionswert maximal ist. Auch hier können A-priori-<br />

Wahrscheinlichkeiten berücksichtigt werden.<br />

7


2.4 Anwendung<br />

Anwendungsvoraussetzungen<br />

Vor der Durchführung einer Diskriminanzanalyse sollte sichergestellt werden,<br />

dass die Trainingsdaten keine Objekte enthalten, welche gleichzeitig zu<br />

mehr als einer Klasse gehören.<br />

Außerdem sollte der Umfang der Trainingsdaten mindestens doppelt so<br />

groß sein wie die Anzahl der Merkmale und deren Anzahl sollte auf jeden Fall<br />

größer sein als die Anzahl der vorgegebenen Klassen. Andernfalls werden Testdatensätze<br />

erheblich schlechter klassifiziert als die Trainingsdaten.<br />

Die Schätzung der Diskriminanzfunktion sollte zunächst nach Wilks Lambda<br />

erfolgen und die Interpretation graphisch überprüft werden. Bei der eigentlichen<br />

Klassifzierung sollten nur die signifikantesten Diskriminanzfunktionen in<br />

die Analyse einbezogen werden.<br />

FehlklassifikationenDen Fehlern der Diskriminanzanalyse, die in falschen Gruppenzuordnungen<br />

zum Ausdruck kommen, muss nicht unbedingt eine falsche Parameterwahl<br />

zugrunde liegen. Vielmehr ist oft das dahinter liegende Modell fehlerhaft. Nur<br />

selten ist es möglich, eine abhängige Variable vollständig durch unabhängige<br />

Variablen zu beschreiben, da häufig nicht erfassbare oder quantifizierbare Einflussfaktoren<br />

existieren.<br />

Sind alle Objekte richtig zugeordnet worden, besagt dies lediglich, dass die Zusammenhänge<br />

in den Trainingsdaten richtig dargestellt wurden. Daraus folgt<br />

jedoch nicht automatisch, dass dies auch für eine <strong>Klassifikation</strong> von Objekten<br />

mit unbekannter Klassenzugehörigkeit gilt. Dies ist lediglich dann der Fall, wenn<br />

die Trainingsdaten die Grundgesamtheit aller Objekte sehr gut repräsentiert und<br />

die neu zu klassifizierenden Objekte ebenfalls dieser Grundgesamtheit entstammen.<br />

Gibt es Unterschiede zwischen der Struktur der Grundgesamtheit und der<br />

Trainingsdaten, so ergeben sich systematische Verzerrungen.<br />

8


3 Naive Bayes-Klassifikatoren<br />

3.1 <strong>Methoden</strong>beschreibung<br />

Allgemeines Die Bayes-<strong>Klassifikation</strong> ist eine statistische <strong>Klassifikation</strong>smethode, welche<br />

die Wahrscheinlichkeit vorhersagt, mit der ein Objekt zu einer bestimmten<br />

Gruppe gehört.<br />

Die Bayes-<strong>Klassifikation</strong> basiert auf der Formel von Bayes, mit der die bedingte<br />

Wahrscheinlichkeit eines Ereignisses unter einer Bedingungen berechnet<br />

werden kann. Naive Bayes-Klassifikatoren vereinfachen das Problem, indem sie<br />

die Gültigkeit der Unabhängigkeitsannahme voraussetzen.<br />

Diese besagt, dass die Auswirkung eines Merkmales auf die Klassifizierung unabhängig<br />

von den Ausprägungen anderer Attributwerte ist. Diese Annahme ist<br />

in gewissem Sinne naiv, da sie in der Realität selten gültig ist. Sie reduziert die<br />

Komplexität des Problems jedoch erheblich.[5]<br />

<strong>Methoden</strong>beschreibung Naive Bayes-Klassifikatoren repräsentieren jedes Objekt durch einen n-dimensionalen<br />

Vektor, wobei n die Anzahl der Merkmale aj eines Objektes ist. Danach wird<br />

ein Objekt derjenigen Klasse ci ∈ C zugeordnet, zu der es mit der höchsten<br />

Wahrscheinlichkeit gehört:<br />

c = arg max<br />

ci∈C P (a1,<br />

n<br />

a2, ..., an)P (ci) = arg max P (ci)<br />

ci∈C<br />

P (aj|ci)<br />

Die bedingten Wahrscheinlichkeiten P (aj|ci) werden aus den Trainingsbeispielen<br />

geschätzt.<br />

Der naive Bayes-Klassifikator ist im Vergleich mit anderen <strong>Klassifikation</strong>smethoden<br />

theoretisch der genaueste Klassifikator. In der Praxis ist dies jedoch<br />

oftmals aufgrund von Verletzungen der Unabhängigkeitsannahme und aufgrund<br />

fehlender oder fehlerhafter Daten über die bedingten Wahrscheinlichkeiten nicht<br />

der Fall.<br />

9<br />

j=0


3.2 Beispiel<br />

Beispiel Der Naive Bayes-Klassifikator wird im folgenden an einem Beispiel erläutert.<br />

Berechnung<br />

der bedingten<br />

Wahrscheinlichkeiten<br />

für<br />

das Beispiel<br />

Es soll die Kreditwürdigkeit eines potentiellen Kreditnehmers überprüft werden.<br />

Hierzu baut die Bank anhand einer Kundendatenbank einen Klassifikator<br />

für das Kreditrisiko eines Kunden auf. Die Abbildung zeigt die Kundendatenbank.<br />

Der Klassifikator wird mit den Daten aus der Kundendatenbank folgenermaßen<br />

aufgebaut: Zuerst werden die bedingten Wahrscheinlichkeiten P (aj|ci) aus den<br />

Daten geschätzt:<br />

P(Alter¡30 — Kreditw.= ” schlecht“) = 2/3; P(Alter¡30 — Kreditw.= ” gut“) =<br />

2/7; P(Alter¡30 — Kreditw.= ” sehr gut“)= 1/4; P(Alter=30-40 — Kreditw.= ” schlecht“)<br />

= 0; P(Alter=30-40 — Kreditw.= ” gut“) = 1/7; P(Alter=30-40 — Kreditw.= ” sehr<br />

gut“)=3/4; usw.<br />

Die vollständige Berechnung aller bedingten Wahrscheinlichkeiten des Beispiels<br />

finden SIe hier.<br />

Es soll ein potenzieller Kreditnehmer X auf seine Kreditwürdigkeit beurteilt werden.<br />

X hat die Attributausprägungen Alter¡30, Einkommen=2.000-5.000 eund<br />

Beruf= ” Angestellter“.<br />

Dann wird die Wahrscheinlichkeit, dass X eine schlechte Kreditwürdigkeit besitzt<br />

folgendermaßen berechnet:<br />

P(ci) n<br />

j=0 P (aj|ci) = P (Kreditw. = schlecht) · P (Alter < 30|Kreditw. =<br />

schlecht) · P (Einkommen<br />

=2.000-5.000—Kreditw.=schlecht)<br />

·P (Beruf = Angestellter|Kreditw. = schlecht)<br />

=3/14 ·2/3 · 0 · 2/3 = 0<br />

Ebenso berechnen sich die Wahrscheinlichkeit, dass seine Kreditwürdigkeit ” gut“<br />

ist zu 0,10 bzw. dass seine Kreditwürdigkeit ” sehr gut“ ist zu 0,03. Der Kunde<br />

wird somit mit der Kreditwürdigkeit ” gut“ klassifiziert.<br />

3.2.1 Nebenpfad: Bedingte Wahrscheinlichkeiten für das Beispiel<br />

P(Alter¡30 — Kreditw.= ” schlecht“) = 2/3;<br />

P(Alter¡30 — Kreditw.= ” gut“) = 2/7;<br />

10


P(Alter¡30 — Kreditw.= ” sehr gut“) = 1/4;<br />

P(Alter=30-40 — Kreditw.= ” schlecht“) = 0;<br />

P(Alter=30-40 — Kreditw.= ” gut“) = 1/7;<br />

P(Alter=30-40 — Kreditw.= ” sehr gut“) =3/4;<br />

P(Alter¿40 — Kreditw.= ” schlecht“) = 1/3;<br />

P(Alter¿40 — Kreditw.= ” gut“) = 4/7;<br />

P(Alter¿40 — Kreditw.= ” sehr gut“) =0;<br />

P(Einkommen¡2000 — Kreditw.= ” schlecht“) = 1;<br />

P(Einkommen¡2000 — Kreditw.= ” gut“) = 1/7;<br />

P(Einkommen¡2000 — Kreditw.= ” sehr gut“) = 1/4;<br />

P(Einkommen=2000-5000 — Kreditw.= ” schlecht“) = 0;<br />

P(Einkommen=2000-5000 — Kreditw.= ” gut“) = 5/7;<br />

P(Einkommen=2000-5000 — Kreditw.= ” sehr gut“) =2/4;<br />

P(Einkommen¿5000 — Kreditw.= ” schlecht“) = 0;<br />

P(Einkommen¿5000 — Kreditw.= ” gut“) = 1/7;<br />

P(Einkommen¿5000 — Kreditw.= ” sehr gut“) =1/4;<br />

P(Beruf= ” Arbeiter“ — Kreditw.= ” schlecht“) = 1/3;<br />

P(Beruf= ” Arbeiter“ — Kreditw.= ” gut“) = 4/7;<br />

P(Beruf= ” Arbeiter“ — Kreditw.= ” sehr gut“) = 1/4;<br />

P(Beruf= ” Angestellter“ — Kreditw.= ” schlecht“) = 2/3;<br />

P(Beruf= ” Angestellter“ — Kreditw.= ” gut“) = 2/7;<br />

P(Beruf= ” Angestellter“ — Kreditw.= ” sehr gut“) =3/4;<br />

P(Beruf= ” Manager“ — Kreditw.= ” schlecht“) = 0;<br />

P(Beruf= ” Manager“ — Kreditw.= ” gut“) = 1/7;<br />

P(Beruf= ” Manager“ — Kreditw.= ” sehr gut“) =0;<br />

11


3.3 Anwendung<br />

Anwendungsbereiche Naive Bayes-Klassifikatoren sind in der Textanalyse weit verbreitet. Da sie hohe<br />

Trainings- und Klassifizierungsgeschwindigkeit besitzen und mit jedem neu<br />

klassifizierten Objekt den Klassifikator verbessern, werden sie häufig <strong>zur</strong> <strong>Klassifikation</strong><br />

von E-Mails eingesetzt.<br />

Ihre guten Klassifizierungseigenschaften machen sie insbesondere beim Einsatz<br />

in Spam-Filtern sehr beliebt. Dort wurden sie z.B. von Sahami et al. [] oder<br />

Katirai [] eingesetzt.<br />

Vorteile<br />

Naiver Bayes-<br />

Klassifikatoren<br />

Nachteile<br />

Naiver Bayes-<br />

Klassifikatoren<br />

Die wichtigsten Vorteile der Anwendung von Naiven Bayes-Klassifikatoren sind:<br />

• Sie sind einfach zu implementieren.<br />

• Sie erzielen in vielen Fällen gute bis sehr gute Klassifkationsergebnisse.<br />

• Naive Bayes-Klassifikatoren lernen inkrementell, d.h. mit jedem neu<br />

klassifizierten Datensatz wird der Klassifikator genauer.<br />

Die Verwendung Naiver Bayes-Verfahren bei der <strong>Klassifikation</strong> bringt folgende<br />

Nachteile mit sich:<br />

• Abhängigkeiten zwischen den Merkmalen können nicht berücksichtigt<br />

werden.<br />

• Durch diese Unabhängigkeitsannahme ist die theoretisch mögliche <strong>Klassifikation</strong>sgenauigkeit<br />

eingeschränkt.<br />

• Bei hochdimensionalen Problemen (sehr viele Attribute) sind Bayes-Klassifikatoren<br />

nicht mehr effizient.<br />

12


4 Bayes-Netzwerke<br />

4.1 <strong>Methoden</strong>beschreibung<br />

Allgemeines Bayessche Netzwerke sind eine <strong>Klassifikation</strong>smethode, die -wie auch die<br />

Naiven Bayes-Klassifikatoren- auf dem Satz von Bayes basieren. Im Gegensatz<br />

zu den Naiven Bayes-Klassifikatoren berücksichtigen die Bayes-Netze auch<br />

Abhängigkeiten zwischen den Attributen. modellieren.<br />

<strong>Methoden</strong>beschreibung Ein bayessches Netzwerk kann als ein azyklischer,gerichteter Graph dargestellt<br />

werden, dessen Knoten Merkmale und dessen Kanten Abhängigkeiten zwischen<br />

Merkmalen darstellen.<br />

Die Knoten können Wahrscheinlichkeitswerte zwischen 0 und 1 annehmen.<br />

Mit diesen Wahrscheinlichkeiten werden neue Wahrscheinlichkeiten in den Nachfolgerknoten<br />

im Graphen berechnet. Dazu besitzt jeder Knoten eine Tabelle mit<br />

bedingten Wahrscheinlichkeiten oder eine Funktion, die aus den Wahrscheinlichkeiten<br />

seiner Vorgängerknoten, eine neue bedingte Wahrscheinlichkeit berechnet.<br />

Wenn es zu einem Knoten nur einen Vorgängerknoten gibt, kann das die<br />

einfache bedingte Wahrscheinlichkeit sein.<br />

Die Tabelle der bedingten Wahrscheinlichkeiten enthält für jede mögliche Kombination<br />

von direkten Vorgängermerkmalen V (Zi) die bedingten Wahrscheinlichkeiten<br />

für die Merkmalsausprägungen zi als P (zi|V (Zi)).<br />

Damit kann die Wahrscheinlichkeit für einen bestimmten Pfad von Merkmalsausprägungen<br />

berechnet werden:<br />

P (z1, ..., zn) =<br />

n<br />

P (zi|V (Zi))<br />

ı=1<br />

Zur <strong>Klassifikation</strong> werden einer oder mehrere Knoten im Graphen als Zielknoten<br />

ausgewählt. Diese repräsentieren die Gruppen, nach denen die Objekte<br />

klassifiziert werden sollen. Um ein Objekt zu klassifizieren werden die Wahrscheinlichkeiten<br />

der Pfade zu den gewählten Zielknoten verglichen und der Pfad<br />

bzw. der Zielknoten mit der höchsten Wahrscheinlichkeit ausgewählt.<br />

13


Erweiterungen<br />

und Varianten<br />

4.2 Anwendung<br />

Es existieren zahlreiche Erweiterungen und Varianten von Bayes-Netzen, beispielsweise<br />

<strong>zur</strong> <strong>Klassifikation</strong> von fehlerhaften oder unvollständigen Daten<br />

mit Monte-Carlo-<strong>Methoden</strong> []. Einenguten Überblick bietet Heckermann [].<br />

Anwendung Bayes-Netzwerke werden hauptsächlich in Bereichen eingesetzt, in denen es auf<br />

die Abhängigkeiten zwischen den verschiedenen Merkmalen ankommt,<br />

wie z.B. bei der Fehlerdiagnose in komplexen Systemen [].<br />

Vorteile von<br />

Bayes-<br />

Netzwerken<br />

Nachteile von<br />

Bayes-<br />

Netzwerken<br />

• Bayes-Netzwerke können Abhängigkeiten zwischen den verschiedenen<br />

Attributen modellieren.<br />

• Sie sind für den Benutzer sehr anschaulich und gut nachvollziehbar.<br />

• Sie sind relativ einfach zu implementieren.<br />

• Bayes-Netzwerke erfordern bei vielen Merkmalen und komplexen Abhängigkeiten<br />

einen hohen Rechenaufwand.<br />

• Die Abhängigkeiten zwischen den Merkmalen können bei vielen Merkmalen<br />

schnell unübersichtlich werden.<br />

• Die Abhängigkeiten werden nur dann modelliert, wenn sie als solche identifiziert<br />

werden. Die Struktur des Netzwerkes und somit die <strong>Klassifikation</strong>sergebnisse<br />

sind stark vom Benutzer abhängig.<br />

14


5 Entscheidungsbäume<br />

5.1 Allgemeines<br />

Ein Entscheidungsbaum ist ein Graph mit Baumstruktur, bei dem jeder innere<br />

Knoten ein Merkmal eines zu klassifizierenden Objektes auf die Erfüllung<br />

einer Bedingung testet. Die von diesem Knoten ausgehenden Verzweigungen<br />

entsprechen den Werten oder Wertebereichen, die diese Bedingung überprüft.<br />

Jedes Blatt des Entscheidungsbaumes repräsentiert eine Klasse bzw. die Zuordnung<br />

zu einer Klasse von Objekten.<br />

Um ein nicht-klassifiziertes Objekt einzugruppieren werden die Merkmalswerte<br />

dieses Objektes gegen die inneren Knoten des Entscheidungsbaumes getestet.<br />

Somit wird ein Pfad über alle Stufen des Baumes durchlaufen, der in einem<br />

Blatt endet und so das analysierte Objekt eingruppiert.<br />

Die Abbildung zeigt einen einfachen Entscheidungsbaum, der einen bestimmten<br />

Tag danach klassifizieren soll, ob es sich lohnt einen Ausflug zu machen<br />

oder nicht. Dies wird anhand der Attribute Wetterlage, Temperatur und Windverhältnisse<br />

geprüft. Ist z.B. die Wetterlage bewölkt und der Wind schwach, so<br />

lohnt es sich einen Ausflug zu unternehmen.<br />

Zur Generierung solcher Entscheidungsbäume wurden verschiedene Algorithmen<br />

entwickelt, von denen hier eine Auswahl vorgestellt wird.<br />

15


ID3-<br />

Algorithmus<br />

Ablauf des<br />

ID3-<br />

Algorithmus<br />

Window-<br />

Technik<br />

5.2 ID3-Algorithmus<br />

Der ID3-Algorithmus (Iterative Dichotomiser 3) von Ross Quinlan [3] ist ein<br />

im wissenschaftlichen und kommerziellen Bereich weit verbreitetes <strong>Klassifikation</strong>sverfahren.<br />

ID3 ist ein rekursiver Top-Down-Algorithmus <strong>zur</strong> Konstruktion<br />

eines Entscheidungsbaumes. Das größte Problem des Algorithmus ist die hohe<br />

Sensibilität für fehlerhafte und widersprüchliche Daten, welche Fehlklassifikationen<br />

<strong>zur</strong> Folge hat.<br />

Der ID3-Algorithmus kann generell wie folgt dargestellt werden:<br />

Nachdem zunächst gemäß der ” window-Technik“ ein erster Entscheidungsbaum<br />

erstellt wurde, wird überprüft, ob alle Beispiele eines Knotens <strong>zur</strong> gleichen<br />

Klasse gehören. Ist dies der Fall, so ist der Entscheidungsbaum fertig.<br />

Wenn nicht, so wird das informativste Merkmalausgewählt und nach diesem<br />

verzweigt. Das heißt mit Hilfe dieses Merkmals werden die Beispiele des<br />

betrachteten Knotens in Untergruppen aufgeteilt, wobei in jeder dieser Untergruppen<br />

nur Beispiele mit gleichen Merkmalswerten vorkommen. Dies wird so<br />

lange wiederholt, bis alle Beispiele in den verschiedenen Untergruppen richtig<br />

klassifiziert wurden.<br />

Das informativste Merkmal wird ermittelt, in dem für jedes Merkmal der Beispieldaten<br />

(nach dem noch nicht verzweigt wurde) berechnet wird, wie gut es<br />

die Daten klassifizieren würde. Diese <strong>Klassifikation</strong>sgüte wird von ID3 über das<br />

Informationskriterium gemessen. Dieses Kriterium quantifiziert die <strong>zur</strong> <strong>Klassifikation</strong><br />

benötigte Information, d.h. die Anzahl der Tests, die nötig sind um ein<br />

nicht klassifiziertes Objekt einer Klasse zuzuordnen. Ziel von ID3 ist es, die <strong>zur</strong><br />

<strong>Klassifikation</strong> benötigte Information im Entscheidungsbaum zu minimieren.<br />

5.2.1 Nebenpfad: Window-Technik des ID3<br />

Um die <strong>Klassifikation</strong> großer Datenmengen zu ermöglichen wurde beim ID3-<br />

Algorithmus die so genannte ” window-Technik“ verwendet. Dies ist ein iteratives<br />

Verfahren, welches mit einem gewissen Anteil der verfügbaren Beispieldaten<br />

(z.B. 10%) einen Entscheidungsbaum generiert. Dieser Anteil wird in das ” window“<br />

aufgenommen. Anhand dieses ersten Baumes werden die restlichen Daten<br />

klassifiziert.<br />

Gibt es Objekte, welche nicht richtig klassifiziert wurden, so werden diese zusätzlich<br />

dem ” window“ hinzugefügt und der Entscheidungsbaum wird neu generiert.<br />

Dies wird so lange wiederholt, bis alle Beispieldaten korrekt klassifiziert wurden.<br />

16


Vorteil der<br />

Window-<br />

Terchnik<br />

Zur<br />

<strong>Klassifikation</strong><br />

eines Objektes<br />

benötigte<br />

Information<br />

Nach einer<br />

Verzweigung<br />

benötigte<br />

Information<br />

Auswahl des<br />

informativsten<br />

Attributs<br />

Der Vorteil eines so gewonnenen Entscheidungsbaumes ist, dass zunächst eine<br />

repräsentative Auswahl aus allen Beispielen gefunden wird und somit eine<br />

schnellere <strong>Klassifikation</strong> möglich ist, als mit Bäumen, die alle Beispieldaten verwenden.<br />

5.2.2 Nebenpfad: Informationskriterium<br />

Die benötigte Information I um ein Objekt zu klassifizieren berechnet<br />

sich zu:<br />

I(s1, s2, ..., sm) = − m<br />

i=1 pi · log2(pi)<br />

wobei si die Anzahl von Objekten in der Klasse Ci und pi die Wahrscheinlichkeit,<br />

dass ein zufälliges Beispiel zu einer Klasse Ci gehört.<br />

Wenn in einem Knoten anhand eines Attributes A in s1, s2, ..., sv Teilbäume<br />

verzweigt wird, misst EA die nach der Verzweigung noch benötigte Information<br />

um ein Objekt zu klassifizieren. Sei sij die Anzahl von Beispielen der<br />

Klasse Ci im Teilbaum Sj, dann berechnet sich die <strong>zur</strong> Klassifizierung benötigte<br />

Information zu:<br />

EA = v s1j+ ... +smj<br />

j=1 s · I(s1j, ... , smj)<br />

Zur Auswahl des informativsten Attributs verwendet ID3 den Informationsgewinn<br />

G. GA misst hierbei den Gewinn, den eine <strong>Klassifikation</strong> mit Verzweigung<br />

nach Attribut A im Vergleich zu einer <strong>Klassifikation</strong> ohne das Attribut erzielt.<br />

GA = |(s1, ... , sm) − EA|<br />

GAist also die erwartete Verringerung an benötigter Information wenn der Wert<br />

des Attributs A bekannt ist. Nachdem der Informationsgewinn für jedes Attribut<br />

eines Knotens, nach dem noch nicht verzweigt wurde berechnet ist, wird das<br />

Attribut mit dem höchsten Informationsgewinn als dasjenige ausgewählt,<br />

nach dem als nächstes zu verzweigen ist.<br />

17


5.3 Anwendung von ID3<br />

Anwendungsvoraussetzungen<br />

Der ID3-Algorithmus kann unter folgenden Voraussetzungen einen Entschei-<br />

von ID3 dungsbaum generieren:<br />

Vorteile von<br />

ID3<br />

Nachteile von<br />

ID3<br />

• Die Daten müssen fehlerfrei und unverrauscht sein.<br />

• Die Merkmale müssen diskrete Werte besitzen oder bei reellen Werten<br />

müssen Intervallgrenzen festsetzbar sein. Diese Festlegung ist jedoch oft<br />

problematisch, da sie Einfluss auf die <strong>Klassifikation</strong>sgüte des Entscheidungsbaumes<br />

hat.<br />

Der ID3-Algorithmus ist insbesondere für die schnelle <strong>Klassifikation</strong> großer Datenmengen<br />

gut geeignet.<br />

Der ID3-Algorithmus bietet folgende Vorteile:<br />

• Der Lernprozess ist auch bei großen Datenmengen recheneffizient.<br />

• Die Repräsentation als Baumstruktur ist für den Anwender gut überschaubar<br />

und verständlich.<br />

• Aus dem Entscheidungsbaum können gut handhabbare Entscheidungsregeln<br />

gebildet werden.<br />

• Die Entscheidungsregeln können zum Zugriff auf Datenbanken in SQL-<br />

Abfragen übersetzt werden.<br />

Der ID3-Algorithmus hat eine Reihe von Nachteilen:<br />

• Da der Algorithmus auf eine vollständige <strong>Klassifikation</strong> aller Daten eingerichtet<br />

ist, reagiert er sehr empfindlich auf verrauschte und fehlerhafte<br />

Daten, da schon bei kleinen Änderungen der Merkmalswerte der<br />

Entscheidungsbaum entsprechend geändert wird und zu falschen <strong>Klassifikation</strong>en<br />

führt.<br />

• Da der Baum nur vorwärts aufgebaut wird und kein rückschreitendes Verbessern<br />

möglich ist, handelt es sich bei dem so gewonnenen Baum oft um<br />

ein lokales Optimum.<br />

18


• Bei ID3 kann an jedem Knoten immer nur ein Merkmal betrachtet werden<br />

kann. Es darf also kein zu klassifizierendes Objekt mehreren<br />

Klassen angehören, wie dies in der Realität oft der Fall ist.<br />

• Der Algorithmus verzweigt bevorzugt an Merkmalen mit vielen Merkmalswerten.<br />

19


Prune-<br />

Verfahren<br />

C4.5-<br />

Algorithmus<br />

CART-<br />

Algorithmus<br />

GID, SLIQ<br />

und CHAID<br />

5.4 Weitere Entscheidungsbäume<br />

Um den ID3-Algorithmus auch auf fehlerhafte, verrauschte und widersprüchliche<br />

Daten anwenden zu können wurden die so genannten Prune-Verfahren<br />

entwickelt.<br />

Der C4.5-Algorithmus behebt die Einschränkungen von ID3 in Bezug auf<br />

fehlerfreie und vollständige Daten sowie diskrete Merkmalswerte.<br />

Der CART-Algorithmus ist ein rekursiver Partitionsalgorithmus, mit dem<br />

die Beispieldaten sukzessive nach einzelnen Merkmalsausprägungen jeweils in<br />

zwei Teilmengen zerlegt werden.<br />

Zur Klassifizierung von Elementen mit fehlenden Attributwerten wurde von<br />

Quinlan der GID3-IV-Algorithmus entwickelt. SLIQ eignet sich für<br />

die Generierung von Entscheidungsbäumen aus großen Datenbanken.<br />

Der CHAID-Algorithmus wurde 1964 von Sonquist und Morgan publiziert<br />

und ist somit der Älteste der gängigen Entscheidungsbaum-Algorithmen.<br />

5.4.1 Nebenpfad: Pruning-Verfahren<br />

Pruning Da der ID3-Algorithmus den Entscheidungsbaum bis zu den Endknoten erzeugt,<br />

welche nur noch aus Beispielen einer Klasse bestehen, können die resultierenden<br />

Bäume sehr tief werden. Insbesondere bei verrauschten, fehlerhaften<br />

Daten werden Bäume erzeugt, welche zwar die Testbeispiele richtig klassifizieren,<br />

aber bei unbekannten Beispielen viele Fehler erzeugen.<br />

Um den Entscheidungsbaum nicht übermäßig stark wachsen zu lassen, wird<br />

dieser an manchen Stellen beschnitten (pruning).[2]<br />

Pre-Pruning Beim Vor-Prunen (pre-pruning) wird vor der Entwicklung des Entscheidungsbaumes<br />

mittels statistischer Analysen überprüft, ob Datensätze eliminiert<br />

werden können, die zu einem starken Wachstum des Baumes führen.<br />

Dies kann jedoch dazu führen, dass wichtige Beispiele und somit Besonderheiten<br />

der Klassifizierung nicht in den Baum aufgenommen werden.<br />

20


Aufbauendes<br />

Prunen<br />

Beim Prunen während des Aufbaus eines Entscheidungsbaumes wird<br />

bei der Generierung jedes Knotens überprüft, ob der Informationsgewinn durch<br />

eine weitere Verzweigung größer als ein festgelegter minimaler Informationsgewinn<br />

ist (Schwellenwert).<br />

Ist dies nicht der Fall, so wird nicht weiter Verzweigt. Das Festlegen dieses<br />

Schwellenwertes ist jedoch problematisch, da bei einem zu niedrigen Wert der<br />

Baum zu groß wird und bei einem zu hohen Schwellenwert zu viel Information<br />

verloren geht.<br />

Post-Pruning Beim nachträglichen Prunen (post-pruning) wird zuerst der komplette<br />

Entscheidungsbaum wie oben beschrieben aufgebaut und erst in einem zweiten<br />

Schritt werden Teilbäume durch einzelne Knoten ersetzt.<br />

Regelbasiertes<br />

Pruning<br />

C4.5-<br />

Algorithmus<br />

Vor allem das regelbasierte Pruning ist in der Praxis sehr verbreitet. Hier<br />

werden alle Beispieldaten <strong>zur</strong> Generierung eines ersten Entscheidungsbaumes<br />

herangezogen. Anschließend wird dieser als Regelmenge in die disjunktive<br />

Normalform (DNF) umgeformt.<br />

Dabei wird jeder mögliche Pfad von der Wurzel zu den Blättern ” oder“-verknüpft<br />

und die in einem solchen Pfad vorkommenden Attributwerte ” und“-verknüpft.<br />

Dann wird bei jeder Regel überprüft, ob Teile der Regel für die richtige <strong>Klassifikation</strong><br />

relevant sind.<br />

Falls Attribute irrelevant sind, so werden sie aus der Regel entfernt.<br />

Anschließend werden die Regeln auf ihre Relevanz für die <strong>Klassifikation</strong>sergebnisse<br />

getestet. Sind Regeln irrelevant, so werden sie weggelassen.<br />

Der Vorteil dieser Umformung in einzelne Regeln besteht darin, dass beim Streichen<br />

einzelner Regelteile Unterbäume zwar abgeschnitten werden, jedoch in anderen<br />

Regeln weiterhin vorkommen, so dass die hierin enthaltene Information<br />

weiterhin verfügbar ist.<br />

5.4.2 Nebenpfad:<br />

Der C4.5-Algorithmus wurde wie auch ID3 von Ross Quinlan [3] entwickelt<br />

und ist eine Erweiterung von ID3. Er behebt die Einschränkungen von ID3 in<br />

Bezug auf fehlerfreie und vollständige Daten sowie diskrete Merkmalswerte.<br />

C4.5 enthält außerdem eine erweiterte ” window-Technik“, welche den Vorgang<br />

des Baumerzeugens und -beschneidens mehrfach wiederholt.<br />

21


Erweiterungen<br />

von C4.5<br />

Die Algorithmen <strong>zur</strong> Attributauswahl und Verzweigung wurden verbessert, so<br />

dass Merkmale mit vielen Ausprägungen nicht mehr bevorzugt als Knoten<br />

ausgewählt werden.<br />

Weiterhin wurden in C4.5 verschiedene <strong>Methoden</strong> des Pruning implementiert.<br />

Von Quinlan wurden zwei Ergänzungen zu C4.5 vorgestellt, welche aufgrund statistischer<br />

Tests entscheiden können, ob die Verzweigung nach einem Merkmal<br />

sinnvoll ist und ob bei widersprüchlichen Daten aufgrund stochastischer<br />

Überlegungen eine Zuordnung der fraglichen Daten zu einer Klasse vorgenommen<br />

werden kann.<br />

Liegen Trainingsdaten mit fehlenden Attributwerten vor, so wird der Algorithmus<br />

dahingehend abgeändert, dass die Verzweigung nach einem Merkmal<br />

mit vielen fehlenden Werten wenig wahrscheinlich ist.<br />

5.4.3 Nebenpfad:<br />

Partitionsalgorithmus Der CART-Algorithmus [1] (Classification and Regression Trees) ist ein rekursiver<br />

Partitionsalgorithmus, mit dem die Beispieldaten sukzessive nach<br />

einzelnen Merkmalsausprägungen jeweils in zwei Teilmengen zerlegt werden.<br />

Bei diskreten Merkmalswerten werden alle möglichen Verzweigungen erzeugt<br />

und untersucht.<br />

Bei stetigen Merkmalsausprägungen wird wie bei C4.5 eine Schranke berechnet,<br />

nach der die Beispielmenge in einem Knoten in zwei Untermengen zerlegt wird.<br />

” Reine“<br />

Untermengen<br />

Der CART-Algorithmus versucht die Zerlegung in zwei Teilmengen so vorzunehmen,<br />

dass die Untermengen bezüglich der Klassenzugehörigkeit ” reiner“ werden<br />

als die Ausgangsmenge.<br />

Hierzu wird ein Unreinheitsmaß definiert, welches angibt wie groß die Streuung<br />

der Verteilung über die Klassen in einem Knoten ist.<br />

Wenn beispielsweise in einem Knoten die Beispiele über alle Klassen gleichverteilt<br />

sind, dann ist die Unreinheit des Knotens am größten.<br />

Für den Fall einheitlicher bzw. variabler Fehlklassifikationskosten werden<br />

beim CART-Algorithmus das Gini- bzw. das Twoing-Kriterium als Verzweigungskriterien<br />

verwendet.<br />

Klassenwahrscheinlichkeit Falls bei CART ein Endknoten vorliegt, welcher nicht weiter verzweigt werden<br />

kann, aber Objekte unterschiedlicher Klassenzugehörigkeit enthält, so wird mit<br />

22


GID3-IV-<br />

Algorithmus<br />

dem Kriterium der Klassenwahrscheinlichkeit oder der Klassenhäufigkeit<br />

festgelegt, welcher Klasse ein solcher Knoten zugewiesen wird.<br />

5.4.4 Nebenpfad: GID3-IV-Algorithmus<br />

Zur Klassifizierung von Elementen mit fehlenden Merkmalswerten<br />

wurde von Quinlan der GID3-IV-Algorithmus entwickelt. Durch eine Änderung<br />

der Merkmalsauswahl- und Verzweigungsregel des ID3 werden bei einer<br />

Verzweigung nicht alle Werte eines Merkmals erzeugt, sondern nur diese, die für<br />

die Klassifizierung wichtig sind.<br />

Somit werden mehrere Werte zu einem gemeinsamen Zweig zusammengefasst,<br />

wobei nicht auftretende Merkmalswerte auch in einen solchen gemeinsamen<br />

Zweig fallen und somit klassifiziert werden können.<br />

5.4.5 Nebenpfad: SLIQ-Algorithmus<br />

Entscheidungsbäume Der SLIQ-Algorithmus [4] wurde für die Generierung von Entscheidungsbäum-<br />

in großen en aus großen Datenbanken entwickelt.<br />

Datenbanken Algorithmen wie ID3 sind bei größeren Datenbanken ineffizient, da sie in jedem<br />

Knoten für jedes zu testende Attribut über die gesamten Trainingsbeispiele<br />

iterieren. SLIQ umgeht dies, indem die Werte für jedes Merkmal vorsortiert<br />

werden.<br />

Vorsortierung Zur Vorsortierung wird für jedes Merkmal eine Liste angelegt, welche die in<br />

der Datenbank vorhandenen Merkmalswerte und die IDs der Trainingsbeipiele<br />

enthält, die diese Merkmalswerte annehmen.<br />

Außerdem wird eine Klassenliste angelegt, in welcher gespeichert ist, welcher<br />

Baumknoten welche Klasse(n) enthält und welche Trainingsbeispiele zu diesen<br />

Klassen gehören.<br />

Verzweigung Für jede Verzweigungsentscheidung in einem Knoten kann somit in Form<br />

eines Histogramms evaluiert werden, wieviele Beispiele einer Klasse sich vor und<br />

nach einer möglichen Verzweigung in einem Knoten befinden. Nach der Verzweigungsentscheidung<br />

müssen die Klassenlisten aktualisiert werden.<br />

Für einen Verzweigungsentscheidung müssen in einem Knoten somit nur noch<br />

alle Attribute durchlaufen werden, nicht mehr die gesamte Trainingsmenge.<br />

23


Chaid-<br />

Algorithmus<br />

5.4.6 Nebenpfad: Chaid-Algorithmus<br />

Der CHAID-Algorithmus (Chi-square Automatic Interaction Detectors) wurde<br />

1964 von Sonquist und Morgan [5] publiziert.<br />

Der Hauptunterschied von CHAID zu CART und C4.5 besteht darin, dass<br />

der CHAID-Algorithmus den Entscheidungsbaum während seines Aufbaus beschneidet.<br />

Um die Merkmale, nach denen verzweigt wird auszuwählen wird der<br />

Chi-Quadrat-Unabhängigkeitstest verwendet.<br />

Dieser prüft die Stärke der Abhängigkeit zweier Merkmale. Je geringer die<br />

Abhängigkeit zwischen zwei Merkmalen ist, desto größer ist die Wahrscheinlichkeit,<br />

dass der Algorithmus nach diesen Merkmalen verzweigt.<br />

MIt dem CHAID-Algorithmus können kompaktere Bäume erzeugt werden als<br />

z.B. mit dem CART-Algorithmus. Da jedoch für alle möglichen Attributkombinationen<br />

die Abhängigkeiten geprüft werden müssen ist CHAID bei großen<br />

Problemen nicht mehr recheneffizient.<br />

24


Konstruktion<br />

trennender<br />

Ebenen<br />

Weiche<br />

Ränder<br />

6 Weitere <strong>Klassifikation</strong>smethoden<br />

6.1 Support Vector Machines<br />

Support Vector Machines (SVM) [] stellen die zu analysierenden Objekte mittels<br />

ihrer Merkmalswerte in einem Merkmalsraum dar, wobei ähnliche Objekte<br />

nahe beieinander liegen.<br />

Sie<br />

konstruieren trennende Ebenen zwischen den Daten. Dabei werden die Daten<br />

auf einer Seite der Ebene einer Klasse und die auf der anderen Seite einer anderen<br />

Klasse zugeordnet. Solch eine trennende Ebene wird Entscheidungsoberfläche<br />

genannt und durch Vektoren konstruiert, die an der Grenze zwischen<br />

zwei Klassen liegen. Diese Vektoren werden Support-Vektoren genannt.<br />

Falls die Konstruktion mehrerer solcher Ebenen zwischen zwei Klassen möglich<br />

ist, so wird diejenige ausgewählt, welche die eindeutigste Trennung ergibt.<br />

Meist ist jedoch eine eindeutige Trennung der Klassen nicht möglich. Dann werden<br />

so genannte weiche Ränder verwendet, bei denen sich auch noch jenseits<br />

einer gewissen Entfernung von der Ebene Daten der anderen Klasse befinden<br />

dürfen.<br />

Eine neu zu klassifizierendes Objekt wird in den Merkmalsraum eingeordnet.<br />

Dann kann bestimmt werden, in welcher Beziehung sie zu den Trennungsebenen<br />

steht und zu welcher Klasse sie hiermit gehört.<br />

25


6.2 Support Vector Machines<br />

Klassifizierung Einer der Vorteile der SVM gegenüber anderen <strong>Klassifikation</strong>sverfahren ist, dass<br />

ein Objekt <strong>zur</strong> <strong>Klassifikation</strong> nicht mit vielen anderen verglichen werden muss,<br />

sondern lediglich mit den Support-Vektoren. Dadurch ist das Verfahren bei<br />

der Klassifizierung sehr schnell. Dafür ist jedoch die Trainingsphase sehr<br />

langsam, da das Auffinden der Hyperebenen aufwändig ist (vgl. Yang 1999).<br />

Anwendung Die Anwendung von SVM in Spam-Filtern wird von Drucker (1999) ausführlich<br />

beschrieben. Brutlag und Meek (2000) verglichen die Ergebnisse der Klassifizierung<br />

von Ham-E-Mails mit einer linearen SVM und einem Unigram-Sprachmodell,<br />

wobei ihre <strong>Klassifikation</strong>sergebnisse eher von den verwendeten Klassen als von<br />

dem Klassifikator abhängen.<br />

26


Disjunkte<br />

Regeln als<br />

Klassifikator<br />

Ripper-<br />

Algorithmus<br />

6.3 Regelgenerierungsverfahren<br />

Regelgenerierungsverfahren, auch als regelbasierte Lernverfahren bezeichnet,<br />

lernen eine Menge von disjunktiven Regeln als Klassifikator.<br />

Die Regeln aus dieser Menge müssen hierfür die Trainingsdaten vollständig abdecken.<br />

Im ungünstigsten Fall muss also für jeden Fall eine eigene Regel gelernt<br />

werden.<br />

Der Ripper-Algorithmus ist einer der bekanntesten Algorithmen <strong>zur</strong> Regelgenerierung<br />

[]. Er erzeugt Regeln der Form<br />

(F AC53 − 1 >= 2.13625) and (F AC1 − 1 topic = ink<br />

Solche Regeln sind relativ einfach zu verstehen. Die Konstruktion der Regeln<br />

verläuft ähnlich wie die Konstruktion von Entscheidungsbäumen. Im Unterschied<br />

zu diesen wird jedoch nicht ein Kriterium gesucht, das alle Objekte<br />

möglichst gut ihrer Klasse zuordnet, sondern es werden beim Erzeugen der Regeln<br />

nur Instanzen einer Klasse betrachtet.<br />

Die so erstellten Regeln sind im allgemeinen genauer als Entscheidungsbäume<br />

der gleichen Komplexität. Das Ergebnis des Algorithmus ist eine Liste von<br />

Regeln, mittels derer die Objekte klassifiziert werden können.<br />

27


6.4 Logistische Regression<br />

Die logistische Regression ist ein statistisches Verfahren <strong>zur</strong> <strong>Klassifikation</strong> kategorialer<br />

abhängiger Merkmale [].<br />

Im Gegensatz <strong>zur</strong> Regressionsanalyse erfordert sie weit weniger Voraussetzungen<br />

zu ihrer Anwendung (keine Normalverteilung der Residuen, keine Homogenität<br />

der Varianz).<br />

Die logistische Regression geht ähnlich wie die Diskriminanzanalyse vor. Sie<br />

ist jedoch flexibler und deshalb vielfältiger einsetzbar.<br />

28


7 Literatur und <strong>Methoden</strong>verzeichnis<br />

7.1 Literatur <strong>zur</strong> Diskriminanzanalyse<br />

Literaturverzeichnis<br />

[] Bortz, J.: Statistik für Sozialwissenschaftler, Berlin 1989, S. 736ff.<br />

[] Backhaus, K., B. Erichson, W. Plinke u. R. Weiber: Multivariate Analysemethoden.<br />

Eine anwendungsorientierte Einführung, 9. Auflage, Berlin<br />

2000, S. 145ff.<br />

[] Cooley, W.F./Lohnes, P.R. : Mulivariate Data Analysis, New York 1971.<br />

[] Lachenbruch, P.A.: Discriminant Analysis, 2nd edition, London 1975.<br />

[] Morrison, D.F.: Multivariate Statistical Methods, 3rd edition, New York<br />

1990.<br />

7.1 Literatur zu Naiven-Bayes-Klassifikatoren und Bayes-<br />

Netzwerken<br />

Literaturverzeichnis<br />

Einführende Literatur zu Naiven Bayes-KlassifikatorenMitchell,<br />

T.: Machine Learning. MacGraw-Hill 1997, Kap. 6, pp 154-184.<br />

Weiterführende Literatur zu Naiven Bayes-Klassifikatoren<br />

Domingo, P./Pazzani, M.: On the optimality of the simple Bayesian<br />

classifier under zero-one loss, in: Machine Learning, Vol. 29, 1997, pp.<br />

103-130. Katirai, H.: Filtering Junk E-Mail-A Performance Comparison<br />

between Genetic Programming & Naive Bayes, University of Waterloo<br />

1999, auf URL: web.mit.edu/ hooman/www/papers/katirai99filtering.pdf<br />

(10.09.2005) Sahami, M./Dumais, S./Heckermann, D./Horvitz, E.: A<br />

Bayesian approach to filtering junk e-mail, in: AAAI-98 Workshop on<br />

Learning for Text Categorization, 1998. Sahami, M.: Learning limited<br />

dependence Bayesian classifiers, in: KDD-96: Proceedings of the Second<br />

International Conference on Knowledge Discovery and Data Mining,<br />

AAAI Press, 1996, pp. 335-338. Upal, M.A./Neufeld, E.M.: Comparison of<br />

Bayesian and Neural Net Unsupervised Classifiers, in: Proceedings of the<br />

Information, Statistics and Induction in Science, World Scientific, 1996,<br />

pp. 342-353, auf URL: http://citeseer.ist.psu.edu/upal96comparison.html<br />

(10.09.2005)<br />

29


Literaturverzeichnis<br />

Einführende Literatur zu Bayes-Netzwerken<br />

Han, J./Kamber, M.: Data Mining: Concepts and Techniques. Morgan<br />

Kaufmann, 2000, p. 300. Jensen, F.: An Introduction to Bayesian<br />

Networks. Springer, Heidelberg New York 1996.<br />

Weiterführende Literatur zu Bayes-Netzwerken<br />

Friedman, N./Geiger, D./Goldszmidt, M: Bayesian network<br />

classifiers, in: Machine Learning, 1997, auf URL:<br />

http://citeseer.ist.psu.edu/article/friedman97bayesian.html (9.9.2005)<br />

Geman, S./Geman, D.: Stochastic relaxation, Gibbs distributions<br />

and the Bayesian restoration of images, in: IEEE Transactions on<br />

Pattern Analysis and Machine Intelligence, Vol. 6, 1984, pp. 721-<br />

742. Heckerman, D.: Bayesian networks for data mining, auf URL:<br />

http://research.microsoft.com/research/pubs/view.aspx?msr tr id=MSR-<br />

TR-95-06 (12.09.2005) Robers, U.: Modellbasierte Fehlerdiagnose komplexer<br />

Systeme mit Hilfe Bayesscher Netze, Jahresbericht 1998 des<br />

Zentrums für Beratungssysteme in der Technik, Dortmund e.V., auf<br />

URL: http://www.zedo.fuedo.de/zedo/jb98/robers.htm (15.9.2005)<br />

7.1 Literatur zu Entscheidungsbäumen<br />

Literaturverzeichnis<br />

Einführende Literatur<br />

Ester M., Sander J. : Knowledge Discovery in Databases: Techniken<br />

und Anwendungen, Springer, Heidelberg New York 2000. Han,<br />

J./Kamber, M.: Data Mining: Concepts and Techniques, Morgan Kaufmann,<br />

San Mateo 2000. Quinlan, J.R.: Induction of Decision Trees, in:<br />

Machine Learning, Vol. 1, 1986, pp. 81-106. Quinlan, J.R.: Generating<br />

production rules from decision trees, International Joint Conference<br />

on Artifical Intelligence, 1987, pp. 304-307 Mitchell T. M. : Machine<br />

Learning, McGraw-Hill, 1997.<br />

Literaturverzeichnis<br />

Weiterführende Literatur<br />

Breimann, L./Friedman, J.H./Olshen, R.A./Stone, C.J.: Classification<br />

and Regression Trees. Wadsworth International Group 1984.<br />

30


Quinlan, J.R.: Simplifying Decision Trees, in: International Man-Machine<br />

Studies, 1987, pp. 221-234. Quinlan, J.R.: C4.5: Programs for Machine<br />

Learning, Morgan Kaufmann, San Mateo, California 1993. Mehta,<br />

M./Agrawal, R./Rissanen, J.: SLIQ: A Fast Scalable Classifier for Data<br />

Mining, IBM Almaden Research Center, San Jose 1996, auf URL:<br />

www.almaden.ibm.com/u/ragrawal/papers/edbt96 sliq.ps Sonquist, J.A.<br />

and Morgan, J.N.: The Detection of Interaction Effects. Survey Research<br />

Center, Institute for Social Research, University of Michigan 1964.<br />

Wallace, C./Patrick, J.: Coding decision trees, in: Macine Learning, Vol.<br />

11, 1993, pp. 7-22. Witten I. H., Frank E . : Data Mining: Practical<br />

Machine Learning Tools and Techniques with Java Implementations,<br />

Morgan Kaufmann Publishers, 2000<br />

7.1 Literatur zu weiteren Verfahren<br />

Literaturverzeichnis<br />

[] [] [1] [2] [3] [4] [5] [1] [2] [3] [4] [5] [6] [7] Backhaus, K., B. Erichson, W. Plinke u. R. Weiber (2000): Multivariate<br />

Analysemethoden. Eine anwendungsorientierte Einführung, 9. Auflage,<br />

Berlin.<br />

[] Burgess, C.: A Tutorial on Support Vector Machines for Pattern Recognition,<br />

in: Data Mining and Knowledge Discovery, Vol. 2, 1989, pp.121-167.<br />

[] Cohen, William W.: Fast Effective Rule Induction, from: Machine Learning:<br />

Proceedings of the Twelfth International Conference, 1995.<br />

[] Joachims, T.: A Statistical Learning Model of Text Classification for Support<br />

Vector Machines. In: Proceedings of SIGIR’01, New Orleans 2001.<br />

[] Mitchell, T.: Machine Learning. McGraw-Hill, 1997.<br />

7.1 <strong>Methoden</strong>verzeichnis<br />

Verzeichnis der erläuterten <strong>Methoden</strong><br />

Bayes-Netzwerke<br />

C4.5-Algorithmus<br />

CART-Algorithmus<br />

CHAID-Algorithmus<br />

Diskriminanzanalyse<br />

GID3-Algorithmus<br />

ID3-Algorithmus<br />

Logistische Regression<br />

Naive-Bayes-<strong>Klassifikation</strong><br />

31


Prune-Verfahren<br />

Regelgenerierung<br />

Ripper-Algorithmus<br />

SLIQ-Algorithmus<br />

Support Vector Machines (SVM)<br />

Window-Technik<br />

32

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!