Wie funktioniert der Gradient Descent-Algorithmus im maschinellen Lernen?

Inhalt

Dieser Artikel wurde im Rahmen der Data Science Blogathon.

Einführung

Gradient Descent ist einer der am häufigsten verwendeten Algorithmen im maschinellen Lernen in der Industrie. Ja, aber trotzdem, verwirrt viele Neueinsteiger.

Ich verstehe es! Die Mathematik hinter der Steigerung Steigung ist nicht einfach, wenn man gerade erst anfängt. Mein Ziel ist es, Ihnen in diesem Artikel eine Intuition für das Gradientenabstiegverfahren zu vermitteln.

machine-learning-libraries-c-3488948

Wir werden schnell die Rolle einer Kostenfunktion verstehen, die Erklärung des Gradientenabstiegs, wie man den Lernparameter wählt und die Auswirkungen des Überschreitens beim Gradientenabstieg. Lasst uns beginnen!

Was ist eine Kostenfunktion?

Es ist ein Funktion die die Leistung eines Modells für beliebige gegebene Daten misst. Kostenfunktion quantifiziert den Fehler zwischen den vorhergesagten Werten und den erwarteten Werten und stellt ihn als einzelne reelle Zahl dar.

Nachdem wir eine Hypothese mit Parameter Anfangsbuchstaben, berechnen wir die Kostenfunktion. Und mit dem Ziel, die Kostenfunktion zu reduzieren, passen wir die Parameter unter Verwendung des Gradientenabstiegsalgorithmus auf den gegebenen Daten an. Hier ist die mathematische Darstellung dafür:

90857screenshot2041_li-6709060
Quelle: Kursra

Was ist Gradient Descent?

Die Million-Dollar-Frage!

Angenommen, du spielst ein Spiel, bei dem die Spieler auf einem Berggipfel stehen und gebeten werden, den tiefsten Punkt des Berges zu erreichen. Was ist mehr, sie haben die Augen verbunden. Dann, welchen Ansatz würdest du wählen, um den See zu erreichen??

Tómate un momento para pensar en esto antes de seguir leyendo.

La mejor manera es observar el suelo y encontrar dónde desciende la tierra. Desde esa posición, da un paso en dirección descendente e itera este proceso hasta llegar al punto más bajo.

70205gd20mountain-9757155Encontrar el punto más bajo en un paisaje montañoso. (Quelle: Fisseha Berhane)

El descenso de gradiente es un Optimierungsalgorithmus macht iterativo para encontrar el mínimo local de una función.

Para encontrar el mínimo local de una función usando el descenso de gradiente, debemos dar pasos proporcionales al negativo del gradiente (alejarse del gradiente) de la función en el punto actual. Si damos pasos proporcionales al positivo del gradiente (moviéndonos hacia el gradiente), nos acercaremos a un máximo local de la función, und das Verfahren heißt Gradientenaufstieg.

Der Gradientabstieg wurde ursprünglich vorgeschlagen von CAUCHY In 1847. Es ist auch bekannt als steilster Abstieg.

631731_p7z2bkhd0r-9uyn9thdasa-1647200
Quelle: Hellseher

Ziel des Gradientenabstiegsalgorithmus ist es, die gegebene Funktion zu minimieren (zum Beispiel, Kostenfunktion). Um dieses Ziel zu erreichen, führt es zwei Schritte iterativ aus:

  1. Berechne den Gradienten (steht aus), die erste Ableitung der Funktion an diesem Punkt
  2. Mache einen Schritt (bewege dich) in die entgegengesetzte Richtung des Gradienten, die entgegengesetzte Richtung der Steigung vom aktuellen Punkt aus multipliziert mit Alpha mal dem Gradienten an diesem Punkt
36152screenshot2043-5793508
Quelle: Kursra

Alpha wird genannt Lernquote – ein Einstellparameter im Optimierungsprozess. Entscheidet über die Schrittgröße.

Diagramm des Gradientenabstiegsalgorithmus

Wenn wir nur einen Parameter haben (theta), wir können die Kosten von der Variable abhängigen Variable auf der y-Achse und Theta auf der x-Achse darstellen. Wenn es zwei Parameter gibt, können wir uns für ein 3D-Diagramm entscheiden, mit den Kosten auf einer Achse und den zwei Parametern (Thetas) entlang der beiden anderen Achsen.

42181plot-3d-parabola-5821863
Kosten entlang der z-Achse und Parameter (Thetas) entlang der x- und y-Achse (Quelle: Forschungstür)

Es kann auch visualisiert werden unter Verwendung von Konturen. Dies zeigt ein 3D-Diagramm in zwei Dimensionen mit Parametern entlang beider Achsen und der Antwort als Kontur. Der Wert der Antwort steigt mit zunehmender Entfernung vom Zentrum und hat denselben Wert zusammen mit den Ringen. Die Antwort ist direkt proportional zur Entfernung eines Punktes vom Zentrum (entlang einer Richtung).

56656contour-9605028
Gradientenabstieg mit Konturdiagramm. (Quelle: Kursra)

Alpha – La tasa de aprendizaje

Wir haben die Richtung, in die wir uns bewegen wollen, jetzt müssen wir die Schrittgröße bestimmen, die wir nehmen sollen.

* Sie muss sorgfältig gewählt werden, um an lokalen Minima zu enden.

  • Wenn die Lernrate zu hoch ist, könnten wir ÜBERSCHREITEN die Minima und weiter prallen, ohne die Minima zu erreichen
  • Wenn die Lernrate zu niedrig ist, kann das Training zu lange dauern.
43266images-2817704
Quelle: Kursra
  1. ein) Die Lernrate ist optimal, das Modell konvergiert zum Minimum
  2. B) Die Lernrate ist zu niedrig, dauert länger, aber das Modell konvergiert zum Minimum
  3. C) Die Lernrate ist größer als der optimale Wert, es wird überschritten, aber konvergiert (1 / C <η <2 / C)
  4. D) Die Lernrate ist sehr hoch, es wird überschritten und divergiert, geht von den Minima weg, Die Leistung nimmt beim Lernen ab
40982epochss-1425409
Quelle: researchgate

Notiz: Wenn der Gradient abnimmt, während er sich zu den lokalen Minima bewegt, die Schrittgröße nimmt ab. Deswegen, die Lernrate (alfa) kann während der Optimierung konstant sein und muss nicht iterativ variiert werden.

Lokale Minima

Die Kostenfunktion kann aus vielen Minimalpunkten bestehen. Der Gradient kann sich an einem der Minima einpendeln, was vom Startpunkt abhängt (nämlich, die Anfangsparameter (theta)) und die Lernrate. Deswegen, Die Optimierung kann an unterschiedlichen Punkten konvergieren, je nach Startpunkt und Lernrate.

90062gdopt-3765531
Kostenkonvergenzfunktion mit unterschiedlichen Startpunkten (Quelle: Gfycat)

Implementierung des Gradient Descent Codes in Python

23757gdalgo-8810942
Gradient-Descent-Algorithmus

Abschließende Anmerkungen

Sobald wir den Lernparameter abgestimmt (alfa) und die optimale Lernrate erhalten, beginnen wir zu iterieren, bis wir zu den lokalen Minima konvergieren.

Abonniere unseren Newsletter

Wir senden Ihnen keine SPAM-Mail. Wir hassen es genauso wie du.

Datenlautsprecher