SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Downloaden Sie, um offline zu lesen
深層⽣成モデルと世界モデル,
深層⽣成モデルライブラリPixyzについて
東京⼤学⼯学系研究科 技術経営戦略学専攻 特任助教
鈴⽊雅⼤
2020/09/06
TensorFlow User Group Meetup - ベイズ分科会
1
⾃⼰紹介
鈴⽊雅⼤(東京⼤学松尾研究室 特任助教)
¤ 経歴
¤ 2015年3⽉ 北海道⼤学情報科学研究科修了
¤ 2018年3⽉ 東京⼤学⼯学系研究科修了
¤ 2018年4⽉〜2020年7⽉ 東京⼤学⼯学系研究科 特任研究員
¤ 2020年8⽉〜 東京⼤学⼯学系研究科 特任助教
¤ 研究分野︓
¤ 深層⽣成モデル・マルチモーダル学習・転移学習(ゼロショット学習)
¤ 活動など︓
¤ Deep Learning基礎講座・サマースクール「深層⽣成モデル」などの講義担当
¤ Goodfellow, Bengioら著「深層学習」の監訳・分担翻訳
2
⽬次
¤ 深層⽣成モデル
¤ 世界モデルと深層⽣成モデル
¤ Pixyz︓複雑な深層⽣成モデルを実装するためのライブラリ
¤ まとめ
3
深層⽣成モデル
4
深層⽣成モデル
¤ 深層学習の研究分野では,深層⽣成モデルの研究が進んでいる.
¤ ⽣成系(画像や⽂書)の他に,異常検知,半教師あり学習,表現学習,メタ学習など
Fig. 1. Schematic illustration of the Generative
training scene ! from different viewpoints (in this
A B
r1
r
Representation n
v2
v3
v1
vv1
Neural sc
representa
+
i
i i
i
Observation 1
Observation 3Observation 2
2.1 UNSUPERVISED MODELS FOR WHOLE-SENTENCE ENCODING
A standard RNN language model predicts each word of a sentence conditioned on the previous
word and an evolving hidden state. While effective, it does not learn a vector representation of the
entire sentence. In order to incorporate a continuous global latent sentence representation, we first
need a method to map between sentences and distributed representations that can be trained in an
unsupervised setting. While no strong generative model is available for this problem, three non-
generative techniques have shown promise: sequence autoencoders, skip-thought, and paragraph
vector.
Sequence autoencoders have seen some success in pre-training sequence models for supervised
downstream tasks (Dai & Le, 2015) and in generating complete documents (Li et al., 2015a). An au-
toencoder consists of an encoder function 'enc and a probabilistic decoder model p(x|~z = 'enc(x)),
and maximizes the likelihood of a data case x conditioned on ~z, the learned code for x. In the case of
a sequence autoencoder, both encoder and decoder are RNNs and data cases are sequences of tokens.
There are serious problems with using standard autoencoders to learn feature extractors for global
sentence features. In Table 1, we present the results of computing a path or homotopy between the
encodings for two sentences and decoding each intermediate code. The intermediate sentences are
generally ungrammatical and do not transition smoothly from one to the other. This suggests that
these models do not generally learn a smooth, interpretable feature system for sentence encoding. In
addition, since these models do not incorporate a prior over ~z, there is no practical way to use them
in a generative setting to assign probabilities to sentences or to sample novel sentences.
i went to the store to buy some groceries .
i store to buy some groceries .
i were to buy any groceries .
horses are to buy any groceries .
horses are to buy any animal .
horses the favorite any animal .
horses the favorite favorite animal .
horses are my favorite animal .
Table 1: Sentences produced by greedily decoding from points between two sentence encodings
with a conventional autoencoder. The intermediate sentences are not plausible English. 5
[Brock+ 18]
[Eslami+ 18]
[Bowman+ 15]
[Zhu + 17]
Published as a conference paper at ICLR 2016
A stop sign is flying in
blue skies.
A herd of elephants fly-
ing in the blue skies.
A toilet seat sits open in
the grass field.
Figure 1: Examples of generated images based on captions that describe novel s
highly unlikely to occur in real life. The captions describe a common object doin
strange location.
2 RELATED WORK
Deep Neural Networks have achieved significant success in various tasks s
(Krizhevsky et al., 2012), speech transcription (Graves et al., 2013), and m
danau et al., 2015). While most of the recent success has been achieved b
generative models have not yet enjoyed the same level of success. Most
[Mansimov+ 15]
[Ho+ 20]
確率的⽣成モデル
!!"#" "
観測データ
⽣成
データ分布
⽣成モデル
!$ #近似
⽣成
6
!! " = $ !! "|& !(&))&
⽣成モデル
パラメータ
観測変数 潜在変数
!
"
! ~ $!(!|")
" ~ $(")
¤ 観測されたデータが未知のデータ分布から⽣成されていると仮定し,その⽣成過程を確率分布に
よってモデル化する枠組み.
¤ データとして観測される観測変数の他に,その背景にある確率変数として潜在変数も仮定することが多
い(潜在変数モデル).
¤ 「データがどのようにできているか︖」を明⽰的に設計することができ,モデルからデータを⽣
成(シミュレーション)することができる.
(
% = '! !"#
$
⽣成モデルの学習
¤ ⽬標︓⽣成モデル!!(")がデータ分布!"#$#(")を近似するようにしたい.
¤ ⽣成モデルの構造を設計した上で,近似を実現するようにパラメータ*を選ぶ.
=> ⽣成モデルの学習
¤ 分布間の「距離」にカルバック・ライブラーダイバージェンスを選択すると,尤度最⼤化
に対応.
(%(')(&'('(')
7
近似
+, = arg max
%
2
)!∈+
log (% '!
⽣成モデルでできること
¤ ⽣成︓
¤ ⽣成モデルが学習できれば,未知のデータを⽣成できる
¤ 「⽣成」モデルと呼ばれるのはここから
¤ 密度推定︓
¤ データを⼊⼒すると,それがどれだけ⽣成モデルと違うかがわかる.
¤ 外れ値検出や異常検知に⽤いられる.
¤ ⽋損値補完,ノイズ除去︓
¤ ⽋損やノイズのある⼊⼒を⼊れると「元のデータらしく」補完して
くれる.
http://jblomo.github.io/datamining290/slides/2013-04-26-
Outliers.html
8
⽣成モデル⽣成
⽣成モデルにおける推論
¤ 推論(inference)︓
¤ 確率変数(観測変数)が与えられた下で,任意の確率変数(潜在変数)の事後分布を求める.
¤ 潜在変数を持つ⽣成モデルにおける重要な概念(「結果」から「原因」を探る).
¤ ⼀般のモデルでは,推論は計算困難なことが多い.
¤ 様々な近似推論が提案されている.
※ 本発表では,潜在変数の事後分布を求めること(推論)と,モデルのパラメータ値を最適化すること
(推定,学習)を区別します.
9
'
"~!! ("|&)
5
(%(5|')
)
深層⽣成モデル
¤ 観測変数が複雑な場合,単純な確率分布では直接表現できない.
¤ 特に観測変数がベクトルで,次元間の依存関係が⾮線形な場合(⾼解像度画像など)
¤ 従来の⽣成モデルは,複雑な観測データを直接⽣成することは意図していなかった.
複雑な関係性を表すには︖-> 深層ニューラルネットワーク(DNN)
¤ 深層⽣成モデル(deep generative model)
¤ 確率分布をDNNで表現した⽣成モデル.
¤ モデルパラメータは勾配情報に基づき学習.
!
"
! ~ $!(!|")
深層ニューラルネットワークによる確率分布の表現
" ~ $(")
⽣成モデルによって明⽰的に⽣成過程をモデル化できる
+
DNNによって複雑な変数間の関係性を捉えられる
10
深層⽣成モデルの種類
モデル ⽣成モデルの尤度計算 ⽣成 推論
VAE ⽣成モデル︓ " #, % = ∫ " # % " % (%
推論モデル︓ ) % #
直接は不可能(対数尤度の
下界が計算可能)
低コスト 可能(推論モデル)
GAN ⽣成器︓ *(%)
識別器︓ -(#)
不可能(識別器が真のモデ
ルとの尤度⽐を推定)
低コスト 不可能(エンコーダを導
⼊すれば可能)
⾃⼰回帰モデル 条件付きモデル︓∏! "(/!|/", … , /!#") 可能 ⾼コスト 潜在変数がない
フローベース フロー(可逆な関数)︓ # = 2(%) 可能 低コスト 可能(逆変換)
拡散モデル 逆過程︓"(#$) ∏% "(#%#"|#%)
拡散過程︓∏% )(#%|#%#")
直接は不可能(対数尤度の
下界が計算可能)
⾼コスト
(反復)
可能(拡散過程)
スコアベース スコアネットワーク︓3(#) 直接は不可能(対数尤度の
勾配が計算可能)
⾼コスト
(反復)
潜在変数がない
エネルギーベース エネルギー関数︓4(#) 困難(分配関数の計算が困
難)
⾼コスト
(反復)
モデルの設計による
11
• 分布間の距離の選択や,モデルの設計,分布のパラメータ化⽅法などによって種類は様々
Variational Autoencoder
¤ Variational autoencoder(VAE) [Kingma+ 13, Rezende+ 14]
¤ 潜在変数モデルの確率分布をDNNで表現する(深層潜在変数モデル).
¤ 潜在変数*の近似事後分布(推論)を,観測+を⼊⼒とした関数(DNN)で表現(amortized
variational inference)
!
"
7,(5|')
! ~ #5(!|&)
& ~ #(&)
)! % # = 6(%|7 = 8&
'
# ,9 = 8&
(
(#))
推論モデル(近似事後分布)
⽣成モデル
%" & ' = ℬ(&|, = -# ' )
'
#
7 9
,
事前分布
%(&) = /(0, 2)
※ ") #, % = ") # % "(%)が⽣成モデルだが,慣例上") # % を⽣成モデルと呼ぶ
12
Variational Autoencoder
¤ ⽬的関数︓対数周辺尤度の変分下界(エビデンス下界,evidence lower bound︔ELBO)
¤ 分布のパラメータ化等の話を省略して,情報の流れを確認.
¤ VAEでは推論モデルで⼊⼒-を.にエンコードし,⽣成モデルで.から-をデコード(再構成)する.
¤ 推論モデルと⽣成モデルをオートエンコーダにおけるエンコーダとデコーダとみなせる.
13
log (%(') ≥ 9/: 5 ' log (% '|5 − ;01[7, 5 ' ∥ ( 5 ]
負の再構成誤差 推論モデルの正則化
"エンコーダ,3 & " デコーダ!! "|&! !
再構成⼊⼒
⽣成画像
¤ ランダムな&からデコーダによって画像!をサンプリング
¤ データ集合と同じような画像が⽣成できているが,輪郭等がぼやける傾向がある.
rmed through the inverse CDF of the Gaussian to produce
h of these values z, we plotted the corresponding generative
[Kingma+ 13] @AlecRad
14
⽣成画像
¤ Nouveau VAE(NVAE)[Vahdat+ 20]
¤ VAEの潜在変数を階層化する.
¤ 利点︓
¤ 階層的な表現を獲得できる.
¤ モデル全体の表現⼒を向上させることができる.
¤ より柔軟な推論が可能となる.
15
VAEと表現学習
¤ VAEでは,再構成だけでなく表現&~(;(&|!)も学習しているとみなせる.
¤ 深層⽣成モデルにおいては,表現学習は推論と等価
¤ ⼊⼒から潜在変数へ推論することで表現を獲得している.
¤ VAEは表現学習⼿法として優れた⼿法.
¤ 表現学習(representation learning)︓
¤ データから「良い表現」を(できれば教師なしで)獲得する.
¤ 「良い表現」とは︖
¤ 元のデータの性質をある程度保持しつつ,他のタスクにも使い回せるような表現.
¤ Meta-Prior [Bengio+ 13, Goodfellow+ 16]
¤ 同時に多くのタスクに使える表現の性質に関する仮定
¤ 多様体,Disentangle,概念の階層性,半教師あり学習,クラスタ性など
16
https://www.slideshare.net/lubaelliott/emily-denton-unsupervised-learning-
of-disentangled-representations-from-video-creative-ai-meetup
Disentangled representation
¤ Disentangled representation(もつれを解く表現)
¤ データは独⽴に変化する要素から⽣成されているという仮定
¤ 例) 物体の向き,光源の状態
¤ 利点︓
¤ ⼈間が解釈しやすい表現(「概念」の獲得)
¤ 様々なタスクに転⽤できる可能性
¤ 推論モデルへの正則化をによってdisentangleな表現を獲得可能[Higgins+ 17]
https://www.slideshare.net/lubaelliott/emily-denton-unsupervised-learning-of-disentangled-
representations-from-video-creative-ai-meetup
17
条件付き深層⽣成モデル
¤ 観測変数) (!と異なる情報)で条件づけた深層⽣成モデル
¤ , から!への⽣成過程を表現.
18
'
5
5>
別の情報 潜在変数
'
( ' = ∫ ( ' 5 ( 5 @5 ( '|> = ∫ ( ' 5, > ( 5 @5
⼊⼒
条件付き深層⽣成モデル
¤ 属性*から画像!の⽣成[Larsen+ 15]
¤ ⽂書*から画像!の⽣成[Mansimov+ 15]
19
Published as a conference paper at ICLR 2016
A stop sign is flying in
blue skies.
A herd of elephants fly-
ing in the blue skies.
A toilet seat sits open in
the grass field.
A person skiing on sand
clad vast desert.
Autoencoding beyond pixels using a learned similarity metric
Input
Reconstruction
Bald
Bangs
Black hair
Blond hair
Bushy eyebrows
Eyeglasses
Gray hair
Heavy makeup
M
ale
M
ustache
Pale skin
Figure 5. Using the VAE/GAN model to reconstruct dataset samples with visual attribute vectors added to their latent representations.
as demonstrated by Denton et al. (2015); Radford et al.
(2015).
Lately, convolutional networks with upsampling have
shown useful for generating images from a latent rep-
resentation. This has sparked interest in learning im-
age embeddings where semantic relationships can be ex-
pressed using simple arithmetic – similar to the suprising
results of the word2vec model by Mikolov et al. (2013).
First, Dosovitskiy et al. (2015) used supervised training to
train convolutional network to generate chairs given high-
level information about the desired chair. Later, Kulkarni
et al. (2015); Yan et al. (2015); Reed et al. (2015) have
demonstrated encoder-decoder architectures with disentan-
gled feature representations, but their training schemes rely
on supervised information. Radford et al. (2015) inspect
the latent space of a GAN after training and find directions
5. Discussion
The problems with element-wise distance metrics are well
known in the literature and many attempts have been made
at going beyond pixels – typically using hand-engineered
measures. Much in the spirit of deep learning, we argue
that the similarity measure is yet another component which
can be replaced by a learned model capable of capturing
high-level structure relevant to the data distribution. In this
work, our main contribution is an unsupervised scheme for
learning and applying such a distance measure. With the
learned distance measure we are able to train an image
encoder-decoder network generating images of unprece-
dented visual fidelity as shown by our experiments. More-
over, we show that our network is able to disentangle fac-
tors of variation in the input data distribution and discover
visual attributes in the high-level representation of the la-
世界モデルと深層⽣成モデル
20
世界モデル
¤ ⼈間は世界のあらゆるものを知覚できるわけではない.
¤ 脳に⼊ってくる情報は⾮常に限られている.
¤ したがって脳の内部では,限られた情報から現実世界をモデル化している.
¤ 世界モデル(world model)︓
¤ 外界からの限られた観測を元に,世界の構造を近似するように学習するモデル.
¤ 観測から要因を推論し,推論した要因から未来や未知のことを予測(⽣成)する.
21
推論
要因
予測
観測
近似
世界モデル環境
世界モデルにおける表現の獲得
¤ 脳内では,外界からの情報を空間的・時間的な表現に圧縮している.
¤ 例︓⾃電⾞を漕いでいる⼈は「⾃転⾞を漕いでいる」という表現を時間的・空間的に圧縮している.
¤ これは,表現の階層的な推論に対応する.
¤ 世界モデルは推論による表現学習を⾏っている.
22
推論
要因
予測
世界モデル
世界モデルによる予測
¤ 学習した世界モデルによって未来をシミュレーションしている.
¤ ⼈間はこれを常に⾏っていると考えられる.
¤ 例︓バットを振ってボールに当てる
¤ ボールが⾶んでくる視覚情報が脳に到達する時間は,バットの振り⽅を決める時間よりも短い.
¤ 世界モデルによって無意識に予測を⾏い,それにしたがって筋⾁を動かしている.
23
推論
要因
予測
世界モデル
深層⽣成モデルを⽤いた世界モデル
¤ World Model[Ha+ 18]
¤ VAEとMDN-RNN[Graves + 13, Ha+ 17]で,ゲーム環境の世界モデルを学習
24
世界モデル内での強化学習
¤ 学習した世界モデルの中で強化学習を⾏う
¤ ⼈間でいうイメージトレーニングや睡眠学習のようなもの
¤ 実世界とは違い,何回でも学習できる.
¤ 実世界(ゲーム)でテストすると,正しく⾏動できていることがわかる.
25
複雑な環境での世界モデル
¤ Generative Query Network(GQN)[Eslami+ 18]
¤ ある複数の視点における画像を元に,別の視点の画像を予測する世界モデル.
¤ 条件付き深層⽣成モデルの利⽤.
¤ 複数の視点- = /(!",…,%
, 1",…,%
)と別の視点1&
で条件付けた画像1&
の深層⽣成モデル.
26
Fig. 1. Schematic illustration of the Generative Query Network. (A) The agent observes
training scene ! from different viewpoints (in this example from &$
/
, &$
@
and &$
A
). (B) The inputs
to the representation network 2 are observations made from viewpoints &$
/
and &$
@
, and the
A B
r1
r2
r
h1 h2 hL
z
Generation network gRepresentation network f
···
v2
v3
v1
v2
v1
v3
Neural scene
representation
Query
Latent
Rendering steps
Predicted
view
+
i
i i
i i i
Observation 1
Observation 3Observation 2
⽣成ネットワーク
(⽣成モデル)
表現ネットワーク
(表現を推論する部分)
!&
"
( & !<
, ,<
, -
# !<
&, ,<
, -.(&|,<
, -)
-
1&
Generative Query Network
https://www.youtube.com/watch?v=RBJFngN33Qo
27
時系列情報からの世界モデルの獲得
¤ エージェントの視点と⾏動から,世界の不変的な構造を学習 [Gregor+ 19]
¤ 深層状態空間モデルの学習と強化学習を同時に⾏う.
¤ 状態でどのような表現が獲得されているかを確認
¤ エージェントが歩き回ることによって,環境の地図が作成される.
¤ 表現空間上で,⼀貫性のある表現が獲得できていることがわかる.
28
https://www.youtube.com/watch?v=dOnvAp_wxv0
推論としての⽅策最適化
¤ 強化学習における⽅策の最適化も,確率モデルにおける推論とみなすことができる.
¤ Control as Inference (RL as inference)[Levine+ 18]
¤ 状態2'と⾏動3'が最適なのかを評価する最適性変数4' ∈ {0,1}を導⼊.
¤ 最適性変数が従う分布は,報酬関数:を⽤いて$ 4' = 1 2', 3' = exp(:(2', 3'))とする.
¤ すると,最適⽅策$()' 3'|2' は最適性変数4':+と状態2'からの推論となる.
¤ Active inference(⾃由エネルギー原理)も(報酬のエンコード⽅法が異なるが)同様の枠組み.
!45$ -$|.$ = ! -$|.$, 0$:7 = 1
29
世界モデルとマルチモーダル学習
¤ 従来の世界モデル研究では,単⼀モダリティ(主に画像)のみを扱っていた.
¤ ⼈間は様々なモダリティ情報を元に,脳内に抽象的な表現を獲得している.
Þ 世界モデルにおけるマルチモーダル学習の重要性
[Shi+ 19]
30
マルチモーダルVAE
¤ Joint Multimodal VAE(JMVAE) [Suzuki+ 17]
¤ 画像!と⽂書>を異なるモダリティと考え,それらの情報を統合した共有表現を推論するVAE.
¤ 単⼀モダリティからも推論するために,それぞれの推論モデルを⽤意してKL最⼩化で近づける.
!
"
> >!
" "
-*+-*+
8 ' 98 ' &
8 ' &, 9
31
共有表現 モダリティ間の双⽅向変換
58 4
Male : 0.95
Eyeglasses : -0.99
Young : 0.30
Smiling : -0.97
!
!
Male : 0.22
Eyeglasses : -0.99
Young : 0.87
Smiling : -1.00
!
!
Input
Generated
attributes Average face Reconstruction Not Male Eyeglasses Not Young Smiling
Mouth
slightly open
4.10 *6 *7
4.2 57
Random facesAverage face
Base
(random)
Not Male
Bald
Smiling
(b)
(a)
!
!
Neuro-SERKET
¤ Neuro-SERKET [Taniguchi+ 19]
¤ 深層⽣成モデルを含む確率的⽣成モデルによるマルチモーダル認知アーキテクチャの提案
¤ 確率モデルの結合には,SERKET[Nakamura+ 17]の⽅法を応⽤.
¤ VAE+GMM+LDA+ASRの例(数字の画像(MNIST)と⾳声から学習)
¤ 今後の課題︓
¤ 複雑な認知アーキテクチャを全て深層⽣成モデルで設計・学習することは可能か︖
¤ そうした複雑な深層⽣成モデルを簡潔に実装することは可能か︖
32
Pixyz︓複雑な深層⽣成モデルを実装するための
ライブラリ
33
深層⽣成モデルと確率プログラミング⾔語
¤ 深層学習の実装のためのライブラリ
¤ Tensorflow(Keras),PyTorch,Chainer,etc.
¤ しかしKerasなどの⾼レベルAPIは,深層⽣成モデルの実装には向かないと指摘されている[Tran 17].
¤ 確率モデル設計や学習・推論のためのライブラリ(確率プログラミング⾔語)
¤ Stan[Gelman 12], PRISM,PyMC3[Salvatier 16](PyMC4),Pyro[Bingham+ 18]
¤ Tensorflow ProbabilityやPyroは確率モデル設計においてDNNを含めて実装することができる.
¤ Tensorflow Probability︓Tensorflowベース
¤ Pyro︓PyTorchベース
34
深層⽣成モデルを実装する上での課題
¤ 既存の確率プログラミング⾔語では,近年の複雑な深層⽣成モデルを実装することが困難.
¤ 複雑な深層⽣成モデルの実装には,従来の深層学習ライブラリが⽤いられることが多い.
¤ 実装が⼈によってバラバラになり,コードが難解になりがち.
¤ 複雑な深層⽣成モデルの例(式は各モデルの⽬的関数)︓
¤ TD-VAE[Gregor+ 18]︓深層⽣成モデルに基づく系列モデル
¤ FactorVAE[Kim+ 18]︓VAEの正則化項の学習に敵対的訓練を⽤いたモデル
[Kim+ 18]
E
q(zt1 ,zt2 |bt1 ,bt2 )
[log p (xt2 |zt2 ) + log pB (zt1 |bt1 ) + log p (zt2 |zt1 ) log pB (zt2 |bt2 ) log q (zt1 |zt2 , bt1 , bt2 )]
<latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit>
1
N
NX
i=1
h
Eq(z|x(i)
)
h
log p
⇣
x(i)
|z
⌘i
KL
⇣
q
⇣
z|x(i)
⌘
kp(z)
⌘i
KL(q(z)kq(z))
<latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit><latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit><latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit><latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit>
KL(q(z)kq(z)) = Eq(z)

log
q(z)
q(z)
⇡ Eq(z)

log
D(z)
1 D(z)<latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit><latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit><latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit><latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit>
ただし
35
Pixyz
¤ Pixyz [Suzuki+ 18]︓深層⽣成モデルに特化した確率プログラミングライブラリ
¤ 複雑な深層⽣成モデルを簡潔に実装できることが特徴
¤ PyTorch(深層学習ライブラリ)ベース
¤ 直感的な実装を実現するために,DNNと確率モデルの設計が分離していることが特徴.
¤ Pixyzの構成図(実装の流れ)︓
DNN modules
(torch.nn.modules)
$ %, ' = $ % ' $ '
)('|%)
ℒ(.; 0, 2) = −6!!(#|%)[log
;'(., <)
=((<|.)
]
- ← - − 0
1ℒ(%; -, 4)
1-
Flow modules
(pixyz.flows)
Autoregression modules
(pixyz.autoregressions)
Loss API (pixyz.losses)
確率モデルの誤差関数を定義
Distribution API (pixyz.distributions)
DNNから確率分布,確率モデルを定義
Model API (pixyz.models)
定義した誤差関数をもとに学習
36
DNN部分
確率モデル部分
¤ DNNによって,確率分布を定義(パラメータ化)する
¤ インスタンス化した確率分布は,DNNを隠蔽した形でサンプリングや尤度計算ができる.
¤ 例︓VAEの⽣成モデルと推論モデルの定義
Pixyzの実装例(Distribution API)
%" : ; = ℬ(:; = = >(;))(ベルヌーイ)
8! ; : = /(;; ? = -5 : , @6 = -7!(:))(ガウス)
37
Pixyzの実装例(Distribution API)
¤ Pixyzでは,分布同⼠の掛け算で確率モデルの同時分布を構成できる.
¤ 掛け算の結果もサンプリング可能
¤ 現在モデル化している分布はprintで確認できる.
※ここではLaTeX形式でprintできるprint_latexを利⽤
%" :, ; = %" : ; %(;)
:, ;~%" :, ;
38
Pixyzの実装例
¤ Variational autoencoder (VAE) ︓
39
-> 確率モデルの式と対応した直感的な実装
−0=>[(; & ! ∥ # & ] + 4<8 & ! log #5 !|&
&
'
?,("|!)
! ~ $!(!|")
" ~ $(")
PyTorch Pixyz
DNN部分(確率分布を定義)
確率モデル部分
(1⾏で書ける)
複雑な深層⽣成モデルの実装
¤ TD-VAE[Gregor+ 18]︓深層⽣成モデルによる時系列モデルの⼀つ
¤ Pixyzでの実装(確率モデリング部分のみ表⽰)
40
E
q(zt1 ,zt2 |bt1 ,bt2 )
[log p (xt2 |zt2 ) + log pB (zt1 |bt1 ) + log p (zt2 |zt1 ) log pB (zt2 |bt2 ) log q (zt1 |zt2 , bt1 , bt2 )]
<latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit>
実装したモデルは
式として可視化できる
Pixyzの学習速度
¤ PyTorch上に実装されている既存の確率プログラミング⾔語Pyroと⽐較[鈴⽊+ 19].
¤ PyTorchでの実装(確率プログラミング⾔語を使わない実装)とも⽐較.
¤ 1ステップあたりのVAEの学習時間の⽐較(z︓潜在変数の次元,h︓隠れ層の次元)
¤ 結果︓
¤ Pyroと⽐べて⾼速.
¤ PyTorchでの実装と⽐べても⼤きく速度が落ちていない.
41
速度⾯からも,Pixyzは複雑な深層⽣成モデルの実装に適している
Pixyzの公開・利⽤状況
¤ 公開・利⽤状況
¤ リポジトリ︓https://github.com/masa-su/pixyz
¤ Star数350,ダウンロード数9707(9/6現在)
¤ Pixyzを⽤いた様々な深層⽣成モデルを実装
¤ Pixyzoo( https://github.com/masa-su/pixyzoo )
¤ GQN[Eslami+ 18]の再現実装(by 松尾研 ⾕⼝くん).
¤ GQN第1著者にも紹介される
¤ 今後の予定
¤ 時系列モデルの直感的な取り扱い
¤ チュートリアル・ホームページの整備
¤ 他ライブラリとの連携
42
-> 世界モデルの記述⾔語としてのPixyz
まとめ
¤ 深層⽣成モデルと世界モデル,深層⽣成モデルライブラリPixyzについて話しました.
¤ 参考(今回の内容をより詳しく説明したスライド)︓
¤ 「世界モデル」と関連研究について
¤ https://www.slideshare.net/masa_s/ss-97848402
¤ GQNと関連研究,世界モデルとの関係について
¤ https://www.slideshare.net/DeepLearningJP2016/dlgqn-111725780
¤ Control as inferenceと発展
¤ https://www.slideshare.net/DeepLearningJP2016/dlcontrol-as-inference-201266247
¤ 松尾研⾕⼝くんの資料もおすすめです(https://www.slideshare.net/ShoheiTaniguchi2/ss-
238325780)
¤ 謝辞︓
¤ この成果は国⽴研究開発法⼈新エネルギー・産業技術総合開発機構(NEDO)の委託業務の結果得
られたものです。
43

Weitere ähnliche Inhalte

Was ist angesagt?

PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説弘毅 露崎
 
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State SpacesDeep Learning JP
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAGIRobots
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep LearningSeiya Tokui
 
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法SSII
 
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理Taiji Suzuki
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習Deep Learning JP
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision TransformerYusuke Uchida
 
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language ModelsDeep Learning JP
 
Transformerを雰囲気で理解する
Transformerを雰囲気で理解するTransformerを雰囲気で理解する
Transformerを雰囲気で理解するAtsukiYamaguchi1
 
Non-autoregressive text generation
Non-autoregressive text generationNon-autoregressive text generation
Non-autoregressive text generationnlab_utokyo
 
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...Deep Learning JP
 
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion ModelsDeep Learning JP
 
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定Akira Masuda
 
POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用Yasunori Ozaki
 
深層生成モデルと世界モデル
深層生成モデルと世界モデル深層生成モデルと世界モデル
深層生成モデルと世界モデルMasahiro Suzuki
 
2019年度チュートリアルBPE
2019年度チュートリアルBPE2019年度チュートリアルBPE
2019年度チュートリアルBPE広樹 本間
 
Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)Masaya Kaneko
 

Was ist angesagt? (20)

PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep Learning
 
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
 
ELBO型VAEのダメなところ
ELBO型VAEのダメなところELBO型VAEのダメなところ
ELBO型VAEのダメなところ
 
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
 
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
 
Transformerを雰囲気で理解する
Transformerを雰囲気で理解するTransformerを雰囲気で理解する
Transformerを雰囲気で理解する
 
Non-autoregressive text generation
Non-autoregressive text generationNon-autoregressive text generation
Non-autoregressive text generation
 
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
 
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models
【DL輪読会】High-Resolution Image Synthesis with Latent Diffusion Models
 
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
 
POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用
 
深層生成モデルと世界モデル
深層生成モデルと世界モデル深層生成モデルと世界モデル
深層生成モデルと世界モデル
 
2019年度チュートリアルBPE
2019年度チュートリアルBPE2019年度チュートリアルBPE
2019年度チュートリアルBPE
 
Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)
 

Ähnlich wie 深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについて

[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
[DL輪読会]Meta-Learning Probabilistic Inference for Prediction[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
[DL輪読会]Meta-Learning Probabilistic Inference for PredictionDeep Learning JP
 
Embedding Watermarks into Deep Neural Networks
Embedding Watermarks into Deep Neural NetworksEmbedding Watermarks into Deep Neural Networks
Embedding Watermarks into Deep Neural NetworksYusuke Uchida
 
Variational Template Machine for Data-to-Text Generation
Variational Template Machine for Data-to-Text GenerationVariational Template Machine for Data-to-Text Generation
Variational Template Machine for Data-to-Text Generationharmonylab
 
Jubatusにおける大規模分散オンライン機械学習
Jubatusにおける大規模分散オンライン機械学習Jubatusにおける大規模分散オンライン機械学習
Jubatusにおける大規模分散オンライン機械学習Preferred Networks
 
大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズム大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズムTakuya Akiba
 
言語資源と付き合う
言語資源と付き合う言語資源と付き合う
言語資源と付き合うYuya Unno
 
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation 「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation Takumi Ohkuma
 
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose EstimationDeep Learning JP
 
Infer.NETを使ってLDAを実装してみた
Infer.NETを使ってLDAを実装してみたInfer.NETを使ってLDAを実装してみた
Infer.NETを使ってLDAを実装してみた正志 坪坂
 
Deep learning勉強会20121214ochi
Deep learning勉強会20121214ochiDeep learning勉強会20121214ochi
Deep learning勉強会20121214ochiOhsawa Goodfellow
 
TensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecTensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecShin Asakawa
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習Preferred Networks
 
流行りの分散表現を用いた文書分類について Netadashi Meetup 7
流行りの分散表現を用いた文書分類について Netadashi Meetup 7流行りの分散表現を用いた文書分類について Netadashi Meetup 7
流行りの分散表現を用いた文書分類について Netadashi Meetup 7Teruyuki Sakaue
 
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Yuya Unno
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】Naoki Hayashi
 
Interop2017
Interop2017Interop2017
Interop2017tak9029
 
第8回Language and Robotics研究会20221010_AkiraTaniguchi
第8回Language and Robotics研究会20221010_AkiraTaniguchi第8回Language and Robotics研究会20221010_AkiraTaniguchi
第8回Language and Robotics研究会20221010_AkiraTaniguchiAkira Taniguchi
 

Ähnlich wie 深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについて (20)

[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
[DL輪読会]Meta-Learning Probabilistic Inference for Prediction[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
 
Embedding Watermarks into Deep Neural Networks
Embedding Watermarks into Deep Neural NetworksEmbedding Watermarks into Deep Neural Networks
Embedding Watermarks into Deep Neural Networks
 
2016word embbed
2016word embbed2016word embbed
2016word embbed
 
Variational Template Machine for Data-to-Text Generation
Variational Template Machine for Data-to-Text GenerationVariational Template Machine for Data-to-Text Generation
Variational Template Machine for Data-to-Text Generation
 
Jubatusにおける大規模分散オンライン機械学習
Jubatusにおける大規模分散オンライン機械学習Jubatusにおける大規模分散オンライン機械学習
Jubatusにおける大規模分散オンライン機械学習
 
大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズム大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズム
 
言語資源と付き合う
言語資源と付き合う言語資源と付き合う
言語資源と付き合う
 
作文入門
作文入門作文入門
作文入門
 
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation 「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
Infer.NETを使ってLDAを実装してみた
Infer.NETを使ってLDAを実装してみたInfer.NETを使ってLDAを実装してみた
Infer.NETを使ってLDAを実装してみた
 
Deep learning勉強会20121214ochi
Deep learning勉強会20121214ochiDeep learning勉強会20121214ochi
Deep learning勉強会20121214ochi
 
EMNLP 2011 reading
EMNLP 2011 readingEMNLP 2011 reading
EMNLP 2011 reading
 
TensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vecTensorFlow math ja 05 word2vec
TensorFlow math ja 05 word2vec
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習
 
流行りの分散表現を用いた文書分類について Netadashi Meetup 7
流行りの分散表現を用いた文書分類について Netadashi Meetup 7流行りの分散表現を用いた文書分類について Netadashi Meetup 7
流行りの分散表現を用いた文書分類について Netadashi Meetup 7
 
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
 
Interop2017
Interop2017Interop2017
Interop2017
 
第8回Language and Robotics研究会20221010_AkiraTaniguchi
第8回Language and Robotics研究会20221010_AkiraTaniguchi第8回Language and Robotics研究会20221010_AkiraTaniguchi
第8回Language and Robotics研究会20221010_AkiraTaniguchi
 

Mehr von Masahiro Suzuki

確率的推論と行動選択
確率的推論と行動選択確率的推論と行動選択
確率的推論と行動選択Masahiro Suzuki
 
「世界モデル」と関連研究について
「世界モデル」と関連研究について「世界モデル」と関連研究について
「世界モデル」と関連研究についてMasahiro Suzuki
 
深層生成モデルを用いたマルチモーダルデータの半教師あり学習
深層生成モデルを用いたマルチモーダルデータの半教師あり学習深層生成モデルを用いたマルチモーダルデータの半教師あり学習
深層生成モデルを用いたマルチモーダルデータの半教師あり学習Masahiro Suzuki
 
(DL輪読)Variational Dropout Sparsifies Deep Neural Networks
(DL輪読)Variational Dropout Sparsifies Deep Neural Networks(DL輪読)Variational Dropout Sparsifies Deep Neural Networks
(DL輪読)Variational Dropout Sparsifies Deep Neural NetworksMasahiro Suzuki
 
(DL輪読)Matching Networks for One Shot Learning
(DL輪読)Matching Networks for One Shot Learning(DL輪読)Matching Networks for One Shot Learning
(DL輪読)Matching Networks for One Shot LearningMasahiro Suzuki
 
(DL hacks輪読)Bayesian Neural Network
(DL hacks輪読)Bayesian Neural Network(DL hacks輪読)Bayesian Neural Network
(DL hacks輪読)Bayesian Neural NetworkMasahiro Suzuki
 
深層生成モデルを用いたマルチモーダル学習
深層生成モデルを用いたマルチモーダル学習深層生成モデルを用いたマルチモーダル学習
深層生成モデルを用いたマルチモーダル学習Masahiro Suzuki
 
(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...
(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...
(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...Masahiro Suzuki
 
(DL hacks輪読) Variational Inference with Rényi Divergence
(DL hacks輪読) Variational Inference with Rényi Divergence(DL hacks輪読) Variational Inference with Rényi Divergence
(DL hacks輪読) Variational Inference with Rényi DivergenceMasahiro Suzuki
 
(DL hacks輪読) Deep Kalman Filters
(DL hacks輪読) Deep Kalman Filters(DL hacks輪読) Deep Kalman Filters
(DL hacks輪読) Deep Kalman FiltersMasahiro Suzuki
 
(研究会輪読) Weight Uncertainty in Neural Networks
(研究会輪読) Weight Uncertainty in Neural Networks(研究会輪読) Weight Uncertainty in Neural Networks
(研究会輪読) Weight Uncertainty in Neural NetworksMasahiro Suzuki
 
(DL hacks輪読) Deep Kernel Learning
(DL hacks輪読) Deep Kernel Learning(DL hacks輪読) Deep Kernel Learning
(DL hacks輪読) Deep Kernel LearningMasahiro Suzuki
 
(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...
(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...
(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...Masahiro Suzuki
 
(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning
(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning
(研究会輪読) Facial Landmark Detection by Deep Multi-task LearningMasahiro Suzuki
 
(DL hacks輪読) Difference Target Propagation
(DL hacks輪読) Difference Target Propagation(DL hacks輪読) Difference Target Propagation
(DL hacks輪読) Difference Target PropagationMasahiro Suzuki
 
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization TrickMasahiro Suzuki
 
(DL Hacks輪読) How transferable are features in deep neural networks?
(DL Hacks輪読) How transferable are features in deep neural networks?(DL Hacks輪読) How transferable are features in deep neural networks?
(DL Hacks輪読) How transferable are features in deep neural networks?Masahiro Suzuki
 

Mehr von Masahiro Suzuki (17)

確率的推論と行動選択
確率的推論と行動選択確率的推論と行動選択
確率的推論と行動選択
 
「世界モデル」と関連研究について
「世界モデル」と関連研究について「世界モデル」と関連研究について
「世界モデル」と関連研究について
 
深層生成モデルを用いたマルチモーダルデータの半教師あり学習
深層生成モデルを用いたマルチモーダルデータの半教師あり学習深層生成モデルを用いたマルチモーダルデータの半教師あり学習
深層生成モデルを用いたマルチモーダルデータの半教師あり学習
 
(DL輪読)Variational Dropout Sparsifies Deep Neural Networks
(DL輪読)Variational Dropout Sparsifies Deep Neural Networks(DL輪読)Variational Dropout Sparsifies Deep Neural Networks
(DL輪読)Variational Dropout Sparsifies Deep Neural Networks
 
(DL輪読)Matching Networks for One Shot Learning
(DL輪読)Matching Networks for One Shot Learning(DL輪読)Matching Networks for One Shot Learning
(DL輪読)Matching Networks for One Shot Learning
 
(DL hacks輪読)Bayesian Neural Network
(DL hacks輪読)Bayesian Neural Network(DL hacks輪読)Bayesian Neural Network
(DL hacks輪読)Bayesian Neural Network
 
深層生成モデルを用いたマルチモーダル学習
深層生成モデルを用いたマルチモーダル学習深層生成モデルを用いたマルチモーダル学習
深層生成モデルを用いたマルチモーダル学習
 
(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...
(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...
(DL hacks輪読) How to Train Deep Variational Autoencoders and Probabilistic Lad...
 
(DL hacks輪読) Variational Inference with Rényi Divergence
(DL hacks輪読) Variational Inference with Rényi Divergence(DL hacks輪読) Variational Inference with Rényi Divergence
(DL hacks輪読) Variational Inference with Rényi Divergence
 
(DL hacks輪読) Deep Kalman Filters
(DL hacks輪読) Deep Kalman Filters(DL hacks輪読) Deep Kalman Filters
(DL hacks輪読) Deep Kalman Filters
 
(研究会輪読) Weight Uncertainty in Neural Networks
(研究会輪読) Weight Uncertainty in Neural Networks(研究会輪読) Weight Uncertainty in Neural Networks
(研究会輪読) Weight Uncertainty in Neural Networks
 
(DL hacks輪読) Deep Kernel Learning
(DL hacks輪読) Deep Kernel Learning(DL hacks輪読) Deep Kernel Learning
(DL hacks輪読) Deep Kernel Learning
 
(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...
(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...
(DL hacks輪読) Seven neurons memorizing sequences of alphabetical images via sp...
 
(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning
(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning
(研究会輪読) Facial Landmark Detection by Deep Multi-task Learning
 
(DL hacks輪読) Difference Target Propagation
(DL hacks輪読) Difference Target Propagation(DL hacks輪読) Difference Target Propagation
(DL hacks輪読) Difference Target Propagation
 
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
 
(DL Hacks輪読) How transferable are features in deep neural networks?
(DL Hacks輪読) How transferable are features in deep neural networks?(DL Hacks輪読) How transferable are features in deep neural networks?
(DL Hacks輪読) How transferable are features in deep neural networks?
 

深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについて

  • 2. ⾃⼰紹介 鈴⽊雅⼤(東京⼤学松尾研究室 特任助教) ¤ 経歴 ¤ 2015年3⽉ 北海道⼤学情報科学研究科修了 ¤ 2018年3⽉ 東京⼤学⼯学系研究科修了 ¤ 2018年4⽉〜2020年7⽉ 東京⼤学⼯学系研究科 特任研究員 ¤ 2020年8⽉〜 東京⼤学⼯学系研究科 特任助教 ¤ 研究分野︓ ¤ 深層⽣成モデル・マルチモーダル学習・転移学習(ゼロショット学習) ¤ 活動など︓ ¤ Deep Learning基礎講座・サマースクール「深層⽣成モデル」などの講義担当 ¤ Goodfellow, Bengioら著「深層学習」の監訳・分担翻訳 2
  • 3. ⽬次 ¤ 深層⽣成モデル ¤ 世界モデルと深層⽣成モデル ¤ Pixyz︓複雑な深層⽣成モデルを実装するためのライブラリ ¤ まとめ 3
  • 5. 深層⽣成モデル ¤ 深層学習の研究分野では,深層⽣成モデルの研究が進んでいる. ¤ ⽣成系(画像や⽂書)の他に,異常検知,半教師あり学習,表現学習,メタ学習など Fig. 1. Schematic illustration of the Generative training scene ! from different viewpoints (in this A B r1 r Representation n v2 v3 v1 vv1 Neural sc representa + i i i i Observation 1 Observation 3Observation 2 2.1 UNSUPERVISED MODELS FOR WHOLE-SENTENCE ENCODING A standard RNN language model predicts each word of a sentence conditioned on the previous word and an evolving hidden state. While effective, it does not learn a vector representation of the entire sentence. In order to incorporate a continuous global latent sentence representation, we first need a method to map between sentences and distributed representations that can be trained in an unsupervised setting. While no strong generative model is available for this problem, three non- generative techniques have shown promise: sequence autoencoders, skip-thought, and paragraph vector. Sequence autoencoders have seen some success in pre-training sequence models for supervised downstream tasks (Dai & Le, 2015) and in generating complete documents (Li et al., 2015a). An au- toencoder consists of an encoder function 'enc and a probabilistic decoder model p(x|~z = 'enc(x)), and maximizes the likelihood of a data case x conditioned on ~z, the learned code for x. In the case of a sequence autoencoder, both encoder and decoder are RNNs and data cases are sequences of tokens. There are serious problems with using standard autoencoders to learn feature extractors for global sentence features. In Table 1, we present the results of computing a path or homotopy between the encodings for two sentences and decoding each intermediate code. The intermediate sentences are generally ungrammatical and do not transition smoothly from one to the other. This suggests that these models do not generally learn a smooth, interpretable feature system for sentence encoding. In addition, since these models do not incorporate a prior over ~z, there is no practical way to use them in a generative setting to assign probabilities to sentences or to sample novel sentences. i went to the store to buy some groceries . i store to buy some groceries . i were to buy any groceries . horses are to buy any groceries . horses are to buy any animal . horses the favorite any animal . horses the favorite favorite animal . horses are my favorite animal . Table 1: Sentences produced by greedily decoding from points between two sentence encodings with a conventional autoencoder. The intermediate sentences are not plausible English. 5 [Brock+ 18] [Eslami+ 18] [Bowman+ 15] [Zhu + 17] Published as a conference paper at ICLR 2016 A stop sign is flying in blue skies. A herd of elephants fly- ing in the blue skies. A toilet seat sits open in the grass field. Figure 1: Examples of generated images based on captions that describe novel s highly unlikely to occur in real life. The captions describe a common object doin strange location. 2 RELATED WORK Deep Neural Networks have achieved significant success in various tasks s (Krizhevsky et al., 2012), speech transcription (Graves et al., 2013), and m danau et al., 2015). While most of the recent success has been achieved b generative models have not yet enjoyed the same level of success. Most [Mansimov+ 15] [Ho+ 20]
  • 6. 確率的⽣成モデル !!"#" " 観測データ ⽣成 データ分布 ⽣成モデル !$ #近似 ⽣成 6 !! " = $ !! "|& !(&))& ⽣成モデル パラメータ 観測変数 潜在変数 ! " ! ~ $!(!|") " ~ $(") ¤ 観測されたデータが未知のデータ分布から⽣成されていると仮定し,その⽣成過程を確率分布に よってモデル化する枠組み. ¤ データとして観測される観測変数の他に,その背景にある確率変数として潜在変数も仮定することが多 い(潜在変数モデル). ¤ 「データがどのようにできているか︖」を明⽰的に設計することができ,モデルからデータを⽣ 成(シミュレーション)することができる. ( % = '! !"# $
  • 7. ⽣成モデルの学習 ¤ ⽬標︓⽣成モデル!!(")がデータ分布!"#$#(")を近似するようにしたい. ¤ ⽣成モデルの構造を設計した上で,近似を実現するようにパラメータ*を選ぶ. => ⽣成モデルの学習 ¤ 分布間の「距離」にカルバック・ライブラーダイバージェンスを選択すると,尤度最⼤化 に対応. (%(')(&'('(') 7 近似 +, = arg max % 2 )!∈+ log (% '!
  • 8. ⽣成モデルでできること ¤ ⽣成︓ ¤ ⽣成モデルが学習できれば,未知のデータを⽣成できる ¤ 「⽣成」モデルと呼ばれるのはここから ¤ 密度推定︓ ¤ データを⼊⼒すると,それがどれだけ⽣成モデルと違うかがわかる. ¤ 外れ値検出や異常検知に⽤いられる. ¤ ⽋損値補完,ノイズ除去︓ ¤ ⽋損やノイズのある⼊⼒を⼊れると「元のデータらしく」補完して くれる. http://jblomo.github.io/datamining290/slides/2013-04-26- Outliers.html 8 ⽣成モデル⽣成
  • 9. ⽣成モデルにおける推論 ¤ 推論(inference)︓ ¤ 確率変数(観測変数)が与えられた下で,任意の確率変数(潜在変数)の事後分布を求める. ¤ 潜在変数を持つ⽣成モデルにおける重要な概念(「結果」から「原因」を探る). ¤ ⼀般のモデルでは,推論は計算困難なことが多い. ¤ 様々な近似推論が提案されている. ※ 本発表では,潜在変数の事後分布を求めること(推論)と,モデルのパラメータ値を最適化すること (推定,学習)を区別します. 9 ' "~!! ("|&) 5 (%(5|') )
  • 10. 深層⽣成モデル ¤ 観測変数が複雑な場合,単純な確率分布では直接表現できない. ¤ 特に観測変数がベクトルで,次元間の依存関係が⾮線形な場合(⾼解像度画像など) ¤ 従来の⽣成モデルは,複雑な観測データを直接⽣成することは意図していなかった. 複雑な関係性を表すには︖-> 深層ニューラルネットワーク(DNN) ¤ 深層⽣成モデル(deep generative model) ¤ 確率分布をDNNで表現した⽣成モデル. ¤ モデルパラメータは勾配情報に基づき学習. ! " ! ~ $!(!|") 深層ニューラルネットワークによる確率分布の表現 " ~ $(") ⽣成モデルによって明⽰的に⽣成過程をモデル化できる + DNNによって複雑な変数間の関係性を捉えられる 10
  • 11. 深層⽣成モデルの種類 モデル ⽣成モデルの尤度計算 ⽣成 推論 VAE ⽣成モデル︓ " #, % = ∫ " # % " % (% 推論モデル︓ ) % # 直接は不可能(対数尤度の 下界が計算可能) 低コスト 可能(推論モデル) GAN ⽣成器︓ *(%) 識別器︓ -(#) 不可能(識別器が真のモデ ルとの尤度⽐を推定) 低コスト 不可能(エンコーダを導 ⼊すれば可能) ⾃⼰回帰モデル 条件付きモデル︓∏! "(/!|/", … , /!#") 可能 ⾼コスト 潜在変数がない フローベース フロー(可逆な関数)︓ # = 2(%) 可能 低コスト 可能(逆変換) 拡散モデル 逆過程︓"(#$) ∏% "(#%#"|#%) 拡散過程︓∏% )(#%|#%#") 直接は不可能(対数尤度の 下界が計算可能) ⾼コスト (反復) 可能(拡散過程) スコアベース スコアネットワーク︓3(#) 直接は不可能(対数尤度の 勾配が計算可能) ⾼コスト (反復) 潜在変数がない エネルギーベース エネルギー関数︓4(#) 困難(分配関数の計算が困 難) ⾼コスト (反復) モデルの設計による 11 • 分布間の距離の選択や,モデルの設計,分布のパラメータ化⽅法などによって種類は様々
  • 12. Variational Autoencoder ¤ Variational autoencoder(VAE) [Kingma+ 13, Rezende+ 14] ¤ 潜在変数モデルの確率分布をDNNで表現する(深層潜在変数モデル). ¤ 潜在変数*の近似事後分布(推論)を,観測+を⼊⼒とした関数(DNN)で表現(amortized variational inference) ! " 7,(5|') ! ~ #5(!|&) & ~ #(&) )! % # = 6(%|7 = 8& ' # ,9 = 8& ( (#)) 推論モデル(近似事後分布) ⽣成モデル %" & ' = ℬ(&|, = -# ' ) ' # 7 9 , 事前分布 %(&) = /(0, 2) ※ ") #, % = ") # % "(%)が⽣成モデルだが,慣例上") # % を⽣成モデルと呼ぶ 12
  • 13. Variational Autoencoder ¤ ⽬的関数︓対数周辺尤度の変分下界(エビデンス下界,evidence lower bound︔ELBO) ¤ 分布のパラメータ化等の話を省略して,情報の流れを確認. ¤ VAEでは推論モデルで⼊⼒-を.にエンコードし,⽣成モデルで.から-をデコード(再構成)する. ¤ 推論モデルと⽣成モデルをオートエンコーダにおけるエンコーダとデコーダとみなせる. 13 log (%(') ≥ 9/: 5 ' log (% '|5 − ;01[7, 5 ' ∥ ( 5 ] 負の再構成誤差 推論モデルの正則化 "エンコーダ,3 & " デコーダ!! "|&! ! 再構成⼊⼒
  • 14. ⽣成画像 ¤ ランダムな&からデコーダによって画像!をサンプリング ¤ データ集合と同じような画像が⽣成できているが,輪郭等がぼやける傾向がある. rmed through the inverse CDF of the Gaussian to produce h of these values z, we plotted the corresponding generative [Kingma+ 13] @AlecRad 14
  • 15. ⽣成画像 ¤ Nouveau VAE(NVAE)[Vahdat+ 20] ¤ VAEの潜在変数を階層化する. ¤ 利点︓ ¤ 階層的な表現を獲得できる. ¤ モデル全体の表現⼒を向上させることができる. ¤ より柔軟な推論が可能となる. 15
  • 16. VAEと表現学習 ¤ VAEでは,再構成だけでなく表現&~(;(&|!)も学習しているとみなせる. ¤ 深層⽣成モデルにおいては,表現学習は推論と等価 ¤ ⼊⼒から潜在変数へ推論することで表現を獲得している. ¤ VAEは表現学習⼿法として優れた⼿法. ¤ 表現学習(representation learning)︓ ¤ データから「良い表現」を(できれば教師なしで)獲得する. ¤ 「良い表現」とは︖ ¤ 元のデータの性質をある程度保持しつつ,他のタスクにも使い回せるような表現. ¤ Meta-Prior [Bengio+ 13, Goodfellow+ 16] ¤ 同時に多くのタスクに使える表現の性質に関する仮定 ¤ 多様体,Disentangle,概念の階層性,半教師あり学習,クラスタ性など 16 https://www.slideshare.net/lubaelliott/emily-denton-unsupervised-learning- of-disentangled-representations-from-video-creative-ai-meetup
  • 17. Disentangled representation ¤ Disentangled representation(もつれを解く表現) ¤ データは独⽴に変化する要素から⽣成されているという仮定 ¤ 例) 物体の向き,光源の状態 ¤ 利点︓ ¤ ⼈間が解釈しやすい表現(「概念」の獲得) ¤ 様々なタスクに転⽤できる可能性 ¤ 推論モデルへの正則化をによってdisentangleな表現を獲得可能[Higgins+ 17] https://www.slideshare.net/lubaelliott/emily-denton-unsupervised-learning-of-disentangled- representations-from-video-creative-ai-meetup 17
  • 18. 条件付き深層⽣成モデル ¤ 観測変数) (!と異なる情報)で条件づけた深層⽣成モデル ¤ , から!への⽣成過程を表現. 18 ' 5 5> 別の情報 潜在変数 ' ( ' = ∫ ( ' 5 ( 5 @5 ( '|> = ∫ ( ' 5, > ( 5 @5 ⼊⼒
  • 19. 条件付き深層⽣成モデル ¤ 属性*から画像!の⽣成[Larsen+ 15] ¤ ⽂書*から画像!の⽣成[Mansimov+ 15] 19 Published as a conference paper at ICLR 2016 A stop sign is flying in blue skies. A herd of elephants fly- ing in the blue skies. A toilet seat sits open in the grass field. A person skiing on sand clad vast desert. Autoencoding beyond pixels using a learned similarity metric Input Reconstruction Bald Bangs Black hair Blond hair Bushy eyebrows Eyeglasses Gray hair Heavy makeup M ale M ustache Pale skin Figure 5. Using the VAE/GAN model to reconstruct dataset samples with visual attribute vectors added to their latent representations. as demonstrated by Denton et al. (2015); Radford et al. (2015). Lately, convolutional networks with upsampling have shown useful for generating images from a latent rep- resentation. This has sparked interest in learning im- age embeddings where semantic relationships can be ex- pressed using simple arithmetic – similar to the suprising results of the word2vec model by Mikolov et al. (2013). First, Dosovitskiy et al. (2015) used supervised training to train convolutional network to generate chairs given high- level information about the desired chair. Later, Kulkarni et al. (2015); Yan et al. (2015); Reed et al. (2015) have demonstrated encoder-decoder architectures with disentan- gled feature representations, but their training schemes rely on supervised information. Radford et al. (2015) inspect the latent space of a GAN after training and find directions 5. Discussion The problems with element-wise distance metrics are well known in the literature and many attempts have been made at going beyond pixels – typically using hand-engineered measures. Much in the spirit of deep learning, we argue that the similarity measure is yet another component which can be replaced by a learned model capable of capturing high-level structure relevant to the data distribution. In this work, our main contribution is an unsupervised scheme for learning and applying such a distance measure. With the learned distance measure we are able to train an image encoder-decoder network generating images of unprece- dented visual fidelity as shown by our experiments. More- over, we show that our network is able to disentangle fac- tors of variation in the input data distribution and discover visual attributes in the high-level representation of the la-
  • 21. 世界モデル ¤ ⼈間は世界のあらゆるものを知覚できるわけではない. ¤ 脳に⼊ってくる情報は⾮常に限られている. ¤ したがって脳の内部では,限られた情報から現実世界をモデル化している. ¤ 世界モデル(world model)︓ ¤ 外界からの限られた観測を元に,世界の構造を近似するように学習するモデル. ¤ 観測から要因を推論し,推論した要因から未来や未知のことを予測(⽣成)する. 21 推論 要因 予測 観測 近似 世界モデル環境
  • 23. 世界モデルによる予測 ¤ 学習した世界モデルによって未来をシミュレーションしている. ¤ ⼈間はこれを常に⾏っていると考えられる. ¤ 例︓バットを振ってボールに当てる ¤ ボールが⾶んでくる視覚情報が脳に到達する時間は,バットの振り⽅を決める時間よりも短い. ¤ 世界モデルによって無意識に予測を⾏い,それにしたがって筋⾁を動かしている. 23 推論 要因 予測 世界モデル
  • 24. 深層⽣成モデルを⽤いた世界モデル ¤ World Model[Ha+ 18] ¤ VAEとMDN-RNN[Graves + 13, Ha+ 17]で,ゲーム環境の世界モデルを学習 24
  • 25. 世界モデル内での強化学習 ¤ 学習した世界モデルの中で強化学習を⾏う ¤ ⼈間でいうイメージトレーニングや睡眠学習のようなもの ¤ 実世界とは違い,何回でも学習できる. ¤ 実世界(ゲーム)でテストすると,正しく⾏動できていることがわかる. 25
  • 26. 複雑な環境での世界モデル ¤ Generative Query Network(GQN)[Eslami+ 18] ¤ ある複数の視点における画像を元に,別の視点の画像を予測する世界モデル. ¤ 条件付き深層⽣成モデルの利⽤. ¤ 複数の視点- = /(!",…,% , 1",…,% )と別の視点1& で条件付けた画像1& の深層⽣成モデル. 26 Fig. 1. Schematic illustration of the Generative Query Network. (A) The agent observes training scene ! from different viewpoints (in this example from &$ / , &$ @ and &$ A ). (B) The inputs to the representation network 2 are observations made from viewpoints &$ / and &$ @ , and the A B r1 r2 r h1 h2 hL z Generation network gRepresentation network f ··· v2 v3 v1 v2 v1 v3 Neural scene representation Query Latent Rendering steps Predicted view + i i i i i i Observation 1 Observation 3Observation 2 ⽣成ネットワーク (⽣成モデル) 表現ネットワーク (表現を推論する部分) !& " ( & !< , ,< , - # !< &, ,< , -.(&|,< , -) - 1&
  • 28. 時系列情報からの世界モデルの獲得 ¤ エージェントの視点と⾏動から,世界の不変的な構造を学習 [Gregor+ 19] ¤ 深層状態空間モデルの学習と強化学習を同時に⾏う. ¤ 状態でどのような表現が獲得されているかを確認 ¤ エージェントが歩き回ることによって,環境の地図が作成される. ¤ 表現空間上で,⼀貫性のある表現が獲得できていることがわかる. 28 https://www.youtube.com/watch?v=dOnvAp_wxv0
  • 29. 推論としての⽅策最適化 ¤ 強化学習における⽅策の最適化も,確率モデルにおける推論とみなすことができる. ¤ Control as Inference (RL as inference)[Levine+ 18] ¤ 状態2'と⾏動3'が最適なのかを評価する最適性変数4' ∈ {0,1}を導⼊. ¤ 最適性変数が従う分布は,報酬関数:を⽤いて$ 4' = 1 2', 3' = exp(:(2', 3'))とする. ¤ すると,最適⽅策$()' 3'|2' は最適性変数4':+と状態2'からの推論となる. ¤ Active inference(⾃由エネルギー原理)も(報酬のエンコード⽅法が異なるが)同様の枠組み. !45$ -$|.$ = ! -$|.$, 0$:7 = 1 29
  • 31. マルチモーダルVAE ¤ Joint Multimodal VAE(JMVAE) [Suzuki+ 17] ¤ 画像!と⽂書>を異なるモダリティと考え,それらの情報を統合した共有表現を推論するVAE. ¤ 単⼀モダリティからも推論するために,それぞれの推論モデルを⽤意してKL最⼩化で近づける. ! " > >! " " -*+-*+ 8 ' 98 ' & 8 ' &, 9 31 共有表現 モダリティ間の双⽅向変換 58 4 Male : 0.95 Eyeglasses : -0.99 Young : 0.30 Smiling : -0.97 ! ! Male : 0.22 Eyeglasses : -0.99 Young : 0.87 Smiling : -1.00 ! ! Input Generated attributes Average face Reconstruction Not Male Eyeglasses Not Young Smiling Mouth slightly open 4.10 *6 *7 4.2 57 Random facesAverage face Base (random) Not Male Bald Smiling (b) (a) ! !
  • 32. Neuro-SERKET ¤ Neuro-SERKET [Taniguchi+ 19] ¤ 深層⽣成モデルを含む確率的⽣成モデルによるマルチモーダル認知アーキテクチャの提案 ¤ 確率モデルの結合には,SERKET[Nakamura+ 17]の⽅法を応⽤. ¤ VAE+GMM+LDA+ASRの例(数字の画像(MNIST)と⾳声から学習) ¤ 今後の課題︓ ¤ 複雑な認知アーキテクチャを全て深層⽣成モデルで設計・学習することは可能か︖ ¤ そうした複雑な深層⽣成モデルを簡潔に実装することは可能か︖ 32
  • 34. 深層⽣成モデルと確率プログラミング⾔語 ¤ 深層学習の実装のためのライブラリ ¤ Tensorflow(Keras),PyTorch,Chainer,etc. ¤ しかしKerasなどの⾼レベルAPIは,深層⽣成モデルの実装には向かないと指摘されている[Tran 17]. ¤ 確率モデル設計や学習・推論のためのライブラリ(確率プログラミング⾔語) ¤ Stan[Gelman 12], PRISM,PyMC3[Salvatier 16](PyMC4),Pyro[Bingham+ 18] ¤ Tensorflow ProbabilityやPyroは確率モデル設計においてDNNを含めて実装することができる. ¤ Tensorflow Probability︓Tensorflowベース ¤ Pyro︓PyTorchベース 34
  • 35. 深層⽣成モデルを実装する上での課題 ¤ 既存の確率プログラミング⾔語では,近年の複雑な深層⽣成モデルを実装することが困難. ¤ 複雑な深層⽣成モデルの実装には,従来の深層学習ライブラリが⽤いられることが多い. ¤ 実装が⼈によってバラバラになり,コードが難解になりがち. ¤ 複雑な深層⽣成モデルの例(式は各モデルの⽬的関数)︓ ¤ TD-VAE[Gregor+ 18]︓深層⽣成モデルに基づく系列モデル ¤ FactorVAE[Kim+ 18]︓VAEの正則化項の学習に敵対的訓練を⽤いたモデル [Kim+ 18] E q(zt1 ,zt2 |bt1 ,bt2 ) [log p (xt2 |zt2 ) + log pB (zt1 |bt1 ) + log p (zt2 |zt1 ) log pB (zt2 |bt2 ) log q (zt1 |zt2 , bt1 , bt2 )] <latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit> 1 N NX i=1 h Eq(z|x(i) ) h log p ⇣ x(i) |z ⌘i KL ⇣ q ⇣ z|x(i) ⌘ kp(z) ⌘i KL(q(z)kq(z)) <latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit><latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit><latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit><latexit sha1_base64="SvOZOStw+wKaYrc97NtgTO49Xp8=">AAADNHichVFLaxRBEK4ZH4nrI6u5CF4al8jsIUuPRBRBCIogKJKHmwR2NkPPpHe2ybx2pndJtjN/wD/gwZOCiHj3D3jxllMOAW/iQQQvEbx4sOYhEkO0hpmq+ur7aqq6ndgXqaR0X9NPnDx1emLyTO3sufMXpuoXL62k0TBxeduN/ChZc1jKfRHythTS52txwlng+HzV2byX11dHPElFFD6R2zHvBswLRU+4TCJk13etXsJcZWbqcUasdBjYStwxs3VMLZ/3ZMcKmOw7jrqf2WpQQMaY7JCtdWWIZmYlwuvL5m+uH3kkLkkVAanjilS67uxD8qikHNuOWDskNsbNw0Iya3ksCBjBBsYAyznNinC7fHk1yBBq2vUGbdHCyNHArIIGVLYQ1V+DBRsQgQtDCIBDCBJjHxik+HTABAoxYl1QiCUYiaLOIYMaaofI4shgiG7i18OsU6Eh5nnPtFC7+Bcf3wSVBGboHn1DD+gH+pZ+oT+P7aWKHvks2+idUstje+rp5eUf/1UF6CX0/6j+ObOEHtwqZhU4e1wg+RZuqR+Nnx0s316aUdfoS/oV539B9+l73CAcfXdfLfKl51DDCzD/Pu6jwcr1lklb5uJcY/5udRWTcAWugoHnfRPm4QEsQBtc7YbW0TY0rr/TP+qf9M8lVdcqzTQcMv3bLwUH14E=</latexit> KL(q(z)kq(z)) = Eq(z)  log q(z) q(z) ⇡ Eq(z)  log D(z) 1 D(z)<latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit><latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit><latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit><latexit sha1_base64="9ozK/TatZQQQE/FPisXSHTMrnVI=">AAAC/3ichVFNa9RAGH4Tv+r60a1eBC/BpWV7cJ2I0FIoFK0g6KEfblvYWZbJdHZ36CSTTmaXtjEHr/4BQU8KUkQQr569+Ac89CeIxwpePPgmG1BbtG9I5plnnufJOzNBrGRiCTlw3FOnz5w9N3a+cuHipcvj1Ykra4keGC6aXCttNgKWCCUj0bTSKrERG8HCQIn1YOtevr4+FCaROnpsd2PRDlkvkl3JmUWqU33x0HtU367vTXv0iUc1SvOkdDtDanqehsz2gyC9n3XSXJRRJbq2RZXuebRrGB+x6RFjRo3s9W2bsjg2esc7OWaxiPFvLv7h7lRrpEGK8o4DvwQ1KGtJV/eBwiZo4DCAEAREYBErYJDg0wIfCMTItSFFziCSxbqADCroHaBKoIIhu4XfHs5aJRvhPM9MCjfHvyh8DTo9mCRfyFtySD6Td+Qr+fnPrLTIyHvZxTEYeUXcGX92bfXHia4QRwv9367/9myhC7NFrxJ7jwsm3wUf+Yd7zw9X51Ym0ynymnzD/l+RA/IJdxANv/M3y2LlJVTwAvyjx30crN1u+KThL9+pLdwtr2IMrsMNqON5z8ACPIAlaAJ3wJlybjnEferuu+/dDyOp65Seq/BXuR9/Ae2Bw/E=</latexit> ただし 35
  • 36. Pixyz ¤ Pixyz [Suzuki+ 18]︓深層⽣成モデルに特化した確率プログラミングライブラリ ¤ 複雑な深層⽣成モデルを簡潔に実装できることが特徴 ¤ PyTorch(深層学習ライブラリ)ベース ¤ 直感的な実装を実現するために,DNNと確率モデルの設計が分離していることが特徴. ¤ Pixyzの構成図(実装の流れ)︓ DNN modules (torch.nn.modules) $ %, ' = $ % ' $ ' )('|%) ℒ(.; 0, 2) = −6!!(#|%)[log ;'(., <) =((<|.) ] - ← - − 0 1ℒ(%; -, 4) 1- Flow modules (pixyz.flows) Autoregression modules (pixyz.autoregressions) Loss API (pixyz.losses) 確率モデルの誤差関数を定義 Distribution API (pixyz.distributions) DNNから確率分布,確率モデルを定義 Model API (pixyz.models) 定義した誤差関数をもとに学習 36 DNN部分 確率モデル部分
  • 37. ¤ DNNによって,確率分布を定義(パラメータ化)する ¤ インスタンス化した確率分布は,DNNを隠蔽した形でサンプリングや尤度計算ができる. ¤ 例︓VAEの⽣成モデルと推論モデルの定義 Pixyzの実装例(Distribution API) %" : ; = ℬ(:; = = >(;))(ベルヌーイ) 8! ; : = /(;; ? = -5 : , @6 = -7!(:))(ガウス) 37
  • 38. Pixyzの実装例(Distribution API) ¤ Pixyzでは,分布同⼠の掛け算で確率モデルの同時分布を構成できる. ¤ 掛け算の結果もサンプリング可能 ¤ 現在モデル化している分布はprintで確認できる. ※ここではLaTeX形式でprintできるprint_latexを利⽤ %" :, ; = %" : ; %(;) :, ;~%" :, ; 38
  • 39. Pixyzの実装例 ¤ Variational autoencoder (VAE) ︓ 39 -> 確率モデルの式と対応した直感的な実装 −0=>[(; & ! ∥ # & ] + 4<8 & ! log #5 !|& & ' ?,("|!) ! ~ $!(!|") " ~ $(") PyTorch Pixyz DNN部分(確率分布を定義) 確率モデル部分 (1⾏で書ける)
  • 40. 複雑な深層⽣成モデルの実装 ¤ TD-VAE[Gregor+ 18]︓深層⽣成モデルによる時系列モデルの⼀つ ¤ Pixyzでの実装(確率モデリング部分のみ表⽰) 40 E q(zt1 ,zt2 |bt1 ,bt2 ) [log p (xt2 |zt2 ) + log pB (zt1 |bt1 ) + log p (zt2 |zt1 ) log pB (zt2 |bt2 ) log q (zt1 |zt2 , bt1 , bt2 )] <latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit><latexit sha1_base64="6RhHIi8IQtIi6ez2digkBHP4zjY=">AAADrnichVHLbtNAFL2ueZTwaAobJDYWUVERJRpHSK1YVUVIXfZB0kpxZHncSTLq+IE9iWgG/wA/wIIVSAghFnwEG36gi25gjVgWiQ0Lrh8orgtlLM+9c+acM/fO0FDwWBJypM3o585fuDh7qXb5ytVrc/X56504GEUua7uBCKJd6sRMcJ+1JZeC7YYRczwq2A7df5Tu74xZFPPAfyIPQtbznIHP+9x1JEL2vLZujfw9JDCpnlqC9eXixFbSVmaSLBl52koS47lBpzD9A1sRHwzl3URZniOHlKrHiKUmXUsEAyPMDZ+VXCYV6b2caKu1pHJ6+ciT5DKx7Dol3v+7a7mRVoVcbb5c69JZzRt57Nn1BmmSbBinE7NIGlCMjaD+DizYgwBcGIEHDHyQmAtwIMavCyYQCBHrgUIswoxn+wwSqKF2hCyGDAfRfZwHuOoWqI/r1DPO1C6eIvCPUGnAAjkk78kx+Uw+kG/k1z+9VOaR1nKAkeZaFtpzL25u//yvysMoYThVnVmzhD6sZLVyrD3MkLQLN9ePJy+Ptx9uLag75A35jvW/JkfkE3bgj3+4bzfZ1iuo4QOY1es+nXRaTZM0zc0HjdW14ilm4RbchkW872VYhXXYgDa42kftUPuifdWJ3tF7up1TZ7RCcwNODH34G3CkCLY=</latexit> 実装したモデルは 式として可視化できる
  • 41. Pixyzの学習速度 ¤ PyTorch上に実装されている既存の確率プログラミング⾔語Pyroと⽐較[鈴⽊+ 19]. ¤ PyTorchでの実装(確率プログラミング⾔語を使わない実装)とも⽐較. ¤ 1ステップあたりのVAEの学習時間の⽐較(z︓潜在変数の次元,h︓隠れ層の次元) ¤ 結果︓ ¤ Pyroと⽐べて⾼速. ¤ PyTorchでの実装と⽐べても⼤きく速度が落ちていない. 41 速度⾯からも,Pixyzは複雑な深層⽣成モデルの実装に適している
  • 42. Pixyzの公開・利⽤状況 ¤ 公開・利⽤状況 ¤ リポジトリ︓https://github.com/masa-su/pixyz ¤ Star数350,ダウンロード数9707(9/6現在) ¤ Pixyzを⽤いた様々な深層⽣成モデルを実装 ¤ Pixyzoo( https://github.com/masa-su/pixyzoo ) ¤ GQN[Eslami+ 18]の再現実装(by 松尾研 ⾕⼝くん). ¤ GQN第1著者にも紹介される ¤ 今後の予定 ¤ 時系列モデルの直感的な取り扱い ¤ チュートリアル・ホームページの整備 ¤ 他ライブラリとの連携 42 -> 世界モデルの記述⾔語としてのPixyz
  • 43. まとめ ¤ 深層⽣成モデルと世界モデル,深層⽣成モデルライブラリPixyzについて話しました. ¤ 参考(今回の内容をより詳しく説明したスライド)︓ ¤ 「世界モデル」と関連研究について ¤ https://www.slideshare.net/masa_s/ss-97848402 ¤ GQNと関連研究,世界モデルとの関係について ¤ https://www.slideshare.net/DeepLearningJP2016/dlgqn-111725780 ¤ Control as inferenceと発展 ¤ https://www.slideshare.net/DeepLearningJP2016/dlcontrol-as-inference-201266247 ¤ 松尾研⾕⼝くんの資料もおすすめです(https://www.slideshare.net/ShoheiTaniguchi2/ss- 238325780) ¤ 謝辞︓ ¤ この成果は国⽴研究開発法⼈新エネルギー・産業技術総合開発機構(NEDO)の委託業務の結果得 られたものです。 43