キャリブレーション・不均衡・不確実性
このトピックを完了すると
あなたは、識別能とキャリブレーションの違いを区別し、不均衡データにおける指標選択の含意を説明できるようになります。予測確率を決定論的な判断に変換することなく、データ分割と不確実性を予測確率とともに報告します。
識別能とキャリブレーション
識別能は、モデルが陽性ケースと陰性ケースをどの程度正しく順序付けできるかを問います。キャリブレーションは、予測確率が 0.7 のケースが、長期的に約 70% の率で実際に事象を示すかどうかを問います。二つのモデルが類似したAUCを持っていたとしても、キャリブレーションにおいて異なる場合があります。
不均衡
陽性クラスの率が低い場合、多数派クラスを単純に予測するモデルでも高い精度を達成できます。適合率、再現率、平均適合率、特異度はそれぞれ異なる種類の誤りに重点を置きます。どの誤りが重要か、および閾値の意図された用途を事前に指定します。
キャリブレーションAPIと評価
scikit-learnのキャリブレーションツールは、予測確率と観測されたアウトカムの関係を調べるためのAPIを提供します。train/test分割内でキャリブレーション曲線と指標を計算し、キャリブレーションプロセス自体がテスト情報に適合しないようにします。
不確実性の源泉
単一の予測確率は、サンプル選択、モデルパラメータ、特徴量の測定、またはサイト/時間のばらつきからの不確実性を反映しない場合があります。クロスバリデーションにおけるfoldごとのパフォーマンス、ブートストラップ評価、外部検証など、目的に応じた反復評価を使用して、ばらつきを記録します。
重度のクラス不均衡がある場合、各キャリブレーションビンの観測数は小さくなることがあります。曲線の形状のみを過大解釈しないようにし、信頼区間や反復ばらつきとともにビンごとのサンプルサイズを確認します。
閾値は意思決定ルール
確率を 0 と 1 の分類に変換する閾値は、モデルの固定された特性ではなく、誤りのコストと使用目的に基づくルールです。テストセットで最適な閾値を選択し、そのテストパフォーマンスを最終結果として報告しないでください。
研究質問を通じた解釈
確率が適切にキャリブレーションされていることは、予測確率の信頼性を指すものであり、モデルが因果関係を説明していることや、外部集団で同様に機能していることを意味するものではありません。不確実性とともに、サイト、時間、グループのシフトを考慮します。
一般的な失敗例
- 高いAUCが良好なキャリブレーションを意味すると記述しない。
- 不均衡な設定において精度のみを報告しない。
- キャリブレーションをまずデータセット全体に適合させない。
- 予測確率を決定論的な事象として翻訳(変換)しない。
主要なポイント
- 識別能とキャリブレーションは、異なる評価の質問に対応している。
- 不均衡な設定では、指標と閾値の目的を明確にする必要がある。
- キャリブレーションも分割とリーケージのルールに従う。
次のトピック
次のセクションでは、ロック、シード、ハッシュ、マニフェストを用いた再現可能な分析パッケージを構築します。
参考文献
- scikit-learn calibration: https://scikit-learn.org/stable/modules/calibration.html
- scikit-learn metrics: https://scikit-learn.org/stable/modules/model_evaluation.html
- GroupKFold: https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GroupKFold.html
このセクションの評価構造と例は、BioStatPyによって独立して記述されました。