« 自由エネルギー原理入門(3/7): Sec.3 実例を元にvariational FEの定式化について考える | 最新のページに戻る | 自由エネルギー原理入門(5/7): 「Sec.4-4-3 照明の例を用いた期待自由エネルギーGの計算」以降をアップデート »

■ 自由エネルギー原理入門(4/7): Sec.4 生成モデルに行動を含める

最新版のPDFファイルが最後のエントリ:「自由エネルギー原理入門(7/7): 「Sec.0 自由エネルギー原理を数式無しで説明する」を追加」にあります。このPDFファイルを最新版としますので、これから読む方にはPDFファイルでの閲覧をオススメします。


[4. 生成モデルの中に行動 を含める]

[4-1-1. 生成モデルの中に行動 を含める]

さてここから生成モデルの中に行動 を含めることを考える。まずは図2-3で使った因果グラフを再掲する(図4-1A)。

EFE4_01.png

図4-1: 行動を付加した生成モデル


これはいわばフルバージョンであるが、じっさいにNeural Comput. 2017でのFristonの期待自由エネルギーの式が前提としている生成モデルは図4-1Bのとおりだ。つまり、行動 が外界の状態 のみに作用しており、感覚入力 への直接的な因果はない。一方で、ここまで用いていた蝶と蛾の例では、行動 とは眼球運動だったので、目を動かしても世界は変わらず、視野だけが変わる。つまり、外界の状態 には作用せず、感覚入力 のみに対して直接的な因果がある(図4-1C)。(これはKatahira et al 2018での病気 と検査法の選択 と検査結果 においても同じ。)

[4-1-2. このセクションで用いる例: スイッチで照明をつけたら明るい]

そこでこのセクションでは、Neural Comput. 2017での生成モデル(図4-1B)に基づいた実例として、「スイッチで照明をつけたら明るい」というのを用いることにする(図4-2)。

EFE4_02b.png

図4-2: スイッチで照明をつけたら明るい


行動、外界の状態、感覚入力 はそれぞれ二つの可能な状態を持っている。 から から の関係には不確定性があり、スイッチオンでも照明がオンにならないときもあれば、照明がオンでも暗いと感じるときもある。これらの関係は以下のサブセクションごとに生成モデルによって規定される。

それではこの例に沿って、expected free energy EFE, epistemic value, extrinsic valueの式の導出までやってしまうことにする。

蝶と蛾の例はサッケードのモデルとして重要なのでまたあとで戻ってくる予定。


[4-2. 行動あり、現在の状態 と過去の行動 の推定(1)]

[4-2-1. 生成モデル と推測 の設定]

ではまず図3-2の現在の知覚の生成モデルに過去の行動 を付加することを考える。過去の行動 を潜在変数として捉えるならば、生成モデルのグラフィカルモデルによる表現は以下の通りになる(図4-3A)。

EFE4_03c.png

図4-3: 過去の行動を付加した生成モデル(1)


このとき生成モデルは以下のように書くことができる。

生成モデルは3つの因子に分解することができる(図4-3B)。 は観察データを生成する「観察モデル」()、 は状態の推移を決める「遷移モデル」 は行動 の「事前分布」、と呼ぶ。行動 の「事前分布」とは、結果となる に依存せずにどちらを選択するかのバイアスを表すから「preference」とも呼ぶ。この呼び方は後で出てくる。

のそれぞれの値をみてもらうと、不確定性のあるシステムであることがわかる。スイッチがオンでも照明がつかない確率が20%あるし()、照明がオンでも暗く感じる確率が20%ある()。照明がオフでも明るく感じる確率は5%なので()、ここに非対称性が入ってる。

また、推測 のほうは以下のように書く。直前の行動 は隠れ値なので と同じく推定してやる必要がある。

式(3-8)と同様、 は独立して動かさずに、同時に推定するため、パラメーターとしては3変数あることになる。

[4-2-2. 変分自由エネルギー の設定]

この場合の観測データは 、潜在変数は となるので、VFEの式は以下の通りになる。

となる。Surprisalの中身は となっていて、図3-2の生成モデル(現在のみ、運動なし)と変わりないことがわかる。KL距離を計算するときに の両方で総和をとるので、KL距離は のみの関数となる。

(さてあとはposteriorを計算して、 をプロットして、と行くところなのだが、ここでは省略する。)

ところで図4-3において過去の行動 を潜在変数として捉えるのは妥当だったろうか?もし生成モデルが、行動 が事前分布 から確率的に選ばれて、それの結果として外界の状態 と感覚入力 が引き起こされた、という場合なら合っている。しかし、expected free energyで想定されているのはそうではない。


[4-3. 行動あり、現在の状態 と過去の行動 の推定(2)]

[4-3-1. 生成モデル と推測 の設定]

図4-3の生成モデルはexpected free energyで用いられているものとは異なっている。Expected free energyにおいては、行動 はその時点での期待自由エネルギー を計算した結果として確定する。つまり、行動 は推定すべき潜在変数ではなくて、生成モデルの一部である事前分布 を特定するパラメーターと捉えるべきなのだ。(「パラメーターとして扱うこと」の意味については、Sec.2-4を見直してほしい。)

そこで図4-4Aで表示した因子グラフは、行動 を生成モデルのパラメーター(白四角)として表現している。

EFE4_04c.png

図4-4: 過去の行動を付加した生成モデル(2)


つまり生成モデルは以下のように書くことができる(図4-4B)。

図4-2についての生成モデルの式(4-1)と比べて、生成モデルの変数に が入ってないことがわかる。その代わりに、 がパラメーターであることを明示するために という表現をしている。

また、今回の生成モデルでは、 のそれぞれについてべつべつの生成モデルがある。つまり、事前分布 の部分を必要に応じて差し替える必要がある(図4-4B)。この点でも図4-3Bの生成モデルとは異なっている。あちらでは の部分に潜在変数 とその事前分布 が入力するので、ひとつの生成モデルの中で、 の両方を計算する必要がある。

生成モデル を特定するパラメーター(図4-4B)自体はさきほどの図4-3Bと同じものを用いているが、上記の違いによって、計算される などは異なってくる。

また、推測 のほうは以下のように書く。

形式上は図3-2とまったく同じになった。あとは を0-1で動かして推定してやればよい。

[4-3-2. 変分自由エネルギー の設定]

この場合の観測データは 、潜在変数は となるので、VFEの式は以下の通りになる。

となる。KLDの中身の は図4-3Bおよび式(4-4)からわかるように、 には依存しない。

Surprisalの中身は となっていて、式(3-3)および式(4-3)とは変わりない。しかしこれを計算するためには、 というように同時確率の周辺化が必要になるから についてそれぞれ別に作る必要がある。よって、式(4-3)でのsurprisalとは違う結果になる。つまり、行動 を潜在変数として捉えるか、パラメーターとして捉えるかは、実際のVFEの計算自体に影響を及ぼす。

にとって がパラメーターになっている、つまり別々の に対して別々の値が出てくることを示すために、それぞれの の中に表記している。こちらは生成モデル の中身の場合とは違って確率ではないので、この表現で正しい。

[4-3-3. 変分自由エネルギー の最小化]

Agentは を変えることによって を下げることができる。今の例では を0-1まで変化させることによって、すべての可能な を網羅できる。それではSec.3-2-3の図3-3と同じ要領で、スイッチと照明の例について、VFE, Surprisal, Bayesian surpriseをプロットしてみよう(図4-5,図4-6)。

EFE4_05c.png

図4-5: VFEの最小化 (a=1: スイッチオン)


EFE4_06c.png

図4-6: VFEの最小化 (a=2: スイッチオフ)


まず図4-5が、つまりスイッチオンにしたときのVFEの最小化。観測データとして (明るい)、 (暗い)のそれぞれで を最小化している。どちらも の初期状態は事前分布 で決まるから、 では からスタートしている。

図4-5Aのときは、スイッチオンしたら明るかったわけで、照明がオンであるという推測は初期状態 0.8からより高くなって0.98になった。いっぽうで図4-5Bでは、スイッチオンしたのに暗かったわけで、照明がオンであるという推測は初期状態0.8から0.45へとかなり下がってる。その気持わかるなー。

図4-6が、つまりスイッチオフにしたときのVFEの最小化。大まかには図4-5のときと左右ひっくり返した感じになっているが、生成モデルを確認してもらえばわかるように、完全に左右対称ではない。

以上をまとめてテーブルにすると以下の通りになる。

初期状態 VFE最小化 初期状態 VFE最小化
0.8 0.985 0.8 0.457
VFE 1.1219 0.6215 1.8723 1.5146
Bayesian surprise 0 0.2396 0 0.4133
初期状態 VFE最小化 初期状態 VFE最小化
0.2 0.800 0.2 0.050
VFE 3.5219 2.3219 0.5236 0.3219
Bayesian surprise 0 1.2000 0 0.1355

テーブル1: VFE最小化のまとめ


そういうわけで、やってることは図3-3とほとんど同じであることがわかる。でもこれが次のサブセクション4-4でexpected free energyを計算するときの題材になるので、この図に再訪することになる。


[4-4. 行動あり、未来の状態 と未来の感覚入力 の推定(1)]

[4-4-1. 生成モデル と推測 の設定]

ここまでくれば、現在の行動 とその直後の外界の状態 および感覚入力 についての生成モデルを作るときには、はどのようになるか想像がつくだろう。図4-4Aから、時間をずらしたものを作ってみた(図4-6A)。

EFE4_07c.png

図4-7: 現在の行動計画の因子モデルと生成モデル


これでいいかというと、ひとつ考慮しなければならないことがある。未来の感覚入力 は観測データでいいのだろうか? はまだ観測されていないのだから。

でもここで考えてほしいのだけど、もし未来の感覚入力 が潜在変数だとしたらすべてが潜在変数になってしまう。観測データがないのだから、推定のしようがない。これじゃあ部分観測マルコフ決定過程POMDPではなくて、無観測マルコフ決定過程NOMDPだよ。エスパーか!

ここで二つの方法がありうる。一つは観測データとして現在および過去の感覚入力 を使うというものだ。これはのちほど紹介するSchwöbel et. al. 2018論文およびParr and Friston 2018論文でとった方法だ。もう一つがFriston et. al. 2017論文で使われたように未来の感覚入力 を観測データとして捉える、ただしcounter-factualな観測データとして捉える、というものだ。いまは後者について説明する。

概念整理のために図4-8のように考えてみる。潜在変数と観測データに加えて、factualかcounter-factualかという軸を考慮する。未来の感覚入力 はcounter-factualな観測データだ。よってこれまでに出てきたものと扱いが異なる。いっぽうで、未来の外界の状態 のほうはcounter-factualな潜在変数だが、潜在変数についてはfactualだろうがcounter-factualだろうが推定するだけなので、扱いを変える必要がない。

EFE4_08b.png

図4-8: [潜在変数/観測データ]と[factual/counter-factual]の軸


それではあらためて、図4-7Aの因子グラフについて生成モデルを作ってみると以下のようになる(図4-7B)。

さきほども書いたように、 は事前分布 の形を決めるパラメーターだ。よって はcounter-factualな行動選択 ごとに、 と別々に定義する。観察モデル のほうは に依存しない。

また、推測 のほうは以下のように書く。潜在変数は ひとつだけだから、形式的には図3-2の現在の外界の状態を推定するのと同じ形になる。

[4-4-2. 変分自由エネルギー の設定]

この場合の観測データは 、潜在変数は となるので、VFEの式は以下の通りになる。

式(4-6)と同様に、KLDの中身は に依存しなくて、surprisalの中身は に依存する。

ここまでは図3-2の現在の外界の状態を推定するのと同じ形だが、これでは終わらない。なぜならこの式に入っている はcounter-factualな観測データなので、実際には一つには決まってないからだ。そこでこのようにして定義された をさらに ごとの期待値で足し合わせてやる必要がある。これが期待自由エネルギーEFE だ。仮にこの期待値を で表しておくと、

4行目にあるように、最終的には の中身について の両方で期待値をとることになる。(なお、2行目から3行目のところでは、 を使ってる。)

この式(4-10)がNeural Comput. 2017のp.10で定義されているFristonの期待自由エネルギーの式だ。(表記に関しては、この文書の表記法を用いているが。)

[4-4-2’. 期待値の重みについて詳しく]

では実際にこの期待値 の部分を計算するにはどうすればよいか。とくに、 は実際のところなにか? Neural Comput. 2017のp.10によれば、このように書いてある。(表記は現在の文書に合わせてる。)

そういうわけで、まず未来の外界の状態 の推定 をしておいて、それに生成モデルのうち観察モデルの部分 を掛け算してやって についての推定を作っている。

よって実際の計算では、期待値として掛けるべきものは であるとわかった。式(4-10)の 部分を加えて書き直すと、以下が期待自由エネルギー の式となる。

じつはここでFriston et al 2018ではさらにもう一段階近似を行っている。

また、Friston et. al. Cognitive Neuroscience 2015のp.192では以下の通りに書かれている。

これらは何を意味しているかというと、式(4-11)の の部分さえも現在の観測データ から作っているということだ。現在の生成モデルおよび照明の例では過去のことは考えていない。ここでは話を簡単にするために、 に加えて、遷移モデル を仮定する。これで として計算することにする。これはFriston et al 2018やKatahira et al 2018で採用されている方法。

ただしこの文書の方針は、「単純な例は用いるが近似はなるたけ用いない」というものだった。以下の照明の例では、 の近似を使わずに によって動かした計算も行う。じっさいやってみてわかったのだが、 を動かすと、 ごとに最小化することができる。


お勧めエントリ


月別過去ログ