Neuronale Netze

Werbung
Neuronale Netze
John
July 20, 2016
1
Intro
• Verarbeitungsgeschwindigkeit: Computer überlegen
• Neuronale Updates pro Sekunde: Gehirn überlegen
• Zwei Punktmengen in einem n-dimensionalen Raum heißen linear separabel, wenn sie durch eine
(n-1)-dimensionale Hyperebene getrennt werden können.
• Einzelne Schwellenwertelemente können nur linear separable Funktionen berechnen.
• Lösung nicht linear separabler Probleme durch Netzwerk
• Netzwerke aus Schwellenwertelementen können beliebige Boolesche Funktionen berechnen.
• Delta-Regel
• Online-Training/Batch-Training
• Falls Trainingsmuster linear separabel → Online- und Batchtraining terminieren
• Das Trainieren einzelner Schwellenwertelemente mit der Delta-Regel ist schnell und findet garantiert
eine Lösung, falls eine existiert.
• Netzwerke aus Schwellenwertelementen können nicht mit der Delta-Regel trainiert werden.
2
Allgemeine Neuronale Nezte
• U = Uin ∪ Uout ∪ Uhidden
• Falls der Graph eines neuronalen Netzes azyklisch ist, wird das Netz Feed-Forward-Netzwerk genannt.
• Falls der Graph eines neuronalen Netzes Zyklen enthält, (rückwärtige Verbin- dungen), wird es rekurrentes Netzwerk genannt.
1
3
Multilayer Perceptrons
• Vorwärtsgerichtetes Netz mit streng geschichteter Struktur.
• Die Netzwerkeingabe jedes versteckten Neurons und jedes Ausgabeneurons ist die gewichtete Summe
seiner Eingaben
• unipolar heißt, die Funktion reicht von 0 bis 1
• Mit linearen Aktivierungs- und Ausgabefunktionen können beliebige mehrschichtige Perzeptren auf
zweischichtige Perzeptren reduziert werden.
• Das Trainieren von NN ist stark verwandt mit Regression (Minimierung der Summe der quadrierten
Fehler)
• Lineare Regression
• Fehlerrückpropagation
2
4
Radiale-Basisfunktionen-Netze
• RBF-Netze sind streng geschichtete, vorwärtsbetriebene neuronale Netze mit ge- nau einer versteckten
Schicht.
• Als Netzeingabe- und Aktivierungsfunktion werden radiale Basisfunktionen ver- wendet.
• Abstandsfunktionen
• Bestimmung passender Zentren für die RBFs durch k-means-Clustering oder lernende Vektorquantisierung
• Vorteile:
– einfache Feedforward-Architektur
– leichte Anpassbarkeit
– daher schnelle Optimierung und Berechnung
5
Lernende Vekotorquanitisierung
• Finden von Clustern in einer gegebenen Menge von Punkten
• Die Netzeingabefunktion jedes Ausgabeneurons ist eine Abstandsfunktion zwischen Eingabe- und
Gewichtsvektor
• Anpassung der Referenzvektoren: Bestimme zu jedem Trainingsbeispiel den nächsten Referenzvektor
→ anpassen
• Anziehungsregel (Datenpunkt und Referenzvektor haben dieselbe Klasse)
• Abstoßungsregel (Datenpunkt und Referenzvektor haben verschiedene Klassen)
• Problem: feste Lernrate kann zu Oszillationen führen, Lösung: zeitabhängige Lernrate
−
• window rule: passe nur dann an, wenn der Datenpunkt →
x in der Nähe der Klassifikationsgrenze liegt
5.1
Self-Organizing Maps
• Auf den Ausgabeneuronen ist eine Nachbarschaftsbeziehung definiert
• eine SOM realisiert eine topologieerhaltende Abbildung
• Selbstorganisierende Karten können zur Dimensionsreduktion genutzt werden
6
Hopfield-Netze
• In einem Hopfield-Netz sind alle Neuronen sowohl Eingabe- als auch Ausgabeneu- ronen.
• Es gibt keine versteckten Neuronen.
• Jedes Neuron erhält seine Eingaben von allen anderen Neuronen.
3
• Ein Neuron ist nicht mit sich selbst verbunden.
• Die Verbindungsgewichte sind symmetrisch
• Das Verhalten eines Hopfield-Netzes kann von der Update-Reihenfolge abhängen
• Die Berechnungen können oszillieren, wenn Neuronen synchron aktualisiert wer- den.
• Die Berechnung konvergiert immer, wenn die Neuronen asynchron in fester Rei- henfolge aktualisiert
werden.
• Wenn die Neuronen zyklisch in einer beliebigen, aber festen Reihenfolge durchlaufen werden, sind
höchstens n · 2n Schritte (Aktualisierungen einzelner Neuronen) notwendig, wobei n die Anzahl der
Neuronen im Netz ist.
• kann zur Speicherung von Mustern genutzt werden (stabile Zustände)
• Grund für die Schwierigkeiten von Hopfield-Netzen zur Lösung von Optimierungspro- blemen: Verfahren kann in einem lokalen Minimum der Energiefunktion hängenbleiben
,→ Lösung: Simuliertes Ausglühen - Aktivierungsänderung, die die Energie vermindert, wird immer
ausgeführt. Eine die Energie erhöhende Änderung wird nur mit einer Wahrscheinlichkeit ausgeführt.
7
Rekurrente Neuronale Netze
• Im Prinzip werden rückgekoppelte neuronale Netze genauso trainiert wie mehrschichtige Perzeptren.
Einer direkten Anwendung des Fehler-Rückpropagationsverfahrens stehen jedoch die Rückkopplungen
entgegen.
• Lösung: Die Rückkopplungen werden durch eine Ausfaltung des Netzes in der Zeit zwischen zwei
Trainingsmustern eliminiert (Fehler-Rückpropagation in der Zeit)
8
Support Vector Machines
• Leite aus den Trainingsdaten eine Entscheidungsregel ab, die die beiden Klassen voneinander trennt.
• Wir fangen mit linearer Trennung an und vergrößern die Komplexität in einem zweiten Schritt durch
Kernel-Funktionen.
• Trenne die Trainingsdaten mit maximaler Trennspanne
• Bei SVM wird eine trennende Hyperebene mit maximalem Rand gesucht.
• bei nicht linear separierbare Klassen → Bestrafen von Randverletzungen via “slack”-Variable
• Kernel-Trick: bei <n → <m
in <n nur Skalarprodukte erforderlich
in <m auch Ψ(xi ), Ψ(xj ) erforderlich
Lösung: Ψ(xi ), Ψ(xj ) müssen nicht explizit ausgerechnet werden, sondern können mit reduzierter
Komplexität mit Kernelfunktionen ausgedrückt werden: K(xi , xj ) = Ψ(xi ), Ψ(xj )
9
Neuro-Fuzzy-Systeme
• hybrides System, bei dem NN mit einem regelbasierten System gekoppelt sind
• Fuzzy-Theorie: mathematische Modellierung der Penumbra
• Kooperative Modelle: Neuronales Netz und Fuzzy-Regler operieren getrennt voneinander
Hybride Modelle: Vereinigen die Strukturen eines neuronalen Netzes und eines Fuzzy-Reglers
• NFS nutzen Toleranzen aus, um zu beinahe optimalen Lösungen zu kommen
4
10
Spiking Neural Networks
• berücksichtigen neben neuronalem und synaptischem Zustand auch Zeit
• Kette von Aktionspotentialen eines einzelnen Neurons heißt Spike Train
• SRM0 (Spike Response Model)
• Frequence Coding - Neuronen generieren Spikes mit unterschiedlicher Frequenz als Reaktion auf unterschiedliche Stimuli; je stärker der Stimulus, desto höher die Frequenz.
• Temporal Coincidence Coding - Je enger Koinzidenzen beieinander liegen, desto höher ist die Stimulusintensität. Neuronen sind in Ensembles organisiert, die koinzident feuern.
• Delay Coding - Der Eingabestimulus wird in ein Verzögerungssignal umgewandelt. Ein stärker stimuliertes Neuron erreicht den Depolarisierungsschwellwert eher und emitiert einen Spike früher.
• Spatio-Temporal Coding - Neuronen emittieren Spikes in einer bestimmten Reihenfolge als Antwort auf
einen Stimulus. Die Sequenz wird sowohl durch temporale als auch lokale Eigenschaften des Stimulus
sowie die Struktur der Netzwerkes bestimmt.
• Einfachstes Modell: Poisson-Prozess
11
Deep Learning
• Gewichtsänderung nimmt in vorderen Schichten exponentiell ab
• Rectified Linear Unit, ReLU: f (x) = max(0, x)
• Dropout
– Gewünschte Eigenschaft: Robustheit bei Ausfall von Neuronen
– Ansatz beim Lernen: Nutze nur 50% der Neuronen, wähle diese zufällig
– Ansatz beim Anwenden: Nutze 100% der Neuronen, Halbiere alle Gewichte
– Ergebnis: Robustere Repräsentation, Verbesserte Generalisierung
• Autoencoder - Erstellt eine Kodierung der Daten, lernt Gewichte mit Rückpropagation
• Convolution - Filter / Kernel werden auf jedem Teil des Bildes angewandt und teilen sich die Gewichte
• Pooling - Schiebe einen Filter über die Features und betrachte die gefilterten Features → Featureraum
wird kleiner
5
Herunterladen