はじめに
持橋大地・鈴木大慈 監訳「確率的機械学習 入門編I」は,世界的に評価の高いK.P.Murphy著 "Probabilistic Machine Learning (Book1)" の和訳であり,確率モデルに基づく機械学習,深層学習といった基礎が丁寧に整理されている。私は統計検定1級として数理統計の基礎は学んできたが,機械学習・深層学習は実務に応じて場当たり的に学んできた。実務での応用に向けて,機械学習・深層学習の基礎を体系的に学び,チームの技術力を底上げしたいと考えている。また読書メモに自身の理解をまとめることで,製造業に携わる若いエンジニアにとっても有益な知識を還元できればと考えている。
※なおボリュームが多い本なので,知っているところは端折りながら読み進めたい。
5.1 ベイズ決定理論
5.1.3 ROC 曲線
本項では,ROC曲線について説明している。
以下のようなクラス混同行列を考える。
| 推定値 : 0 | 推定値 : 1 | |
|---|---|---|
| 真値 : 0 | TN | FP |
| 真値 : 1 | FN | TP |
この混同行列から計算される量のうち,再現率(recall)またはヒット率(hit rate)は,
また偽陽性率(false positive rate, FPR)または誤警報率(false alarm rate)・第一種過誤率(type I error rate)は,
横軸をFPR・縦軸をTPRとし,二値分類の閾値を変化させたときに得られる曲線を受信者操作特性(receiver operating characteristic, ROC)曲線と呼ぶ。
5.1.4 PR 曲線
負例が多い場合,FPRは大きく変化せずROC曲線の有用性が低下する。その対策として,FPRの代わりに,正例だけから計算される適合率(precision)に置き換えることが挙げられる。適合率は,
先述したTPRは再現率(recall)と呼ばれ,横軸を再現率・縦軸を適合率とし,二値分類の閾値を変化させたときに得られる曲線をPR曲線と呼ぶ。

適合率・再現率の要約統計量として,適合率・再現率の調和平均であるF値が挙げられる。
5.1.5 回帰問題
分類問題では,有限個の行動と自然の状態
について考えていた。本項では,これらが実数となる場合,すなわち回帰問題について考える。
L2損失
損失は,
この場合,リスク関数は,
最適な行動は,リスクの微分が0になるような行動である。すなわち,
L1損失
損失は,
最適な行動は事後中央値(posterior median)すなわち
フーバー損失
フーバー損失(Huber loss)は,L2損失とL1損失を組合わせたような損失であり,

5.1.6 確率的予測問題
本項までは,取り得る行動が「クラスラベルを1つ選ぶこと」や「実数値を選ぶこと」ということを想定してた。本項では,取り得る行動の集合が確率分布であることを想定する。
そのため,真の確率分布と,行動を表す別の確率分布
を比較することになる。
KL,交差エントロピー,対数損失
2つの分布を比較するための損失関数として,カルバック・ライブラー ダイバージェンス(Kullback-Leibler divergece, KLダイバージェンス)が挙げられる。
KLダイバージェンスは,以下のように定義される。
KLダイバージェンスを変形すると,
KLダイバージェンスを最小化するような行動は,交差エントロピーの最小化となる。
Brierスコア
KLダイバージェンスのの項は,低確率の事象の誤差に対して影響を受ける可能性が高い。そのため確率の差で定義されるBrierスコアが用いられることがある。
まとめと感想
「第5章 決定理論」のベイズ決定理論における,ROC曲線・PR曲線・確率的予測問題についてまとめた。
分類問題・回帰問題の指標を再確認する
今回出てきたROC曲線や適合率・再現率,L2損失・L1損失などは,機械学習の評価においてはおなじみの話題であった。
しかし本書では,クラス不均衡が発生したときの影響など,実務上で問題になることについて解説しており,有益だと感じた。
また,L2損失・L1損失についても,事後確率との関係が示されており,ベイズ決定理論においては様々な問題が統合的な視点で説明されていることが再確認できた。
本記事を最後まで読んでくださり,どうもありがとうございました。
参考サイト
- 確率的機械学習:入門編 I |朝倉書店
- 『確率的機械学習:入門編』サポートサイト
- 原著関連
- Probabilistic Machine Learning: An Introduction : 原著のサポートページ
- pyprobml/notebooks.md at auto_notebooks_md · probml/pyprobml · GitHub : 原著の図作成用Notebooks一覧