1.モデルが出力する「予測の不確実性」はどこまで信用できますか?(2/2)まとめ
・モデルは予測の不確実性が増した事を認識せずに自信を持って間違う傾向がある
・ディープアンサンブルがデータの変化に対する耐久性を最も改善するシンプルな戦略
・ディープアンサンブルは比較的小さなアンサンブルサイズ(5など)でも十分有用
2.共変量シフトに対するベストプラクティス
以下、ai.googleblog.comより「Can You Trust Your Model’s Uncertainty?」の意訳です。元記事の投稿は2020年1月15日、Jasper SnoekさんとZachary Nadoさんによる投稿です。アイキャッチ画像のクレジットはPhoto by Andy Kelly on Unsplash
これらの破損した画像をデータ変化の例として使用し、変化の度合いが増加するにつれてディープラーニングモデルが予測する不確実性の確率がどのように変化するか調べました。
以下に、ImageNet-Cの全ての破損タイプについて、各破損レベル(破損していないテストデータも含む)での精度とECE(expected calibration error)を箱ひげ図として表示します。
各色は、異なるタイプのモデルを表します。ベースラインとして使用される素のディープニューラルネットワーク、4つの不確実性手法(ドロップアウト、temperature scaling、ラストレイヤーアプローチ)、およびアンサンブルです。
ImageNet-Cを使ってデータセットの変化に対する耐性を調べました。上図は実際の予測精度(上図)とECE(下図、低いほど良い)の関係です。予測精度が低下しても、モデルが出力する不確実性は増加せず、精度とECEの両方の品質が低下していることがわかります。
データ変化の度合いが大きくなると、各モデルで予測精度のブレ幅が大きくなり(ボックスサイズが大きくなります)、全体として精度が低下します。
理想的には、この精度の低下はモデルの不確実性の増加として反映されるため、ECEに変更はないはずです。しかし、下段のECE図を見ると、これは事実ではなく、キャリブレーションも同様に悪化している事がわかります。
ブライアスコアとNLLについても同様の悪化傾向が見られます。データの変更の度合いが増すにつれて、モデルは予測の不確実が増した事を認識するのではなく、自信を持って間違っていく事が示されています。
キャリブレーションを改善する1つの一般的な方法として、Platt scalingの変形であるTemperature scalingが知られています。これは、トレーニング後の予測の平滑化を含みます。これにより、標準テストデータのキャリブレーションは改善されますが、データの変更度合いによっては事態が悪化する事が良くありました。従って、この手法を適用する実践者は、分布の変化に注意する必要があります。
幸いなことに、他の手法よりはるかに優雅に確実性を低下させる手法がありました。上図の緑色で示されているディープアンサンブルです。ディープアンサンブルは、それぞれが異なる初期化を持つモデルの選択の予測を平均したもので、データの変化に対する耐久性を大幅に改善し、テストされた他の全ての手法よりも優れているシンプルな戦略です。
結論と推奨されるベストプラクティス
私達の論文では、画像、テキスト、オンライン広告データ、ゲノミクスなどのデータセットが変化していく状況で最新モデルの挙動を調査しました。調査結果は、これらの異なる種類のデータ間でほぼ一貫していました。
モデルが主力する不確実性の品質はデータセットが変化すると低下しますが、これを緩和するための有望な研究手段があります。ディープラーニングのユーザーが本調査から次のメッセージを受け取ってくれることを願っています。
・データセットの変化に対する不確実性は、モデルをトレーニングする時に考慮する必要がある現実的な懸念です。テストセットのキャリブレーションと精度を改善しても、多くの場合、データが変化した後のキャリブレーションは改善されません。
・検討した全ての手法の中で、ディープアンサンブルはデータセットの変化に対して最も堅牢であり、比較的小さなアンサンブルサイズ(5など)で十分でした。
・アンサンブルの有効性は、他のアプローチを改善する興味深い手段となりえます。
ディープラーニングモデルの不確実性の予測を改善することは、依然として活発なMLの研究分野です。この重要なトピックに関する今後の研究を推進し評価することがコミュニティに役立つことを期待して、全てのコードとモデル予測をgithubにリリースしています。
3.モデルが出力する「予測の不確実性」はどこまで信用できますか?(2/2)関連リンク
1)ai.googleblog.com
Can You Trust Your Model’s Uncertainty?
2)arxiv.org
Can You Trust Your Model’s Uncertainty? Evaluating Predictive Uncertainty Under Dataset Shift
On Calibration of Modern Neural Networks
3)journals.plos.org
Variable generalization performance of a deep learning model to detect pneumonia in chest radiographs: A cross-sectional study
4)github.com
google-research/uq_benchmark_2019/
コメント