Minimieren von Modellfehlern mit Kostenfunktionen
Während des Lernprozesses wird ein Modell so oft geändert, bis es qualitativ hochwertige Schätzungen vornehmen kann. Für die Bestimmung der Leistungsfähigkeit eines Modells wird im Lernprozess Mathematik in Form einer Kostenfunktion angewandt. Die Kostenfunktion wird auch als Zielfunktion bezeichnet. Um Kostenfunktionen besser verstehen zu können, werden sie im Folgenden aufgeschlüsselt.
Fehler, Kosten und Verlust
Beim überwachten Lernen beziehen sich die Begriffe „Fehler“, „Kosten“ und „Verlust“ auf die Anzahl der Fehler, die ein Modell bei der Vorhersage von Bezeichnungen macht.
Diese drei Begriffe werden beim maschinellen Lernen nicht genau voneinander abgegrenzt und können daher verwirrend sein. Der Einfachheit halber verwenden wir sie hier synonym. Die Kosten werden mathematisch berechnet, d. h., es handelt sich dabei nicht um eine qualitative Bewertung. Wenn ein Modell beispielsweise vorhersagt, dass eine Tagestemperatur 4 °C beträgt, der tatsächliche Wert jedoch bei 1,5 °C liegt, kann davon ausgegangen werden, dass ein Fehler von 2,5 °C vorliegt.
Kostenminimierung als Ziel
Da die Kosten angeben, wie schlecht ein Modell funktioniert, besteht unser Ziel darin, null Kosten zu haben. Anders ausgedrückt: Wir möchten das Modell so trainieren, dass es überhaupt keine Fehler macht. Die Umsetzung dieser Idee ist jedoch oft nicht möglich. Stattdessen wird als weniger striktes Ziel beim Trainieren des Modells festgelegt, dass so geringe Kosten wie möglich entstehen sollen.
Aufgrund dieses Ziels wird durch die Berechnung der Kosten auch festgelegt, was das Modell zu lernen versucht. Im vorherigen Beispiel haben wurden Kosten als Fehler bei der Schätzung der Temperatur definiert.
Was ist eine Kostenfunktion?
Beim überwachten Lernen ist eine Kostenfunktion ein kleiner Codeabschnitt, der die Kosten anhand der Vorhersage eines Modells und der erwarteten Bezeichnung – der richtigen Antwort – berechnet. In der vorherigen Übung haben Sie beispielsweise die Kosten berechnet, indem Sie die Vorhersagefehler berechnet, quadriert und dann summiert haben.
Nachdem die Kostenfunktion die Kosten berechnet hat, wissen Sie, ob das Modell gut funktioniert oder nicht. Wenn die Leistung gut ist, können Sie das Training beenden. Andernfalls können Sie die Kosteninformationen an den Optimierer übergeben, der anhand dieser Informationen neue Parameter für das Modell auswählt.
Während des Trainings können unterschiedliche Kostenfunktionen die Trainingsdauer oder -qualität beeinflussen. Wenn die Kostenfunktion beispielsweise immer nur kleine Fehler zurückgibt, nimmt der Optimierer auch nur geringfügige Änderungen am Modell vor. Ein weiteres Beispiel ist, wenn die Kostenfunktion große Werte zurückgibt, wenn bestimmte Fehler gemacht werden. Dann nimmt der Optimierer Änderungen am Modell vor, sodass diese Arten von Fehlern nicht passieren.
Es gibt keine Kostenfunktion, die für jede Situation geeignet ist. Welche am besten geeignet ist, hängt von Ihren Zielen ab. Sie müssen häufig mit Kostenfunktionen experimentieren, um das gewünschte Ergebnis zu erhalten. Um dieses Experiment geht es in der nächsten Übung.