Lernverfahren von Künstlichen Neuronalen Netzwerken

Größe: px
Ab Seite anzeigen:

Download "Lernverfahren von Künstlichen Neuronalen Netzwerken"

Transkript

1 Lernverfahren von Künstlichen Neuronalen Netzwerken Untersuchung und Vergleich der bekanntesten Lernverfahren und eine Übersicht über Anwendung und Forschung im Bereich der künstlichen neuronalen Netzen. Maturaarbeit von: Betreuer: Daniel Sprecher Prof. Dr. René Hugelshofer Brand Frauenäckerstr Grabserberg 9435 Heerbrugg Fachbereich Mathematik März 2002 Kantonsschule Heerbrugg, Klasse 4NaPa

2 Inhaltsverzeichnis 1 Einleitung 4 2 Theoretische Grundlagen Das Neuron Die Aktivierungsfunktion Verbindungen Topologien Lernen, Lernregeln Vergleich mit biologischen Netzen Vergleich mit einem konventionellen Computer Modelle Perzeptron Aufbau eines Perzeptrons Lineare Trennbarkeit Randerkennung bei Schwarz-Weiss-Figuren Lernverfahren Lernverfahren bei Randerkennung Zweistufige Perzeptrons Dreistufige Perzeptrons Backpropagation und seine Modifikationen Prinzip des Lernverfahrens Backpropagation Herleitung der Backpropagation-Regel Probleme von Backpropagation Modifikationen als Lösung bestimmter Probleme Backpercolation Prinzip des Lernverfahrens Backpercolation Bemerkungen zu Backpercolation Rekurrente Netze Jordan-Netze und Elman-Netze Lernverfahren für rekurrente Netze Modell von Kohonen Prinzip der selbstorganisierenden Karten Lernverfahren Bemerkungen Fazit Anwendungen Rand- und Buchstabenerkennung Vorgehen bei der Entwicklung eines KNN Mühle Anwendung in Forschung und Industrie

3 5 Diskussion 28 6 Zusammenfassung 28 7 Literaturverzeichnis 29 8 Dank 29 9 Anhang Verwendete Hilfsmittel CD-Rom Abbildungsverzeichnis 1 Ein Neuron Mögliche Aktivierungsfunktionen Funktionen an einem Neuron Neuronentypen nach Position im Netzwerk Feedforward-Netzwerke Netze mit Rückkopplungen Ein einstufiges Perzeptron Lineare Trennbarkeit Randerkennung mit einem Perzeptron Ein Perzeptron lernt die AND-Funktion Lösung des XOR-Problems Ein einfaches Netz Beispiele von Fehlerfunktionen Probleme beim Backpropagation-Lernverfahren Beispiele für rekurrente Modelle Ein Kohonen-Netzwerk Mexican-Hat-Funktion Ein Mühlespiel

4 1 Einleitung Als wir im Biologieunterricht das Thema Nervensystem durchnahmen, lernten wir auch die Neuronen kennen. Wir erfuhren, wie die Kommunikation zwischen ihnen funktioniert und sahen die verschiedenen Teile des Nervensystems und die Regionen des Gehirns. Verborgen blieb aber die Funktion des einzelnen Neurons. Leitet es nicht einfach Reize weiter? Wie kann aus einem Geflecht von Dendriten und Axonen, die über Synapsen Milliarden von Neuronen miteinander verbinden, ein Gebilde entstehen, das wir unser Gehirn nennen? Das wichtigste Organ unseres Körpers ist gleichzeitig auch das flexibelste. Durch Lernprozesse kann es sich ständig der Umgebung anpassen und Informationen aufnehmen. Wie aber geht man vor, wenn man mehr über die Vorgänge wissen möchte, die uns zu dem machen, was wir sind? Wie bei vielen komplexen Prozessen und Sachverhalten in Physik, Chemie und Biologie gibt es auch für neuronale Netze verschiedene Modelle, die das Wesentliche vereinfacht und anschaulich aufzeigen wollen. Auch bei neuronalen Netzen, wie man Nervensysteme verallgemeinert nennt, versuchte man Modelle zu entwickeln, mit denen man einerseits mehr über biologische Netze erfahren und andererseits auch Probleme in der Technik lösen wollte. Der Überbegriff dieser Modelle lautet künstliche neuronale Netzwerke (KNN). Gemäss Definition sind KNN informationsverarbeitende Systeme, die aus einer grossen Anzahl einfacher Einheiten (sog. Neuronen) bestehen. Die Neuronen senden sich über gerichtete Verbindungen Signale zu. Was das nun genau heisst, wird im nächsten Kapitel erläutert. Bevor ich mich definitiv entschied meine Maturaarbeit über neuronale Netzwerke zu schreiben, informierte ich mich im Internet tiefgehender über KNN und bemerkte, dass zur Beschreibung der verschiedenen Modelle sehr viel Mathematik benötigt wird. Da wurde ich neugierig, denn eigentlich hätte ich eher, wie so oft bei der Beschreibung von Vorgängen in der Natur, physikalische Formeln erwartet. Auch hätte ich mir, wie bei Computernetzwerken, Protokolle und Programme vorstellen können, welche die Kommunikation zwischen den künstlichen Neuronen regeln. Stattdessen fand ich grundlegende Mathematik, anfänglich einfache Multiplikationen und Additionen, später auch Ableitungen und Matrizenmultiplikationen, aber alles bekannte, relativ einfache Mathematik. Ich war fasziniert. Wie weit kann man wohl mit dem eher unbeliebten Werkzeug Mathematik ein Modell beschreiben, das schlussendlich unser Gehirn erklären soll und nebenbei auch noch viele technische Anwendungen hat? Ich war vor allem gespannt zu erfahren, wie man es schafft, ein Netz dazu zu bringen eine bestimmte Aufgabe zu lösen. Im Gegensatz zum Programmieren eines Programms, werden dem Netz keinerlei Regeln oder Bedingungen übergeben. Um zu lernen braucht ein KNN nur eine genügend grosse Anzahl von Beispielen. In diesem Zusammenhang wollte ich auch herausfinden, ob man bei KNN von Intelligenz sprechen könne und wenn ja, wie intelligent heutige Netze bereits sind. Nun ist das Gebiet der neuronalen Netze sehr weit und Forscher aus verschiedenen Bereichen beschäftigen sich mit der Weiterentwicklung der Modelle. Mathematiker, Physiker, Ingenieure, Informatiker, Biologen, Mediziner und sogar Psychologen nutzen aus verschiedenen Gründen neuronale Netze. In den letzen Jahrzehnten entstand so eine Menge verschiedener Modelle, die jeweils für unterschiedliche Anwendungen entwickelt wurden. Einige Modelle haben auch in der Psychologie und der Hirnforschung neue Erkenntnisse gebracht, andere waren mehr für die Weiterentwicklung bestimmter Theorien von Nutzen. Mit dieser Arbeit war es nicht mein Ziel möglichst komplett alle Modelle im Detail vorzustellen, sondern ich wollte den beschränkten Platz nutzen, um die wichtigsten, bekanntesten und interessantesten Modelle zu beschreiben und wendete mich dabei vor allem den verschiedenen Lernverfahren zu. Um nicht nur eine Zusammenfassung der Fachliteratur zu schreiben, sondern auch eigene Erfahrungen in die Arbeit einfliessen lassen zu können, entwickelte ich eigene Beispiele, die in Kapitel 4 beschrieben sind. 4

5 2 Theoretische Grundlagen Bevor man ein KNN mit einem Lernverfahren trainieren kann, muss man wissen, wie ein Netz überhaupt aufgebaut ist, d.h. aus welchen Komponenten es besteht und welche Funktionen diese erfüllen. Jedes künstliche neuronale Netz setzt sich im wesentlichen aus Neuronen und gewichteten Verbindungen zusammen. Um das Netz richtig zu konfigurieren, verändert der Lernalgorithmus in der Lernphase die Gewichtung der Verbindungen. Die Unterschiede zwischen den Modellen liegen v.a. in der Art der Neuronen, der Anordnung der Verbindungen und der Funktionsweise des Lernalgorithmus. 2.1 Das Neuron 1 Das Neuron ist die kleinste informationsverarbeitende Einheit in einem KNN. Die Aufgabe eines Neurons besteht darin, aus dem aktuellen Input des Neurons den Output zu berechnen. Wie das genau vor sich geht wird anhand des Neurons j, das von Neuron i einen Input erhält durchgegangen. Der Output o j (t+1) des Neurons j zum Zeitpunkt t+1 erfolgt in zwei Schritten. Im ersten Schritt wird mit der Aktivierungsfunktion f act aus dem Input net j die Aktivierung a j berechnet. Mit dem Grad der Aktivierung wird dann mit Hilfe der Outputfunktion f out im zweiten Schritt der Output bestimmt, den das Neuron j an die folgenden Neuronen weitergibt. Ein Neuron führt also hintereinander folgende zwei Funktionen durch: Abb. 1: Ein Neuron 1. a j (t + 1) = f act (net j (t)) 2. o j (t + 1) = f out (a j (t + 1)) Wie man sieht, benötigt die Berechnung des Aktivierungszustandes einen Zeitschritt, während für die Outputfunktion in der Theorie kein Zeitschritt eingeplant ist. Um bei der Simulation neuronaler Netze Rechenleistung zu sparen, wird in der Praxis in den meisten Fällen die Identität als Outputfunktion verwendet Die Aktivierungsfunktion 3 Ein Neuron macht bei den meisten Modellen also nichts anderes als die Aktivierungsfunktion durchzuführen. Theoretisch könnte man eine beliebige Funktion als Aktivierungsfunktion verwenden. Sinn machen aber nur Funktionen, die bei grösserem Input auch einen grösseren Output liefern. Üblich sind drei verschiedene Arten von Funktionen: 1. Lineare Funktion Die einfachste Funktion, die verwendet wird ist eine lineare Funktion. Hier nimmt die Aktivierung des Neurons linear mit dem Input zu. Zur theoretischen Herleitung vieler Lernverfahren war sie anfangs sehr wichtig. Sie wird aber heute nur noch selten verwendet, da sie biologisch unplausibel ist und in der Praxis gegenüber anderen Funktionen keine Vorteile hat. 2. Binäre Schwellenwertfunktion Sie ist eigentlich biologisch am offensichtlichsten und wurde bei frühen Modellen (z.b. Perzeptron) auch meistens verwendet. Das Neuron ist aktiv, wenn der Input einen bestimmten Schwellenwert übersteigt, sonst ist es nicht aktiv. Als Beispiel einer solchen Funktion sei die Heavyside- oder Signum-Funktion genannt. Der Vorteil der Schwellenwertfunktion ist die einfache und schnelle Berechenbarkeit. Trotzdem wird sie bei neueren Modellen nicht mehr verwendet, da moderne Lernalgorithmen zur Bestimmung der optimalen Konfiguration eines Netzes die Ableitung der Aktivierungsfunktion benötigen und diese für die binäre Schwellenwertfunktion überall, wo sie differenzierbar ist, Null ist. 5

6 aj netj aj aj netj netj (a) Lineare Funktion (b) Schwellenwertfunktion (c) Sigmoide Funktion Abb. 2: Mögliche Aktivierungsfunktionen 3. Sigmoide Funktion Bei genauerer Untersuchung von biologischen Neuronen bemerkte man, dass die Aktivierungsschwelle eines Neurons nicht immer ganz genau gleich hoch ist. Mal muss die Zelle ein bisschen mehr angeregt werden, damit sie das Signal weiter leitet, mal ist sie früher als erwartet aktiv. Daraus ergibt sich eine Art Wahrscheinlichkeitsverteilung für die Aktivierungsfunktion, welche die Form einer sigmoiden (S-förmigen) Funktion annimmt. Sie hat die Form einer abgerundeten Schwellenwertfunktion. Die Steigung ist in ihrem Zentrum am grössten. Am häufigsten werden heute die logistische Funktion und Tangens hyperbolicus verwendet. Wie schon erwähnt ist die Ableitung der Aktivierungsfunktion bei modernen Lernverfahren sehr wichtig. Sie ist darum für diese Funktionen angegeben: a) logistische Funktion b) Tangens hyperbolicus f log (x) = f log(x) = e x e x (1 + e x ) 2 = f log(x) (1 f log (x)) tanh(x) = ex e x e x + e x tanh (x) = (ex + e x ) 2 (e x e x ) 2 4 (e x + e x ) 2 = (e x + e x ) 2 = 1 tanh2 (x) Die Wahl der Aktivierungsfunktion bestimmt auch die Werte, die der Aktivierungszustand a j annehmen kann. Bei einer linearen Funktion kann a j theoretisch alle Werte in R annehmen, wird eine sigmoide Aktivierungsfunktion gewählt, ist a i [ 1, 1]. Die Schwellenwertfunktion kann a i nur zwei Werte zuordnen, z.b. {0, 1}, { 1, 1} oder {, +}. 2.2 Verbindungen 3 Neuronen tauschen über gerichtete, gewichtete Verbindungen Informationen aus, d.h. dass Informationen nur in eine Richtung durch eine Verbindung fliessen können, und dass jedes Signal zwischen zwei Neuronen mit einem Faktor (=Gewicht) multipliziert wird. Besteht eine Verbindung vom Neuron i zum Neuron j wird das zu dieser Verbindung gehörende Gewicht mit w ij bezeichnet (Reihenfolge von i und j beachten). Ist diese Verbindung die einzige Inputverbindung des Neurons j, so entspricht der Output des Neurons i multipliziert mit dem Gewicht w ij dem Input des Neurons j. Hat das Neuron j jedoch mehrere Inputverbindungen, wird mit Hilfe der Propagie- 6

7 rungsfunktion f prop der Input des Neurons j aus den Outputs aller Neuronen k, die zu j eine Verbindung haben berechnet: net j (t) = f prop (o k (t), w kj ) = k o k (t) w kj Abb. 3: Die drei Funktionen, die an einem Neuron durchführt werden Die Gewichte aller Verbindungen in einem Netzwerk werden oft in der Gewichtsmatrix W gespeichert. Hat das Netz n Neuronen, ist W eine n n- Matrix. Das Gewicht w ij kann man in der i-ten Zeile und der j-ten Spalte der Matrix W ablesen. Ist keine Verbindung von i zu j vorhanden, steht dort eine Null. Darum kann man die Propagierungsfunktion als Multiplikation von zwei Matrizen verstehen: n net j (t) = O(t) W j = o i (t) w ij = f prop (o k (t), w kj ) i=1 O(t) ist dabei eine 1 n-matrix, die den aktuellen Output aller n Zellen des Netzes enthält. W j ist die j-te Spalte der Gewichtsmatrix und hat somit die Dimension n 1. Das Produkt hat die Dimension 1 1 und ergibt den Input des Neurons j. 2.3 Topologien 1 In einem KNN unterscheidet man drei Typen von Neuronen. An die Eingabeneuronen legt man die Ausgangswerte der zu lösenden Aufgabe, von den Ausgabeneuronen kann bei richtiger Konfiguration des Netzes das Resultat abgelesen werden. Neuronen, die keine dieser beiden Aufgaben erfüllen, sondern allein zur Verarbeitung der Informationen dienen, heissen Verdeckte Neuronen. Meistens sind in einem KNN nicht alle Neuronen miteinander verbunden, sondern die Verbindungen sind nach einem bestimmten System angeordnet. Die Art und Weise, wie Neuronen und Verbindungen angeordnet Abb. 4: Neuronentypen nach Position im Netzwerk sind, wird als Topologie bezeichnet. Um die Anordnung der Verbindungen übersichtlich zu gestalten, werden für gewöhnlich die Eingabeneuronen ganz oben, die Ausgabeneuronen ganz unten angeordnet. Die verschiedenen Topologien sind im folgenden systematisch beschrieben: 1. Netze ohne Rückkopplung Bei feedforward-netzen existiert kein Pfad, der von einem Neuron aus direkt oder indirekt wieder zu diesem zurückführt. Werden also die Eingabeneuronen oben und die Ausgabeneuronen unten angeordnet, gibt es nur Verbindungen, die nach unten führen. Ebenenweise vollständig verbundene feedforward-netze: Dieses spezielle feedforward-netzwerk wird in mehrere Schichten eingeteilt. Die erste Schicht bilden die Eingabeneuronen. Danach folgen keine, eine oder mehrere sog. verdeckte Schichten. Die letzte Schicht ist die Ausgabeschicht. Speziell an diesem Typ ist, dass jedes Neuron der i-ten Schicht zu allen Neuronen der (i + 1)- ten eine Verbindung hat, sonst aber zu keinen. Man spricht von einem n-stufigen Netz, wenn insgesamt (n+1) Schichten vorhanden sind, d.h. ein einstufiges Netz hat sowohl eine Eingabe- als auch eine Ausgabeschicht, jedoch keine verdeckten Schichten. 7

8 (a) Allgemeines feedforward-netz (b) Ebenenweise vollständig verbundenes feedforward-netz Abb. 5: Feedforward-Netzwerke Die allgemeinen feedforward-netze werden zwar oft auch in Schichten eingeteilt, es sind aber auch Verbindungen zu Neuronen weiter entfernter Schichten möglich. Solche Verbindungen nennt man shortcut-verbindungen. 2. Netze mit Rückkopplungen a) Netze mit direkten Rückkopplungen: In solchen Netzen kann ein Neuron durch eine Verbindung zu sich selbst seinen eigenen Aktivierungszustand beeinflussen (je nach Gewichtung abschwächen oder verstärken). b) Netze mit indirekten Rückkopplungen: Im Gegensatz zu feedforward-netzen, existieren Verbindungen von Neuronen höherer Schichten zu Neuronen niederer Schichten. c) Netze mit Rückkopplungen innerhalb einer Schicht: Auch Neuronen derselben Schicht sind miteinander verbunden. Eine solche Topologie wird bei Kohonen- Netzwerken verwendet (siehe Kapitel 3.5). d) Vollständig verbundene Netze In solchen Netzen existieren Verbindungen zwischen allen Neuronen, es sind jedoch keine direkten Rückkopplungen vorhanden. Vollständig verbundene Netze sind insbesondere als Hopfield-Netze bekannt geworden. 2.4 Lernen, Lernregeln 3,4,5 Meistens erfolgt Lernen in KNN durch Modifikation der Gewichtsmatrix. Dazu werden dem Netz verschiedene Trainingsmuster wiederholt präsentiert. Die Lernregel gibt dann an, wie die Gewichtsmatrix verändert wird. Sie ist der interessanteste Teil eines KNN, weil sie erlaubt, dass ein Netz eine gegebene Aufgabe selbständig aus Beispielen lernt zu lösen. Es gibt auch Lernverfahren, die nicht nur die Werte, sondern auch die Dimension der Gewichtsmatrix vergrössern oder verkleinern, indem sie Neuronen hinzufügen oder entfernen. Theoretisch wäre es auch möglich das Lernen durch Modifikation der Aktivierungs-, Propagierungs- oder Ausgabefunktion während der Lernphase zu beeinflussen, es wird aber meist unterlassen. Die verschiedenen Lernregeln lassen sich in drei Gruppen einteilen: 8

9 (a) Mit direkten Rück- (b) Mit indirekten (c) Mit lateralen Rück- (d) Ein vollständig ver- kopplungen Rückkopplungen kopplungen bundenes Netz Abb. 6: Netze mit Rückkopplungen 1. Überwachtes Lernen Der Lernalgorithmus vergleicht das berechnete Ausgabemuster mit dem erwünschten Ausgabemuster und ändert mit dieser Information die Gewichte so ab, dass die Differenz zwischen tatsächlicher und erwünschter Ausgabe möglichst klein wird. D.h. aber, dass dem Lernalgorithmus zu jedem Beispiel, das dem Netz präsentiert wird, das erwünschte Ausgabemuster bekannt sein muss. Die Aufgabe des Lernverfahrens ist es, die Gewichte so zu ändern, dass das Netz nach wiederholter Präsentation der Paare von Eingabe- und Ausgabemuster diese Assoziation selbständig vornehmen kann und dies auch für ähnliche, unbekannte Eingabemuster tun kann. Das Netz soll also aus den Beispielen eine Regel extrahieren, um auch für unbekannte Eingaben eine sinnvolle Ausgabe zu erzeugen. Überwachtes Lernen wird in der Technik oft angewendet, weil es die schnellste Methode darstellt, es ist aber biologisch nicht plausibel. Die Delta-Regel oder der Backpropagation-Lernalgorithmus sind Beispiele für überwachtes Lernen. 2. Bestärkendes Lernen Nachdem aus dem Eingabemuster die Ausgabe des Netzes berechnet wurde, überprüft der Lernalgorithmus, ob das Resultat richtig oder falsch ist. Nur aufgrund dieser Information ändert das Netz die Gewichte. Die Angabe, ob das Resultat richtig oder falsch war, lässt sich mit Bestrafung oder Belohnung bei Lebewesen vergleichen. Es ist ja allgemein bekannt, dass man durch Fehler (schlechte Erfahrungen) am besten lernt. Diese Art des Lernens ist deutlich langsamer als überwachtes Lernen. 3. Unüberwachtes Lernen Hier lernt das Netz durch Selbstorganisation. Es versucht die Eingabemuster in Kategorien einzuteilen, indem es ähnliche Eingabemuster auf räumlich benachbarte Gebiete der Ausgabeschicht abbildet. Ein Beispiel sind die selbstorganisierenden Karten von Kohonen (siehe Kapitel 3.5). Mit unüberwachtem Lernen lassen sich nicht alle Aufgaben lösen, jedoch ist diese Form des Lernens biologisch am plausibelsten. Hebbsche Lernregel Die Mutter aller Lernverfahren wurde schon 1949 von Donald O. Hebb formuliert. Er hat sie bei biologischen Netzen entdeckt. Sie ist die Grundlage für die meisten komplizierteren Lernregeln und besagt: Wenn Zelle j einen Input von Zelle i erhält und beide gleichzeitig aktiviert sind, dann erhöht sich das Gewicht w ij proportional zum Produkt des Outputs o i von Neuron i und der Aktivierung a j des Neurons j. Die mathematische Umsetzung in einen Algorithmus wird weiter unten hergeleitet. 9

10 2.5 Vergleich mit biologischen Netzen 2,6 Wie schon erwähnt sind KNN sehr stark (nach Meinung vieler Neurobiologen zu stark) idealisierte Modelle von komplexen biologischen Netzen. Das Wesentliche ist jedoch in beiden Systemen gleich. Folgende Ähnlichkeiten konnten bei KNN beibehalten werden: - Neuronen Die Elemente in KNN sind relativ einfach im Vergleich mit dem Gesamtsystem. Die Informationsverarbeitung entspricht der eines biologischen Neurons. - Massive Parallelität Die Datenverarbeitung erfolgt parallel, d.h. die Aufgabe wird auf viele Neuronen aufgeteilt, nicht wie bei serieller Datenverarbeitung, wo die Befehle von einem zentralen Prozessor nacheinander abgearbeitet werden. Auch ist jedes Neuron mit relativ vielen anderen Neuronen verbunden. Bei anderen Datenverarbeitungssystemen ist die Kommunikation zwischen den Hardwarekomponenten viel geringer. - Gerichtete Verbindungen Verbindungen übertragen den Grad der Aktivierung und werden in biologischen Netzen, je nach dem ob sie vor oder nach der Synapse liegen, Axone oder Dendriten genannt. Die Funktion ist aber genau die gleiche. - Gewichte Heute nimmt man an, dass die gesamte Informationsspeicherung in den Synapsen stattfindet. Auch die Lern- und Anpassungsfähigkeit des Gehirns wird nur durch die Variabilität der Synapsenstärken ermöglicht. Synapsen entsprechen grob den Gewichten bei KNN, weil Aktionspotentiale von verschiedenen Synapsen ein Neuron verschieden anregen können. Es gibt auch hemmende Synapsen, welche Gewichten mit negativem Vorzeichen entsprechen. - Hebbsche Lernregel Schon früh erkannte man, dass im Gehirn die Verbindung zwischen zwei Neuronen gestärkt wird, wenn sie gleichzeitig aktiv sind. Diese Lernregel wurde von Hebb auf KNN übertragen. Von der Hebbschen Lernregel sind dann viele weitere Lernalgorithmen abgeleitet worden. - Assoziativspeicher Informationen werden im Gehirn nicht wie beim Computer mit Hilfe von Adressen gespeichert, mit denen man die Daten wieder findet, sondern assoziativ. Auch KNN wurden schon erfolgreich als Assoziativspeicher benutzt. Daneben gibt es aber auch viele Aspekte, die von den meisten Modellen nicht berücksichtigt werden und der Vereinfachung zum Opfer fallen mussten: - Anzahl der Neuronen und Verbindungen Die Zahl der Neuronen in unserem Gehirn wird auf etwa geschätzt, bei Simulationen werden aber nur etwa 10 2 bis 10 4 Neuronen verwendet. Es ist anzunehmen, dass sich viele Fähigkeiten erst mit einer grösseren Anzahl von Neuronen realisieren lassen. Auch die Anzahl der Verbindungen pro Neuron sind in biologischen Systemen viel höher als bei Simulationen. - Amplitudenmodulation statt Frequenzmodulation Bei biologischen Systemen ist ein Signal stärker, wenn die Frequenz der ankommenden Aktionspotentiale grösser ist. Eine solche Modulation ist nötig, weil Nervenfasern Information binär übertragen. Im Gegensatz dazu verwenden KNN eine sog. Amplitudenmodulation und können somit mit einem numerischen Aktivierungswert arbeiten. Synapsen lassen sich dann als Faktoren interpretieren, welche diesen Aktivierungswert ändern. Es ist noch unerforscht, ob Frequenzmodulation entscheidende Vorteile gegenüber der heute verwendeten Informationsübertragung bringt. Einige neuere Modelle, die pulscodierte Verfahren verwenden, erbrachten bisher für technische Anwendungen keine Vorteile, hatten aber einen viel höheren Simulationsaufwand zur Folge. 10

11 - Zeitliche Vorgänge Oft haben in Nervenfasern zeitliche Vorgänge einen beachtlichen Einfluss. In KNN wird Zeit einfach mit der Anzahl Schritten gleichgesetzt und die Verzögerung der Aktivierung vernachlässigt. - Biologisch unplausible Lernregeln Viele Lernalgorithmen, die mit überwachtem Lernen arbeiten, sind aus mathematischen oder physikalischen Überlegungen entstanden und haben mit biologischen Netzen überhaupt nichts zu tun. So z.b. das Gradientenabstiegsverfahren. Trotzdem werden sie für technische Anwendungen erfolgreich benutzt und sind weiter unten beschrieben. - Beeinflussung durch räumlich benachbarte Neuronen In der Realität beeinflussen benachbarte Neuronen einander nicht nur über direkte Verbindungen, sondern auch mit chemischen Substanzen, wie z.b. Hormone oder Neurotransmitter. Es gibt sicher noch viele andere Unterschiede, es ist aber wichtig, dass man versteht, dass Modelle gar nicht gleich sein dürfen, wie ihr Vorbild. Modelle sind dazu da, einen Sachverhalt so darzustellen, dass man ihn versteht. Daneben haben KNN sogar noch einen technischen Nutzen. Es gibt für jeden der oben aufgeführten Kritikpunkte mindestens ein Modell, bei dem der beschriebene Unterschied nicht vorhanden ist, aber mehr Nach- als Vorteile brachte und darum bei den meisten anderen Modellen weggelassen wurde. Durch die Weiterentwicklung solcher Ideen entstehen im Laufe der Zeit aber immer mehr biologienahe KNN, die auch technische Fragestellungen sehr gut lösen können. 2.6 Vergleich mit einem konventionellen Computer 6 Der Prozessor eines herkömmlichen PCs besteht aus sehr vielen Transistoren, die Informationen seriell verarbeiten. Da die Schaltzeit eines Transistors sehr klein ist (ca. 1ns) könnte ein Computer theoretisch mehr Schaltvorgänge in einer Sekunde durchführen als unser Gehirn ( Schaltzeit eines Neurons beträgt ca. 1ms). Trotzdem übertrifft die Leistungsfähigkeit unseres Gehirns jeden Supercomputer. Möglich wird dies durch die massiv parallele Datenverarbeitung der neuronalen Netze. Zu jedem Zeitpunkt arbeitet ein grosser Teil des Gehirns, während bei herkömmlichen Rechnern die meisten Verarbeitungselemente dem Speicher zugeordnet sind und somit keine Optimierung der Leistung bewirken. Sie sind nur bei der Abfrage der Daten, die bei ihnen gespeichert sind, aktiv. Durch die massive Parallelität können neuronale Netze jede Aufgabe, die sie imstande sind zu lösen, in einer übersichtlichen Anzahl Schritte lösen, jedoch kann die Anzahl der benötigten Neuronen bei anspruchsvollen Aufgaben sehr gross werden (Unser Gehirn besteht aus ca. 100 Milliarden Neuronen). Man spricht in diesem Zusammenhang auch von der 100-Schritt-Regel, da unser Gehirn in etwa 100 sequentiellen Zeitschritten ( ˆ=0.1s) eine bekannte Person in einem Bild erkennen kann, während ein konventioneller Rechner in 100 sequentiellen Verarbeitungsschritten fast nichts tun kann. Die Parallelität hat auch noch weitere Vorteile. So kann ein neuronales Netz nach Ausfall einiger Elemente immer noch funktionsfähig sein. Software im Sinne von speziellen, problembezogenen Programmen, wie sie in konventionellen Computern vorhanden sind, sucht man in neuronalen Netzen vergeblich. Probleme werden durch gezielte Konfiguration der Netzparameter gelöst. 11

12 3 Modelle Im Laufe der letzen fünfzehn Jahre sind unzählige Modelle entstanden, die meistens für einen bestimmten Aufgabentyp entwickelt wurden oder einen bestimmten biologischen Aspekt aufzeigen wollten. Darum kann man eigentlich nicht sagen, dass ein Modell besser oder leistungsfähiger ist als das andere, man kann höchstens sagen, dass es für eine bestimmte Aufgabe besser geeignet ist. Von all den Modellen, die existieren, wurde hier eine Auswahl unter den interessantesten und bekanntesten KNN gemacht. 3.1 Perzeptron 7,8 Das Perzeptron wurde schon in den 60er Jahren entwickelt und ist eigentlich der Vorfahre der anderen Modelle. Anhand von ihm wurden das erste Mal die oben beschriebenen theoretischen Voraussetzungen für KNN definiert Aufbau eines Perzeptrons Abb. 7: Ein einstufiges Perzeptron Das Perzeptron besteht aus zwei Schichten. In der ersten Schicht hat es n Neuronen, die über trainierbare Verbindungen vollständig mit den nächsten Zellen verbunden sind. Die zweite Schicht ist die Ausgabeschicht und besteht aus nur einem Neuron, das die Nummer n + 1 = j hat. Die Eingabe, Aktivierung und Ausgabe der Neuronen dürfen nur binäre Werte annehmen, jedoch sind die Gewichte und Schwellenwerte reelle Zahlen. Daraus folgt, dass die Aktivierungsfunktion die Schwellenwertfunktion sein muss. Der Output des Neurons j ist also 1, wenn der Input net j grösser ist als der Schwellenwert θ j des Neurons j, andernfalls 0. Mathematisch ausgedrückt: 1 falls net j θ j o j = a j =, mit net j = 0 falls net j < θ j n o i w ij Interessant ist es nun zu untersuchen, welche binären Funktionen sich mit einem solch einfachen Netz lösen lassen. Die Topologie des Perzeptrons setzt voraus, dass nur binäre Funktionen, die jedem möglichen n-dimensionalen Eingabevektor entweder die Zahl 0 oder 1 zuordnen, in Frage kommen. Im nächsten Abschnitt wird die Frage geklärt, ob jede beliebige binäre Funktion von einem Perzeptron dargestellt werden kann Lineare Trennbarkeit Die lineare Trennbarkeit lässt sich am besten anhand eines Beispiels auf- zeigen. Ein Perzeptron mit zwei Eingabeneuronen soll die logische AND- Funktion ausführen, d.h. nur eine 1 ausgeben, wenn beide Eingaben 1 sind, sonst soll es eine 0 ausgeben. Mathematisch: o j = 1, falls net j = o 1 w 1j + o 2 w 2j θ j. Für w 2j > 0 ist dies äquivalent zu der Ungleichung i=1 o 2 1 w 2j (θ j o 1 w 1j ). Abb. 8: Lineare Trennbarkeit Da w 1j, w 2j und θ j konstant sind, beschreibt diese Ungleichung eine Halbebene in der durch o 1 und o 2 gebildeten Ebene (siehe Abb. 8). Bei positivem w 2j stellen alle Gitterpunkte innerhalb dieser Halbebene Kombinationen von o 1 und o 2 dar, für welche die Ausgabe 1 ist, ausserhalb ist die Ausgabe 0. Wenn man w 1j, w 2j und θ j z.b. so wählt, 12

13 dass die Trenngerade durch die Punkte (1/0.5) und (0.5/1) geht, entspricht das Perzeptron einem AND-Operator. Für w 1j = 1, w 2j = 1 und θ j = 1.5 ist das der Fall. Das AND-Problem könnte man auch verallgemeinern, indem man n anstatt 2 Eingabeneuronen verwenden würde. Allerdings wäre dann die vorher trennende Gerade eine (n 1)- dimensionaler Ebene im n-dimensionalen Raum, was man sich zwar nur schwer vorstellen kann, mathematisch aber nicht wesentlich schwieriger zu rechnen ist. Mit einem einstufigen Perzeptron lassen sich also nur linear trennbare Funktionen lösen. Es gibt aber unter allen binären Funktionen viel mehr nicht linear trennbare. Ein einfaches Beispiel ist das XOR-Problem. Die Ausgabe des Perzeptrons soll 1 sein, wenn die beiden Eingaben verschieden sind und 0, wenn sie gleich sind. Hier gibt es keine Gerade, die auf der einen Seite alle Kombinationen, für welche die Ausgabe 1 sein soll und auf der anderen Seite alle Kombinationen, für welche die Ausgabe 0 sein soll, hat Randerkennung bei Schwarz-Weiss-Figuren Eine etwas sinnvollere Anwendung eines einstufigen Perzeptrons ist die Randerkennung von ebenen Schwarz-Weiss-Figuren. Dazu wird ein Perzeptron mit neun Eingabeneuronen verwendet, die zu einem 3 3-Quadrat angeordnet sind. Die zu untersuchende Figur wird in Pixel zerlegt. Einem schwarzen Bildpunkt wird die Zahl 1, einem weissen die Zahl 0 zugeordnet. Nun wird das gesamte Bild Punkt für Punkt durchgegangen, der Punkt in der Mitte des Quadrates liegt jeweils am Rand einer Figur, wenn er selber schwarz ist, aber mindestens eines seiner Nachbarn weiss ist. Es lässt sich leicht nachprüfen, dass die dargestellte Gewichtung diese Aufgabe Abb. 9: Randerkennung mit einem Perzeptron in jedem Fall löst. Das Ausgabeneuron ist aktiv, wenn der zu untersuchende Punkt (derjenige in der Mitte) am Rand liegt und ist nicht aktiv, wenn er inner- oder ausserhalb einer Figur liegt. Für das Beispiel in Abb. 9 ergibt sich: net 10 (t) = O(t) W 10 [ ] = o 10 (t) [ ] = o 10 (t) 0 = 4 θ 10 = 0.5 o 10 (t + 1) = 1 Die Netzausgabe ist also 1 und der Punkt liegt auf dem Rand. Wie man auf die richtige Gewichtung bei einer beliebigen Aufgabe kommt, ist Thema des nächsten Unterkapitels Lernverfahren Für einstufige Perzeptrons existiert ein relativ einfacher Lernalgorithmus, der dem Netz in endlich vielen Schritten jede linear trennbare Funktion beibringen kann. Das Lernverfahren gehört zum Typ des überwachten Lernens, d.h. das erste Eingabemuster wird an das Netz angelegt und das Resultat mit dem erwarteten Output verglichen. Sind sie gleich wird nichts gemacht und der Lernalgorithmus fährt mit dem zweiten Eingabemuster fort. Ist der erwartete Output 1, der tatsächliche aber 0, werden alle Gewichte der Verbindungen von den Eingabeneuronen, die eine 1 als Ausgabe haben, zum Ausgabeneuron um den Wert der Lernrate η erhöht. Ist der tatsächliche Output grösser als der erwartete, müssen die Gewichte aller Verbindungen von Eingabeneuronen, die eine 1 senden, zum Ausgabeneuronen um η verkleinert werden. Die Lernrate hat ungefähr einen Wert zwischen 0.2 und 1. Im allgemeinen gilt, dass das Netz um so schneller lernt, desto höher die Lernrate ist. Bei zu hohen Lernraten wird aber manchmal über das Ziel 13

14 hinausgeschossen. In einer Pseudo-Programmiersprache könnte der Algorithmus etwa so aussehen. t j ist dabei der erwartete Output: while Menge der Eingabemuster nicht leer do lege neues Eingabemuster p an und berechne den Output o j if o j = t j then mache nichts else if o j = 0 then { Ausgabe ist 0, sollte 1 sein, also w ij erhöhen} for each i n do w ij := w ij + η o i endfor endif if o j = 1 then { Ausgabe ist 1, solle 0 sein, also w ij verringern} for each i n do w ij := w ij η o i endfor endif endif endwhile Lernverfahren bei Randerkennung Zur Veranschaulichung des Lernalgorithmus wird hier einem einstufigen Perzeptron mit drei Eingabeneuronen die logische AND-Funktion beigebracht. Für die Gewichte und den Schwellenwert des Ausgabeneurons werden am Anfang zufällige Werte eingesetzt. Als Schwellenwert hat sich 1.5 ergeben, diese Zahl wird in der Lernphase nicht mehr geändert. Die Lernrate ist mit 0.7 relativ hoch. Wie in Abb. 10 ersichtlich, hat das Netz die Funktion nach vier Schritten gelernt. Dem Netz wurden dazu verschiedene Eingabemuster und die dazugehörige Ausgabe t 4 präsentiert. Beim ersten Muster, ist das Ausgabeneuron aktiv, sollte es aber nicht sein. Darum werden die Gewichte w 24 und w 34 um die Lernrate erniedrigt, das Gewicht w 14 bleibt gleich, weil das Neuron 1 nicht aktiviert ist. Dies geht so weiter bis nach dem vierten Schritt die Gewichte richtig eingestellt sind und somit keine weiteren Gewichtsänderungen mehr gemacht werden, weil dann o 4 und t 4 bei jedem beliebigen Eingabemuster übereinstimmen. Man merkt, wenn man den Algorithmus an einem konkreten Beispiel durchrechnet, dass er der Hebbschen Lernregel sehr ähnlich ist. Es mussten nur einige Abb. 10: Ein Perzeptron lernt die Anpassungen gemacht werden, da es sich um überwachtes Lernen handelt. Im AND-Funktion Vergleich mit der Hebbschen Lernregel erkennt man bei diesem Lernalgorithmus folgende Unterschiede: 1. Es erfolgt nur eine Gewichtsänderung, wenn das Netz einen Fehler gemacht hat. Dies ist auch sinnvoll ist aber nur möglich, weil es sich um überwachtes Lernen handelt. 2. Ist das Ausgabeneuron nicht aktiv, sollte aber aktiv sein, werden die Gewichte zwischen den aktiven Eingabeneuronen und dem nicht aktiven Ausgabeneuron geändert. Das wäre bei strikter Anwendung der Hebbschen Lernregel nicht möglich. 3. Der Wert der Gewichte kann auch kleiner werden, bei der Hebbschen Lernregel gibt es keinen Fall bei dem eine Verbindung an Stärke abnimmt. 14

15 3.1.6 Zweistufige Perzeptrons Bei zweistufigen Perzeptrons kann die erste Stufe dazu verwendet werden mehrere solcher Halbräume, wie beim einstufigen Perzeptron zu erzeugen. Die zweite Stufe verknüpft dann diese verschiedenen Halbräume mit Hilfe linear trennbarer Funktionen miteinander (z.b. AND). So kann ein beliebiger konvexer Körper gebaut werden (in der Ebene ein konvexes Polygon). Jedoch ist es nicht möglich beliebige Gebiete einzugrenzen. Das XOR-Problem kann mit einem zweistufigen Perzeptron gelöst werden. Dazu bestimmt man mit der ersten Stufe zwei Geraden. Die erste Gerade geht durch die Punkte (1/0.5) und (0.5/1) und bestimmt, dass bei allen Gitterpunkten unterhalb eine 1 ausgegeben wird. Die zweite Gerade geht durch die Punkte Abb. 11: Lösung des XOR- (0.5/0) und (0/0.5) und bestimmt, dass das Perzeptron bei allen Gitterpunkten Problems oberhalb eine 1 ausgibt. In der zweiten Stufe werden diese beiden Halbebenen mit der AND-Funktion verknüpft, so dass ein Gürtel entsteht, der die Punkte (1/0) und (0/1) einschliesst und die Punkte (0/0) und (1/1) ausschliesst, was der XOR-Funktion entspricht Dreistufige Perzeptrons Beim dreistufigen Perzeptron können die ersten beiden Stufen beliebig viele konvexe Körper oder auch Halbräume definieren, die in der dritten Stufe dann mit einer linear trennbaren Funktion verknüpft werden. So ist es möglich jede beliebige Form zu konstruieren. Der Bereich muss weder konvex noch zusammenhängend sein. Höherstufige Perzeptrons bringen gegenüber dem dreistufigen keine Vorteile mehr. Bemerkung: Das Perzeptron ist nur ein theoretisches Konstrukt, das simuliert wurde, um mehr über neuronale Netze zu erfahren. Der Bau eines Perzeptrons würde keinen Sinn machen, da jede binäre Funktion viel billiger mit integrierten Schaltkreisen gelöst werden kann. 3.2 Backpropagation und seine Modifikationen 9,10,11 Backpropagation ist ein Lernverfahren, das nur auf ebenenweise vollständig verbundene feedforward-netzwerke angewendet werden kann. Im Unterschied zum Perzeptron können Aktivierungszustände, Input und Output beliebige reelle Werte annehmen. Darum wird als Aktivierungsfunktion meist eine sigmoide Funktion gewählt Prinzip des Lernverfahrens Backpropagation Das einfachste feedforward-netz, das man sich vorstellen kann, besteht aus zwei Neuronen: Ein Eingabeneuron (Nummer 1) und ein Ausgabeneuron (Nummer 2). Will man nun mit diesem Netz eine einfache Aufgabe lösen, z.b. eine Subtraktion um 0.5 der Zahlen von 0.5 bis 1.5, muss man das Gewicht w 12 so wählen, dass der Fehler möglichst klein wird. Dass der Fehler nicht Null sein kann, ist offensichtlich, da im Netz neben den beiden Aktivierungsfunktionen nur eine Multiplikation ausgeführt wird. Rechnet man für jedes Gewicht den Fehler aus, entsteht eine Kurve, die bei einem bestimmten Wert ein Minimum hat. Die Aufgabe eines Lernalgorithmus ist es dieses globale Minimum zu finden. Der Gesamtfehler E eines Netzes bezüglich einer Aufgabe ist die Summe der Fehler, die das Netz bei jedem einzelnen Muster p macht. Also E = p E p Bei m Ausgabeneuronen ist der Fehler bei der Präsentation von einem Muster p definiert als E p = 1 2 m (t i o i ) 2 i=1 15

16 also als Summe der quadratischen Abstände zwischen erwartetem Output t i und tatsächlichem Output o i aller Ausgabeneuronen bei der Präsentation des Musters p. Der Faktor 1 2 wurde hinzugefügt, damit er bei weiteren Berechnungen eine Zwei wegkürzt. Auch die Quadrierung des Fehlers wäre eigentlich nicht unbedingt nötig, jedoch wird so der Term auf jeden Fall positiv und es muss keine Unterscheidung gemacht werden, ob t i grösser oder kleiner als o i ist (z.b. mit der Betragsfunktion). Es soll nun die Funktionsgleichung der Fehlerkurve des oben erwähnten einfachsten Netzes hergeleitet werden. Die Zahl der Ausgabeneuronen ist m = 1. Zum Trainieren werden folgende sechs Muster verwendet: 1. {0.5,0} 2.{0.7,0.2} 3.{0.9,0.4} 4.{1.1,0.6} 5.{1.3, 0.8} 6.{1.5, 1} Die erste Zahl in den geschweiften Klammern ist jeweils die Eingabe net 1p, wobei p für die Zahl des Musters steht. Die zweite Zahl ist die erwartete Ausgabe t 2p des Netzes. Mit der linearen Aktivierungsfunktion f act (x) = a x ergibt sich somit für den globalen Fehler E = 6 E p = p=1 = = p=1 6 p=1 1 2 (t 2p o 2p ) ((net 1p 0.5) ((net 1p a) w 12 ) a) 2 6 (net 1p (1 w 12 a 2 ) 0.5) 2 p=1 Bei der sigmoiden Aktivierungsfunktion f act (x) = 1 errechnet man für den Fehler 1 + e x Abb. 12: Ein einfaches Netz E = 6 E p = p=1 = p=1 1 2 ((net 1 1p 0.5) 1 + e net )2 2p 6 (net 1p 0.5 p= e 1 1+e net 1p w 12 Setzt man für net 11 bis net 16 die oben angegebenen Werte und für a beispielsweise 0.8 ein erhält man die beiden Funktionsgleichungen: für die lineare Aktivierungsfunktion und E = 8576w w ) 2 = 1.372w w E = (2.265 w ) (2.194w12 1.5) (2.194 w 0.4 (2.118w ) ) 2 (2.118 w ) (2.036w ) (2.036 w12 + 1) (1.951w ) (1.951 w12 + 1) w (1.864 w12 + 1) für die sigmoide Aktivierungsfunktion. Man sieht hier nebenbei auch, warum man in der Entstehungsphase von Lernverfahren oft nur lineare Aktivierungsfunktionen verwendet hat. Der rechnerische Aufwand ist viel geringer, weil sich die Terme viel stärker vereinfachen lassen. Die beiden Graphen können in Abb. 13 verglichen werden. Das Minimum des Fehlers ermittelt man mit Hilfe der Ableitung. Dort wo sie Null ist, d.h. die Tangente des Graphen eine horizontale Gerade ist, befinden sich die möglichen Minima. Durch Betrachten des Graphen kann man diese Werte schnell den verschiedenen stationären Stellen zuordnen und findet beim Netz mit linearer Aktivierungsfunktion das globale Minimum bei w 12 = Der Fehler ist dort mit auch tatsächlich sehr klein. Beim Netz mit logistischer Aktivierungsfunktion erweist sich das Gewicht w 12 = als optimal. Der Fehler ist aber mit grösser als beim ersten Netz. 16

17 E W12 E W (a) Fehlerkurve bei linearer Aktivierungsfunktion (b) Fehlerkurve bei logistischer Aktivierungsfunktion (c) Mögliche Fehlerfläche im R 3 Abb. 13: Beispiele von Fehlerfunktionen Bei Netzwerken mit zwei Verbindungen und Gewichten wird aus der Fehlerkurve eine Fehlerfläche, bei drei Gewichten handelt es sich schon um einen dreidimensionalen Fehlerkörper im vierdimensionalen Raum, was sich nicht mehr graphische darstellen, geschweige denn vorstellen lässt. Verallgemeinert kann man sagen, dass ein feedforward- Netzwerk mit n Verbindungen zu jeder Aufgabe einen n-dimensionalen Fehlerkörper hat, von dem das globale Minimum in der (n + 1)-ten Dimension gesucht wird. Wäre die ganze Fehlerfläche bekannt, wäre die Bestimmung des Minimums kein Problem, jedoch ist die Berechnung der ganzen Fehlerfläche viel zu aufwendig und, wie man gleich sehen wird, auch überflüssig. Am Anfang der Lernphase werden alle Gewichte zufällig gesetzt und der Fehler wird berechnet. Das Kernproblem des Lernalgorithmus besteht nun darin, aus dem einen Punkt der Fehlerfläche herauszufinden, wie die Gewichte verändert werden müssen, damit der Fehler abnimmt. Backpropagation verwendet dazu die Steigung (=Gradient) der Fehlerfunktion E(W ) und ändert die Gewichte um einen Bruchteil der negativen Steigung. W = η E (W ) Für das einzelne Gewicht heisst das w ij = η δ E(W ). δw ij Dies ist der Fall, wenn zuerst alle Muster p präsentiert werden und erst dann eine Gewichtsänderung erfolgt. Meistens werden die Gewichte aber nach jedem Muster angepasst. Dann gilt: w ij = p η δe p δw ij Herleitung der Backpropagation-Regel Um die Backpropagation-Regel herleiten zu können, muss zuerst die Delta-Regel in einstufigen Netzen mit linearer Aktivierungsfunktion betrachtet werden: Die Delta-Regel leitet sich von der schon erwähnten Hebbschen Lernregel ab, die besagt, dass die Gewichtsänderung zwischen Neuron i und j proportional zum Produkt des Outputs von i und der Aktivierung von j ist. Die Stärke der Änderung kann durch die Lernrate η variiert werden. Also w ij = ηo i a j 17

18 Da die Delta-Regel ein Lernverfahren für überwachtes Lernen ist, muss der erwartete Output des Ausgabeneurons j in die Lernregel integriert werden. Dies wird erreicht, indem man die Aktivierung a j durch die Differenz zwischen erwartetem und tatsächlichem Output von j ersetzt. Diese Differenz wird mit δ j bezeichnet: w ij = ηo i (t j o j ) = ηo i δ j Weil diese Regel nur auf Netze mit einer Schicht trainierbarer Gewichte und Neuronen mit linearer Aktivierungsfunktion angewendet werden darf, entwickelte man mit Backpropagation eine Verallgemeinerung, die bei beliebigen ebenenweise verbundenen feedforward-netzwerken verwendet werden kann. Eigentlich sieht die Backpropagation- Regel genau gleich aus wie die Delta-Regel, jedoch ist das Fehlersignal δ j anders definiert: δ j = δe p δnet j δ j ist also nicht mehr als Differenz zwischen erwartetem und tatsächlichem Output definiert, sondern viel allgemeiner als Änderung des Fehlers bei Muster p bei Änderung des Inputs des Neurons j. Wegen o j = f act (net j ) erhält man: δ j = δe p δnet j = δe p δo j δo j δnet j = δe p δo j δ δnet j f act (net j ) = δe p δo j f act(net j ). Der erste Faktor ist für verdeckte Neuronen und Ausgabeneuronen verschieden. Ohne Herleitung ist δe p = δo j (t j o j ), wenn j Ausgabezelle k δ kw jk, wenn j verdeckte Zelle Wobei k alle Zellen der nachfolgenden Schicht von j darstellen soll. Verwendet man die logistische Aktivierungsfunktion, lässt sich δ j noch weiter vereinfachen, denn für die logistische Funktion gilt f act(net j ) = f act (net j ) (1 f act (net j )) = o j (1 o j ) Zusammengefasst ergibt sich damit folgende Backpropagation-Regel: w ij = ηo i δ j mit o j (1 o j )(t j o j ) δ j = o j (1 o j ) k δ kw j, falls j eine Ausgabezelle ist,, falls j eine verdeckte Zelle ist. Nun sieht man auch wie Backpropagation zu seinem Namen kommt. Die Gewichtsänderung muss nämlich von der Ausgabeschicht her gegen die Eingabeschicht hin erfolgen, da δ k bei der Gewichtsänderung verdeckter Zellen bekannt sein muss. Man sagt auch das Fehlersignal werde von der Ausgabeschicht bis zur Eingabeschicht zurückpropagiert (engl. propagation = Verbreitung). Bei der Beschreibung des Prinzips von Backpropagation wurde erklärt, dass die Gewichtsänderung stark mit der Steigung der Fehlerfläche zusammenhänge. Dies ist nicht direkt aus der Regel ersichtlich, darum wird noch bewiesen, dass die Gewichtsänderung proportional zur Steigung er Fehlerfläche ist: δe p δw ij = δe p δnet j δnet j δw ij Probleme von Backpropagation = δe p δnet j δ δw ij i o i w ij = δ j o i = w ij η Weil Backpropagation ein lokales Gradientenabstiegsverfahren ist und somit nur aus Kenntnis der lokalen Umgebung der Fehlerfläche ein Minimum suchen muss, entstehen einige Probleme, für die man z.t. aber auch schon 18

19 (a) Lokale Minima (b) Flache Plateaus und Oszillation in steilen Schluchten Abb. 14: Probleme beim Backpropagation-Lernverfahren Lösungsansätze gefunden hat. Symmetry Breaking ist ein Problem bei der Initialisierung der Startgewichte, d.h. bei der Wahl der Gewichte vor der Lernphase. Die Gewichte dürfen am Anfang nicht alle gleich gross gewählt werden, da sonst in der Schicht vor der Ausgabeschicht keine unterschiedlichen Gewichte mehr entstehen können und so das Netz in der Lernfähigkeit eingeschränkt wird. Das Problem kann vermieden werden, indem man am Anfang zufällige Werte für Gewichte verwendet. Zusätzlich sollten die Anfangswerte nicht zu gross gewählt werden, da die sigmoide Aktivierungsfunktion nahe bei Null die grösste Steigung hat und sich das Netz somit dort am schnellsten einer Aufgabe anpassen kann. Lokale Minima der Fehlerfläche stellen für das Backpropagation-Lernverfahren unüberwindbare Hürden dar, denn die Ableitung bei lokalen Minima ist, wie auch beim globalen Minimum Null und die Gewichte ändern sich nicht mehr. Eine allgemeingültige Lösung für diese Problem gibt es nicht, jedoch hat sich in der Praxis gezeigt, dass, wenn man die Schrittweite η (=Lernfaktor) genügend klein wählt und von verschiedenen Punkten der Fehlerfläche aus startet, meistens das globale Minimum gefunden wird. Flache Plateaus sind ein weiteres Problem von Gradientenverfahren. Backpropagation braucht sehr lange, bis es Strecken mit kleiner Steigung auf der Fehlerfläche überwunden hat, da die Gewichtsänderung von der Ableitung der Fehlerfunktion abhängt. Im Extremfall (bei Terrassenpunkten) kann die Ableitung Null betragen und Backpropagation stagniert. Ein flaches Plateau lässt sich in diesem Fall nicht von lokalen oder globalen Minima unterscheiden. Momentum-Term, eine Modifikation von Backpropagation, bietet eine zufriedenstellende Lösung für dieses Problem; es wird weiter unten beschrieben. Oszillation in steilen Schluchten kann auftreten, wenn durch eine zu hohe Lernrate und die grosse Ableitung in steilen Schluchten die Gewichte auf einer Seite so stark geändert werden, dass ein Sprung auf die andere Seite der Schlucht erfolgt. Wenn es dort gleich steil ist, erfolgt ein genau gleich weiter Sprung zurück. Backpropagation hat sich also in eine Endlosschleife verfangen. Momentum-Term hilft auch bei diesem Problem Modifikationen als Lösung bestimmter Probleme Momentum-Term führt in die Lernregel von Backpropagation einen weiteren Term ein, der die Gewichtsänderung zum vorangehenden Zeitpunkt berücksichtigt. w ij (t + 1) = ηo i δ j + α w ij (t) 19

Proseminar Machine Learning. Neuronale Netze: mehrschichtige Perzeptrone. Christina Schmiedl Betreuer: Christian Spieth, Andreas Dräger

Proseminar Machine Learning. Neuronale Netze: mehrschichtige Perzeptrone. Christina Schmiedl Betreuer: Christian Spieth, Andreas Dräger Proseminar Machine Learning Neuronale Netze: mehrschichtige Perzeptrone Christina Schmiedl Betreuer: Christian Spieth, Andreas Dräger 27.Mai 2006 Inhaltsverzeichnis 1 Biologische Motivation 2 2 Neuronale

Mehr

11. Neuronale Netze 1

11. Neuronale Netze 1 11. Neuronale Netze 1 Einführung (1) Ein künstliches neuronales Netz ist vom Konzept her eine Realisierung von miteinander verschalteten Grundbausteinen, sogenannter Neuronen, welche in rudimentärer Form

Mehr

Hannah Wester Juan Jose Gonzalez

Hannah Wester Juan Jose Gonzalez Neuronale Netze Supervised Learning Proseminar Kognitive Robotik (SS12) Hannah Wester Juan Jose Gonzalez Kurze Einführung Warum braucht man Neuronale Netze und insbesondere Supervised Learning? Das Perzeptron

Mehr

Der Backpropagation-Algorithmus als Beispiel für Lernalgorithmen künstlicher neuronaler Netze Reinhard Eck 1

Der Backpropagation-Algorithmus als Beispiel für Lernalgorithmen künstlicher neuronaler Netze Reinhard Eck 1 Der Backpropagation-Algorithmus als Beispiel für Lernalgorithmen künstlicher neuronaler Netze 2.04.2006 Reinhard Eck Was reizt Informatiker an neuronalen Netzen? Wie funktionieren Gehirne höherer Lebewesen?

Mehr

Künstliche neuronale Netze

Künstliche neuronale Netze Künstliche neuronale Netze Eigenschaften neuronaler Netze: hohe Arbeitsgeschwindigkeit durch Parallelität, Funktionsfähigkeit auch nach Ausfall von Teilen des Netzes, Lernfähigkeit, Möglichkeit zur Generalisierung

Mehr

Grundlagen neuronaler Netzwerke

Grundlagen neuronaler Netzwerke AUFBAU DES NEURONALEN NETZWERKS Enrico Biermann enrico@cs.tu-berlin.de) WS 00/03 Timo Glaser timog@cs.tu-berlin.de) 0.. 003 Marco Kunze makunze@cs.tu-berlin.de) Sebastian Nowozin nowozin@cs.tu-berlin.de)

Mehr

Künstliche Neuronale Netze

Künstliche Neuronale Netze Künstliche Neuronale Netze als Möglichkeit, einer Maschine das Lesen beizubringen Anja Bachmann 18.12.2008 Gliederung 1. Motivation 2. Grundlagen 2.1 Biologischer Hintergrund 2.2 Künstliche neuronale Netze

Mehr

Datenorientierte SA. Aufbau und Grundlagen. Aufbau und Grundlagen. Aufbau und Grundlagen. Was sind neuronale Netze?

Datenorientierte SA. Aufbau und Grundlagen. Aufbau und Grundlagen. Aufbau und Grundlagen. Was sind neuronale Netze? Datenorientierte SA Was sind neuronale Netze? Neuronale Netze: Grundlagen und Anwendungen Neuronale Netze bilden die Struktur eines Gehirns oder eines Nervensystems ab Andreas Rauscher 0651993 Damir Dudakovic

Mehr

BACKPROPAGATION & FEED-FORWARD DAS MULTILAYER PERZEPTRON

BACKPROPAGATION & FEED-FORWARD DAS MULTILAYER PERZEPTRON BACKPROPAGATION & FEED-FORWARD DAS MULTILAYER PERZEPTRON EINFÜHRUNG IN KÜNSTLICHE NEURONALE NETZE Modul Leitung Technischer Datenschutz und Mediensicherheit Nils Tekampe Vortrag Jasmin Sunitsch Abgabe

Mehr

Praktikum Simulationstechnik Rene Schneider, Benjamin Zaiser

Praktikum Simulationstechnik Rene Schneider, Benjamin Zaiser Praktikum Simulationstechnik Rene Schneider, Benjamin Zaiser 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 2 Befehlsübersicht Begriffsdefinition / Neuronale Netze: / / 11.11.2008 CSM

Mehr

Perzeptronen. Katrin Dust, Felix Oppermann Universität Oldenburg, FK II - Department für Informatik Vortrag im Rahmen des Proseminars 2004

Perzeptronen. Katrin Dust, Felix Oppermann Universität Oldenburg, FK II - Department für Informatik Vortrag im Rahmen des Proseminars 2004 Perzeptronen Katrin Dust, Felix Oppermann Universität Oldenburg, FK II - Department für Informatik Vortrag im Rahmen des Proseminars 2004 1/25 Gliederung Vorbilder Neuron McCulloch-Pitts-Netze Perzeptron

Mehr

Konzepte der AI Neuronale Netze

Konzepte der AI Neuronale Netze Konzepte der AI Neuronale Netze Franz Wotawa Institut für Informationssysteme, Database and Artificial Intelligence Group, Technische Universität Wien Email: wotawa@dbai.tuwien.ac.at Was sind Neuronale

Mehr

Aufbau und Beschreibung Neuronaler Netzwerke

Aufbau und Beschreibung Neuronaler Netzwerke Aufbau und Beschreibung r 1 Inhalt Biologisches Vorbild Mathematisches Modell Grundmodelle 2 Biologisches Vorbild Das Neuron Grundkomponenten: Zellkörper (Soma) Zellkern (Nukleus) Dendriten Nervenfaser

Mehr

Computational Intelligence 1 / 20. Computational Intelligence Künstliche Neuronale Netze Perzeptron 3 / 20

Computational Intelligence 1 / 20. Computational Intelligence Künstliche Neuronale Netze Perzeptron 3 / 20 Gliederung / Künstliche Neuronale Netze Perzeptron Einschränkungen Netze von Perzeptonen Perzeptron-Lernen Perzeptron Künstliche Neuronale Netze Perzeptron 3 / Der Psychologe und Informatiker Frank Rosenblatt

Mehr

Praktische Optimierung

Praktische Optimierung Wintersemester 27/8 Praktische Optimierung (Vorlesung) Prof. Dr. Günter Rudolph Fakultät für Informatik Lehrstuhl für Algorithm Engineering Metamodellierung Inhalt Multilayer-Perceptron (MLP) Radiale Basisfunktionsnetze

Mehr

Neuronale Netze in der Phonetik: Feed-Forward Netze. Pfitzinger, Reichel IPSK, LMU München {hpt 14.

Neuronale Netze in der Phonetik: Feed-Forward Netze. Pfitzinger, Reichel IPSK, LMU München {hpt 14. Neuronale Netze in der Phonetik: Feed-Forward Netze Pfitzinger, Reichel IPSK, LMU München {hpt reichelu}@phonetik.uni-muenchen.de 14. Juli 2006 Inhalt Typisierung nach Aktivierungsfunktion Lernen in einschichtigen

Mehr

Thema 3: Radiale Basisfunktionen und RBF- Netze

Thema 3: Radiale Basisfunktionen und RBF- Netze Proseminar: Machine Learning 10 Juli 2006 Thema 3: Radiale Basisfunktionen und RBF- Netze Barbara Rakitsch Zusammenfassung: Aufgabe dieses Vortrags war es, die Grundlagen der RBF-Netze darzustellen 1 Einführung

Mehr

Was sind Neuronale Netze?

Was sind Neuronale Netze? Neuronale Netze Universität zu Köln SS 2010 Seminar: Künstliche Intelligenz II Dozent: Stephan Schwiebert Referenten: Aida Moradi, Anne Fleischer Datum: 23. 06. 2010 Was sind Neuronale Netze? ein Netzwerk

Mehr

Adaptive Systeme. Mehrere Neuronen, Assoziative Speicher und Mustererkennung. Prof. Dr. rer. nat. Nikolaus Wulff

Adaptive Systeme. Mehrere Neuronen, Assoziative Speicher und Mustererkennung. Prof. Dr. rer. nat. Nikolaus Wulff Adaptive Systeme Mehrere Neuronen, Assoziative Speicher und Mustererkennung Prof. Dr. rer. nat. Nikolaus Wulff Modell eines Neuron x x 2 x 3. y y= k = n w k x k x n Die n binären Eingangssignale x k {,}

Mehr

Künstliche Neuronale Netze

Künstliche Neuronale Netze Inhalt (Biologische) Neuronale Netze Schwellenwertelemente Allgemein Neuronale Netze Mehrschichtiges Perzeptron Weitere Arten Neuronaler Netze 2 Neuronale Netze Bestehend aus vielen Neuronen(menschliches

Mehr

5. Lernregeln für neuronale Netze

5. Lernregeln für neuronale Netze 5. Lernregeln für neuronale Netze 1. Allgemeine Lokale Lernregeln 2. Lernregeln aus Zielfunktionen: Optimierung durch Gradientenverfahren 3. Beispiel: Überwachtes Lernen im Einschicht-Netz Schwenker NI1

Mehr

Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik. 8. Aufgabenblatt

Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik. 8. Aufgabenblatt Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Künstliche Intelligenz: Grundlagen und Anwendungen Albayrak, Fricke (AOT) Oer, Thiel (KI) Wintersemester 2014 / 2015 8. Aufgabenblatt

Mehr

10. Neuronale Netze 1

10. Neuronale Netze 1 10. Neuronale Netze 1 Einführung (1) Ein künstliches neuronales Netz ist vom Konzept her eine Realisierung von miteinander verschalteten Grundbausteinen, sogenannter Neuronen, welche in rudimentärer Form

Mehr

auch: Konnektionismus; subsymbolische Wissensverarbeitung

auch: Konnektionismus; subsymbolische Wissensverarbeitung 10. Künstliche Neuronale Netze auch: Konnektionismus; subsymbolische Wissensverarbeitung informationsverarbeitende Systeme, bestehen aus meist großer Zahl einfacher Einheiten (Neuronen, Zellen) einfache

Mehr

Konvergenz von Hopfield-Netzen

Konvergenz von Hopfield-Netzen Matthias Jauernig 1. August 2006 Zusammenfassung Die nachfolgende Betrachtung bezieht sich auf das diskrete Hopfield-Netz und hat das Ziel, die Konvergenz des Verfahrens zu zeigen. Leider wird dieser Beweis

Mehr

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik Maschinelles Lernen: Neuronale Netze Ideen der Informatik Kurt Mehlhorn Adrian Neumann 16. Januar 2014 Übersicht Biologische Inspiration Stand der Kunst in Objekterkennung auf Bildern Künstliche Neuronale

Mehr

2.4.4 Die Fraktale Dimension

2.4.4 Die Fraktale Dimension 2.4.4 Die Fraktale Dimension Ausgehend vom euklidischen Dimensionsbegriff (Punkt = 0, Linie = 1, Fläche = 2...) lässt sich einem fraktalen Gebilde eine fraktale Dimension d f zuordnen. Wir verwenden die

Mehr

Adaptive Systeme. Neuronale Netze: Neuronen, Perzeptron und Adaline. Prof. Dr. rer. nat. Nikolaus Wulff

Adaptive Systeme. Neuronale Netze: Neuronen, Perzeptron und Adaline. Prof. Dr. rer. nat. Nikolaus Wulff Adaptive Systeme Neuronale Netze: Neuronen, Perzeptron und Adaline Prof. Dr. rer. nat. Nikolaus Wulff Neuronale Netze Das (menschliche) Gehirn ist ein Musterbeispiel für ein adaptives System, dass sich

Mehr

Neuronale. Netze. Henrik Voigt. Neuronale. Netze in der Biologie Aufbau Funktion. Neuronale. Aufbau Netzarten und Topologien

Neuronale. Netze. Henrik Voigt. Neuronale. Netze in der Biologie Aufbau Funktion. Neuronale. Aufbau Netzarten und Topologien in der Seminar Literaturarbeit und Präsentation 17.01.2019 in der Was können leisten und was nicht? Entschlüsseln von Texten??? Bilderkennung??? in der in der Quelle: justetf.com Quelle: zeit.de Spracherkennung???

Mehr

Mustererkennung: Neuronale Netze. D. Schlesinger ()Mustererkennung: Neuronale Netze 1 / 12

Mustererkennung: Neuronale Netze. D. Schlesinger ()Mustererkennung: Neuronale Netze 1 / 12 Mustererkennung: Neuronale Netze D. Schlesinger ()Mustererkennung: Neuronale Netze 1 / 12 Feed-Forward Netze y 1 y 2 y m...... x 1 x 2 x n Output Schicht i max... Zwischenschicht i... Zwischenschicht 1

Mehr

Einige überwachte Lernverfahren. Perzeptron, Mehrschicht-Perzeptronen und die Backpropagation-Lernregel

Einige überwachte Lernverfahren. Perzeptron, Mehrschicht-Perzeptronen und die Backpropagation-Lernregel Einige überwachte Lernverfahren Perzeptron, Mehrschicht-Perzeptronen und die Backpropagation-Lernregel Funktionsweise eines künstlichen Neurons x w k Neuron k x 2 w 2k net k f y k x n- w n-,k x n w n,k

Mehr

Proseminar Neuronale Netze Frühjahr 2004

Proseminar Neuronale Netze Frühjahr 2004 Proseminar Neuronale Netze Frühjahr 2004 Titel: Perzeptron Autor: Julia Grebneva, jg7@informatik.uni-ulm.de Einleitung In vielen Gebieten der Wirtschaft und Forschung, stellen sich oftmals Probleme, die

Mehr

Neuronale Netze. Anna Wallner. 15. Mai 2007

Neuronale Netze. Anna Wallner. 15. Mai 2007 5. Mai 2007 Inhalt : Motivation Grundlagen Beispiel: XOR Netze mit einer verdeckten Schicht Anpassung des Netzes mit Backpropagation Probleme Beispiel: Klassifikation handgeschriebener Ziffern Rekurrente

Mehr

MULTILAYER-PERZEPTRON

MULTILAYER-PERZEPTRON Einleitung MULTILAYER-PERZEPTRON Die Ausarbeitung befasst sich mit den Grundlagen von Multilayer-Perzeptronen, gibt ein Beispiel für deren Anwendung und zeigt eine Möglichkeit auf, sie zu trainieren. Dabei

Mehr

Neuronale Netze (Konnektionismus) Einführung in die KI. Beispiel-Aufgabe: Schrifterkennung. Biologisches Vorbild. Neuronale Netze.

Neuronale Netze (Konnektionismus) Einführung in die KI. Beispiel-Aufgabe: Schrifterkennung. Biologisches Vorbild. Neuronale Netze. Einführung in die KI Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung (Konnektionismus) sind biologisch motiviert können diskrete, reell-wertige und Vektor-wertige Funktionen berechnen Informationsspeicherung

Mehr

Einführung in neuronale Netze

Einführung in neuronale Netze Einführung in neuronale Netze Florian Wenzel Neurorobotik Institut für Informatik Humboldt-Universität zu Berlin 1. Mai 2012 1 / 20 Überblick 1 Motivation 2 Das Neuron 3 Aufbau des Netzes 4 Neuronale Netze

Mehr

Neuronale Netze. Gehirn: ca Neuronen. stark vernetzt. Schaltzeit ca. 1 ms (relativ langsam, vgl. Prozessor)

Neuronale Netze. Gehirn: ca Neuronen. stark vernetzt. Schaltzeit ca. 1 ms (relativ langsam, vgl. Prozessor) 29 Neuronale Netze Gehirn: ca. 10 11 Neuronen stark vernetzt Schaltzeit ca. 1 ms (relativ langsam, vgl. Prozessor) Mustererkennung in 0.1s 100 Schritte Regel 30 Was ist ein künstl. neuronales Netz? Ein

Mehr

Neuronale Netze (Konnektionismus)

Neuronale Netze (Konnektionismus) Einführung in die KI Prof. Dr. sc. Hans-Dieter Burkhard Daniel Göhring Vorlesung (Konnektionismus) sind biologisch motiviert können diskrete, reell-wertige und Vektor-wertige Funktionen berechnen Informationsspeicherung

Mehr

Was bisher geschah. Lernen: überwachtes Lernen. biologisches Vorbild neuronaler Netze: unüberwachtes Lernen

Was bisher geschah. Lernen: überwachtes Lernen. biologisches Vorbild neuronaler Netze: unüberwachtes Lernen Was bisher geschah Lernen: überwachtes Lernen korrigierendes Lernen bestärkendes Lernen unüberwachtes Lernen biologisches Vorbild neuronaler Netze: Neuron (Zellkörper, Synapsen, Axon) und Funktionsweise

Mehr

Perzeptronen. Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Perzeptronen. Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg Perzeptronen Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg (Lehrstuhl Informatik 8) Perzeptronen 1 / 22 Gliederung 1 Schwellwert-Logik (MCCULLOCH-PITTS-Neuron)

Mehr

Klausur Modellbildung und Simulation (Prof. Bungartz) SS 2007 Seite 1/7

Klausur Modellbildung und Simulation (Prof. Bungartz) SS 2007 Seite 1/7 Klausur Modellbildung und Simulation (Prof. Bungartz) SS 2007 Seite /7 Matrikelnummer: Systeme gewöhnlicher Differentialgleichungen (3 + 3 = 6 Pkt.) Die Abbildung zeigt die Richtungsfelder von drei Differentialgleichungssystemen

Mehr

6.4 Neuronale Netze zur Verarbeitung von Zeitreihen

6.4 Neuronale Netze zur Verarbeitung von Zeitreihen 6.4 Neuronale Netze zur Verarbeitung von Zeitreihen Aufgabe: Erlernen einer Zeitreihe x(t + 1) = f(x(t), x(t 1), x(t 2),...) Idee: Verzögerungskette am Eingang eines neuronalen Netzwerks, z.b. eines m-h-1

Mehr

Neuroinformatik. Übung 1

Neuroinformatik. Übung 1 Neuroinformatik Übung 1 Fabian Bürger Raum: BC419, Tel.: 0203-379 - 3124, E-Mail: fabian.buerger@uni-due.de Fabian Bürger (fabian.buerger@uni-due.de) Neuroinformatik: Übung 1 1 / 27 Organisatorisches Neuroinformatik:

Mehr

Wissensentdeckung in Datenbanken

Wissensentdeckung in Datenbanken Wissensentdeckung in Datenbanken Deep Learning Nico Piatkowski und Uwe Ligges Informatik Künstliche Intelligenz 20.07.2017 1 von 11 Überblick Künstliche Neuronale Netze Motivation Formales Modell Aktivierungsfunktionen

Mehr

10. Neuronale Netze 1

10. Neuronale Netze 1 10. Neuronale Netze 1 Einführung (1) Ein künstliches neuronales Netz ist vom Konzept her eine Realisierung von miteinander verschalteten Grundbausteinen, sogenannter Neuronen, welche in rudimentärer Form

Mehr

Auch wenn Prof. Helbig die Prüfung nicht mehr lange abnimmt, hier ein kurzer Eindruck:

Auch wenn Prof. Helbig die Prüfung nicht mehr lange abnimmt, hier ein kurzer Eindruck: Diplomprüfung Informatik Kurs 1830 Neuronale Netze Prüfer: Prof. Dr. Helbig Beisitzer: Prodekan Prof. Dr. Hackstein Datum: 01.10.08 Note: 2,7 Auch wenn Prof. Helbig die Prüfung nicht mehr lange abnimmt,

Mehr

Schwellenwertelemente. Rudolf Kruse Neuronale Netze 8

Schwellenwertelemente. Rudolf Kruse Neuronale Netze 8 Schwellenwertelemente Rudolf Kruse Neuronale Netze 8 Schwellenwertelemente Ein Schwellenwertelement (Threshold Logic Unit, TLU) ist eine Verarbeitungseinheit für Zahlen mitneingängenx,...,x n und einem

Mehr

Praktikum Computational Intelligence 2 Ulrich Lehmann, Johannes Brenig, Michael Schneider

Praktikum Computational Intelligence 2 Ulrich Lehmann, Johannes Brenig, Michael Schneider Praktikum Computational Intelligence 2 Ulrich Lehmann, Johannes Brenig, Michael Schneider Versuch: Training eines Künstlich Neuronalen Netzes (KNN) zur Approximation einer Kennlinie in JavaNNS 28.01.2008

Mehr

Künstliche neuronale Netze

Künstliche neuronale Netze Künstliche neuronale Netze Sebastian Morr 4. Juni 2008 Worum geht es? Die Natur hat uns 3,7 Milliarden Jahre Forschungszeit voraus. Toby Simpson Vorbild: Strukturen des Gehirns Ziel: Lernfähige Künstliche

Mehr

Matrizen. a12 a1. a11. a1n a 21. a 2 j. a 22. a 2n. A = (a i j ) (m, n) = i te Zeile. a i 1. a i 2. a i n. a i j. a m1 a m 2 a m j a m n] j te Spalte

Matrizen. a12 a1. a11. a1n a 21. a 2 j. a 22. a 2n. A = (a i j ) (m, n) = i te Zeile. a i 1. a i 2. a i n. a i j. a m1 a m 2 a m j a m n] j te Spalte Mathematik I Matrizen In diesem Kapitel werden wir lernen was Matrizen sind und wie man mit Matrizen rechnet. Matrizen ermöglichen eine kompakte Darstellungsform vieler mathematischer Strukturen. Zum Darstellung

Mehr

Was bisher geschah Künstliche Neuronen: Mathematisches Modell und Funktionen: Eingabe-, Aktivierungs- Ausgabefunktion Boolesche oder reelle Ein-und

Was bisher geschah Künstliche Neuronen: Mathematisches Modell und Funktionen: Eingabe-, Aktivierungs- Ausgabefunktion Boolesche oder reelle Ein-und Was bisher geschah Künstliche Neuronen: Mathematisches Modell und Funktionen: Eingabe-, Aktivierungs- Ausgabefunktion Boolesche oder reelle Ein-und Ausgaben Aktivierungsfunktionen: Schwellwertfunktion

Mehr

Gliederung. Biologische Motivation Künstliche neuronale Netzwerke. Anwendungsbeispiele Zusammenfassung. Das Perzeptron

Gliederung. Biologische Motivation Künstliche neuronale Netzwerke. Anwendungsbeispiele Zusammenfassung. Das Perzeptron Neuronale Netzwerke Gliederung Biologische Motivation Künstliche neuronale Netzwerke Das Perzeptron Aufbau Lernen und Verallgemeinern Anwendung Testergebnis Anwendungsbeispiele Zusammenfassung Biologische

Mehr

Das Modell: Nichtlineare Merkmalsextraktion (Preprozessing) + Lineare Klassifikation

Das Modell: Nichtlineare Merkmalsextraktion (Preprozessing) + Lineare Klassifikation Das Modell: Nichtlineare Merkmalsextraktion (Preprozessing) + Lineare Klassifikation Hochdimensionaler Eingaberaum {0,1} Z S quadratisch aufgemalt (zwecks besserer Visualisierung) als Retina bestehend

Mehr

(hoffentlich kurze) Einführung: Neuronale Netze. Dipl.-Inform. Martin Lösch. (0721) Dipl.-Inform.

(hoffentlich kurze) Einführung: Neuronale Netze. Dipl.-Inform. Martin Lösch. (0721) Dipl.-Inform. (hoffentlich kurze) Einführung: martin.loesch@kit.edu (0721) 608 45944 Überblick Einführung Perzeptron Multi-layer Feedforward Neural Network MLNN in der Anwendung 2 EINFÜHRUNG 3 Gehirn des Menschen Vorbild

Mehr

7. Vorlesung Neuronale Netze

7. Vorlesung Neuronale Netze Soft Control (AT 3, RMA) 7. Vorlesung Neuronale Netze Grundlagen 7. Vorlesung im Aufbau der Vorlesung 1. Einführung Soft Control: Definition und Abgrenzung, Grundlagen "intelligenter" Systeme 2. Wissensrepräsentation

Mehr

Mathematische Grundlagen der dynamischen Simulation

Mathematische Grundlagen der dynamischen Simulation Mathematische Grundlagen der dynamischen Simulation Dynamische Systeme sind Systeme, die sich verändern. Es geht dabei um eine zeitliche Entwicklung und wie immer in der Informatik betrachten wir dabei

Mehr

Lernregeln. Künstliche neuronale Netze. Professur Psychologie digitaler Lernmedien. Institut für Medienforschung Philosophische Fakultät

Lernregeln. Künstliche neuronale Netze. Professur Psychologie digitaler Lernmedien. Institut für Medienforschung Philosophische Fakultät Professur Psychologie digitaler Lernmedien Institut für Medienforschung Philosophische Fakultät Künstliche neuronale Netze Lernregeln Überblick Definition Lernregeln Hebb-Regel Delta-Regel Gradientenabstiegsverfahren

Mehr

Wir haben in den vorherigen Kapiteln verschiedene Verfahren zur Regression und Klassifikation kennengelernt (z.b. lineare Regression, SVMs)

Wir haben in den vorherigen Kapiteln verschiedene Verfahren zur Regression und Klassifikation kennengelernt (z.b. lineare Regression, SVMs) 6. Neuronale Netze Motivation Wir haben in den vorherigen Kapiteln verschiedene Verfahren zur Regression und Klassifikation kennengelernt (z.b. lineare Regression, SVMs) Abstrakt betrachtet sind alle diese

Mehr

Linear nichtseparable Probleme

Linear nichtseparable Probleme Linear nichtseparable Probleme Mustererkennung und Klassifikation, Vorlesung No. 10 1 M. O. Franz 20.12.2007 1 falls nicht anders vermerkt, sind die Abbildungen entnommen aus Duda et al., 2001. Übersicht

Mehr

Wissensentdeckung in Datenbanken

Wissensentdeckung in Datenbanken Wissensentdeckung in Datenbanken Deep Learning (II) Nico Piatkowski und Uwe Ligges Informatik Künstliche Intelligenz 25.07.2017 1 von 14 Überblick Faltungsnetze Dropout Autoencoder Generative Adversarial

Mehr

Einfaches Framework für Neuronale Netze

Einfaches Framework für Neuronale Netze Einfaches Framework für Neuronale Netze Christian Silberbauer, IW7, 2007-01-23 Inhaltsverzeichnis 1. Einführung...1 2. Funktionsumfang...1 3. Implementierung...2 4. Erweiterbarkeit des Frameworks...2 5.

Mehr

6. Vorlesung. Rechnen mit Matrizen.

6. Vorlesung. Rechnen mit Matrizen. 6. Vorlesung. Rechnen mit Matrizen. In dieser Vorlesung betrachten wir lineare Gleichungs System. Wir betrachten lineare Gleichungs Systeme wieder von zwei Gesichtspunkten her: dem angewandten Gesichtspunkt

Mehr

Lineare Algebra 1. Roger Burkhardt

Lineare Algebra 1. Roger Burkhardt Lineare Algebra 1 Roger Burkhardt roger.burkhardt@fhnw.ch Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft HS 2010/11 2 Rechenoperationen und Gesetze Gleichheit

Mehr

Hopfield-Netze. Rudolf Kruse Neuronale Netze 192

Hopfield-Netze. Rudolf Kruse Neuronale Netze 192 Hopfield-Netze Rudolf Kruse Neuronale Netze 192 Hopfield-Netze Ein Hopfield-Netz ist ein neuronales Netz mit einem Graphen G = (U, C), das die folgenden Bedingungen erfüllt: (i)u hidden =,U in =U out =U,

Mehr

12. Übung Künstliche Intelligenz Wintersemester 2006/2007

12. Übung Künstliche Intelligenz Wintersemester 2006/2007 12. Übung Künstliche Intelligenz Wintersemester 2006/2007 1. Contraints und Heuristiken Prof. Dr. Gerd Stumme, Miranda Grahl Fachgebiet Wissensverarbeitung 09.02.2006, mgr@cs.uni-kassel.de a) Beschreibe

Mehr

Können neuronale Netze Vorhersagen treffen? Eine Anwendung aus der Stahlindustrie

Können neuronale Netze Vorhersagen treffen? Eine Anwendung aus der Stahlindustrie Können neuronale Netze Vorhersagen treffen? Eine Anwendung aus der Stahlindustrie 1. Erzeugung von Stahl im Lichtbogenofen 2. Biologische neuronale Netze 3. Künstliche neuronale Netze 4. Anwendung neuronaler

Mehr

Inhaltsverzeichnis. Einführung

Inhaltsverzeichnis. Einführung Inhaltsverzeichnis Einführung 1 Das biologische Paradigma 3 1.1 Neuronale Netze als Berechnungsmodell 3 1.1.1 Natürliche und künstliche neuronale Netze 3 1.1.2 Entstehung der Berechenbarkeitsmodelle 5

Mehr

Klassifikation linear separierbarer Probleme

Klassifikation linear separierbarer Probleme Klassifikation linear separierbarer Probleme Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg (Lehrstuhl Informatik 8) Klassifikation linear

Mehr

Skript Lineare Algebra

Skript Lineare Algebra Skript Lineare Algebra sehr einfach Erstellt: 2018/19 Von: www.mathe-in-smarties.de Inhaltsverzeichnis Vorwort... 2 1. Vektoren... 3 2. Geraden... 6 3. Ebenen... 8 4. Lagebeziehungen... 10 a) Punkt - Gerade...

Mehr

Ein selbstmodellierendes System für die Wasserwirtschaft

Ein selbstmodellierendes System für die Wasserwirtschaft Ein selbstmodellierendes System für die Wasserwirtschaft Dipl.-Ing. Dr. ANDRADE-LEAL Wien, im Juli 2001 1 Einleitung, Motivation und Voraussetzungen Künstliche Intelligenz Neuronale Netze Experte Systeme

Mehr

6.1 Welche Matrix gehört zu der Abbildung?

6.1 Welche Matrix gehört zu der Abbildung? Kapitel 6 Gleichungssysteme Bisher haben wir nur für spezielle Fälle (Drehungen, Spiegelungen ) die zu einer bekannten Abbildung gehörende Matrix gesucht. Da uns die Abbildung in allen Einzelheiten bekannt

Mehr

Computational Intelligence I Künstliche Neuronale Netze

Computational Intelligence I Künstliche Neuronale Netze Computational Intelligence I Künstliche Neuronale Nete Universität Dortmund, Informatik I Otto-Hahn-Str. 6, 44227 Dortmund lars.hildebrand@uni-dortmund.de Inhalt der Vorlesung 0. Organisatorisches & Vorbemerkungen.

Mehr

Multiplikation langer Zahlen

Multiplikation langer Zahlen Multiplikation langer Zahlen Aljoscha Rudawski 20.5.2017 Inhaltsverzeichnis 1 Einleitung 1 2 Multiplikation nach Lehrbuch 1 2.1 Addition langer Zahlen............................. 2 2.2 Multiplikation

Mehr

Statistical Learning

Statistical Learning Statistical Learning M. Gruber KW 42 Rev.1 1 Neuronale Netze Wir folgen [1], Lec 10. Beginnen wir mit einem Beispiel. Beispiel 1 Wir konstruieren einen Klassifikator auf der Menge, dessen Wirkung man in

Mehr

1 Lineare Gleichungssysteme und Matrizen

1 Lineare Gleichungssysteme und Matrizen 1 Lineare Gleichungssysteme und Matrizen Das Studium linearer Gleichungssysteme und ihrer Lösungen ist eines der wichtigsten Themen der linearen Algebra. Wir werden zunächst einige grundlegende Begriffe

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Christian Serpé Universität Münster 14. September 2011 Christian Serpé (Universität Münster) 14. September 2011 1 / 56 Gliederung 1 Motivation Beispiele Allgemeines Vorgehen 2 Der Vektorraum R n 3 Lineare

Mehr

Parallele Algorithmen in der Bildverarbeitung

Parallele Algorithmen in der Bildverarbeitung Seminar über Algorithmen - SoSe 2009 Parallele Algorithmen in der Bildverarbeitung von Christopher Keiner 1 Allgemeines 1.1 Einleitung Parallele Algorithmen gewinnen immer stärker an Bedeutung. Es existieren

Mehr

Klassifikationsverfahren und Neuronale Netze

Klassifikationsverfahren und Neuronale Netze Klassifikationsverfahren und Neuronale Netze Hauptseminar - Methoden der experimentellen Teilchenphysik Thomas Keck 9.12.2011 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Analytische Lösung algebraischer Gleichungen dritten und vierten Grades

Analytische Lösung algebraischer Gleichungen dritten und vierten Grades Analytische Lösung algebraischer Gleichungen dritten und vierten Grades Inhaltsverzeichnis 1 Einführung 1 2 Gleichungen dritten Grades 3 3 Gleichungen vierten Grades 7 1 Einführung In diesem Skript werden

Mehr

Backpropagation. feedforward Netze

Backpropagation. feedforward Netze Backpropagation Netze ohne Rückkopplung, überwachtes Lernen, Gradientenabstieg, Delta-Regel Datenstrom (Propagation) Input Layer hidden Layer hidden Layer Output Layer Daten Input Fehler Berechnung Fehlerstrom

Mehr

Lineare Gleichungssystem

Lineare Gleichungssystem Lineare Gleichungssystem 8. Juli 07 Inhaltsverzeichnis Einleitung Der Gauß-Algorithmus 4 3 Lösbarkeit von Gleichungssystemen 6 Einleitung Wir haben uns bisher hauptsächlich mit dem Finden von Nullstellen

Mehr

Wenn man den Kreis mit Radius 1 um (0, 0) beschreiben möchte, dann ist. (x, y) ; x 2 + y 2 = 1 }

Wenn man den Kreis mit Radius 1 um (0, 0) beschreiben möchte, dann ist. (x, y) ; x 2 + y 2 = 1 } A Analsis, Woche Implizite Funktionen A Implizite Funktionen in D A3 Wenn man den Kreis mit Radius um, beschreiben möchte, dann ist { x, ; x + = } eine Möglichkeit Oft ist es bequemer, so eine Figur oder

Mehr

Neuronale Netzwerke: Feed-forward versus recurrent (d.h. feed-back )

Neuronale Netzwerke: Feed-forward versus recurrent (d.h. feed-back ) Neuronale Netzwerke: Feed-forward versus recurrent (d.h. feed-back ) A: Schrittweise vorwärts-gerichtete Abbildung: Eingangssignal (Input) r in Ausgansgsignal (Output) r out Überwachtes Lernen (wie z.b.

Mehr

Schnelle Multiplikation

Schnelle Multiplikation Informationsblatt für die Lehrkraft Schnelle Multiplikation $&*&*& 999 3 x 3 =? 10001110 π/3 7 X 6 14 666 x 987 Informationsblatt für die Lehrkraft Thema: Schultyp: Vorkenntnisse: Bearbeitungsdauer: Schnelle

Mehr

Andreas Scherer. Neuronale Netze. Grundlagen und Anwendungen. vieweg

Andreas Scherer. Neuronale Netze. Grundlagen und Anwendungen. vieweg Andreas Scherer Neuronale Netze Grundlagen und Anwendungen vieweg Inhaltsverzeichnis Vorwort 1 1 Einführung 3 1.1 Was ist ein neuronales Netz? 3 1.2 Eigenschaften neuronaler Netze 5 1.2.1 Allgemeine Merkmale

Mehr

schreiben, wobei p und q ganze Zahlen sind.

schreiben, wobei p und q ganze Zahlen sind. Schülerinfotag 1. Man zeige, dass keine rationale Zahl ist. Das heißt lässt sich nicht als p q schreiben, wobei p und q ganze Zahlen sind. Proof. Wir werden das Prinzip Beweis durch Widerspruch verwenden.

Mehr

Künstliche Neuronale Netze

Künstliche Neuronale Netze Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Künstliche Neuronale Netze Hauptseminar Martin Knöfel Dresden, 16.11.2017 Gliederung

Mehr

Beispiele 1. Gegeben ist das lineare System. x+4y +3z = 1 2x+5y +9z = 14 x 3y 2z = 5. Die erweiterte Matrix ist

Beispiele 1. Gegeben ist das lineare System. x+4y +3z = 1 2x+5y +9z = 14 x 3y 2z = 5. Die erweiterte Matrix ist 127 Die Schritte des Gauß-Algorithmus sind nun die Folgenden: 1. Wir bestimmen die am weitesten links stehende Spalte, die Einträge 0 enthält. 2. Ist die oberste Zahl der in Schritt 1 gefundenen Spalte

Mehr

Multi-Layer Neural Networks and Learning Algorithms

Multi-Layer Neural Networks and Learning Algorithms Multi-Layer Neural Networks and Learning Algorithms Alexander Perzylo 22. Dezember 2003 Ausarbeitung für das Hauptseminar Machine Learning (2003) mit L A TEX gesetzt Diese Ausarbeitung ist eine Weiterführung

Mehr

Grundlagen Kondition Demo. Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang

Grundlagen Kondition Demo. Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang Numerisches Rechnen (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang Institut für Geometrie und Praktische Mathematik RWTH Aachen Wintersemester 2011/12 IGPM, RWTH Aachen Numerisches Rechnen

Mehr

Simulation Neuronaler Netze. Eine praxisorientierte Einführung. Matthias Haun. Mit 44 Bildern, 23 Tabellen und 136 Literatursteilen.

Simulation Neuronaler Netze. Eine praxisorientierte Einführung. Matthias Haun. Mit 44 Bildern, 23 Tabellen und 136 Literatursteilen. Simulation Neuronaler Netze Eine praxisorientierte Einführung Matthias Haun Mit 44 Bildern, 23 Tabellen und 136 Literatursteilen expert Inhaltsverzeichnis 1 Einleitung 1.1 Über das Projekt 1 1.2 Über das

Mehr

Abb. 5.10: Funktion und Tangentialebene im Punkt ( ) ( ) ( ) 3.) Die Zahlenwerte und in Gleichung (Def. 5.11) berechnen sich durch ( ) ( )

Abb. 5.10: Funktion und Tangentialebene im Punkt ( ) ( ) ( ) 3.) Die Zahlenwerte und in Gleichung (Def. 5.11) berechnen sich durch ( ) ( ) Abb. 5.0: Funktion und Tangentialebene im Punkt Aus der totalen Differenzierbarkeit folgt sowohl die partielle Differenzierbarkeit als auch die Stetigkeit von : Satz 5.2: Folgerungen der totalen Differenzierbarkeit

Mehr

5.1 Determinanten der Ordnung 2 und 3. a 11 a 12 a 21 a 22. det(a) =a 11 a 22 a 12 a 21. a 11 a 21

5.1 Determinanten der Ordnung 2 und 3. a 11 a 12 a 21 a 22. det(a) =a 11 a 22 a 12 a 21. a 11 a 21 5. Determinanten 5.1 Determinanten der Ordnung 2 und 3 Als Determinante der zweireihigen Matrix A = a 11 a 12 bezeichnet man die Zahl =a 11 a 22 a 12 a 21. Man verwendet auch die Bezeichnung = A = a 11

Mehr

kurze Wiederholung der letzten Stunde: Neuronale Netze Dipl.-Inform. Martin Lösch (0721) Dipl.-Inform.

kurze Wiederholung der letzten Stunde: Neuronale Netze Dipl.-Inform. Martin Lösch (0721) Dipl.-Inform. kurze Wiederholung der letzten Stunde: Neuronale Netze martin.loesch@kit.edu (0721) 608 45944 Labor Wissensrepräsentation Aufgaben der letzten Stunde Übersicht Neuronale Netze Motivation Perzeptron Multilayer

Mehr

Teil 1 Gleichungen und Ungleichungen

Teil 1 Gleichungen und Ungleichungen Teil 1 Gleichungen und Ungleichungen Gleichungen Eine mathematische Gleichung ist eine logische Aussage über die Gleichheit von Termen. Das, was links vom Gleichheitszeichen (=) steht, hat den gleichen

Mehr

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth Lineare Algebra Mathematik II für Chemiker Daniel Gerth Überblick Lineare Algebra Dieses Kapitel erklärt: Was man unter Vektoren versteht Wie man einfache geometrische Sachverhalte beschreibt Was man unter

Mehr

D-MAVT/D-MATL Analysis I HS 2017 Dr. Andreas Steiger. Lösung - Serie 6. (n+1)!. Daraus folgt, dass e 1/x < (n+

D-MAVT/D-MATL Analysis I HS 2017 Dr. Andreas Steiger. Lösung - Serie 6. (n+1)!. Daraus folgt, dass e 1/x < (n+ D-MAVT/D-MATL Analysis I HS 2017 Dr. Andreas Steiger Lösung - Serie 6 1. MC-Aufgaben (Online-Abgabe) 1. Für alle ganzen Zahlen n 1 gilt... (a) e 1/x = o(x n ) für x 0 + (b) e 1/x = o(x n ) für x 0 + (c)

Mehr

Analysis 2, Woche 9. Mehrdimensionale Differentialrechnung I. 9.1 Differenzierbarkeit

Analysis 2, Woche 9. Mehrdimensionale Differentialrechnung I. 9.1 Differenzierbarkeit A Analysis, Woche 9 Mehrdimensionale Differentialrechnung I A 9. Differenzierbarkeit A3 =. (9.) Definition 9. Sei U R m offen, f : U R n eine Funktion und a R m. Die Funktion f heißt differenzierbar in

Mehr