14
PyMC3による潜在表現の推定 吉岡

20160611 pymc3-latent

  • Upload
    -

  • View
    542

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 20160611 pymc3-latent

PyMC3による潜在表現の推定

吉岡 琢

Page 2: 20160611 pymc3-latent

• 言いたいこと:PyMC3を使うと確率モデルに基づくデータの潜在表現を自動的に推定できます。

• PyMC3:ベイズ推定を自動的に実行できるPythonのライブラリ

• 本発表で扱う確率モデルの例:トピックモデル

Page 3: 20160611 pymc3-latent

• 言いたいこと:PyMC3を使うと確率モデルに基づくデータの潜在表現を自動的に推定できます。

• PyMC3:ベイズ推定を自動的に実行できるPythonのライブラリ

• 本発表で扱う確率モデルの例:トピックモデル

Page 4: 20160611 pymc3-latent

28x28=784次元

[Kingma andWelling2014]

784次元

2次元

エンコーダMLP

デコーダMLP

• X-> (エンコード) ->Z->(デコード) ->X’• XとZ:確率変数(Xは既知の画像、Zは未知の潜在表現)• X’がXと近い⇒Zは画像の情報を保持している!

Page 5: 20160611 pymc3-latent

79

6

1

8

3 5

0

2

64

Page 6: 20160611 pymc3-latent

• 言いたいこと:PyMC3を使うと確率モデルに基づくデータの潜在表現を自動的に推定できます。

• PyMC3:ベイズ推定を自動的に実行できるPythonのライブラリ

• 本発表で扱う確率モデルの例:トピックモデル

Page 7: 20160611 pymc3-latent

• トピックモデル:文書をトピックの確率的な合成で表現する確率モデル。

• トピック:テーマに沿った単語の確率分布。

https://www.cs.princeton.edu/~blei/topicmodeling.html

[Blei etal.,2003]

遺伝

生物

神経

IT

Page 8: 20160611 pymc3-latent

各文書のトピックの分布

各トピックの単語の分布

各文書の単語の分布

⇒ 各文書の潜在表現

• トピックモデルの確率モデル:文書の生成過程を表現します。

Page 9: 20160611 pymc3-latent

エンコーダMLP トピックモデル

トピック分布

エンコーダMLP

デコーダMLP

2次元ベクトル

Page 10: 20160611 pymc3-latent

• 言いたいこと:PyMC3を使うと確率モデルに基づくデータの潜在表現を自動的に推定できます。

• PyMC3:ベイズ推定を自動的に実行できるPythonのライブラリ

• 本発表で扱う確率モデルの例:トピックモデル

Page 11: 20160611 pymc3-latent

各文書のトピックの分布

各トピックの単語の分布

各文書の単語の分布

⇒ 各文書の潜在表現

• PyMC3で(上記のような)確率モデルを記述すると、自動的に未知変数(トピック分布と単語分布)が推定されます。

–推定方法:自動微分変分ベイズ(ADVI;[Kucukelbir etal.,2015])• 多くの場合で実用的な精度、かつ(MCMCと比べて)高速

Page 12: 20160611 pymc3-latent

確率モデルの定義

(トピックモデル)

エンコーダーの定義

(文書->トピック分布)

変分ベイズ推定

(ADVI関数の呼び出し)

Page 13: 20160611 pymc3-latent

EvidenceLowerBound (ELBO)変分ベイズの目的関数

Topic#0:york mr yearyearswm pl st wonworkingmaTopic#1:0010new251220151630eduTopic#2:yearteamgameplaywingamesplayersseasonhockeyleagueTopic#3:god jesus peopledoesbelievewordchristian saythinkbibleTopic#4:don thinkjustlikeknowpeople rightgoingve sayTopic#5:keychipuseencryption clippergovernmentkeyssecuritylawpublicTopic#6:edu spaceuseprogramavailableinformation filecommailftpTopic#7:peoplegovernmentyearsstatesaidarmenian gunarmenians warworldTopic#8:cargood likenewusedworkjustyearsusepowerTopic#9:windowsthanksdriveusedoesdoscardproblemscsi using

Page 14: 20160611 pymc3-latent

• 現時点ではエンコーダ部分はPyMC3にマージされていません(ADVIは実装済みです)。

• ドキュメントとテストを書いてからPRを送る予定です(できれば今月中)。

– https://github.com/pymc-devs/pymc3

ご清聴ありがとうございました。