Grundlagen der Wissensverarbeitung - Abteilung Intelligente Systeme

iis.uni.stuttgart.de

Grundlagen der Wissensverarbeitung - Abteilung Intelligente Systeme

Grundlagen der

Wissensverarbeitung

Übungsblatt 7


Übersicht über behandelte

Themen und Literaturhinweise

1. KI im Überblick

• Der Begriff Intelligenz; Meilensteine;

Teilgebiete; Einflüsse anderer wiss.

Disziplinen; Beispiel: ANALOGY

• KIMA Kap. 1

2. Intelligente Agenten

• Prinzip der Rationalität; Umgebungen;

Struktur von Agenten;

• KIMA Kap. 2

3. Problemlösen als Suche im

Problemraum

• Problemformulierung

• Uniformierte Suchverfahren

• Informierte Suchverfahren

• Constraint Satisfaction Problem

• Adversariale Suche

• KIMA 3.1-3.5, 4.1-4.3, 5.1-5.2, 6.1-

6.4

1. Schlussfolgern

• Logische Inferenz und Resolution

• Prädikatenlogik

• Schlussfolgerungsverfahren

• Abduktion (Beispiel: MYCIN)

• Vorwärts- und Rückwärtsverkettung

• KIMA 7.5, 8.1-8.4, 9.3-9.4

2. Wissensrepräsentation

• Ontologien

• Prädikatenlogik

• Semantische Netze, Semantic Web

• KIMA 10.1, 10.2, 10.6

3. Expertensysteme

4. Maschinelles Lernen

• Induktives Lernen

• Entscheidungsbaumlernen

• Neuronale Netze

• KIMA 18.1-18.4, 20.5

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 2


Empfohlene Literatur

• Stuart Russell, Peter Norvig:

Künstliche Intelligenz - Ein moderner Ansatz

2. Aufl., deutsche Ausgabe, Pearson Studium, 2004

1327 Seiten, ISBN 3-8273-7089-2, € 59,95

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 3


ID3

• Algorithmus zum Aufbau von Entscheidungsbäumen

• Entscheidungsbäume

• Innere Knoten: Test einer Eigenschaft (Eigenschaftsname)

• Kanten: Testergebnisse (Eigenschaftswerte)

• Blätter: Klassen (Werte des Klassifikationsattributs)

• Trainingsmenge:

• Menge von Beispielen

• Jedes Beispiel besitzt eine Menge von Attribut-Wert-Paaren

• Attribute A i

mit n i

Werten (Wetterprognose,Müdigkeit,...)

• Nach einem Attribut wird klassifiziert (Entscheidung)

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 4


ID3

• Jedes Attribut A i

teilt die Trainingsmenge S in n

Teilmengen (n=Anzahl unterschiedliche Werte von A i

)

• Beispiel: A i

= Wetterprognose, Werte={gut,mittel,schlecht}

• Jede der Teilmengen S i

hat

p i

positive und n i

negative Beispiele:

• gut: 2 Schwimmbad, 3 Vorlesung

• mittel: 2 Schwimmbad, 2 Vorlesung

• schlecht: 1 Schwimmbad, 4 Vorlesung

• Schwimmbad (-), Vorlesung (+)

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 5


ID3

Wetterprognose

gut

mittel

schlecht

temp müd prüf Ent

23 ok weit -

24 ok bald -

22 ok nahe +

17 ok weit +

17 lala weit +

temp müd prüf Ent

25 sehr nw -

23 lala weit -

22 lala nw +

18 ok weit +

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 6


Entropie

Entropie

1.0

0.0 0.5 1.0

Verteilung

• E(S) = 0, wenn alle Beispiele derselben Klasse angehören

• E(S) ist 1 wenn p=n

1 1 1

E(

S)

log ( ) log

2

2 2 2

1

( )

2

2


1

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 7


Entropie

• Sei S eine Beispielmenge mit p positiven und n negativen

Beispielen, so ist die Entropie von S (relativ zur boolschen

Klassifikation):

p p n

E( S)

log2

( ) log

2(

p n p n p n

p

n


)

n

9 9 5

E(

S)

log ( ) log2

14 14 14

5

( )

14

2


0.9402

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 8


Entropie

• Bisher haben wir den Spezialfall, für eine boolsche

Klassifikation betrachtet. Im allgemeinen Fall von n

Werten (mit der Wahrscheinlichkeit P(m i

) 0


Information Gain

• Information Gain eines eines Attributs A bezüglich einer

Trainingsmenge Gain(S,A i

), gibt ist ein Effektivitätsmaß

für die Klassifizierung von S.

• Gain(S,A i

) ist die erwartete Reduktion der Entropie von S,

durch Partinionierung von S durch A i

.

• Sei S v

die Teilmenge von S in der das Attribut A i

nur den

Wert v hat. |S v

| ist die Anzahl der Beispiele in S v

Gain(

S,

A

i

)


E(

S)


| S |

E(

S

| S |


v

v values( Ai )

v

)

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 10


Gain(

S,

E

E

E

Ai

) E(

S)


Beispiel

3 3 2 2

) log

2(

) log ( ) 0,9709

5 5 5 5

1 1 1 1

) log2 ( ) log ( ) 1

2 2 2 2

4 4 1 1

) log

2(

) log ( ) 0,7219

5 5 5 5

( S gut

2

( S mittel

2

( S schlecht

2

| S |

E(

S

| S |


v

v values( Ai )

v

)

Gain(

S,

Wetter )


5

0,9402 ( E(

S

14

0,9402 0,8903

4

) E(

S

14

0,0499

gut

mittel

)

5

14

E(

S

schlecht

))


Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 11


Beispiel

[+9,-5]

E=0,9402

Wetter

gut mittel schlecht

[+3,-2]

E=0,9709

[+2,-2]

E=1

[+4,-1]

E=0,7219

Gain(S,Wetter) = 0,0499

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 12


Beispiel

Gain( S,

Wetter)

0.0499

Gain( S,

Temp)

0.5467

Gain( S,

Müde)

0.1981

Gain(

S,

prüfung)

0.3937

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 13


ID3 Algorithmus

function ID3(S, A, Default) : Knoten

if S ist leer then return Default

else if alle Beispiele aus einer Klasse then

return neuer Knoten mit Wurzeltest = Klasse // Blatt

else

end do

return node

a wähle bestes Attribut aus A // max. Gain(S,A i

)

node neuer Knoten mit Wurzeltest = a

for each Wert v von a do

S v

Menge aller Beispiele mit a = v

node v

ID3(S v

, A - a, Default) // Attributmenge ohne a

node erzeuge Kante v von node nach node v

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 14


ML Workbench

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 15


ML Workbench

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 16


Neuronale Netze

• Neuronale Netze sind informationsverarbeitende

Systeme, die aus einer großen Anzahl einfacher

Einheiten (Neuronen, Zellen) bestehen.

• Neuronen sind durch gerichtete gewichtete

Verknüpfungen, miteinander verbundenen, über

welche Informationen ausgetauscht werden.

• Ein Neuron feuert, wenn eine lineare Kombination

seiner Eingaben einen bestimmten Schwellenwert

überschreitet

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 17


Neuronale Netze

Quelle: Andreas Zell, Simulation neuronaler Netze, Addison Wesley, 1994

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 18


Neuronale Netze

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 19


Neuron

Quelle: Russell/Norvig

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 20


Neuronale Netze

• Eine Verknüpfung von der Einheit j zur Einheit i dient dazu, die

Aktivierung aj von j nach i zu propagieren

• Jeder Verknüpfung ist eine numerische Gewichtung w j,i

zugeordnet, die die Stärke und das Vorzeichen der Verknüpfung

bestimmt

• Jede Einheit berechnet die Summe ihrer Eingabe

n

in w

i

j 0

• Anschließend wendet sie eine Aktivierungsfunktion g auf diese

Summe an, um die Ausgabe abzuleiten

a i

= g(in i

)

• Jede Einheit besitzt einen Schwellenwert (oft als Bias-Gewicht

w 0,i

angegeben)

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 21

j , i

a

j


Aktivierungsfunktionen

• Schwellenwertfunktion

binär -1 oder 1

• logistische Funktion

(Sigmoid-Funktion)

1/(1-e -x )

monoton und

differenzierbar

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 22


Beispiel: Logikgatter

Quelle: Russell/Norvig

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 23


Netzwerkstrukturen

• Netze mit Rückkopplung (Recurrent-Netze)

• Gibt seine Ausgaben zurück an seine Eingaben

• Aktivierungslevels des Netzwerks bilden ein dynamisches

System, das einen stabilen Zustand erreichen kann, schwingt

oder sogar ein chaotisches Verhalten aufweisen kann.

• Können Kurzzeitgedächtnis simulieren

• Netze ohne Rückkopplung (Feedforward-Netze)

• Stellt eine Funktion seiner aktuellen Eingaben dar

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 24


Feedforward-Netze

• Die Ausgabe des Netzes kann als

Funktion h W

der Eingabe

dargestellt werden, wobei die

Gewichtungen W als Parameter

dienen

• Die Ausgabe eines Netzes mit

Eingangsvektor x ist somit h W

(x)

a5= g(w 3,5

a 3

+w 4,5

a 4

)

= g(w 3,5

g(w 1,3

a 1

+w 2,3

a 2

) +

w 4,5

g(w 1,4

a 1

+w 2,4

a 2

))

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 25


Beispiel: XOR

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 26


Perzeptron-Netze

• Einschichtiges neuronales Netzwerk: alle Eingaben

sind direkt mit den Ausgaben verknüpft (keine

verdeckten Schichten)

• + Einfache Lernalgorithmen

• - Nur begrenzte Ausdruckskraft (kann nur lineare

trennbare Funktionen darstellen)

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 27


Lernen in neuronalen Netzen

Mögliche Ansätze:

• Hinzufügen/Löschen von Verknüpfungen/Zellen

• Modifikation der Gewichte

• Modifikation der Schwellenwerte

• Modifikation der Aktivierungs-, Eingabe- oder

Ausgabefunktion

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 28


Anpassung der Gewichtungen

• Eine Lernregel ist ein Algorithmus mit dem ein

neuronales Netz für eine Eingabe eine gewünschte

Ausgabe zu produzieren lernt

• Dabei werden in der Regel die Gewichtungen w i,j

so

angepasst, dass ein bestimmtes Fehlermaß für die

Trainingsmenge minimiert wird

• Das Lernen kann als optimierende Suche im (stetigen)

Gewichtungsraum formuliert werden

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 29


Lernen in neuronalen Netzen

• Arten des Lernens:

• Überwachtes Lernen (supervised learning)

• Erwartetes Resultat als Antwort

• Bestärkendes Lernen (reinforcement learning)

• nur richtig oder falsch als Antwort

• eventuell Grad der Richtigkeit

• Unüberwachtes Lernen (unsupervised learning)

• Trainingsmenge besteht nur Eingabemustern

• Lernalgorithmus versucht Gruppen ähnlicher Eingabevektoren

auf Gruppen ähnlicher oder benachbarter Neuronen

abzubilden

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 30


Lernen in neuronalen Netzen

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 31


Lernen in neuronalen Netzen

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 32


Einfacher Lernalgorithmus für

einstufige Perzeptron Netzwerke

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 33


Delta Lernregel

• Bei der Delta-Regel ist die Gewichtsveränderung proportional zur

Differenz j

der aktuellen Aktivierung a j

und der erwarteten

Aktivierung t j

w o

( t a ) o


i,

j

i

j

j

i

j

• w i,j

Änderung des Gewichts

• eine Konstante (Lernrate)

• o i

Ausgabe der Vorgängerzelle i

• a j

Aktivierung der Nachfolgerzelle j

• t j

erwartete Aktivierung (teaching input)

Anwendung nur bei linearen Aktivierungsfunktionen bei einer

einzigen Schicht trainierbarer Gewichte (Perzeptron Netzwerke)

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 34


Backpropagation

• Backpropagation ist die Verallgemeinerung der Delta-Regel für

Netze mit mehr als einer Schicht trainierbarer Gewichte und für

Neuronen mit nichtlinearer Aktivierungsfunktionen

• Die Regel lautet analog zur Delta-Regel wi

, j

oi

j

mit dem Unterschied, dass j

wie folgt berechnet wird:


j


f '( aj

)( t

f '( a

j)


j


k

o

(

k

j

) falls

w

jk

)

falls

jeine

j eine

Ausgabezelle ist

verdeckte

Zelle ist

• mit der standard Eingabefunktion und der logistischen

Aktivierungsfunktion ergibt sich:


j


o

j

o


j

(1 o

j

(1 o

j

)( t

)

j


k

o

(

k

j

) falls

w

jk

) falls

j eine Ausgabezelle ist

jeine

verdeckte

Zelleist

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 35


Backpropagation

• Backpropagation ist ein Gradientenabstiegsverfahren

• Alle Gradientenverfahren berechnen den Gradienten einer

Zielfunktion (hier die Fehlerfunktion) und steigen entweder

orthogonal zum Gradienten nach oben (Maximum) oder unter

(Minimum)

• Fehlerfunktion: E(W) = E(w 1

,...,w n

), d.h. der Fehler, den das

Netzwerk bei gegebenen Gewichten über alle Trainingsmuster

aufsummiert besitzt

• Als Fehlerfunktion wir häufig der quadratische Abstand zwischen

erwarteter und realer Ausgabe verwendet

• Fehler wird versucht zu minimieren, indem eine Änderung aller

Gewichte um einen Bruchteil des negativen Gradienten der

Fehlerfunktion vorgenommen wird

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 36


Backpropagation

Quelle: Zell

Grundlagen der Wissensverarbeitung, Übungsblatt 7, 17.2.05 37

Weitere Magazine dieses Users
Ähnliche Magazine