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 keine Begründung der Ergebnisse Klassifikation Mustererkennung, z.b. Bild- und Spracherkennung Funktions-Approximation Modellierung zeitlicher Verläufe Assoziation Clustering (Zuordnung von Mustern zu Bündeln) 133
Lernverfahren überwachtes Lernen Trainingsmenge enthält Paare (Muster, Ausgabevektor) (partielle Funktion, Werte an Stützstellen) Trainingsziel: Funktion, die an den Stützstellen mit der Trainingsmenge übereinstimmt bestärkendes Lernen Trainingsmenge enthält Muster Schüler erfährt nach jedem Lernschritt, ob Ausgabe korrekt ist. Trainingsziel: Funktion, die an den Stützstellen die korrekte Ausgabe erzeugt Wettbewerbslernen (unüberwachtes Lernen) Trainingsmenge enthält nur Muster Trainingsziel: Gruppierung ähnliche Muster oft auch topologisch sinnvolle Anordnung 134
Typen künstlicher Neuronen McCulloch-Pitts-Neuron: Ein- und Ausgabe: Boolesche Vektoren keine Kantengewichte Schwellwert θ R erregende und hemmende Eingänge Aktivierung durch Stufenfunktion Schwellwertelemente Ein- und Ausgabe: Boolesche Vektoren Kantengewichte und Schwellwert R Aktivierung durch Stufenfunktion Neuronen mit reeller Ein- und Ausgabe Ein- und Ausgabe: Reelle Vektoren Kantengewichte und Schwellwert R Aktivierung durch lineare, sigmoide oder Stufenfunktion alle mit gewichteter Summe als Eingabefunktion und Identität als Ausgabefunktion 135
Typen künstlicher neuronaler Netze Feed-Forward-Netze Ein-Schicht-FFN Mehr-Schicht-FFN RBF-Netze Netze mit Rückkopplung Elman-Netz Jordan-Netz Assoziativspeicher BAM Hopfield-Netz Selbstorganisierende Karten Funktionsweise aller Netztypen in zwei Phasen: 1. Trainingsphase: (Anpassung / Lernen durch Änderung der Kantengegewichte anhand gegebener Trainingsmuster) 2. Ausführungsphase (Reproduktion): Berechnung der Ausgaben zu beliebigen Mustern 136
Ein-Schicht-FFN Topologie: Eingabeschicht Ausgabeschicht teilweise vorwärts verbunden Kantengewichte repräsentieren Stärke eingehender Signale Gewichtsmatrix McCulloch-Pitts-Neuronen, Schwellwertelemente oder Neuronen mit reellen Ein- und Ausgängen und Aktivierung durch lineare, sigmoide oder Stufenfunktion. Training (überwachtes Lernen): -Regel w ij = w ij + ηx i (t j y j ) Klassifikation in linear trennbare Klassen lineare Approximation 137
Mehr-Schicht-FFN Topologie: Eingabeschicht eine oder mehrere versteckte Schichten Ausgabeschicht teilweise vorwärts zwischen benachbarten Schichten verbunden Kantengewichte repräsentieren Stärke eingehender Signale Gewichtsmatrix mit Blockstruktur Neuronen mit reellen Ein- und Ausgängen und Aktivierung durch lineare oder sigmoide Funktion. Training (überwachtes Lernen): Backpropagation-Regel w ij = w ij + ηδ j x i (mir Fehlertermen δ j ) Muster-Klassifikation Funktions-Approximation 138
RBF-Netze Topologie: Zwei-Schicht-FFN Eingabeschicht, eine versteckte Schicht, Ausgabeschicht Neuronen der versteckten Schicht: Eingabefunktion: Skalarprodukt (Abstand) mit Vektor der eingehenden Gewichte (eingehende Kantengewichte repräsentieren RBF-Zentren) Aktivierungsfunktion: RBF-Funktion (z.b. Zylinder-, Kegel- oder Glockenfunktion) Ausgabefunktion: Identität Training mit Clustering-Techniken (z.b. wie SOM) Neuronen der Ausgabeschicht: Schwellwertelemente oder Neuronen mit reellen Ein- und Ausgängen und Aktivierung durch lineare oder Stufenfunktion. (eingehende Kantengewichte repräsentieren Stärke eingehender Signale) Training (überwachtes Lernen) mit -Regel Muster-Klassifikation, Funktions-Approximation (durch gewichtete Summe von RBF) 139
Netze mit Rückkopplung Idee: Rückkopplung als Kurzzeitgedächtnis Topologie: Ein- oder Mehrschicht-FFN mit zusätzlichen Rückwärtskanten zwischen verschiedenen Schichten (oft zur Eingabeschicht) häufig zusätzliche Neuronen (Kontextneuronen) in Eingabeoder versteckten Schichten Kantengewichte repräsentieren Stärke eingehender Signale Neuronen mit reellen Ein- und Ausgängen und Aktivierung durch lineare oder sigmoide Funktion. Training (unüberwachtes Lernen): Backpropagation-Regel (nur für Vorwärtskanten) Jordan-Netz: zu jedem Ausgabeneuron ein Kontextneuron in der Eingabeschicht Elman-Netz: zu jedem versteckten Neuron ein Kontextneuron in der vorigen versteckten bzw. Eingabeschicht Klassifikation von Mustern variabler Länge Modellierung zeitlicher Verläufe 140
Bidirektionaler Assoziativspeicher Topologie: Eingabeschicht Ausgabeschicht vollständige symmetrische Verbindungen zwischen Neuronen verschiedener Schichten, keine Verbindung innerhalb einer Schicht Kantengewichte repräsentieren Stärke eingehender Signale Neuronen mit bipolaren Ein- und Ausgängen und Aktivierung durch Signumfunktion (modifizierte Schwellwertelemente). Training (unüberwachtes Lernen): Hebb-Regel w ij = w ij + ηx i y j oder direkte Berechnung (Matrixoperationen) Zuordnungen zwischen verschiedenen Mustermengen Mustererkennung, -rekonstruktion 141
Hopfield-Netz Topologie: nur eine Schicht von Neuronen (Eingabeschicht) vollständige symmetrische Verbindungen zwischen allen Neuronen, keine Selbstrückkopplung Kantengewichte repräsentieren Stärke eingehender Signale Neuronen mit bipolaren Ein- und Ausgängen und Aktivierung durch Signumfunktion (modifizierte Schwellwertelemente). Asynchrone Neuberechnung der Neuronen-Aktivierung Training (überwachtes Lernen): Hebb-Regel oder direkte Berechnung (Matrixoperationen) Rekonstruktion unscharfer und unvollständiger Muster Lösen von Optimierungsproblemen (z.b. TSP) 142
Selbstorganisierende Karten (SOM) Topologie: Ein-Schicht-FFN vollständig vorwärts zwischen beiden Schichten verbunden Kantengewichte repräsentieren Bündelzentren Neuronen der Ausgabeschicht: Eingabefunktion: Skalarprodukt (Abstand) mit Vektor der eingehenden Gewichte (Bündelzentren) Aktivierungsfunktion: (Wettbewerb) nur Neuron mit dem kleinsten Eingabewert 1, alle anderen 0 Ausgabefunktion: Identität Training (unüberwachtes Lernen): schrittweise Verschiebung der Bündelzentren (und evtl. ihrer Nachbarn) in Richtung der dem Bündel neu zugeordneten Trainingsmuster Clustering: Bündeln von Mustern nach unbekannten Gemeinsamkeiten topologieerhaltende Abbildung (oft auf kleinere Dimension) 143