Die 3 wichtigsten Arten von Gradientenabstieg

2 min read

Die 3 wichtigsten Arten von Gradientenabstieg

Der Gradientenabstieg ist ein Verfahren, das am häufigsten in Algorithmen des maschinellen und tiefen Lernens zur Lösung der Optimierungsprobleme eingesetzt wird. Er wird zum Trainieren eines Modells des maschinellen Lernens verwendet und funktioniert auf Basis einer konvexen Funktion.

Die Aufgabe des Gradientenabstiegs besteht darin, anhand eines iterativen Prozesses einen Satz von Parametern zu verfeinern, wobei partielle Differentialgleichungen oder PDGs verwendet werden. Dies führt zur Reduzierung der gegebenen Kostenfunktion zu ihrem lokalen Minimum. Das Gradientenverfahren wurde vom französischen Mathematiker Louis Augustin Cauchy 1847 in den wissenschaftlichen Kreislauf eingeführt.

Grundlagen

Für die meisten Algorithmen des maschinellen und tiefen Lernens ist eine Art Optimierung erforderlich, die sich auf den Prozess entweder des Minimierens oder Maximierens einer Funktion durch Ändern ihrer Parameter bezieht.

Das Ziel besteht darin, die Parameterwerte zu finden, die zum Minimieren dieser Kostenfunktion führen. Der erste Schritt ist es, einige Anfangsparameterwerte zu bestimmen. Als nächstes werden die Parameterwerte iterativ geändert, um die Kostenfunktion zu reduzieren. Der Prozess sollte mit einem Minimum beendet werden.

Der Prozess der Änderung der Parameterwerte umfasst die Differentialrechnungen, vor allem geht es um die Berechnung der “Ableitung” der Kostenfunktion. Anhand der Ableitung wird die Steigung der Funktion an einem bestimmten Punkt angegeben. Dies bedeutet, dass sie bestimmt, wie eine kleine Änderung in der Eingabe skaliert wird, um die entsprechende Änderung in der Ausgabe zu erzielen. Deshalb ist die Ableitung für das Minimieren der Kostenfunktion sehr nützlich, da man auf solche Weise die Informationen bekommt, wie die Parameter geändert werden müssen, um das Ermitteln des Minimums der Funktion etwas zu verbessern.

Dies ähnelt einem Heruntergehen eines Hügels vom Anfangspunkt durch das Wählen einer Richtung, um mit kleinen Schritten entlang des Weges einen Minimalpunkt zu erreichen. Beim Gradientenabstiegsprozess werden die Ableitungen der Kostenfunktion verwendet, die zur Verfolgung der Funktion abwärts bis zu einem Minimum dienen. Nachfolgend stellt die Abbildung den schrittweisen Gradientenabstiegsprozess dar.

Zur Bestimmung der Größe jedes Schritts während des Gradientenabstiegsprozesses wird die Lernrate verwendet. Eine geringe Lernrate kann zur Verlangsamung des Gradientenabstiegsprozesses führen. Eine hohe Lernrate kann dagegen zum Überschreiten des Minimums vom Gradientenabstieg und zum Scheitern des Konvergierens oder sogar des Divergierens führen. Wenn die Lernrate festgelegt ist, kann der Gradientenabstieg auch zu einem lokalen Minimum konvergieren. Nähert man sich einem lokalen Minimum, so werden automatisch kleinere Schritte gemacht, so dass es nicht mehr erforderlich ist, die Lernrate im Laufe der Zeit zu verringern.

Quelle: Stanford CS229. Anmerkungen zum Kurs. Die Flugbahn des Gradientenabstiegs ähnelt einem Abstieg in ein Tal.

Arten von Gradientenabstieg

Nach der Recheneffizienz unterscheidet man drei Hauptarten von Gradientenabstieg, die in Algorithmen des maschinellen und tiefen Lernens verwendet werden. Da ein Datensatz aus Millionen oder sogar Milliarden von Datenpunkten bestehen kann, kann die Berechnung des Gradienten über den gesamten Datensatz rechnerisch ziemlich teuer sein.

Also die 3 wichtigsten Arten von Gradientenabstieg sind:

Batch-Gradientenabstieg

Dies ist die einfachste Art. Dabei wird der Fehler für jedes Beispiel innerhalb des Trainingssatzes berechnet. Nach der Auswertung aller Trainingsbeispiele können die Modellparameter aktualisiert werden. Dies wird oft auch Trainingsepoche genannt. Vorteile: Die rechnerische Effizienz und das Erzeugen eines stabilen Fehlergradienten und einer stabilen Konvergenz. Nachteile: Dieser stabile Fehlergradient kann manchmal zu einem Konvergenzzustand führen, der gerade nicht der beste ist, der vom Modell erreicht werden kann. Der gesamte Trainingssatz muss sich also im Speicher befinden und für den Algorithmus zugänglich sein.

Stochastischer Gradientenabstieg

Beim stochastischen Gradientenabstieg werden die Parameter gemäß dem Fehlergradienten bezüglich des einzelnen Trainingsbeispiels aktualisiert. Dies steht im Gegensatz zum Batch-Gradientenabstieg, bei dem die Parameter nach der Auswertung aller Trainingsbeispiele aktualisiert werden. Auf solche Weise kann stochastischer Gradientenabstieg abhängig vom Problem etwas schneller als der Batch-Gradientenabstieg durchgeführt werden. Vorteil: Anhand häufiger Aktualisierungen kann eine genaue Verbesserungsrate ermittelt werden. Nachteil: Im Gegensatz zu Batch-Gradientenabstieg sind die häufigen Aktualisierungen viel rechenintensiver. Die Häufigkeit der Aktualisierungen kann dazu führen, dass geräuschvolle Gradienten entstehen und die Fehlerrate schwankt anstatt langsam abzunehmen.

Mini-Batch-Gradientenabstieg

Mini-Batch-Gradientenabstieg ist eine Kombination aus dem Batch-Gradientenabstieg und stochastischen Gradientenabstieg und folglich eine oft bevorzugte Methode. Beim Mini-Batch-Gradientenabstieg wird der Trainingssatz einfach in kleine Batches aufgeteilt und für jeden dieser Batches eine Aktualisierung durchgeführt. Dies hilft ein Gleichgewicht zwischen der Effizienz des Batch-Gradientenabstiegs und der Stabilität des stochastischen Gradientenabstiegs zu schaffen. Obwohl übliche Anzahlen von Beispielen pro Batch zwischen 30 und 500 liegen, gibt es wie bei jeder anderen Methode des maschinellen Lernens keine genau definierte Regel, da sich die optimale Anzahl für verschiedene Probleme unterscheiden kann. Am häufigsten wird der Mini-Batch-Gradientenabstieg für die Lösung der Probleme des tiefen Lernens verwendet.

Zusammenfassung

Dieser Artikel bot einen kurzen Überblick über das Gradientenverfahren in Algorithmen des maschinellen und tiefen Lernens sowie auch die wichtigsten Arten von Gradientenabstieg.

Möchten Sie die mathematischen Grundlagen des Gradientenabstiegs besser verstehen und alle Arten richtig anwenden, so können Sie sich an das Team von AI-United.de per Email oder in dem Q&A-Bereich wenden.

Quelle

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.