Table of Contents

Gradient Boosting

Grundlegendes simples Problem:

Gegeben Vektor von unabhängigen Veriablen $X = (X_1, ..., X_n)^T$ finde eine optimale Funktion $f^*(X)$, die abhängige Variable $Y$ vorhersagt.

$f^*(X)$ sollte interpretierbar sein, d.h. eine Struktur besitzen, die den Anteil jedes Beitrags eines unabhängigen Variablen erklärt.

Beispiel hierfür ist die GLM-Struktur (Generalized Linear Model (Nelder & Wedderburn): $$f^*(X) = \beta_0 + \beta_1 X_1 + ... + \beta_n X_n$$ (Unterschied zu LM: Fehlerterm muss nicht normalverteilt sein, sondern kann Verteilung der exponentiellen Familie besitzen)

Beispiel für eine GAM-Struktur (Generalized Additive Model): $$f^*(X) = \beta_0 + f_1(X_1) + ... + f_n(X_n)$$

Typische Vorgehensweise ist die ML-Schätzung um ein Regressionsmodell zu fitten. Probleme ML-Schätzung:

Gradient boosting wird eingesetzt, um allgemeine Arten von Risikofunktionen bzgl. einer Vorhersagefunktion $f$ zu minimieren.

Beispiele hierzu: Quadrierter Fehler in gauß'scher Regression, negative log likelihood loss function.

Boosting führt zu einer additiven Vorhersagefunktion, wie $f^*(X)=\beta_0+f_1(X_1)+...+f_p(X_p)$

Wenn Boosting bis zur Konvergenz durchgeführt wird, kann es als Alternative zu konventionellen Fittingmethoden (wie Fisher scoring, backfitting) für GAM Modelle gesehen werden.

Warum boosting?

Schätzproblem

Schätzung von $f^* := \argmin_{f(.)} E[p(Y,f(X))]$ mit $p$ als differenzierbare Loss-Funktion bzgl. einer Vorhersagefunktion $f(X)$.

Beispielhafte Loss-Funktion: Quadrierter Fehler in Gauß'scher Regression $p=(Y-f(X))^2$

Gegeben $X=(X_1, ..., X_n), Y=(Y_1,...,Y_n)$, minimiere das empirische Risiko

$$R = \frac{1}{n} \sum_{i=1}^n p(Y_i, f(X_i))$$

Beispiel (quadratischer Fehler): $$R = \frac{1}{n} \sum_{i=1}^n p(Y_i - f(X_i))^2$$

Basic idea

  1. Generate simple regression model.
  2. Compute error residual.
  3. Learn to predict residual
  4. Add to initial model