AI-United » Allgemein » Training der neuronalen Netzwerke: Fluch der Dimensionalität

Training der neuronalen Netzwerke: Fluch der Dimensionalität

Fluch der Dimensionalität

Stellen Sie sich vor, Sie wären ein Bergsteiger auf einem Berg und die Nacht bricht an. Sie müssen ein Lager erreichen, das sich unten an der Klippe befindet, aber im Licht einer gedämpften Taschenlampe können Sie nur wenige Meter sehen. Also, wie kommen Sie nach unten? Man muss sich umsehen und verstehen, welcher Hang der steilste ist, um dort einen Schritt zu machen. Wenn Sie diesen Prozess mehrmals wiederholen, gelangen Sie allmählich zum Fuß des Berges. Wenn Sie aber im Tal stecken bleiben, werden Sie langsamer Ihr Ziel erreichen.

Unter Training der neuronalen Netzwerke versteht man die Suche nach dem besten Gewichtungssatz, um die Genauigkeit der Vorhersage zu maximieren. Sowohl neuronale Netzwerke als auch eine Taschenlampe können ohne ein klares Verständnis verwendet werden. Moderne Machine Learning-Bibliotheken automatisieren deutlich den Lernprozess neuronaler Netze. Obwohl Sie in der Regel den mathematischen Teil nicht einsetzen möchten, müssen Sie ihn aufmerksam lesen, weil er sich in einen wesentlichen Vorteil bei der Neugestaltung und Konfiguration von Netzwerken verwandelt. Außerdem wurde das Training der neuronalen Netzwerke vor vielen Jahren beschrieben, aber erst jetzt ist es verfügbar und wird zu einem neuen Meilenstein in der Entwicklung von wissenschaftlichen Fortschritten.

Training der tiefen neuronalen Netzwerke

Die Gewichtungen in den versteckten Schichten sind stark abhängig. Um es zu verstehen, sehen Sie auf das untenstehende Bild. Eine leichte Gewichtungsänderung in der ersten Schicht wird einen wichtigen Einfluss auf die weitere Verteilung haben.

Deshalb können wir den idealen Gewichtungssatz nicht erhalten. Wir müssen eine Kombination von Gewichtungen finden.

Stellen Sie die Gewichtungen nach dem Zufallsprinzip ein und berechnen Sie die Ergebnisse. Dann wiederholen Sie mehrmals, speichern alle Ergebnisse und wählen die genauesten aus. Es scheint auf den ersten Blick nicht so schlecht zu sein. Die Computer sind bereits sehr leistungsfähig, vielleicht können wir mit einem Grossford eine Lösung finden? Für kleine Neuronen (~30 Neuronen) funktioniert es wirklich. Aber für die Aufgaben aus der wirklichen Welt, in der die Neuronen unter 12.000 Jahren liegen, verliert die Zufallssuche ihre Relevanz. Versuchen Sie, eine Nadel in einem 12000-dimensionalen Heuhaufen mit einer einfachen Suche zu finden.

Der n-dimensionale Raum – ein einsamer Ort

Wenn man versucht, irrtümlich Gewichtungen zu finden, denkt man daran, wie man einen akzeptablen Satz von Gewichten erhalten kann. Wir erwarten intuitiv, dass wir durch genügend Versuche den gesamten Raum abdecken und den perfekten Gewichtungssatz finden. Ohne Kenntnisse über das Gewicht können sie sich in jedem beliebigen Punkt des Raumes befinden, darum muss man so viel wie möglich verschiedene Gewichtungen aus dem Raum berücksichtigen.

Um dies zu zeigen, lassen Sie uns ein paar einfache einschichtige neuronale Netze betrachten: mit zwei und mit drei Neuronen.

Im ersten Fall müssen Sie nur zwei Gewichtungen finden. Wie viele Versuche müssen Sie machen, um den perfekten Satz zu erraten? Eine der Methoden ist einen zweidimensionalen Raum möglicher Gewichtungen darzustellen und nach der notwendigen Kombination bei einer Spaltung vor der Erschöpfung zu suchen. Vielleicht können wir jede Achse in zehn Teile zerlegen. Dann werden wir nur 10^2 = 100 versuchen. Es ist gar nicht so schlecht, aber lassen Sie uns die Teilung kleiner machen, um die Gewichtungen richtig aufzunehmen, zum Beispiel in 100 Stück. Dann könnte es 10.000 Kombinationen geben. Eine kleine Anzahl, die der Computer in weniger als eine Sekunde verarbeiten kann.

Im zweiten Fall müssen wir 3 Gewichtungen aufnehmen und im dreidimensionalen Raum arbeiten. Lassen Sie uns die gleichen Operationen 10*10*10*10 = 1.000 Varianten und 100*100*100 = 1.000.000 Varianten entsprechend bei verschiedenen Varianten der Aufteilung durchführen. Eine Million Optionen ist nicht so schlecht, aber das Wachstum sieht erschreckend aus. Und was passiert, wenn wir zu den realen Netzen kommen?

Fluch der Dimensionalität

Was passiert, wenn wir versuchen, Figuren aus dem MNIST-Datensatz zu klassifizieren? Das Netzwerk wird 784 Eingangsneuronen enthalten, 15 Neuronen in einer versteckten Schicht und 10 Ausgangsneuronen. Insgesamt 784*15 + 15*10 = 11910 Gewichtungen. Um zu erraten, muss man also 10^11910 Versuche machen…. Das ist eine 1 mit fast 12.000 Nullen. Für den Vergleich von Atomen im sichtbaren Weltall nur 10^80. Kein Supercomputer kann mit dieser Art von Überdosis umgehen.

In Machine Learning wird dieses Problem als “Fluch der Dimensionalität” bezeichnet. Jede Messung, die wir hinzufügen, erhöht exponentiell die Anzahl der Proben, die für die Generalisierung erforderlich sind. Der Fluch der Dimensionalität wird meistens auf Datensätze angewendet: Je mehr Spalten oder Variablen, desto mehr Proben in diesem Datensatz müssen wir exponentiell analysieren. In unserem Fall geht es um Gewichtungen, nicht um Eingabedaten, aber das Prinzip bleibt das gleiche – der multidimensionale Raum ist riesig!

Haben Sie soweit verstehen können, was mit “Fluch der Dimensionalität” gemeint ist?

Wie kann man ein neuronales Netzwerk in Ihrem Umfeld einsetzen?

Diese und weitere Fragen beantwortet gerne das AI United Team per Email oder in dem Q&A Bereich.

Quelle

AI-United-Redaktion

Kommentar hinzufügen

Your email address will not be published. Required fields are marked *

300-101   400-101   300-320   300-070   300-206   200-310   300-135   300-208   810-403   400-050   640-916   642-997   300-209   400-201   200-355   352-001   642-999   350-080   MB2-712   400-051   C2150-606   1Z0-434   1Z0-146   C2090-919   C9560-655   642-64   100-101   CQE   CSSLP   200-125   210-060   210-065   210-260   220-801   220-802   220-901   220-902   2V0-620   2V0-621   2V0-621D   300-075   300-115   AWS-SYSOPS   640-692   640-911   1Z0-144   1z0-434   1Z0-803   1Z0-804   000-089   000-105   70-246   70-270   70-346   70-347   70-410