SlideShare a Scribd company logo
Soumettre la recherche
Mettre en ligne
S’identifier
S’inscrire
[DL輪読会]Neural Ordinary Differential Equations
Signaler
Deep Learning JP
Suivre
Deep Learning JP
11 Jan 2019
•
0 j'aime
•
28,852 vues
1
sur
41
[DL輪読会]Neural Ordinary Differential Equations
11 Jan 2019
•
0 j'aime
•
28,852 vues
Télécharger maintenant
Télécharger pour lire hors ligne
Signaler
Technologie
2019/01/11 Deep Learning JP: http://deeplearning.jp/seminar-2/
Deep Learning JP
Suivre
Deep Learning JP
Recommandé
【DL輪読会】Perceiver io a general architecture for structured inputs & outputs
Deep Learning JP
1.5K vues
•
23 diapositives
[DL輪読会]Vision Transformer with Deformable Attention (Deformable Attention Tra...
Deep Learning JP
7.8K vues
•
26 diapositives
[DL輪読会]Flow-based Deep Generative Models
Deep Learning JP
14.3K vues
•
62 diapositives
[DL輪読会]相互情報量最大化による表現学習
Deep Learning JP
7.4K vues
•
43 diapositives
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
Deep Learning JP
3.6K vues
•
52 diapositives
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
Deep Learning JP
4.5K vues
•
34 diapositives
Contenu connexe
Tendances
モデル高速化百選
Yusuke Uchida
24.5K vues
•
64 diapositives
【DL輪読会】ViT + Self Supervised Learningまとめ
Deep Learning JP
3.8K vues
•
52 diapositives
PRML学習者から入る深層生成モデル入門
tmtm otm
5.6K vues
•
73 diapositives
【メタサーベイ】数式ドリブン教師あり学習
cvpaper. challenge
5.4K vues
•
33 diapositives
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜
SSII
3K vues
•
39 diapositives
[DL輪読会]Grokking: Generalization Beyond Overfitting on Small Algorithmic Datasets
Deep Learning JP
2.8K vues
•
17 diapositives
Tendances
(20)
モデル高速化百選
Yusuke Uchida
•
24.5K vues
【DL輪読会】ViT + Self Supervised Learningまとめ
Deep Learning JP
•
3.8K vues
PRML学習者から入る深層生成モデル入門
tmtm otm
•
5.6K vues
【メタサーベイ】数式ドリブン教師あり学習
cvpaper. challenge
•
5.4K vues
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜
SSII
•
3K vues
[DL輪読会]Grokking: Generalization Beyond Overfitting on Small Algorithmic Datasets
Deep Learning JP
•
2.8K vues
実装レベルで学ぶVQVAE
ぱんいち すみもと
•
12.4K vues
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models
Deep Learning JP
•
2.4K vues
自己教師学習(Self-Supervised Learning)
cvpaper. challenge
•
12.5K vues
Optimizer入門&最新動向
Motokawa Tetsuya
•
22.8K vues
変分推論と Normalizing Flow
Akihiro Nitta
•
5.4K vues
猫でも分かるVariational AutoEncoder
Sho Tatsuno
•
131K vues
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
Deep Learning JP
•
2.3K vues
Layer Normalization@NIPS+読み会・関西
Keigo Nishida
•
23.4K vues
近年のHierarchical Vision Transformer
Yusuke Uchida
•
13.4K vues
深層学習の数理
Taiji Suzuki
•
79.4K vues
[DL輪読会]data2vec: A General Framework for Self-supervised Learning in Speech,...
Deep Learning JP
•
2.4K vues
変分推論法(変分ベイズ法)(PRML第10章)
Takao Yamanaka
•
30.2K vues
Direct feedback alignment provides learning in Deep Neural Networks
Deep Learning JP
•
2.4K vues
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
Deep Learning JP
•
6.8K vues
Similaire à [DL輪読会]Neural Ordinary Differential Equations
【DL輪読会】DiffRF: Rendering-guided 3D Radiance Field Diffusion [N. Muller+ CVPR2...
Deep Learning JP
769 vues
•
28 diapositives
【DL輪読会】Can Neural Network Memorization Be Localized?
Deep Learning JP
457 vues
•
15 diapositives
Image net classification with Deep Convolutional Neural Networks
Shingo Horiuchi
9.1K vues
•
37 diapositives
Deeplearning輪読会
正志 坪坂
9.3K vues
•
12 diapositives
PyTorch, PixyzによるGenerative Query Networkの実装
Shohei Taniguchi
548 vues
•
36 diapositives
深層学習(岡本孝之 著) - Deep Learning chap.1 and 2
Masayoshi Kondo
1.4K vues
•
27 diapositives
Similaire à [DL輪読会]Neural Ordinary Differential Equations
(20)
【DL輪読会】DiffRF: Rendering-guided 3D Radiance Field Diffusion [N. Muller+ CVPR2...
Deep Learning JP
•
769 vues
【DL輪読会】Can Neural Network Memorization Be Localized?
Deep Learning JP
•
457 vues
Image net classification with Deep Convolutional Neural Networks
Shingo Horiuchi
•
9.1K vues
Deeplearning輪読会
正志 坪坂
•
9.3K vues
PyTorch, PixyzによるGenerative Query Networkの実装
Shohei Taniguchi
•
548 vues
深層学習(岡本孝之 著) - Deep Learning chap.1 and 2
Masayoshi Kondo
•
1.4K vues
NIPS2019 Amazon「think globally, act locally : a deep neural network approach...
SaeruYamamuro
•
201 vues
LCCC2010:Learning on Cores, Clusters and Cloudsの解説
Preferred Networks
•
6.3K vues
[DL輪読会]Factorized Variational Autoencoders for Modeling Audience Reactions to...
Deep Learning JP
•
845 vues
[DL輪読会]Focal Loss for Dense Object Detection
Deep Learning JP
•
14.3K vues
2014/5/29 東大相澤山崎研勉強会:パターン認識とニューラルネットワーク,Deep Learningまで
Hokuto Kagaya
•
6.4K vues
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
Deep Learning JP
•
4.4K vues
深層学習(岡本孝之 著) - Deep Learning chap.3_1
Masayoshi Kondo
•
458 vues
Paper: seq2seq 20190320
Yusuke Fujimoto
•
197 vues
どうやって量子コンピューターをつくるのか
Akimasa Nakamoto
•
3.9K vues
Rainbow
Takahiro Yoshinaga
•
7.5K vues
Learning structured embeddings of knowledge bases 文献講読
poppyuri
•
50 vues
[DL Hacks] Deterministic Variational Inference for RobustBayesian Neural Netw...
Deep Learning JP
•
885 vues
attention_is_all_you_need_nips17_論文紹介
Masayoshi Kondo
•
1.6K vues
【論文読み会】Moser Flow: Divergence-based Generative Modeling on Manifolds
ARISE analytics
•
652 vues
Plus de Deep Learning JP
【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
Deep Learning JP
147 vues
•
28 diapositives
【DL輪読会】事前学習用データセットについて
Deep Learning JP
193 vues
•
20 diapositives
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
Deep Learning JP
147 vues
•
26 diapositives
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
Deep Learning JP
195 vues
•
30 diapositives
【DL輪読会】Hopfield network 関連研究について
Deep Learning JP
940 vues
•
29 diapositives
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
Deep Learning JP
268 vues
•
14 diapositives
Plus de Deep Learning JP
(20)
【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
Deep Learning JP
•
147 vues
【DL輪読会】事前学習用データセットについて
Deep Learning JP
•
193 vues
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
Deep Learning JP
•
147 vues
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
Deep Learning JP
•
195 vues
【DL輪読会】Hopfield network 関連研究について
Deep Learning JP
•
940 vues
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
Deep Learning JP
•
268 vues
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
Deep Learning JP
•
189 vues
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
Deep Learning JP
•
574 vues
【DL輪読会】"Language Instructed Reinforcement Learning for Human-AI Coordination "
Deep Learning JP
•
409 vues
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
Deep Learning JP
•
1.1K vues
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
Deep Learning JP
•
377 vues
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
Deep Learning JP
•
338 vues
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
Deep Learning JP
•
601 vues
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
Deep Learning JP
•
696 vues
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
Deep Learning JP
•
301 vues
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...
Deep Learning JP
•
285 vues
【DL輪読会】マルチモーダル 基盤モデル
Deep Learning JP
•
849 vues
【DL輪読会】TrOCR: Transformer-based Optical Character Recognition with Pre-traine...
Deep Learning JP
•
452 vues
【DL輪読会】HyperDiffusion: Generating Implicit Neural Fields withWeight-Space Dif...
Deep Learning JP
•
213 vues
【DL輪読会】大量API・ツールの扱いに特化したLLM
Deep Learning JP
•
1.2K vues
Dernier
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
NTT DATA Technology & Innovation
39 vues
•
44 diapositives
NoSQL/SQLデュアルインターフェースを備えた IoT向けデータベースGridDB - 強化された時系列データ管理・検索機能について -
griddb
7 vues
•
46 diapositives
画像生成AIの問題点
iPride Co., Ltd.
127 vues
•
9 diapositives
遠征ドルヲタのための便利サイトを作ってみた
Kenta Fujimoto
93 vues
•
24 diapositives
インフラチームとCCoEの関係.pptx
ssuser5c7ee4
73 vues
•
18 diapositives
磁石内臓イヤリングによる磁力変化を利用したジェスチャ識別
sugiuralab
93 vues
•
1 diapositive
Dernier
(11)
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
NTT DATA Technology & Innovation
•
39 vues
NoSQL/SQLデュアルインターフェースを備えた IoT向けデータベースGridDB - 強化された時系列データ管理・検索機能について -
griddb
•
7 vues
画像生成AIの問題点
iPride Co., Ltd.
•
127 vues
遠征ドルヲタのための便利サイトを作ってみた
Kenta Fujimoto
•
93 vues
インフラチームとCCoEの関係.pptx
ssuser5c7ee4
•
73 vues
磁石内臓イヤリングによる磁力変化を利用したジェスチャ識別
sugiuralab
•
93 vues
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
NTT DATA Technology & Innovation
•
442 vues
MLOps Course Slides_JP(配布用).pdf
Yuya Yamamoto
•
250 vues
拡散する画像生成.pdf
NTTDOCOMO-ServiceInnovation
•
226 vues
ヒアラブルデバイスにおける音漏れ信号を用いた空中ジェスチャ認識
sugiuralab
•
83 vues
指側面を入力インタフェース化するリング型デバイス
sugiuralab
•
5 vues
[DL輪読会]Neural Ordinary Differential Equations
1.
1 DEEP LEARNING JP [DL
Papers] http://deeplearning.jp/ Neural Ordinary Differential Equations Joji Toyama, DeepX, Matsuo-lab
2.
2 本資料で紹介する論文 • Neural Ordinary
Differential Equations – NeurIPS2018 Best paper – Ricky T.Q. Chen*, Yulia Rubanova*, Jesse Bettencourt*, David Duvenand – Vector Institute, Toronto Univ • FFJORD: Free-form Continuous Dynamics for Scalable Reversible Generative Models – ICLR2019 Oral – Will Grathwohl*, Rickey T.Q. Chen*, Jesse Bettencourt, Ilya Sutskever, David Duvenand – Vector Institute, Toronto Univ • 1本目が、ニューラルネットワークを微分方程式として見る、という新しい概念を提案。 2本目は、それをflow-basedな生成モデルに応用した論文。 • めっちゃ面白い(と思ってくれると発表者冥利に尽きる)
3.
3 事前知識:常微分方程式(ODE: Ordinary Differential
Equations) • 未知関数の導関数を含む関数方程式を微分方程式と呼ぶ。 • その中で、独立変数が1つだけのものを常微分方程式と呼ぶ。 • 例1: 𝑑𝑥(𝑡) 𝑑𝑡 = −𝑐𝑥(𝑡) – 独立変数はtのみ – この解は、初期値𝑋0として、 𝑥(𝑡) = 𝑥0exp(−𝑐𝑡)と一意に定まる。 – 放射性物質の崩壊式 • 例2: 𝑑2 𝑥(𝑡) 𝑑𝑡2 = −𝑐2 𝑥(𝑡) – 独立変数はtのみ – 任意定数AとBを用いて、 𝑥 𝑡 = A ∗ sin ct + B ∗ cos(ct)と一意に定まる。 – 単振動の式
4.
4 事前知識:ODE Solver • 常微分方程式の解析解(=数式で表された解)を求めるのは一般に困難。 •
そこで、ある時刻tにおける値を、計算機を使って数値解として求める! – = ODE Solver • 代表的なODE Solver – オイラー法 – ルンゲクッタ法 – etc…
5.
5 事前知識:オイラー法 • 最も簡単なODE Solver • 𝑑𝑦 𝑑𝑡 =
𝑓 𝑡, 𝑦 , 𝑦 𝑡0 = 𝑦0であるとき、 𝑓 𝑡, 𝑦 はyの微分なので、ステップ幅h後のyの 値は、 𝑦 𝑡0 + ℎ = 𝑦0 + 𝑓 𝑡0, 𝑦0 ∗ ℎと近似できる • これを繰り返すことで、任意のステップ後の𝑦(𝑡)を求めることができる。 – 下の図では𝑡ではなく𝑥が変数になっていることに注意 https://guide.freecodecamp.org/mathematics/differential-equations/eulers-method/
6.
6 ResNetとオイラー法 • ResNetは差分を学習させることによって、従来のDeepNetより精度向上 h1 =
f1(x) h2 = f2(h1) h3 = f3(h2) h4 = f4(h3) y = f5(h4) h1 = f1(x)+x h2 = f2(h1)+h1 h3 = f3(h2)+h2 h4 = f4(h3)+h3 y = f5(h4)+h4 ResNetDeepNet
7.
7 ResNetとオイラー法 • ResNetは差分を学習させることによって、従来のDeepNetより精度向上 h1 =
f1(x) h2 = f2(h1) h3 = f3(h2) h4 = f4(h3) y = f5(h4) h1 = f1(x)+x h2 = f2(h1)+h1 h3 = f3(h2)+h2 h4 = f4(h3)+h3 y = f5(h4)+h4 ResNetDeepNet
8.
8 ResNetとオイラー法 • ResNetは差分を学習させることによって、従来のDeepNetより精度向上 • なんかよく見るとオイラー法っぽい –
“These iterative updates can be seen as an Euler discretization of a continuous transformation (Lu et al., 2017; Haber and Ruthotto, 2017; Ruthotto and Haber, 2018)” – 筆者はここから着想を得たとのこと。 h1 = f1(x) h2 = f2(h1) h3 = f3(h2) h4 = f4(h3) y = f5(h4) h1 = f1(x)+x h2 = f2(h1)+h1 h3 = f3(h2)+h2 h4 = f4(h3)+h3 y = f5(h4)+h4 ResNetDeepNet
9.
9 ODENet • ResNetの更新則は • 一回の更新幅(=層の深さに該当)が微小であるときを考える。すると、 という常微分方程式(Neural
ODE)を用いてResNetの更新則を表現できる – ある時刻(深さ)での隠れ層のダイナミクスを出力する𝑓(ℎ 𝑡 , 𝑡, 𝜃)を、ニューラルネットワー クでモデル化し、これをODENetと呼ぶ – 今まで離散的だった”層”が、連続になる(!) • ResNetでは各層で異なるパラメータを持つ関数 𝑓(ℎ 𝑡, 𝜃𝑡)が用いられるが、ODENetは単一の関数 𝑓(ℎ 𝑡 , 𝑡, 𝜃)のみが存在する • ℎ(𝑡)はODE Solverによって計算される。 ℎ 𝑡+1 = ℎ 𝑡 + 𝑓(ℎ 𝑡, 𝜃𝑡) 𝑑ℎ 𝑡 𝑑𝑡 = 𝑓(ℎ 𝑡 , 𝑡, 𝜃)
10.
10 ResNet vs ODENet •
ResNetは変換が層においてのみ行われる。一方で、ODENetは層を連続値として 扱って入力に用いるので、連続的な変換が行われる。 • 丸い点は値の評価がされていることを示す。ResNetは各層ごとに値が出力されるが、 ODENetはいかなる点でも値を評価することができる。 – 実際には、評価の回数と場所はあらかじめ適当に決めたり、ODE Solverによって自動的に 決まる
11.
11 ODENetの嬉しいこと • Memory efficiency –
計算グラフを保持する必要なしに勾配を求めることができるようになる • Adaptive computation – ResNetは最も簡単なODE Solverである、オイラー法を用いていると見ることができる。 ODENetではもう少し賢いODE solverを使う(e.g. Runge-kutta 4)ことにより、数値解の許容 誤差と推論速度のトレードオフを取ったり、ステップ幅の適応制御を可能にする。 • Parameter efficiency – 各層に異なるパラメータを持たないので、パラメータ効率が良い • Scalable and invertible normalizing flows – Normalizing flowの計算上のボトルネックである行列式計算が、トレース計算で済む様になる。 • Continuous time-series models – RNNにおけるタイムステップが連続になるため、より自然に時間をモデリングできる。
12.
12 ODENetの順伝播と逆伝播 • Given – ODENetのパラメータ𝜃,開始時刻𝑡0,終了時刻𝑡1,
ODE Solver • 順伝播 𝑧(𝑡1) = 𝑡0 𝑡1 𝑓 𝑧 𝑡 , 𝑡, 𝜃 𝑑𝑡 = 𝑂𝐷𝐸𝑆𝑜𝑙𝑣𝑒𝑟(𝑧 𝑡0, 𝑓, 𝑡0, 𝑡1, 𝜃 ) – ODE Solverによってちまちま𝑧(𝑡1)まで計算していくだけ。 • 逆伝播 – 素直にやろうとすると、ODESolverの各ステップで毎回微分をする必要があり、forward時の 計算グラフの保持に大量のメモリを必要とする。 – そこで、adjoint method(Pontryagin et al., 1962)という賢い方法を用いて、ODEをブラックボッ クスとして扱いながら、計算グラフの保持なしに、各変数についての勾配を求める。
13.
13 Adjoint methodを用いた逆伝播 • 𝐿(𝑧(𝑡1))
= 𝐿 𝑡0 𝑡1 𝑓 𝑧 𝑡 , 𝑡, 𝜃 𝑑𝑡 = 𝐿 𝑂𝐷𝐸𝑆𝑜𝑙𝑣𝑒𝑟 𝑧 𝑡0), 𝑓, 𝑡0, 𝑡1, 𝜃 – Lを最適化するため、 𝑧 𝑡0 , 𝑡0, 𝑡1, 𝜃に関する勾配を求めたい • ある状態𝑧 𝑡 の、損失に関する勾配をadjointと呼び、 • このadjointは、以下の微分方程式に従う。 – 未知の関数が𝑎 𝑡 で、独立変数がtのみであるため、これも常微分方程式であり、初期値を 𝑎 𝑡1 = −𝜕𝐿/𝜕𝑧(𝑡1)とすることで、 𝑎 𝑡0 = −𝜕𝐿/𝜕𝑧(𝑡0) をODE Solverによって解くことができる。 • 同様のことを、𝑎 𝜃 𝑡 = −𝜕𝐿/𝜕𝜃 𝑡 、 𝑎 𝑡 𝑡 = −𝜕𝐿/𝜕𝑡 𝑡 とおくことで、 𝑡0, 𝑡1, 𝜃についての 勾配もODE Solverによって求めることができる。 – ※細かい導出は本論文のappendixをみてください(そんなに難しくないです) 𝑎 𝑡 = −𝜕𝐿/𝜕𝑧(𝑡) 𝑑𝑎 𝑡 𝑑𝑡 = −𝑎 𝑡 𝑇 𝜕𝑓 𝑧 𝑡 , 𝑡, 𝜃 𝜕𝑧
14.
14 勾配計算アルゴリズム
15.
15 実験1:ODENetによる教師あり学習 ーMNIST 定量評価ー •
1-Layer MLP, ResNet, RK-Net(ODE-Netの時のソルバとしてルンゲクッタを用い、普 通に誤差逆伝播させるモデル)と,ODE-Net(adjoint methodで勾配計算)をMNISTで 比較 – Lはレイヤー数、 𝐿はODE Solverが要したステップ回数(=関数評価回数) • 𝐿 はODENetにおける層の数と解釈もできる • ResNetと同じ精度ながら、パラメータ数が少なくメモリ使用量も少ない
16.
16 実験1:ODENetによる教師あり学習 ーMNIST 定性分析ー •
関数評価回数を増やすと数値誤差は減少する(当たり前) • 関数評価回数を増やすと時間がかかる(当たり前) – 数値誤差とフォワード時の推論時間のトレードオフを取れる。例えば、テスト時だけ許容数値誤差 を大きくすることで、関数評価回数が減り、短時間での推論が可能になる。 • バックワード時のODE Solverの関数評価回数は、フォワード時の関数評価回数の約半分 – 素直にやったらバックワード時の関数評価回数はフォワード時と同じ。つまり、Adjoint methodはメ モリ効率がいいだけでなく、計算効率も良い! • 訓練が進むにつれ、関数評価回数は増えていく – 訓練が進むにつれ、ダイナミクスの複雑さが増していくことを示唆。
17.
17 Normalizing FlowをNODEとして見る • Normalizing
Flowの変数変換 – ただし𝑓は全単射な関数 – ヤコビアンの行列式を求めるのにO(𝐷3 )かかるため、 𝑓に様々な工夫を必要としていた。 • Normalizing Flowの更新も、NODEとして見ることができる。 • すると、なんと • となる(証明が気になる人は論文のAppendixを読んでください) – また、ODEは解の一意性が担保されているため、 𝑓に何を選ぼうとも、変換は全単射。 𝑧1 = 𝑓 𝑧0 => log 𝑝(𝑧1) = log 𝑝 𝑧0 − log | det 𝜕𝑓 𝜕𝑧0 | 𝑑𝑧 𝑑𝑡 = 𝑓(𝑧 𝑡 , 𝑡) 𝜕 log 𝑝(𝑧 𝑡 ) 𝜕𝑡 = −𝑡𝑟 ( 𝑑𝑓 𝑑𝑧 𝑡 )
18.
18 Continuous normalizing flow •
planar normalizing flowを改良したContinuous normalizing flow(CNF)を提案 – Planar normalizing flow – Continuous normalizing flow • トレースは線形性を持つため、 𝑓を関数の和として表現した場合、log densityもトレースの 和として計算できる。 – つまり、CNFは隠れユニットを増やしても計算量がO(M)のオーダでしか増えないため、wideな Planar NFが構築可能! 𝑧 𝑡 + 1 = 𝑧 𝑡 + 𝑢ℎ 𝑤 𝑇 𝑧 𝑡 + 𝑏 𝑢, 𝑤 ∈ 𝑅 𝐷, 𝑏 ∈ 𝑅, ℎ 𝑖𝑠 𝑛𝑜𝑛𝑙𝑖𝑛𝑖𝑎𝑟𝑖𝑡𝑦 𝑎𝑐𝑡𝑖𝑣𝑎𝑡𝑖𝑜𝑛 𝑑𝑧 𝑡 𝑑𝑡 = 𝑓 𝑧 𝑡 = 𝑢ℎ 𝑤 𝑇 𝑧 𝑡 + 𝑏 , 𝜕 log 𝑝 𝑧 𝑡 𝜕𝑡 = −𝑢 𝑇 𝜕ℎ 𝜕𝑧 𝑡 𝑑𝑧 𝑡 𝑑𝑡 = 𝑛=1 𝑀 𝑓𝑛(𝑧 𝑡 ) , 𝑑 log 𝑝 𝑧 𝑡 𝑑𝑡 = 𝑛=1 𝑀 𝑡𝑟( 𝜕𝑓𝑛 𝜕𝑧 )
19.
19 実験2:Density matching • Target分布になるように訓練 •
LossはKL • KはNFの深さ、Mは隠れ層のユニット数(CNFは常にK=1) • CNFのほうがNFよりもLossが下がっていて、定性的にもよくモデリングできてる
20.
20 実験2:Maximum Likelihood Training •
Two CirclesとTwo Moons • %はflowの時間(深さ)を表す • CNFはターゲットにうまくフィットできると共に、そこから遡って元のガウス分布にきち んと対応する。
21.
21 NODEのRNNへの応用 • RNNでは時間は離散化されている。そのため、時間に対して不均一に得られるデー タの扱いが難しい。 – 医療診断のログ –
ネットワークトラフィック • 従来では、時間に不均一なデータに対し、以下の対策を講じていた – 欠損値補完 – タイムスタンプ情報を入力にする • NODEは時間を連続的に扱えるため、上の問題を根本的に解決できる。
22.
22 ODENetをデコーダもちいたRNN型VAE • 本論文では、時系列の潜在変数を出力するデコーダをODENetでモデリングしたRNN 型VAEを考える。
23.
23 実験3:ODERNN • データ:渦巻き状(時計回りと反時計回 り)の時系列データで、観測点が不均一 • ODERNNはうまく予測できている。また、 観測点が終わった後の外挿もうまくでき ている。 •
潜在空間は、時計回りと反時計回りの回 転をうまく獲得できている。 • 定量的にも良い。
24.
24 結論 • 微分方程式にNNを組み込み、ODE Solverによって順伝播と勾配計算を行う、全く新 しい学習スキームを提案 •
5つのメリット – メモリ効率が良い – 計算時間と正確さを自由に調整できる – パラメータ効率が良い – 計算コストが少ないNF – 時間を連続的に扱えるRNN • NeurIPS Best paper取るわけですわ、という面白さと革新さ
25.
25 FFJORD: Free-form Continuous
Dynamics for Scalable Reversible Generative Models • 先の論文で、変数変換を常微分方程式の形 で表すことで、NFのレイヤーの幅を増やすこ とが可能になったことを見たが、あくまで planar normalizing flowの形に限定されてい た。 • 本論文では、Reversible generative models のアーキテクチャの制約を完全に外すことを 目指す。 – FFJORD(Free-form Jacobian of Reversible Dynamics)と名付ける(もう少しいい名前を考え られなかったものか) • ODEなので、右みたいに連続的なダイナミク スが学習されます。
26.
26 Flow-based Generative Models •
Flow-based generative models – 変数変換によって、単純な分布(e.g. ガウス分布)からデータへの変換を直接学習する生成モデル • 変数変換時にヤコビアンの行列式を求める際の工夫の仕方で、Flow-based generative modelsは以下の3クラスに分類できる(筆者談) – Normalizing Flow • 普通に変数変換するモデルのことを言っている。関数𝑓の形を限定することで行列式を計算しやすくする。た だ 𝑓−1 は求められないため、reversibleではなく、データ点𝑋のみから学習はできない。 – Planar NF, Radial NF – Autoregressive Transformations • 変数変換を自己回帰的に行うことで、ヤコビアンが三角行列になり行列式を計算しやすくする。 – MAF, IAF – Partitioned Transformations • データの特定の次元を不変にし、他の残った次元を、不変にしたデータを入力として出力されるパラメータに よって変換をするように変数変換をすることで、ヤコビアンが三角行列になる。 – NICE, RealNVP, Glow • ここらへんよくわからない人はこちらを読むことをお勧め – https://lilianweng.github.io/lil-log/2018/10/13/flow-based-deep-generative-models.html#realnvp
27.
27 Reversible generative models •
この論文で定義された生成モデルクラスであり、以下を満たす。 – 変数変換を行う – 効率よく密度推定ができる – 効率よくサンプリングができる(One-pass) – (表で言うと、下から二列目から下がreversible generative modelsになる) • FFJORDはReversible generative modelsで、かつ、ヤコビアン行列式計算困難問題による諸々の制約 を解消
28.
28 CNF振り返り • Continuous Normalizing
Flowでは変数変換の行列式をトレースに置き換えられる • Flow後のlog-densityは次のようになる • 通常𝑇𝑟 𝜕𝑓 𝜕𝑧 𝑡 の計算コストは𝑂(𝐷2)だが、これを𝑂(𝐷)にするため、以下の二つの工 夫を用いる – 自動微分 – Hutchinson’s Trace Estimator 𝑑𝑧 𝑑𝑡 = 𝑓 𝑧 𝑡 , 𝑡 , 𝜕 log 𝑝(𝑧 𝑡 ) 𝜕𝑡 = −𝑇𝑟 ( 𝑑𝑓 𝑑𝑧 𝑡 ) log 𝑝 𝑧 𝑡1 = log 𝑝 𝑧 𝑡0 − 𝑡0 𝑡1 𝑇𝑟 𝜕𝑓 𝜕𝑧 𝑡 𝑑𝑡
29.
29 Unbiased Linear-time log-density
estimation • 𝑣 𝑇 𝜕𝑓 𝜕𝑧 は、自動微分によってフォワード計算と同コストで計算可能。 • 𝐸 𝜖 = 0, 𝐶𝑜𝑣 𝜖 = 𝐼に従う𝜖を用いて、トレースは以下を満たす(Hutchinson Trace Estimator) • ODE solverの間は同じ𝜖を用いても大丈夫 𝑇𝑟 𝐴 = 𝐸 𝑝(𝜖)[𝜖 𝑇 𝐴𝜖]
30.
30 FFJORD アルゴリズム • 𝑓の評価に𝑂(𝐷𝐻)かかるとすると、NFは𝑂(
𝐷𝐻 + 𝐷3 𝐿), CNFは𝑂( 𝐷𝐻 + 𝐷2 𝐿), FFJORDは𝑂( 𝐷𝐻 + 𝐷 𝐿) の計算量がかかる。 – 𝐻は最大の隠れ層の次元、 𝐿はレイヤー数、 𝐿はODE Solverの評価回数
31.
31 実験1:Toy dataでの密度推定 • Glow,
Planar CNFとFFJORDを比較。 • Glowは密度の境目をうまくモデリングで きていない • CNFは1レイヤーしかないため、複雑な ダイナミクスをモデリングしきれない • 一方FFJORDは多層に積めるので、表 現力が高く、すべてのデータの密度をう まく推定できている。 – ODE Solverの評価回数は70~100回だった
32.
32 実験2:Real dataでの密度推定 • UCI
Datasetsから5つと、MNIST,CIFAR10で実験 • Reversible generative modelsの中では、CIFAR10を除きFFJORDが最も良い結果 • 最新の自己回帰モデルにはちょいちょい負ける • GlowやReal NVPは複数のフローを必要とするが、FFJORDは単一のフローでもそこそこい いモデリングができる • Glowと比べ、モデルのパラメータ数は2%以下 – 本気出せばGlowに勝てそうだけど、あえて研究の余地を残してる感がある。
33.
33 実験3:VAEのvariational inference • VAEのエンコーダにFFJORDを用いる。 •
Planar NF, IAF, Sylvester NF(Berg et al., 2018)と比較 • 4つのデータセット全てでFFJORDが最も良い
34.
34 分析:Bottleneck Capacity • Hutchinsonのトレース推定の用いるノイズの次元は、以下のトリックで𝑓の中の最小 の隠れ層(bottleneck)の次元ℎで済み、それによって推定の分散を下げることができ るんじゃない?と筆者は(理論根拠無く)述べている。 –
なお、先の実験ではbottleneckは𝑓の表現力を落とすので用いられていない。 • それを確かめた結果が以下。ノイズの分布としてガウス分布を用いた時は訓練が早 く進むけど、ラデマッハ分布(半々の確率で-1か1)だとその効果はない。
35.
35 分析:関数評価回数とデータの次元の関係 • データの次元が増えるほど、関数評価回数 𝐿も増えるんじゃない?という分析 –
𝐿がDに依存することは、計算量の観点から好ましくない • VAEの潜在変数の次元を色々変えた時に、関数評価回数がどう変わるかを可視化 – データの次元と関数評価回数の関係性は見られなかった。 – データの次元というよりは、学習しなければいけない変換の難しさに関数評価回数は依存す ると思われる。
36.
36 分析:Single-scaleとMulti-scaleなアーキテクチャ • Real NVPやGlowはMulti-scaleなアーキテクチャを用いることによってモデルの表現 力を高めた。 •
FFJORDで同様のことをすると、関数評価回数がだいたい二倍になり、精度は少しだ け上がった。
37.
37 FFJORDの限界1:関数評価回数が増えすぎると計算できなくなる • 関数評価回数は事前にどれくらいまで増えるかはわからず、学習が進むに従い増え ていくが、あまりに増えていくとフォワード計算に時間がかかり過ぎてしまう。 – Weight
decayやSpectral Normalizationが関数評価回数を抑えるのに役立つが、それはモデ ルの表現力を損なってしまうことにつながってしまう。
38.
38 FFJORDの限界2:硬い微分方程式を解くのは大変 • 近似解を計算するためのある数値的方法が、刻み幅が限りなく小さくない限り数値 的不安定になる微分方程式を、硬い方程式、と呼ぶ。 • 硬い方程式でもうまく解けるようなODE
Solverはあるが、計算時間がかかり過ぎて今 回のような実用には耐えない。 • 実験的には、わずかなweight decayを入れれば、微分方程式は硬くならないらしい。
39.
39 結論 • 尤度計算可能でone-passでサンプリングできるreversible generative
modelである FFJORDを提案。 • 変数変換に用いられる関数𝑓の制約を外すために、以下の工夫 – Continuous dynamics – 自動微分 – Hutchinson’s trace estimator – black-box ODE solvers • Continuous dynamicsの研究には多くの改善の余地があるだろう。
40.
40 感想 • 結局、 𝑑ℎ 𝑡 𝑑𝑡 =
𝑓(ℎ 𝑡 , 𝑡, 𝜃)というアイディアが全て • 高次元データに適用するには計算時間の課題があるが、それも来年あたりには解 決されてそう • Optical flowや、流体シミュレータとかに応用できないかな。 • 読んでてとても楽しかった。 • 実装も上がってる(ODE solverの勾配計算をGPUでやるところも含め)ので、すぐ試 せる。
41.
41 Appendix: NODEの解の一意性 • 一般に、ODEの解が一意に定まるためには、zについてリプシッツ連続、tについて連 続であれば良い –
ピカール・リンデレフの定理 • ダイナミクスをNNとする場合、重みが有限であり、tanhやReluを活性化関数として用 いていれば大丈夫。