Gradientenverstärkung (optionale Einheit)

Bei Regressionsproblemen ist es sinnvoll, den signierten Fehler als Differenz zwischen der Vorhersage und dem Label zu definieren. Bei anderen Arten von Problemen führt diese Strategie jedoch häufig zu schlechten Ergebnissen. Eine bessere Strategie für das Gradienten-Boosting ist:

  • Definieren Sie eine Verlustfunktion ähnlich den Verlustfunktionen, die in neuronalen Netzwerken verwendet werden. Zum Beispiel die Entropie (auch als Logverlust bezeichnet) für ein Klassifizierungsproblem.
  • Trainieren Sie das schwache Modell, um den Gradienten des Verlusts gemäß der starken Modellausgabe vorherzusagen.

Formal lautet die Pseudoantwort $z_i$, die zum Trainieren des schwachen Modells in Schritt $i$ verwendet wird, bei einer Verlustfunktion $L(y,p)$, wobei $y$ ein Label und $p$ eine Vorhersage ist:

$$ z_i = \frac {\partial L(y, F_i)} {\partial F_i} $$

Dabei gilt:

  • $F_i$ ist die Vorhersage des starken Modells.

Das vorherige Beispiel war ein Regressionsproblem: Ziel ist es, einen numerischen Wert vorherzusagen. Im Fall einer Regression ist der quadratische Fehler eine häufige Verlustfunktion:

$$ L(y,p) = (y - p)^2 $$

In diesem Fall sieht der Farbverlauf so aus:

$$ z = \frac {\partial L(y, F_i)} {\partial F_i} = \frac {\partial(y-p)^2} {\partial p} = 2(y - p) = 2 \ \text{signed error} $$

Der Gradienten ist also der vorzeichenbehaftete Fehler aus unserem Beispiel mit einem Faktor von 2. Beachten Sie, dass konstante Faktoren aufgrund der Schrumpfung keine Rolle spielen. Beachten Sie, dass diese Äquivalenz nur für Regressionsprobleme mit Verlust von quadratischen Fehlern gilt. Bei anderen Problemen beim überwachten Lernen (z. B. Klassifizierung, Rangfolge oder Regression mit Perzentilverlust) gibt es keine Äquivalenz zwischen dem Gradienten und einem signierten Fehler.

Blatt- und Strukturoptimierung mit dem Newton-Methodenschritt

Die Newton-Methode ist eine Optimierungsmethode wie das Gradientenverfahren. Im Gegensatz zum Gradientenabstieg, bei dem nur der Gradient der Funktion zur Optimierung verwendet wird, nutzt die Newton-Methode sowohl den Gradienten (erste Ableitung) als auch die zweite Ableitung der Funktion zur Optimierung.

Ein Schritt des Gradientenabstiegs sieht so aus:

$$ x_{i+1} = x_i - \frac {df}{dx}(x_i) = x_i - f'(x_i) $$

und Newton-Methode:

$$ x_{i+1} = x_i - \frac {\frac {df}{dx} (x_i)} {\frac {d^2f}{d^2x} (x_i)} = x_i - \frac{f'(x_i)}{f''(x_i)}$$

Optional kann die Methode von Newton auf zwei Arten in das Training von Bäumen mit Gradientenverbessert integriert werden:

  1. Nachdem ein Baum trainiert wurde, wird ein Newton-Schritt auf jedes Blatt angewendet und überschreibt seinen Wert. Die Baumstruktur bleibt unverändert. Nur die Blattwerte ändern sich.
  2. Während des Baumwachstums werden Bedingungen anhand einer Punktzahl ausgewählt, die eine Komponente der Newton-Formel enthält. Dies wirkt sich auf die Struktur des Baums aus.
YDF-Code
In YDF:
  • YDF wendet auf das Blatt immer einen Newton-Schritt an (Option 1).
  • Sie können Option 2 mit use_hessian_gain=True aktivieren.