Uwe Lämmel, Jürgen Cleve
Künstliche Intelligenz
Wissensverarbeitung - Neuronale Netze
1 Künstliche Intelligenz
12
1.1 Eine intelligente Maschine
12
1.2 Intelligenz und künstliche Intelligenz
14
1.3 Knobelaufgaben und symbolverarbeitende KI
20
1.4 Geschichte der KI
22
1.5 Wir und die KI
24
2 Darstellung und Verarbeitung von Wissen
28
2.1 Wissen und Wissensarten
28
2.2 KI und explizite Wissensdarstellung
30
2.3 Darstellung von Wissen mit Hilfe von Logik
33
2.3.1 Aussagenlogik
33
2.3.2 Prädikatenlogik
51
2.3.3 Logik und PROLOG
65
2.4 Regelbasierte Wissensdarstellung
70
2.4.1 Vorwärtsverkettung
73
2.4.2 Rückwärtsverkettung
76
2.4.3 Regelverarbeitung und PROLOG
77
2.4.4 Business Rules
80
2.5 Semantische Netze und Frames
86
2.5.1 Semantische Netze
86
2.5.2 Frames
88
2.5.3 Wissensnetze
90
2.6 Vages Wissen
92
2.6.1 Unsicheres Wissen
93
2.6.2 Fuzzy-Mengen
101
2.6.3 Fuzzy-Logik
108
2.6.4 Fuzzy-Regler
110
3 Problemlösung mittels Suche
116
3.1 Suche in Graphen
116
3.2 Uninformierte Suche
121
3.3 Heuristische Suche
130
3.3.1 Heuristik des nächsten Nachbarn
135
3.3.2 Bergsteiger-Strategie
136
3.3.3 Bestensuche
137
3.3.4 A*-Suche
138
3.4 Das Rundreiseproblem
142
4 PROLOG
152
4.1 Logisches Programmieren
152
4.1.1 Erste Schritte
152
4.1.2 Ein Beispiel
154
4.1.3 Regeln
156
4.2 PROLOG-Programme
161
4.2.1 Lösungsfindung mittels Backtracking
161
4.2.2 Parameterübergabe mittels Unifikation
162
4.2.3 Interpretation von Programmen
166
4.3 Datentypen und Arithmetik
168
4.3.1 Einfache und zusammengesetzte Datentypen
168
4.3.2 Listen
170
4.3.3 Arithmetik
173
4.4 Steuerung der Abarbeitung
175
4.4.1 Reihenfolge der Klauseln
176
4.4.2 Reihenfolge der Literale im Körper einer Regel
177
4.4.3 Kontrolle des Backtracking
178
4.4.4 Die Negation
181
4.5 Vordefinierte Prädikate
182
4.6 Beispielprogramme
183
4.6.1 Das Einfärben einer Landkarte
183
4.6.2 Die Türme von Hanoi
184
4.6.3 Das Acht-Damen-Problem
186
4.6.4 Das Problem der stabilen Paare
187
4.6.5 Das Einstein-Problem
189
5 Künstliche neuronale Netze
194
5.1 Das künstliche Neuron
196
5.2 Architekturen
201
5.3 Arbeitsweise
203
6 Vorwärtsgerichtete Netze
208
6.1 Das Perzeptron
208
6.1.1 Die Delta-Regel
210
6.1.2 Musterzuordnungen
213
6.2 Backpropagation-Netze
216
6.2.1 Das Backpropagation-Verfahren
217
6.2.2 Das XOR-Backpropagation-Netz
221
6.2.3 Modifikationen des Backpropagation-Algorithmus
224
6.3 Typische Anwendungen
227
6.3.1 Zeichenerkennung
227
6.3.2 Das Encoder-Decoder-Netz
233
6.3.3 Ein Prognose-Netz
234
6.4 Datenvorverarbeitung
238
6.4.1 Verarbeitungsschritte
238
6.4.2 Daten des Kreditvergabe-Beispiels
241
6.5 Netzgröße und Optimierungen
245
6.5.1 Die Größe der inneren Schicht
246
6.5.2 Das Entfernen von Verbindungen
248
6.5.3 Genetische Algorithmen
249
6.6 Partiell rückgekoppelte Netze
252
6.6.1 Jordan-Netze
253
6.6.2 Elman-Netz
255
6.7 Convolutional Neural Network
257
7 Wettbewerbslernen
266
7.1 Selbstorganisierende Karte
267
7.1.1 Architektur und Arbeitsweise
267
7.1.2 Das Training
270
7.1.3 Visualisierung einer Karte und deren Verhalten
273
7.1.4 Eine Lösung des Rundreiseproblems
274
7.2 Neuronales Gas
279
7.2.1 Architektur und Arbeitsweise
280
7.2.2 Wachsendes neuronales Gas
282
7.3 Adaptive Resonanz-Theorie
285
7.3.1 Das Plastizitäts-Stabilitäts-Dilemma
285
7.3.2 Struktur eines ART-Netzes
286
7.3.3 Das Beispiel Würfelmuster
288
7.3.4 Arbeitsweise
290
8 Autoassoziative Netze
294
8.1 Hopfield-Netze
294
8.1.1 Arbeitsweise
295
8.1.2 Wiedererkennung von Mustern
297
8.1.3 Energie-Niveau eines Netzes
301
8.2 Lösung von Optimierungsproblemen
302
8.3 Die Boltzmann-Maschine
305
9 Entwicklung neuronaler Netze
310
9.1 Datenanalyse-Software
310
9.2 JavaNNS
312
9.3 Implementation neuronaler Netze
314
9.3.1 Einsatz von Array-Datenstrukturen
314
9.3.2 Der objektorientierte Ansatz
315
9.4 Implementieren mit TensorFlow
326
Literatur
334
Index
336
© 2009-2024 ciando GmbH