Verlust reduzieren: Ein iterativer Ansatz

Im vorherigen Modul wurde das Konzept des Verlusts vorgestellt. Hier in diesem Modul erfahren Sie, wie Sie mit einem Modell für maschinelles Lernen iterativ Verluste reduzieren.

Das iterative Lernen erinnert Sie möglicherweise an das Spiel „Heiß und Kalt“ für Kinder, bei dem es darum geht, ein Wimmelbild wie einen Fingerhut zu finden. In diesem Spiel ist das "versteckte Objekt" das bestmögliche Modell. Sie beginnen mit einer wilden Schätzung ("Der Wert von \(w_1\) ist 0") und warten, bis das System Ihnen mitteilt, was der Verlust ist. Dann versuchen Sie einen weiteren Vermutungsversuch ("Der Wert von \(w_1\) ist 0,5.") und sehen, wie hoch der Verlust ist. Aah, es wird wärmer. Wenn du dieses Spiel richtig spielst, wird es normalerweise wärmer. Der Trick des Spiels besteht darin, so effizient wie möglich das bestmögliche Modell zu finden.

Die folgende Abbildung zeigt den iterativen Test-and-Error-Prozess, den die Algorithmen für maschinelles Lernen zum Trainieren eines Modells verwenden:

Der Zyklus des Wechsels von Features und Labels zu Modellen und Vorhersagen.

Abbildung 1. Ein iterativer Ansatz zum Trainieren eines Modells.

Wir verwenden diesen iterativen Ansatz im gesamten Machine Learning Crash Course und werden dabei verschiedene Komplikationen im Detail beschreiben, insbesondere in der stürmischen Cloud mit dem Namen „Modell (Vorhersagefunktion)“. Iterative Strategien sind im maschinellen Lernen vorrangig, da sie sich so gut auf große Datasets skalieren lassen.

Das „Modell“ nimmt ein oder mehrere Merkmale als Eingabe und gibt eine Vorhersage als Ausgabe zurück. Betrachten Sie der Einfachheit halber ein Modell, das ein Feature (\(x_1\)) verwendet und eine Vorhersage zurückgibt (\(y'\)):

$$ y' = b + w_1x_1 $$

Welche Anfangswerte sollen für \(b\)und \(w_1\)festgelegt werden? Bei linearen Regressionsproblemen sind die Startwerte nicht wichtig. Wir könnten Zufallswerte auswählen, aber wir nehmen stattdessen einfach die folgenden trivialen Werte:

  • \(b\) = 0
  • \(w_1\) = 0

Angenommen, der erste Featurewert ist 10. Wenn Sie diesen Featurewert in die Vorhersagefunktion einfügen, ergibt sich Folgendes:

$$ y' = 0 + 0 \cdot 10 = 0 $$

Der „Compute Loss“-Teil des Diagramms ist die Verlustfunktion, die das Modell verwenden wird. Angenommen, wir verwenden die Funktion der quadratischen Verluste. Die Verlustfunktion nimmt zwei Eingabewerte auf:

  • \(y'\): Die Vorhersage des Modells für die Features x
  • \(y\): Das richtige Label für das Element x.

Wir haben nun den Teil des Diagramms erreicht, in dem sich die Compute-Parameter aktualisieren lassen. Hier untersucht das System für maschinelles Lernen den Wert der Verlustfunktion und generiert neue Werte für \(b\) und \(w_1\). Nehmen wir vorerst an, dass diese mysteriöse Box neue Werte errechnet. Dann wertet das System für maschinelles Lernen alle diese Merkmale mit all diesen Labels neu aus, was einen neuen Wert für die Verlustfunktion liefert und neue Parameterwerte ergibt. Die Lernphase wird fortgesetzt, bis der Algorithmus die Modellparameter mit dem geringstmöglichen Verlust erkennt. Normalerweise iterieren Sie, bis sich der Gesamtverlust nicht mehr ändert oder sich zumindest extrem langsam ändert. Wenn dies geschieht, sagen wir, dass das Modell konvergent ist.