Neural Net

Ein künstliches neuronales Netzwerk (ANN) ist ein Modell, das auf einer Sammlung miteinander verbundener Einheiten oder Knoten basiert, die als künstliche Neuronen bezeichnet werden und die Neuronen in einem biologischen Gehirn grob modellieren.

Neuronale Netzwerke zielen darauf ab, die Funktionsweise der Neuronen in einem menschlichen Gehirn nachzuahmen. Der Hauptvorteil gegenüber einem linearen Modell besteht darin, dass neuronale Netze komplexere nichtlineare Beziehungen modellieren können. Die Gesamtarchitektur besteht aus einer Eingabeschicht, einer oder mehreren versteckten Schichten und einer Ausgangsschicht aus Neuronen. Jedes Neuron hat einen Gewichtskoeffizienten Wiund ein Bias-Koeffizient bi, zusammen mit der Eingabe für das Neuron zi und einer nichtlinearen Funktion wie der Sigmoidfunktion

berechne einen Ausgabewert s (zi)s(Zi). Jedes Neuron ist mit allen Neuronen in der folgenden Schicht verbunden, was bedeutet, dass ein Neuron mit mehreren Eingängen eine Summe aus mehreren Wizi hatBegriffe im Exponenten. Die Rolle der Sigmoidfunktion wird hier oft als Aktivierungsfunktion, und neben dem Sigmoid werden häufig auch andere Optionen verwendet.

Durch Hinzufügen mehrerer versteckter Ebenen zwischen Eingabe und Ausgabe ist es möglich, ein sehr flexibles Modell zu erstellen. Wenn das Modell definiert ist, werden Daten durch das Modell geleitet und das Ergebnis wird mit dem tatsächlichen Wert verglichen. Durch die Berechnung des Gradienten der Fehlerfunktion ist es möglich, die Gewichte und Verzerrungen in eine Richtung zu korrigieren, die den Fehler verringert. Dieser Optimierungsprozess wird als Gradientenabstieg bezeichnet. Der gesamte Prozess der Anpassung der Koeffizienten an die Daten wird oft als Ausbildung das Modell und die dafür verwendeten Daten werden bezeichnet als Trainingsdaten.

Bei aller gebotenen Flexibilität besteht die größte Herausforderung darin, eine Überanpassung des Modells an die Daten zu vermeiden, was bedeutet, dass das Modell die Trainingsdaten äußerst gut beschreiben kann, aber wenn es mit neuen Beobachtungen konfrontiert wird, wird es Schwierigkeiten haben. Diese Frage zu lösen ist eine offene Forschungsfrage, aber es gibt viele nützliche Techniken.

Ein Beispiel ist, bei jeder Iteration einfach eine Zufallsstichprobe der Daten durch das Modell zu leiten, was zu der Optimierungstechnik führt, die als stochastischer Gradientenabstieg. Darüber hinaus werden die Daten häufig in zwei Teile aufgeteilt, von denen einer für das Training und der andere für die Validierung verwendet wird. Das Modell darf den Validierungssatz niemals für das Training verwenden, aber nach einer bestimmten Anzahl von Iterationen wird das Modell anhand des Validierungssatzes evaluiert. Auf diese Weise ist es möglich, den Trainingsprozess anzuhalten, sobald der Validierungsfehler zunimmt. Dies hat den Vorteil, dass das Modell so trainiert wird, dass es für die Daten so spezifisch wie möglich ist und dennoch relevant für ähnliche Daten bleibt, die nicht im Trainingssatz enthalten sind.

Mit einem ausreichend großen Modell und ausreichenden Trainingsdaten ist es möglich, sehr komplizierte Strukturen zu modellieren. Ein Beispiel hierfür sind große Sprachmodelle, die die menschliche Sprache nachahmen können, indem sie vorhersagen, welches Wort am wahrscheinlichsten nach der aktuellen Sequenz, die das Modell als Eingabe erhalten hat, kommen wird.

Zeitreihen und neuronale Netze

Um eine Zeitreihe Yt mithilfe eines neuronalen Netzwerks zu modellieren, ist pp verzögerte Werte Yt−1, ... ,Ytpwerden als Eingaben verwendet und das neuronale Netzwerk wird trainiert, um den aktuellen Wert Yt zu erklären. Eine Prognose kann dann mithilfe von erstellt werden Yt, ... ,Ytp+1 als Eingabe für die Vorhersage Yt+1. Dies kann dann rekursiv wiederholt werden, wobei der gerade prognostizierte Wert als Eingabe verwendet wird, wodurch eine Prognose der gewünschten Länge erstellt wird.

Wie passt Indicio zu einem neuronalen Modell?

Ein lineares Regressionsmodell kann prädiktiv an Daten angepasst werden, weshalb ein einzelnes Modell fast immer ausreichend ist. Ein neuronales Netzwerk kann am Ende viele verschiedene Sätze von Koeffizienten aufweisen, die unter anderem auf die stochastische Natur von SGD zurückzuführen sind. Um die Varianz in den Modellen zu minimieren, erstellt Indicio eine Reihe von Modellen, die dann bei der Erstellung der Prognosen gemittelt werden.

Explore more models

Within this category

More categories