Wenn 80 % auch 80 % bedeuten soll
Eine Wahrscheinlichkeitsprognose ist kalibriert, wenn unter den Tagen, an denen sie p sagte, der Anteil der Aufwärtstage etwa p beträgt. Ordnen und Kalibrieren sind verschiedene Tugenden: Ein Modell kann Tage gut ordnen (hohe AUC) und 0,8 sagen, wo die Wahrheit 0,55 ist. Der einfachste Score für Wahrscheinlichkeiten ist der Brier-Score, 1/nΣ(pᵢ-yᵢ)², der mittlere quadratische Fehler der Prognose; 0 ist perfekt, 0,25 erhält man, wenn man immer 0,5 sagt. Um die Kalibrierung zu sehen, teilt man [0,1] in Klassen und vergleicht in jeder die mittlere vorhergesagte Wahrscheinlichkeit mit dem Anteil der Einsen. Diese Tabelle ist die Zuverlässigkeitskurve. Die nach Klassengröße gewichtete Summe der Abstände ist der erwartete Kalibrierungsfehler: ECE=Σₖnₖ/n |ȳₖ-p̄ₖ|.
Ein Random Forest mittelt viele Bäume, und das Mitteln rückt Wahrscheinlichkeiten seltsam von 0 und 1 weg: Sie sind oft zu extrem, wo die Bäume sich durch Auswendiglernen von Rauschen einig sind. CalibratedClassifierCV behebt das, indem es auf zurückgehaltenen Daten eine kleine Korrektur lernt. Die Methode 'sigmoid' passt eine logistische Kurve p'=1/(1+e^(-(a s+b))) an die Scores des Modells an (zwei Zahlen, stabil), 'isotonic' eine freie nicht fallende Treppenfunktion (flexibler, braucht mehr Daten). Bei Finanzdaten müssen die zurückgehaltenen Folds zeitlich nach den Trainingsfolds liegen, also cv=TimeSeriesSplit(3) übergeben. Auf den letzten 30 % von 5.344 SPY-Tagen hat die ständige Vorhersage der Basisrate einen Brier-Score von 0,2473. Der rohe Forest erreicht 0,2600 mit einem Fehler von 0,095, seine Wahrscheinlichkeiten reichen von 0,15 bis 0,83; nach Sigmoid-Kalibrierung ist der Brier-Score 0,2475 und der Fehler 0,0001. Die Kalibrierung machte ein überzuversichtliches Modell ehrlich, und das ehrliche ist die Basisrate, weil der Forest keine Fähigkeit hat.
- Rang ist keine Wahrscheinlichkeit: Eine hohe AUC sagt nichts darüber, ob 80 % auch 80 % heißt.
- Brier-Score und Zuverlässigkeitsklassen sind die Prüfungen; die zu schlagende Basis ist der Brier-Score der Basisrate.
- Auf späteren Daten kalibrieren:
CalibratedClassifierCV(..., cv=TimeSeriesSplit(3)), erst Sigmoid, Isotonic bei mehr Daten.
Lab: Was bewertet wird
- Der Brier-Score10 Pkt.
- Die Zuverlässigkeitstabelle25 Pkt.
- Kalibrierungsfehler15 Pkt.
- Der Forest10 Pkt.
- Der kalibrierte Forest20 Pkt.
- Die Kalibrierungsstudie20 Pkt.