384 Views
August 21, 20
スライド概要
2020/08/021
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP “You Only Train Once: Loss-Conditional Training of Deep Networks” (ICLR2020, Poster) [DL Papers] Presenter: Yusuke Iwasawa, Matsuo Lab http://deeplearning.jp/
書誌情報 • You Only Train Once: Loss-Conditional Training of Deep Networks • 著者:Alexey Dosovitskiy, Josip Djolonga(Google Brain) • 概要 – 複数の損失関数の重み付き和を最大化する問題に対して,様々な重み付け係数 に対して単一のモデルを訓練するようなアプローチの提案 – 例:画像圧縮で,圧縮率と画像の質を再学習なしでテスト時に調整可能 – 普通はそれぞれの重みに対してモデルを作成するが,本手法は1つのモデルを 訓練すれば推論時に重みを変えることができる • 感想・余談 – 汎用な手法の枠組みで面白い – “ADJUSTABLE REAL-TIME STYLE TRANSFER”との手法的差分は不明 (同じICLR2020,同じGoogle Brain,著者は違う) – ちなみに2つの論文の著者が合同でブログ記事を書いている 2
背景:多くのML/DL応用では複数の目的のバランスが重要 例:画像圧縮 その他の例 • 生成モデル – 表現の良さ vs. 再構築の良さ • スタイル転移: – コンテンツ保持 vs. スタイルの正しさ • モデル圧縮: – 予測精度 vs. モデルの軽さ • Etc… 3
背景:通常は目的関数を重み付けることでトレードオフを取る • 損失関数の係数を調整して,複数のモデルを学習 • 例:β-VAEでβを調整 4
提案手法:さまざまな重みで条件つけて単一の重みを学習 5
条件づけの方法としてはFiLM [Perez+2018]を利用 概要 • FiLM: Feature wise Layer Modulation • もともとはVQAの文脈で提案された手法 手法 • チャネル(あるいは次元) ごとに線形変換 • 線形変換のパラメータは別のネットワークで生成 補足 • [Dumoulin+2018] Feature-wise transformations が条件付けの方法を色々載せていて参考になる 6
今回は畳み込み層を係数ベクトルλで条件つけて変換 ※ 複数の畳み込み層に対して行う ※ 層ごとにMを共有しているのかはよくわからない(して良い気がする) 7
テスト時には任意の重みで推論 訓練時 モデルをランダムにサンプルした重み係数で学習 重み係数によって出力も変わるようにFiLMで条件づけ テスト時 任意の係数で重み付けて推論 8
実験 深層生成モデル (VAE) KLと再構築の重みを調整 画像圧縮 画像の質と圧縮度を調整 スタイル転移 コンテンツ保持とスタイル 変化を調整 [Ghiasi+, 2017]がベース 検証ポイント (1)各重み付けに対してモデルを作る場合(Fixed weights)と比べて性能が悪化しないこと (2)付随して,適切に出力が変化すること 9
βVAE:再構成とKLのバランス CIFAR10 Shape3D Fixedと比べて大きく性能が劣化していない.特に,容量を大きくした場合に顕著. 10
βVAE:損失全体の比較 11
βVAE:定性評価 12
画像圧縮:定性評価 13
画像圧縮:画像の質 (PSNR) と圧縮率のバランスの比較 14
スタイル転移:定性評価 15
まとめ • 最適化したい複数の目標のバランスを制御するパラメータでモデルを条件付ける ことで単一のモデル (再学習なし) でトレードオフをテスト時に取れる手法を提案 – 再学習がいらないので,You Train Only Once • 条件付にはFiLMを利用 • 生成モデル,画像圧縮,スタイル転移で実験検証 補足 • 実験はまだたくさんあります • 補題も示されてます(提案法の学習により単一の重みに対する最適化も確率的に 達成されること)があんまり重要そうじゃないし証明もないので飛ばしてます 16