Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sampling-free Epistemic Uncertainty Estimation ...

Motoki Kimura
November 15, 2019
400

Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation (ICCV2019 oral)

Motoki Kimura

November 15, 2019
Tweet

Transcript

  1. Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation Motoki Kimura

    AI本部 AIシステム部 AI研究開発第三グループ 株式会社ディー・エヌ・エー
  2. 概要: • 未知のデータに対するモデルの信頼性を測ることができる epistemic uncertainty を、Monte-Carlo dropout のような sampling を用いずに推定する

    • 数十~数百回の forward 計算を必要とする sampling ベースの既存手法と異なり、 epistemic uncertainty の推定を大 幅に高速化できる 提案手法: • noise レイヤ (e.g. dropout) によって生じる activation の誤差について、covariance を求める • noise レイヤ以降の各レイヤの演算を一次近似し、そのヤコビアンを利用することで、 covariance を出力側のレイヤに伝 搬させていく • 畳み込みと ReLU のブロックにおいては、 covariance matrix の対角成分のみを考慮することで計算を効率化 ICCV2019 (oral), arXiv, GitHub (Tensorflow/Keras) 2
  3. Intro: Uncertainty in Deep Learning Aleatoric uncertainty [1] • captures

    noise inherent in the environment • 環境に含まれるノイズ(e.g., データのノイズ)によって生じる推論の不確かさ • 単純に学習データを増やしても小さくできない Epistemic uncertainty [1] • captures our ignorance about the models • モデルの不完全さに由来する推論の不確かさ • 例えば学習データを増やすことで小さくできる 右図(紹介論文の Fig.5)の3行目: • semantic segmentation に対する epistemic uncertainty • 色が黒に近づくほど、不確かさが大きい 3 画像は紹介論文中より引用
  4. Intro: Epistemic Uncertainty • 未知のデータに対するモデルの信頼性を評価できるため、自動運転や外科手術ロボットなどの safety-critical な応用で重要と言われている • 既存手法の多くでは、推論時、モデルに含まれる noise

    (e.g., dropout) レイヤを用いて Monte-Carlo sampling [2] を行い、得られた複数の推論結果の分散を epistemic uncertainty とする • samplingベースの手法では、推論時に数十~数百回以上 forward 計算を行う必要があり、 real-time な応用には適さない • 提案手法: noise レイヤを持つモデルに対して、sampling を一切行うことなく、sampling ベー スの手法と同等の epistemic uncertainty を得る 4
  5. Method: Covariance Propagation 5 covariance propagation の直感的理解のため、下のような dropout を持つ簡単な NN

    を考える  ・基本的な考え: dropout を作用させたレイヤで生じる activation の不確かさ (covariance) を計算し、出力側に伝搬 Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × ×
  6. Method: Covariance Propagation 6 dropout を作用させるレイヤの直前までの各レイヤについて :  ・dropout による noise

    はないので、covariance matrix はゼロ行列  ・(NN の振る舞いは決定的で、 activation に不確かさはない) Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × ×
  7. Method: Covariance Propagation 7 dropout を作用させた直後のレイヤについて :  ・activation ごと独立に dropout

    が作用するため、covariance matrix は対角行列となる  ・Z (dropout) はベルヌーイ分布に従うため、その分散 p×(1 - p) と activation を2乗した値との積が対角成分に入る Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × ×
  8. Method: Covariance Propagation 8 dropout を作用させたレイヤの次のレイヤについて :  ・dropout を作用させたレイヤの covariance

    を伝搬させることで、 covariance を計算する  ・(非線形関数がある場合には一次近似し)ヤコビアンを用いて covariance を伝搬 Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × × 線形化 線形変換に対する covariance propagation
  9. Method: Covariance Propagation 9 以降のレイヤについて :  ・同様にして、出力レイヤまで一層ずつ covariance を伝搬させていく  ・出力レイヤの

    covariance matrix の対角成分が、推論に対する epistemic uncertainty となる Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × × ・・・
  10. Method: Noise Layer (p.7 の内容のより一般的な説明) • noise Z により、covariance は

    式(4) のように変化する • Z が入力に一番近い noise レイヤ の場合、Xi-1 に関する covariance はゼロであるため第一 項および第二項がゼロとなる • かつ Z が要素ごとに独立な noise である場合、式(5) のような対角行列になる 10 画像は紹介論文中より引用
  11. Method: Affine Layers and Non-linearities (p.8-9 の内容のより一般的な説明) • 全結合層や畳み込み層 (affine

    layers) は、重み行列W を用いた線形な変換であるため、 covariance は式(6) のようにして伝搬できる • 活性化関数のような非線形関数 (non-linearities) では、関数をテイラー展開によって一次近似 し、ヤコビアンJ を用いることで近似的に covariance を伝搬させる: 11 画像は紹介論文中より引用
  12. Method: Conv Layers with ReLU Activations • CNN の特徴マップに対する covariance

    matrix の要素数は (C×H×W)^2 でありメモリ効率が悪いため、計 算をもっと効率化できる近似が必要 • 畳み込みでは、近隣の activation のみが非ゼロの共分散を持つ • さらに、ReLU では負の activation がゼロに切り上げられるので、ReLU を作用させるたびに activation の 不確かさが減り、近隣の actication 間の共分散もほぼゼロとみなせるようになる • よって、多くのCNNで用いられる畳み込み + ReLU においては、covariance matrix の対角成分 (要素数: C×H×W) だけを考慮すれば十分 12 画像は紹介論文中より引用
  13. Method: Conv Layers with ReLU Activations covariance matrix の非対角成分(共分散成分)が無視できると仮定すると: •

    畳み込み層による covariance の伝搬は、式(6) から式(9) のように単純化される • 非線形関数による covariance の伝搬は、式(7) から式(10) のように単純化される • ただし、 13 画像は紹介論文中より引用
  14. Experiment: Regression on Synthetic Data • sin(x) (x: [0, 20])

    に noise を加えたものを、3層の隠れ層と最後の隠れ層の前に dropout を持つ NN で学習 • 学習範囲外も含め、 uncertainty の広がりが MC-dropout (N=100) とよく一致 • MC-dropout の sample 数を増やしていくと、 uncertainty が提案手法 (式(4), (6), (7)) によって求めた uncertainty に 漸近しており、提案手法の妥当性が確認できる 14 画像は紹介論文中より引用
  15. Experiment: Semantic Segmentation • Bayesian SegNet [3] を CamVid で学習・評価

    • MC-dropout (N=50) で求めた uncertainty と提案手法 (式(4), (9), (10)) で求めた uncertainty は定性的によく一致 • 分類精度と uncertainty の関係もよく一致している • sample に比例して推論時間が増える MC-dropout に比べ、提案手法はかなり高速 15 画像は紹介論文中より引用
  16. Experiment: Depth Regression • 単眼 depth 推定モデル [4] に対し、最後の conv

    の直前に dropout を入れ、KITTI で学習・評価 • MC-dropout (N=50) で求めた uncertainty と提案手法 (式(4), (9), (10)) で求めた uncertainty は定性的によく一致 • depth の推定精度と uncertaity の関係もよく一致している • synthetic data での実験と同じく、MC-dropout の sample 数を増やしていくと、 uncertainty が提案手法によって求め た uncertainty に漸近している 16 画像は紹介論文中より引用
  17. Summary • Monte-Carlo dropout のような sampling を一切行うことなく、epistemic uncertainty を推 定する手法を提案

    • 提案手法では、モデル中の noise レイヤ (e.g., dropout) によって生じる activation の不確か さを出力層まで伝搬させていくことによって、推論の uncertainty を推測する • classification task および regression task の両方において、実世界のデータセットで提案手 法を評価し、既存手法と比較して epistemic uncertainty の推定を大幅に高速化できることを 示した 17
  18. References [1] Y. Gal, “Uncertainty in Deep Learning,” University of

    Cambridge (PhD thesis), 2016. [2] Y. Gal and Z. Ghahramani, “Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning,” In ICML, 2016. [3] A. Kendall, V. Badrinarayanan, and R. Cipolla, “Bayesian SegNet: Model Uncertainty in Deep Convolutional Encoder-Decoder Architectures for Scene Understanding,” arXiv:1511.02680, 2015. [4] C. Godard, O. Mac Aodha, and G. J. Brostow, “Unsupervised Monocular Depth Estimation with Left Right Consistency,” In CVPR, 2017. 18