Neuronale netze Mustererkennung beispiel

Unser Ziel beim Training eines neuronalen Netzwerks ist es, Gewichte und Verzerrungen zu finden, die die quadratische Kostenfunktion $C(w, b)” minimieren. Dies ist ein gut gestelltes Problem, aber es hat eine Menge ablenkende Struktur, wie derzeit gestellt – die Interpretation von $w und $b, als Gewichte und Verzerrungen, die Funktion “Sigma” lauert im Hintergrund, die Wahl der Netzwerkarchitektur, MNIST, und so weiter. Es stellt sich heraus, dass wir eine enorme Menge verstehen können, indem wir den größten Teil dieser Struktur ignorieren und uns nur auf den Minimierungsaspekt konzentrieren. Im Moment werden wir also alles über die spezifische Form der Kostenfunktion, die Verbindung zu neuronalen Netzwerken usw. vergessen. Stattdessen stellen wir uns vor, dass wir einfach eine Funktion mit vielen Variablen erhalten haben und wir diese Funktion minimieren möchten. Wir werden eine Technik namens Gradientenabstieg entwickeln, die verwendet werden kann, um solche Minimierungsprobleme zu lösen. Dann kommen wir zurück zu der spezifischen Funktion, die wir für neuronale Netzwerke minimieren möchten. Das Endergebnis ist ein Netzwerk, das eine sehr komplizierte Frage – zeigt dieses Bild ein Gesicht oder nicht – in sehr einfache Fragen auf der Ebene einzelner Pixel beantwortet. Dies geschieht durch eine Reihe von vielen Ebenen, wobei frühe Schichten sehr einfache und spezifische Fragen zum Eingabebild beantworten und später schichten eine Hierarchie immer komplexerer und abstrakterer Konzepte aufbauen. Netzwerke mit dieser Art von vielschichtiger Struktur – zwei oder mehr verborgene Schichten – werden als tiefe neuronale Netzwerke bezeichnet.

Sicherlich verbessert dies die Ergebnisse auf 96,59 $ Prozent. Zumindest in diesem Fall hilft uns die Verwendung von mehr versteckten Neuronen, bessere Ergebnisse zu erzielen* *Leserfeedback zeigt einige Variationen in den Ergebnissen für dieses Experiment an, und einige Trainingsläufe geben Ergebnisse ziemlich viel schlechter. Die Verwendung der in Kapitel 3 eingeführten Techniken wird die Leistungsunterschiede in den verschiedenen Trainingsläufen für unsere Netzwerke erheblich reduzieren. Das Koppeln der einstellbaren Gewichtungen des Modells mit Eingabe-Features ist die Art und Weise, wie wir diesen Features Bedeutung in Bezug darauf zuweisen, wie das neuronale Netzwerk Die Eingabe klassifiziert und gruppiert. Wir werden jetzt eine bedeutende kreative Lizenz mit dem Konzept eines neuronalen Netzwerks nehmen. Dies wird es uns ermöglichen, an den Grundlagen festzuhalten und einige der hochkomplexen Algorithmen zu vermeiden, die mit ausgefeilteren neuronalen Netzwerken verbunden sind. Hier geht es nicht so sehr um die Einhaltung von Regeln, die in Lehrbüchern für künstliche Intelligenz beschrieben sind – wir hoffen nur, etwas Interessantes und Hirnähnliches zu machen. Im Allgemeinen kann das Debuggen eines neuronalen Netzwerks eine Herausforderung darstellen.

Dies gilt insbesondere dann, wenn die anfängliche Wahl der Hyperparameter zu Ergebnissen führt, die nicht besser sind als zufälliges Rauschen.