HumanActivityRecognitionSurvey-Errorbar

# 深層学習学習における予測ごとの信頼度の評価
機械学習において予測したものの確信度について調査したことをまとめる

ユースケースとして、モデルの劣化の評価やひとつの間違いが人命に関わる医学に対して用いられる。

英語での検索ワードは「confidence score」「probability estimate」とした。

よく現れる単語として「キャリブレーション」があり、モデルの劣化評価についての論文が多い印象であった。
極端な確率分布を示すCNNについて適用したいのはトーンカーブではなく、このキャリブレーションかもしれない、

また、私の作成した累積確度分布について二値分類ではROC曲線という名前で存在し、
多クラス分類の場合にはラベルごとにROC曲線を自対他の形式で作成することで対応していた。

以下は調査した論文である。

# 1.[A Comparative Study of Confidence Calibration in Deep Learning: From Computer Vision to Medical Imaging（Riqiang Gao, Thomas Li, Yucheng Tang, Zhoubing Xu, Michael Kammer, Sanja L. Antic, Kim Sandler, Fabien Moldonado, Thomas A. Lasko, Bennett Landman）](https://arxiv.org/abs/2206.08833)

この論文では、深層学習予測モデルが異なるクラスの識別に成功している一方で、ヘルスケアを含む厳しい領域での校正が不十分な問題を指摘している。
また、ロングテール分布は、臨床疾患予測を含む深層学習分類問題に大きな課題をもたらす。
コンピュータビジョンから医用画像までの信頼度校正を橋渡しするために、4つの高影響力のある校正モデルの比較研究を行っている。

考え方としては、確度が0.2であれば正答率も0.2であるといった考えをしており、下図のように可視化している。
薄青は閾値ごとの実際の精度を、濃青は期待する精度との差を表している。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3487085/0da93fbf-c8a7-e55a-4f79-8a13b597c3f0.png)

また、確度の分布についても「Histograms of Predicted Probability」という名前で記載があった。
しかし、この図ではどういった確率分布をしていればよいのか評価できていないように思える。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3487085/a6ae273f-7e14-809e-27bb-097de844611c.png)

2章のキャリブレーションの手法は分布を設計する際に参考になりそうだと感じた。

# 2.[Confidence-Aware Learning for Deep Neural Networks（Jooyoung Moon, Jihyo Kim, Younghak Shin, Sangheum Hwang）](https://arxiv.org/abs/2007.01458)

この論文では、深層ニューラルネットワークの訓練方法として新しい損失関数、Correctness Ranking Lossを提案している。
この損失関数は、クラス確率を明示的に信頼度の順序付けによるより良い信頼度推定となるように正則化する。

一般的にベイズ統計を用いた信頼区間の設定か、分類問題におけるソフトマックス関数による確率解釈の二通りが主流なようだ。

予測の信頼度について、純粋に確率解釈を行う他に予測ラベルの第一確率ー第二確率とする方法もある。

# 3.[A BASELINE FOR DETECTING MISCLASSIFIED AND OUT-OF-DISTRIBUTION EXAMPLES IN NEURAL NETWORKS](https://arxiv.org/pdf/1610.02136.pdf)

この論文は、ニューラルネットワークで誤分類された例や分布外の例を検出するための基準を提案している。著者たちは、ソフトマックス分布からの確率を利用するシンプルな基準を提示している。正しく分類された例は、誤って分類された例や分布外の例よりも最大のソフトマックス確率を持つ傾向があるため、それらを検出することが可能でである。

著者たちは、コンピュータビジョン、自然言語処理、自動音声認識のいくつかのタスクを定義してパフォーマンスを評価し、この基準の有効性をすべてのタスクで示している。さらに、基準が時折超越されることを示し、これらの未探求の検出タスクに対する将来の研究の余地を示している。

この論文は、訓練とテストの分布が異なる場合に機械学習分類器が失敗する傾向にある問題に取り組んでいる。さらに、これらの分類器はしばしば間違っているにもかかわらず高い信頼度の予測を提供し、それが誤った結果を引き起こす可能性がある。この問題を解決するために、著者たちはソフトマックス分布からの予測確率を利用する方法を提案している。
# 3.[Addressing Failure Prediction by Learning Model Confidence](https://arxiv.org/pdf/1910.04851.pdf)
この論文は、ディープニューラルネットワークの信頼性を評価し、その失敗を予測することに焦点を当てている。著者たちは、モデルの信頼度に対する新しい目標基準、すなわちTrue Class Probability（TCP）を提案している。彼らは、TCPを使用することが、古典的なMaximum Class Probability（MCP）に依存するよりも適していることを示している。

著者たちは、失敗予測の文脈でのTCPに対する理論的な保証を提供している。真のクラスは本質的にテスト時には不明なため、著者たちは、この文脈に適応した特定の学習スキームを導入して、トレーニングセット上でTCP基準を学習することを提案している。

彼らは、画像分類とセマンティックセグメンテーションのためのさまざまなネットワークアーキテクチャ、小規模および大規模なデータセットでの詳細な実験を行い、提案されたアプローチの関連性を検証している。彼らのアプローチは、MCPからベイジアン不確実性、さらには失敗予測のために特別に設計された最近のアプローチまで、いくつかの強力な方法を一貫して上回ることを示している。

# 4.[Dropout Distillation for Efficiently Estimating Model Confidence](https://arxiv.org/pdf/1809.10562.pdf)

この論文は、ニューラルネットワークからのより良い校正された不確実性スコアを効率的に出力する方法を提案している。著者たちは、Distilled Dropout Network（DDN）という新しいトレーニングロスを追加することで、標準的な（非ベイジアン）ニューラルネットワークをより内省的にする方法を提案している。この方法は、ベイジアンニューラルネットワークやモデルアンサンブルよりも効率的で、これらはより信頼性の高い不確実性スコアを提供しますが、訓練がより煩雑で、テストが遅くなる傾向がある。

著者たちは、CIFAR-10データセットでの画像分類のタスクでDDNを評価し、校正結果がドロップアウトネットワークからの100のモンテカルロサンプルと比較しても競争力があることを示している。また、彼らは、Faster R-CNNオブジェクト検出フレームワーク内でのより良い校正を提案し、COCOデータセットを使用して、DDNがより良い校正されたオブジェクト検出器の訓練を助けることを示している。

この作業では、より良い校正された不確実性スコアを生成するために、同様のメカニズムを使用した蒸留プロセスを提案している。


# 5.[Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning](https://arxiv.org/abs/1506.02142)

この論文は、ディープラーニングにおけるモデルの不確実性を表現するための新しい理論的枠組みを提案している。著者たちは、ディープニューラルネットワーク（NN）のドロップアウト訓練を深層ガウス過程における近似ベイズ推論として捉える新しい理論的枠組みを開発している。

この理論の直接的な結果として、ドロップアウトNNを用いて不確実性をモデル化するツールが提供され、これまで捨てられてきた既存のモデルから情報を抽出することが可能になる。これにより、計算の複雑さやテストの精度を犠牲にすることなく、ディープラーニングにおける不確実性の表現という問題が緩和される。

著者たちは、ドロップアウトの不確実性の性質について広範な研究を行い、さまざまなネットワークアーキテクチャと非線形性を、MNISTを例に、回帰と分類のタスクで評価している。著者たちは、既存の最先端の方法と比較して、予測対数尤度とRMSEの大幅な改善を示し、ドロップアウトの不確実性を深層強化学習で使用することで研究を終えている。


# 6.[What Uncertainties Do We Need in Bayesian Deep Learning for Computer Vision?](https://arxiv.org/pdf/1703.04977.pdf)

この論文は、ベイジアンディープラーニングにおける不確実性の種類について議論している。著者たちは、不確実性をモデル化するための2つの主要なタイプ、つまり観測に固有のノイズを捉えるアレアトリック不確実性と、十分なデータがあれば説明できるモデルの不確実性であるエピステミック不確実性を提案している。

伝統的には、コンピュータビジョンでエピステミック不確実性をモデル化することは難しかったが、新しいベイジアンディープラーニングツールを使用することで、これが可能になる。著者たちは、視覚タスクにおけるベイジアンディープラーニングモデルでエピステミック対アレアトリック不確実性をモデル化する利点を研究している。

このために、彼らは入力依存のアレアトリック不確実性とエピステミック不確実性を組み合わせたベイジアンディープラーニングフレームワークを提示している。彼らは、このフレームワークの下で、ピクセルごとのセマンティックセグメンテーションと深度回帰タスクでモデルを研究している。

さらに、彼らの明示的な不確実性の形式化は、これらのタスクのための新しい損失関数を導き出し、これは学習減衰として解釈することができる。これにより、損失はノイズの多いデータに対してよりロバストになり、セグメンテーションと深度回帰のベンチマークで新たな最先端の結果をもたらす。

# 7.[深層学習における不確かさ評価の重要性](https://www.jstage.jst.go.jp/article/pjsai/JSAI2019/0/JSAI2019_4I2J201/_article/-char/ja)

この論文では、深層学習手法を用いて学習したモデルが高い精度で予測を行うことができる一方で、予測信頼性を十分に考慮できておらず、予測の困難な外挿データに対しても高い確信を持って予測を行ってしまう危険があると指摘している。

予測信頼性の定義について明確な言及は無いが、極端な出力が多い為ソフトマックス適用後の予測信頼性について言及していると思われる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3487085/df02feb1-3ae4-c26f-116b-7e377a94272d.png)


# 8.[Evidential Deep Learning to Quantify Classification Uncertainty](https://arxiv.org/pdf/1806.01768.pdf)

この研究では、決定論的なニューラルネットワークが広範囲の機械学習問題に対する効果的な予測器を学習することが示されている。しかし、標準的なアプローチでは、ネットワークを訓練して予測損失を最小化するため、結果として得られるモデルはその予測の信頼度について無知であると指摘している。

この問題を解決するために、主観的論理の理論を用いて、同じ予測不確実性を明示的にモデル化することを提案している。具体的には、クラスの確率にディリクレ分布を置くことで、ニューラルネットの予測を主観的な意見として扱い、データからこれらの意見に至る証拠を収集する関数を決定論的なニューラルネットで学習する。

結果として得られる予測器は、そのパラメータがニューラルネットの連続した出力によって設定される別のディリクレ分布である。新しい損失関数の特性がどのように改善された不確実性推定を駆動するかについての予備的な分析を提供している。

また、この方法が分布外のクエリの検出と敵対的な摂動に対する耐性において前例のない成功を達成することを観察している。