予測AI:課題を定義し、誤りを測る

要点

予測はデータと仮定に基づく推定であり、結果の保証ではありません。観測を分類することと将来の値を予測することは別の課題です。

無人ラボのプライベートAI計算基盤
この記事の内容

予測はデータと仮定に基づく推定であり、結果の保証ではありません。観測を分類することと将来の値を予測することは別の課題です。

評価対象を定義する

対象集団、目的変数、予測期間、予定する判断を明確にします。スコアが適切に較正された確率とは限りません。独立した評価データを確保し、学習、前処理の適合、モデル選択には使用しません。

割合だけでなく誤りを読む

以下の架空例は閾値を固定しています。実際の陽性200件のうち検出したのは80件、見逃したのは120件です。正解率86%でも、陽性の大半を発見できたわけではありません。

架空例:ラベル付き1000件、固定閾値
実際の結果陽性と予測陰性と予測
実際に陽性80120
実際に陰性20780
架空例:同じ1000件から計算した指標
指標計算値
適合率(precision)80 / (80 + 20)80 %
再現率(recall)80 / (80 + 120)40 %
正解率(accuracy)(80 + 780) / 100086 %

影響を考えて閾値を選ぶ

適合率は陽性予測のうち真の陽性の割合、再現率は実際の陽性のうち検出した割合です。閾値を変えると両指標が変わる場合があります。同じ集団で比較し、誤警報と見逃しのコストを検討します。

出典と確認

予測を実際の運用時間順にテストする

運用予測では、決定時に利用可能な情報のみを使用する必要があります。ランダム分割は時系列データには適さない場合があります。予測能力を主張する前に、連続する期間をシミュレートし、特徴量バージョンを保持し、単純なベースラインと比較してください。

  • 結果が判明した後にのみ判明する特徴量を除外する
  • トレーニング期間よりも後の期間で評価する
  • 予測期間に基づいて誤差を測定する。

優れたテスト結果が後になって失敗する理由は何か?

情報漏洩、人口変動、または時間的ずれによって結果が変わる可能性がある。データ可用性条件を再現し、展開後にエラーを監視する。

一次資料:scikit-learn — Cross-validation. 関連する方法:実践ガイドを読む.