512 Views
August 28, 20
スライド概要
2020/08/028
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP [DL Papers] 10分で10本の論⽂をざっくりと理解する (ICML2020) Hirono Okamoto, Matsuo Lab http://deeplearning.jp/ 1
書誌情報 ICML2020で個⼈的に気になった論⽂を眺めたのでざっくりと共有 n 論⽂リスト n n n n n n n n n n n n Uncertainty Estimation Using a Single Deep Deterministic Neural Network SDE-Net: Equipping Deep Neural Networks with Uncertainty Estimates Being Bayesian about Categorical Probability Detecting Out-of-Distribution Examples with Gram Matrices Safe Deep Semi-Supervised Learning for Unseen-Class Unlabeled Data Semi-Supervised Learning with Normalizing Flows Negative Sampling in Semi-Supervised Learning Self-supervised Label Augmentation via Input Transformations Automatic Shortcut Removal for Self-Supervised Representation Learning Perceptual Generative Autoencoders それぞれの論⽂を1分(背景20秒・⼿法30秒・結果10秒)で説明する n 質問は最後にまとめて5分間
Uncertainty Estimation Using a Single Deep Deterministic Neural Network
背景: 不確かさを求める先⾏研究における問題点 n 図: 不確かさの⼤きさを可視化 n (a): Deep Ensemblesは決定境界のとこしか不確かさが⼤きくならない (b): DUQ(提案⼿法)はデータ分布から離れると不確かさが⼤きくなる n ※ Deep Ensembles: Simple and scalable predictive uncertainty estimation using deep ensembles n
⼿法: セントロイドからの距離 = 不確かさ n ソフトマックスで分類するのではなく,クラスの中⼼からの距離を使って分類する n cのクラスの画像ならクラスcのセントロイドに近づけるように,それ以外のクラスの画像な らクラスcのセントロイドから遠ざけるように学習する n セントロイドは移動平均で求める
結果: 不確かさを利⽤した画像データの分布外検知(OoD検知) 左表: 分布内データ(訓練データ): Fashion MNIST,分布外データ: MNIST n 右表: 分布内データ(訓練データ): CIFAR-10,分布外データ: SVHN n n 感想: そこそこの結果. アイデアは⾯⽩いしトイデータはうまくいっているけど,⼊⼒が画像 データになるとそこまでうまくいかないのはOoD検知においてよくある話
SDE-Net: Equipping Deep Neural Networks with Uncertainty Estimates
背景: 不確かさを求める先⾏研究における問題点 n 先⾏研究の問題点: Bayesian neural network (BNN)は学習が難しい Deep Ensemblesは訓練コストが⾼い n 他のnon-bayesianな⼿法はデータの不確かさとモデルの不確かさを混同してしまっている n n n n 2種類の不確かさ n n n 例えば⼀個前紹介した⼿法とか データの不確かさ: クラスの重なりやデータのノイズ モデルの不確かさ: データの観測が⾜りないことからくる不確かさ 提案⼿法は両⽅の不確かさが求められるし簡単に実装できるし分類にも回帰にも使える
⼿法: モデルの不確かさをブラウン運動としてモデル化する n ResNetは⼒学系の離散化としてみなせる(neural ODE) n ただ,neural ODEは決定的なモデルなので,確率的な⼒学系をモデル化することを考える n Zは標準正規分布からのサンプリング → n fとgはDNNで損失関数は右式(詳しくは論⽂のアルゴリズム) ⼀項⽬は分類誤差最⼩化 ⼆項⽬は⼊⼒を訓練データとし, 分散を⼩さくする項 n 三項⽬は⼊⼒をOODデータとし, 分散を⼤きくする項 n n n OODデータは訓練データに ガウスノイズを乗せて⼈⼯的に作成
⼿法: モデル構造 Drift netはクラス確率を出⼒し,この値からデータの不確かさを計算する n Diffusion netの出⼒の分散の値からモデルの不確かさを計算する n
結果: 不確かさを利⽤したOOD検知 n そこそこよい.他にも敵対的サンプルの検知,誤分類検知,active learningなどの結果も
Being Bayesian about Categorical Probability
背景: 先⾏研究の問題点とその解決策 n 先⾏研究の問題点 n 通常のNNは過剰に⾃信をもった出⼒を返してしまうし,キャリブレートもされてない n BNNは上記の問題を解決するが,学習が難しい n n そのため,Out-of-distributionのサンプルに弱い 提案⼿法 n ターゲット分布に事前分布をおいてベイズルールで更新し,事後分布とDNNの出⼒を近づけるよ うに学習する n 事前分布の信念が正則化の役割を果たす
⼿法: 近似事後分布とターゲット分布を近づける n 表記: n ソフトマックス出⼒ n クラスラベルの数 n ターゲットの事前分布 n ターゲットの事後分布 n 近似事後分布 n n n fはロジット,Wはパラメタ ディリクレのパラメタをDNN の出⼒とする 近似事後分布とターゲット分布を近づける n n ⽬的関数は次のELBOを最⼤化となる それぞれの項は解析的に計算でき,勾配も計算可能
結果: キャリブレーション・OoD検知 n 通常のソフトマックス出⼒を使ったモデルよりもキャリブレーションされており,OoD検知 の性能も良い n ECE: キャリブレーションの性能を測る指標で⼩さいほどよい キャリブレーション結果 OoD検知結果
Detecting Out-of-Distribution Examples with Gram Matrices
背景: OoD検知は重要 テスト時に訓練データになかったクラスを検知するタスクは実世界において重要 n CIFAR10で学習した分類器が,SVHNの画像を⼊⼒としたときに0.9の値を出⼒する問題が ある n n n この問題は⽣成モデルを使っても解決できない 先⾏研究はOODのテスト サンプルが必要であったり, 識別器をいじる必要がある
⼿法: ⾼次のグラム⾏列を利⽤する n アイデア: DNNにおいて分布内データと分布外データで異なる内部表現が獲得されているはず n ⼿法: グラム⾏列の値のmax値とmin値の差をOoD検知の指標とする n 差が⼤きいほど,分布外データであるとする 分布内データ
結果: OoD検知 全体的に強い n ただ,near-OoD Outliersにはそこ まで強くない n n ex) CIFAR10が分布内, CIFAR100が分布外のときなど
Safe Deep Semi-Supervised Learning for Unseen-Class Unlabeled Data
背景: SSLでラベルなしデータにOoDデータが⼊っていた場合 n 半教師あり学習(SSL)ではラベルあり データだけでなく,ラベルなしデータ も⽤いることができる n ラベルなしデータは⼀般的な問題設定 であれば,全部分布内データである n しかし,実応⽤上では必ずしもラベル なしデータが分布内データであるとは 限らない n このとき,先⾏研究のSSLの⼿法を⽤ いると,精度が落ちる問題がある
⼿法: ラベルなしデータの正則化項に重み付けを⾏う n よくあるSSLの損失関数 =通常の教師ありロス + 正則化 正則化の例 consistency regularization n 提案⼿法: ラベルなしデータの正則化項に重み付けを⾏う n n entropy minimization αを固定してθを更新する ただし,パラメータαは教師あり学習部分の性能を落とさないように学習する n θを固定してαを更新する
⼿法: 図解 n まとめると,
結果: MNIST・CIFAR10分類の正解率 横軸: ラベルなしデータにOODデータが含まれる割合 n 先⾏研究のSSLはOODデータが増えていくと,普通にラベルありデータだけで教師あり学 習したときよりも精度が落ちる n 提案⼿法は,OODデータが増えても⽐較的正解率は⾼いままとなる n
Semi-Supervised Learning with Normalizing Flows
背景: 複雑なデータ分布における半教師あり学習 n 半教師あり学習の1つの⽅法として,⽣成モデルであるガウス混合分布(GMM)を⽤いるもの がある ラベルありデータとラベルなしデータ両⽅を利⽤して分布推定したあと,分類が可能 n 右図のようにより複雑なデータ分布であるときにどうするか n 潜在空間上でGMMをモデル化する → 深層⽣成モデルの1つであるFlowを利⽤する n 最尤推定などで学習
⼿法: Flow Gaussian Mixture Model (FlowGMM) n 潜在空間上でのガウス分布 n flowの式 n 後はGMMと同じように尤度最⼤化で学習するだけ n テスト時のラベル予測はベイズの定理を使う 周辺分布 → より,
結果: トイデータ・テキスト・画像分類 n アンラベルデータが決定境界の 学習に良い感じに使われている テキスト分類(左表)は良さげ n 画像分類(右表)は最新のモデルには負けている n n flowモデルとしてRealNVPではなくglowなどの最新のものを使うとより良い結果になる可能性はある
Negative Sampling in Semi-Supervised Learning
背景: Negative Samplingは最近注⽬されている n Negative samplingは代表的なものだとword2vecに利⽤されている n n そもそもNegative Samplingとは? n n その他,最近流⾏りの対照推定を使った⼿法はNegative Samplingの派⽣である モデルに特定の関係が間違っていると学習させる⼿法のこと この論⽂の⽬的: n SSLにNegative Samplingを組み込んで先⾏研究のSSLの⼿法の性能を上げる
⼿法: negative sampleの疑似ラベルを利⽤ n 教師あり部分のロスは負の対数尤度(NLL) n 教師なし部分も含めて,次の尤度を考える n ここで,教師なし部分を次のように書き換える n このとき,全体のNLLは 実際には,not true labelはわからない n そのため,予測値がしきい値より ⼩さくなるものをnot true label (negative sample)とする n n 結局,アルゴリズムは右 n めっちゃ単純
結果: negative samplingはSSLに有効 n 提案⼿法を利⽤することで,精度があがっていることがわかる n n また,VATと組み合わせることもできる ハイパラであるラムダにも頑健 n ラムダよりしきい値Tにどれだけ頑健かみるべきでは…?
Self-supervised Label Augmentation via Input Transformations
背景: ⾃⼰教師あり学習を教師あり学習に使いたい n 先⾏研究の問題点: 近年の⾃⼰教師あり学習の⼿法は全てのデータにラベルがある場合,精度向上のテクニックとし て使えない n (⾃⼰教師あり学習の⽬的は下流タスクに利⽤できる表現を学習することだから) n n 回転を利⽤したオーグメンテーション(DA)や マルチタスク学習(MT)したときに, ラベル予測精度は必ずしも上昇しない n 下図はマルチタスク学習
⼿法: 回転とクラスラベルの結合ラベルの分類器を利⽤する n 訓練時: 結合ラベル分類器ρを学習させる n テスト時: それぞれの⾓度のクラスの予測をアンサンブルさせる(⾃⼰蒸留してもよい)
結果: 様々なデータセットで有効性を確認 n ⾃⼰教師あり学習として回転を使ったと き,様々なデータセットでベースライン より精度向上することが確認された SD: ⾃⼰蒸留 n AG: アンサンブル n n ほかのデータオーグメンテーション⼿法 と組み合わせたときも精度向上した
Automatic Shortcut Removal for Self-Supervised Representation Learning
背景: ⾃⼰教師あり学習におけるショートカットをなくしたい n ⾃⼰教師あり学習の⽬的: 下流タスクが解けるような良い表現を学習すること n n そのために,疑似タスクを解くことで表現を学習する(ex: 回転をあてる・RGBをあてる) ショートカットとは,簡単に学習できる,疑似タスクを予測するための特徴のこと ショートカットがあると,良い表現を学習することができない n 例えば,回転予測の疑似タスクを考える n n n n 下図のように,図中に⽂字が含まれていると,これをみるだけで回転⽅向がわかってしまう 実際には,最終的に回転を予測したいのではなく,下流タスクが解けるような良い表現を得たい 提案⼿法はこのようなショートカットを消す⼿法
⼿法: 疑似タスクを解くのが難しくなるような「Lens」を利⽤する n Lensの学習: 再構成誤差を⼩さくしつつも,疑似タスクが解けなくなるような敵対的学習を⾏う n 特徴抽出器の学習: 疑似タスクを解くために単純に予測誤差を⼩さくするように学習する Unet
結果: 様々な疑似タスクにおいて下流タスクの精度が上昇 n 様々な疑似タスクにおいて,Lensを通すことによって,下流タスクであるイメージネット とPlaces205の分類精度が上昇した
Perceptual Generative Autoencoders
背景: 先⾏研究の深層⽣成モデルにおける問題点 n 先⾏研究の深層⽣成モデルにおける問題点 GAN: モードコラプスする flow: 冗⻑な潜在次元 n VAE: ぼやけたサンプルの⽣成 n n n これらの⽣成モデルはターゲット分布をデータ空間で⼀致させようとしている n n 多様体仮説によると,現実の世界のデータはより⼩さい次元の多様体に集中している アイデア: データ空間ではなく,潜在空間で分布を⼀致させようとしたほうがいいのでは 潜在空間 encoder データ空間 decoder
⼿法: 潜在空間とデータ空間で分布を⼀致させる n perceptual generative autoencoder (PGA)の損失関数 n n 再構成誤差 + 潜在変数の再構成誤差 × 2 これだけだと,エンコードされたデータ分布が正規分布に近づかない n そのため,これらを近づけるために2つのアプローチを提案
⼿法: 最尤推定ベースの⼿法 n likelihood PGA (LPGA)の損失関数 n n PGAの損失関数 + NLL × 2 以下の対数尤度最⼤化を考える n = log 𝑝(𝑥)ではなく log 𝑝(𝑧)を最⼤化する,ただし, ̂
⼿法: VAEベースの⼿法 n variational PGA (VPGA)の損失関数 n n PGAの損失関数 + VAEの損失関数 お馴染みのVAEのロスを潜在変数verに n n log 𝑝(𝑥)ではなく log 𝑝(𝑧)を最⼤化する,ただし, ̃ log 𝑞(z! |𝑥)と log 𝑝(𝑧|𝑧′)はガウシアン ̃
結果: 定性的結果(CIFAR10) n VAEに⽐べて,LPGA・VPGAともに鮮明な画像をサンプリング可能 n MNIST・CelebAにおいても同様な結果
結果: FID scoreによる定量的結果(⼩さいほど良い) n 3つのデータセットにおけるFIDを使った定量的結果 n n n VPGAはMNIST・CIFAR10で最も良い LVPGA(VPGAとLPGAを組み合わせたもの)はCelebAで 最も良い 訓練も敵対的学習を⾏っていないため,安定していて 良い