80%が本当に80%であるために
確率予測は、p と言った日のうち上昇日の割合がおよそ p であるとき較正されているといいます。順位付けと較正は別の美徳で、日をうまく順序づけられても(AUCが高い)、真実が 0.55 のときに 0.8 と言うモデルはありえます。確率の最も単純なスコアはブライアスコア 1/nΣ(pᵢ-yᵢ)²、つまり予測の平均二乗誤差で、0 が完璧、常に 0.5 と言えば 0.25 になります。較正を見るには [0,1] をビンに分け、各ビンで予測確率の平均と1の割合を比べます。この表が信頼性曲線です。ビンの大きさで重みづけして差を足すと期待較正誤差になります:ECE=Σₖnₖ/n |ȳₖ-p̄ₖ|。
ランダムフォレストは多数の木を平均しますが、平均は確率を0や1から奇妙に遠ざけます。木がノイズの記憶で一致する場所では、確率が極端になりすぎがちです。CalibratedClassifierCV は、取り置いたデータで小さな補正を学習してこれを直します。'sigmoid' 法はモデルのスコアにロジスティック曲線 p'=1/(1+e^(-(a s+b))) を当てはめ(2つの数で安定)、'isotonic' 法は自由な単調非減少の階段関数を当てはめます(柔軟だがデータを多く要する)。金融データでは取り置きフォレストは学習より後の時期でなければならないので、cv=TimeSeriesSplit(3) を渡します。SPYの5,344日の最後の30%では、常に基準率を予測するとブライアスコアは 0.2473 です。生のフォレストは 0.2600、誤差 0.095 で、確率は 0.15 から 0.83 に及びます。シグモイド較正後はブライアスコアが 0.2475、誤差が 0.0001 になります。較正は自信過剰なモデルを誠実なモデルに変え、フォレストに能力がないので誠実なモデルとは基準率です。
- 順位は確率ではない:高いAUCは80%が本当に80%かを教えない。
- ブライアスコアと信頼性ビンが検査手段。超えるべき基準は基準率のブライアスコア。
- 後の時期のデータで較正:
CalibratedClassifierCV(..., cv=TimeSeriesSplit(3))。まずシグモイド、データが多ければアイソトニック。
ラボ:採点される内容
- ブライアスコア10点
- 信頼性の表25点
- 較正誤差15点
- フォレスト10点
- 較正済みフォレスト20点
- 較正の研究20点