Slide 1

Slide 1 text

Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation Motoki Kimura AI本部 AIシステム部 AI研究開発第三グループ 株式会社ディー・エヌ・エー

Slide 2

Slide 2 text

概要: • 未知のデータに対するモデルの信頼性を測ることができる 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

Slide 3

Slide 3 text

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 画像は紹介論文中より引用

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

Method: Covariance Propagation 5 covariance propagation の直感的理解のため、下のような dropout を持つ簡単な NN を考える  ・基本的な考え: dropout を作用させたレイヤで生じる activation の不確かさ (covariance) を計算し、出力側に伝搬 Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × ×

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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. × × ×

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

Method: Covariance Propagation 9 以降のレイヤについて :  ・同様にして、出力レイヤまで一層ずつ covariance を伝搬させていく  ・出力レイヤの covariance matrix の対角成分が、推論に対する epistemic uncertainty となる Last layer before the first Dropout Output ・・・ ・・・ Dropout FC, Conv, BN, ReLU, etc. × × × ・・・

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

Method: Affine Layers and Non-linearities (p.8-9 の内容のより一般的な説明) • 全結合層や畳み込み層 (affine layers) は、重み行列W を用いた線形な変換であるため、 covariance は式(6) のようにして伝搬できる • 活性化関数のような非線形関数 (non-linearities) では、関数をテイラー展開によって一次近似 し、ヤコビアンJ を用いることで近似的に covariance を伝搬させる: 11 画像は紹介論文中より引用

Slide 12

Slide 12 text

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 画像は紹介論文中より引用

Slide 13

Slide 13 text

Method: Conv Layers with ReLU Activations covariance matrix の非対角成分(共分散成分)が無視できると仮定すると: • 畳み込み層による covariance の伝搬は、式(6) から式(9) のように単純化される • 非線形関数による covariance の伝搬は、式(7) から式(10) のように単純化される • ただし、 13 画像は紹介論文中より引用

Slide 14

Slide 14 text

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 画像は紹介論文中より引用

Slide 15

Slide 15 text

Experiment: Semantic Segmentation • Bayesian SegNet [3] を CamVid で学習・評価 • MC-dropout (N=50) で求めた uncertainty と提案手法 (式(4), (9), (10)) で求めた uncertainty は定性的によく一致 • 分類精度と uncertainty の関係もよく一致している • sample に比例して推論時間が増える MC-dropout に比べ、提案手法はかなり高速 15 画像は紹介論文中より引用

Slide 16

Slide 16 text

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 画像は紹介論文中より引用

Slide 17

Slide 17 text

Summary • Monte-Carlo dropout のような sampling を一切行うことなく、epistemic uncertainty を推 定する手法を提案 • 提案手法では、モデル中の noise レイヤ (e.g., dropout) によって生じる activation の不確か さを出力層まで伝搬させていくことによって、推論の uncertainty を推測する • classification task および regression task の両方において、実世界のデータセットで提案手 法を評価し、既存手法と比較して epistemic uncertainty の推定を大幅に高速化できることを 示した 17

Slide 18

Slide 18 text

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