Contenu connexe Similaire à [DL輪読会]NVAE: A Deep Hierarchical Variational Autoencoder (20) Plus de Deep Learning JP (20) [DL輪読会]NVAE: A Deep Hierarchical Variational Autoencoder1. 1
DEEP LEARNING JP
[DL Papers]
http://deeplearning.jp/
NVAE: A Deep Hierarchical Variational Autoencoder
Presenter: Keno Harada, The University of Tokyo, B4
2. 目次
● 書誌情報
● 背景
● 提案手法
○ Depth wise convolution
○ Residual parameterization of posterior parameters
○ Spectral regularization
○ 階層構造
● 実験結果
● NVAE使ってみた on BAIR Robot push dataset
● Very deep VAE(ICLR 2021 underreview)
● 感想
2
3. 書誌情報
● NVAE: A Deep Hierarchical Variational Autoencoder
● 著者: Arash Vahdat, Jan Kautz (NVIDIA)
● Neural Information Processing Systems (NeurIPS) 2020 (spotlight)
● 関連URL
○ 論文: https://arxiv.org/pdf/2007.03898.pdf
○ 著者実装: https://github.com/NVlabs/NVAE
● 概要
○ 階層的なVAEにおいてKL項の安定のためにSpectral Regularizationとpriorの確率分布パラメー
タとの差分を学習させるResidual Parameterizationを組み合わせ, またGeneratorが広範囲の関
係性をモデル化するためにDepth wise convolutionを使用してパラメータを増やしすぎること
なくCNNのfilterサイズを大きくしたNVAEを提案, 256 * 256の高解像度な画像生成を可能にし
た.
3
4. 背景 ~make VAEs great again by architecture design~
● VAEの改善においてNeural network architectureの設計は見過ごされてきた
○ Classificationでうまくいった仕組みをそのまま取り入れていた
○ VAEの特徴に合わせた設計を
■ 入力データと潜在変数間で相互情報量の最大化
■ パラメータ増やした時の挙動が特殊
● Decoderはover parameterizeしちゃうと良くない
● Encoderはパラメータ増やすとamortization gapが減る
■ long-range correlations in dataをうまくモデル化すべき
■ 階層的なVAEではKL項によって学習が不安定に
4
5. 提案手法 Nouveau VAE
● Depth wise convolutions (Generatorのみ)
○ 通常のConvよりもパラメータ数を増やずにreceptive fieldの拡大, MobileNetなどで使われる
○ 左右対称性とか肌のuniformさをモデル化したい
● Residual parameterization of approximate posterior parameters
○ KL項の安定化
● Spectral regularization
○ KL項の安定化
● 階層構造
○ long-range correlationsへの対処
○ IAF-VAEの構造を参考に
● この他様々な工夫あり(活性化関数やKL warmingなど)
5
6. Depth wise convolutions
parameter数
2d conv: Cin * K * K * Cout
Depth wise: Cin * K * K
Point wise: Cin * 1 * 1 * Cout
(K * K * Cin + Cin*Cout) / (Cin *
K * K * Cout) = 1/Cout + 1/K**2
計算量と表現力の工夫のため
Inverted residualを採用
詳しくは: https://qiita.com/yu4u/items/dc26d220e85279e76157
MobileNetV2: Inverted Residuals and Linear Bottlenecks (Fig3b)
NVAE (Fig3a)
6
10. Spectral regularization
● KL項を安定させたい
○ Encoderの入力が変化しても大きな変動がないような出力をさせたい
■ リプシッツ定数をコントロールする
● → Spectral Regularization
● GANの学習の安定性に大きく寄与した要素
Spectral normalizationについての輪読会資料: https://www.slideshare.net/DeepLearningJP2016/dl-spectral-norm-regularization-for-improving-the-generalizability-of-
deep-learningspectral-normalization-for-gans
10
20. Very deep VAE(ICLR 2021 under review)
https://openreview.net/pdf?id=RLRXCV6DbEJ
潜在変数の階層が観測変数の次元と同じになればVAEが自己回帰モデルと等価で
あるという導入から階層の深さに着目, 高解像度の画像生成に成功
学習の安定化のための施策
● 重みの初期化
○ Residual bottlleneck blockの最後のCNNを1/√Nで初期化(Nは層の深さ)
■ その他の層はPyTorchのデフォルトの設定
● upsamplingをNearest neighborで行う
○ 階層が深くなっても勾配がscaleすることなく伝わる
○ free bits, KL warming upのような工夫を除いてもうまくいった
● 勾配ノルムが一定以上の場合はupdateをskip
○ Spectral Regularizationとは違ったヒューリスティックな方法
● p(z)を固定してq(z|x)の学習を行う(epochの半分)
20
21. Very deep VAE(ICLR 2021 under review)
21
NVAEに比べてzの階層をより深くした
パラメータ数も少ない
NVAEは畳み込みのチャンネル数が多い
NVAEの工夫をVery deep VAEに取り込むことは
可能
Notes de l'éditeur https://qiita.com/omiita/items/77dadd5a7b16a104df83
https://arxiv.org/pdf/1801.04381v3.pdf
https://qiita.com/yu4u/items/dc26d220e85279e76157
https://www.slideshare.net/DeepLearningJP2016/dl-spectral-norm-regularization-for-improving-the-generalizability-of-deep-learningspectral-normalization-for-gans
https://www.slideshare.net/DeepLearningJP2016/dl-spectral-norm-regularization-for-improving-the-generalizability-of-deep-learningspectral-normalization-for-gans
https://www.slideshare.net/DeepLearningJP2016/dl-spectral-norm-regularization-for-improving-the-generalizability-of-deep-learningspectral-normalization-for-gans