« 自由エネルギー原理入門(6/7): 「Sec. 5. 現在、過去、未来を統一的に捉えるモデル」を追加 | 最新のページに戻る | FEP入門 afterthoughts »

■ 自由エネルギー原理入門(7/7): 「Sec.0 自由エネルギー原理を数式無しで説明する」を追加

今年の生理研研究会は「認知神経科学の先端 脳の理論から身体・世界へ」と題して、自由エネルギー原理(Free-energy principle, FEP)をテーマに9/2に開催。これに先立つ8/31-9/1には「脳の自由エネルギー原理チュートリアル・ワークショップ」というタイトルでFEP入門のためのレクチャーとハンズオン。参加募集開始は連休明けの予定。もう少々お待ちください。

これらに向けてFEP入門の資料を作りました。今回が最終回です。「Sec. 0. 自由エネルギー原理を数式無しで説明する」を追加しました。

これまでの内容を全部PDFファイルにまとめたものを作ってリンクしておきました。全68ページ:EFE_secALL0517.pdf あとmatlabコードは別に分けておきました。matlabコード

今後も随時アップデートはするかと思いますが、このPDFファイルを最新版としますので、これから読む方にはPDFファイルでの閲覧をオススメします。(5/17最新版にアップデート)

追記20190823: htmlからLaTeX版で作り直しているところです。とりあえず1-4章までのもの:root0823.pdf


Sec.0 自由エネルギー原理を数式無しで説明する

[0-1. 自由エネルギー原理の定義]

この文書では自由エネルギー原理とはなにか、について概念的な説明からスタートして、最終的には数式を用いた詳細な理解と批判が可能になるところまでたどり着くことを目的としている。

まず自由エネルギー原理(Free energy principle,以下FEPと呼ぶ)とはなにか。脳イメージングの解析ソフトSPMの作者として著名な、University College Londonの研究者Karl Fristonが提案している、知覚と行動と学習の統一原理だ。2005年のPhilos Trans R Soc Lond B Biol Sci.論文で最初に提案されてから、現在まで理論的にも進歩を続けている。

Friston自身の定義を見よう。自由エネルギー原理とは「いかなる自己組織化されたシステムでも、環境内で平衡状態でありつづけるためには、そのシステムの(情報的)自由エネルギーを最小化しなくてはならない」というものだ。また別の表現では「適応的なシステムが無秩序へ向かう自然的な傾向に抗して持続的に存在しつづけるために必要な条件」とある。Friston, K. (2010). The free-energy principle: a unified brain theory? Nature Reviews Neuroscience, 11(2), 127–138.

順番に言葉を追っていこう。まず「原理」というだけあって、「もしxxであるなら、yyでなければならない」という形式になっていることがわかる。ベイズ脳仮説のような「仮説」でもなければ、予測符号化理論のような「理論」とも区別した表現になっている。

「いかなる自己組織化されたシステム」とあるけれど、われわれ人間にかぎらず、様々な生物に当てはまることが想定されている。「システム」とあるので、生物でなくても成り立つけれども、たとえば氷の結晶には当てはまらないだろう。氷の結晶はシステムとして安定する境界を持っていないから。

そうすると「環境内で平衡状態でありつづける」というのは、氷の結晶が氷の結晶であり続ける話ではなくて、生命のあるものが生き続ける条件のことを言っているようだ。

そして「そのシステムの(情報的)自由エネルギー」というものが定義されるものでなければならない。(情報的)自由エネルギーというのがなんなのかはこれから順番に説明をしてゆくとして、いま知っておくべきは、そのシステムと外界との間での情報のやり取りに関わる概念なので、システムと外界との境界が必要なのだ。

ではシンプルな例でもっと具体的に表現してみよう。

[0-2. 知覚=現在の外界の状態の推定]

図0-1の例ではagentが外界に接している状態が表現されている。先程も書いたようにこの「自己組織化されたシステム」は人間や生物に限らない。そのことを示すために以降「agent」という呼び方で統一する。

EFE0_01b.png

図0-1: 知覚の例


いま使う説明では、世界自体はわれわれの現実世界とまったく同じものなのだけど、agentが世界を切り分ける能力が低いので「外界の状態」は2つしか区別できない。「照明オン」と「照明オフ」だ。Agentは照明オンかオフかについて直接アクセスすることはできない。つまり「外界の状態」はagentにとって隠れ値だ。

Agentは「外界の状態」を推測するために「感覚入力」を用いる。ここでは網膜のような光センサーがあって、照明の明るさに従って「明るい」「暗い」という2つのどちらかの値を時々刻々観測している(agentの識別能力が低いので2つの値しか区別できない)。Agentはこの観測データにだけアクセスできる。いま「感覚入力」と書いたが、「感覚sensation」と「知覚perception」を区別するためにこの言葉を使っている。たとえばわれわれが写真を見たとき、網膜の視細胞の活動のようなセンサー値が「感覚入力」だ。そしてその写真になにが写っているか知ることが「知覚」だ。

Agentは「感覚入力」を元にして、「外界の状態」がいまどうなっているかを推定する。これが「知覚」だ。たとえば「感覚入力」が「明るい」を観測したなら、「外界の状態」は「照明オン」である可能性が高いだろう。100%高いとは言えないことはわれわれは経験上知っている。「照明オン」でも「感覚入力」が「暗い」を示すこともありうるだろう(照明とセンサーの間になにか邪魔なものがあるかもしれない)。よってこの設定では、知覚とは、「外界の状態の推定」とは、あくまで確率的に表現される。「外界の状態が照明オンである確率は90%」というように。確率で表すことによって、推定がどのくらい確実かというuncertaintyも表現することができる。

でもそもそもなぜ「感覚入力」から「外界の状態」を推定できるかといえば、agentはこれまでの経験から、「外界の状態」がどのように「感覚入力」に影響を与えるか、その因果関係について学習しているからだ。外界におけるこの関係を「生成過程」と呼び、agentが学習したこの関係を「生成モデル」と呼んで区別する。「生成過程」は外界の物理法則そのものだが、「生成モデル」はそれを写し取ったモデルでしかない。ゆえにモデルは間違っている可能性がある。今の場合も3次元の世界で照明からセンサーに光が届く生成過程があるのだけど、それをひとつの光センサーしかもたないagentは生成過程を1点に投射されたものとして生成モデルを獲得している。

[0-3. 行動選択=未来の外界の状態の推定]

しかしこのような設定ではagentは「桶の中の脳」と同じで、外界の生成過程を正しく生成モデルとして維持する方法がない。ここで行動を考える必要が出てくる。行動を含めた世界設定の図を示す(図0-2)。

EFE0_02.png

図0-2: 感覚運動ループ


ここでは「外界の状態」が「感覚入力」という観測データを生み出し、「外界の状態」を推定するagentの内部状態が「行動選択」という「外界の状態」への介入を行うというループが閉じている。これを感覚運動ループと呼ぶ。

このループを使うことで、agentの「生成モデル」は外界の「生成過程」と整合的であるように維持される。たとえばいまagentは「感覚入力」が「暗い」を観測していて、「外界の状態の推定」(=知覚)として「照明オフ」の確率90%としている。これを確かめるために、「行動選択」を「スイッチオン」にして、「感覚入力」が「明るい」になれば、現在の「外界の状態」が「照明オン」であるという推定(=知覚)の根拠となったagentの「生成モデル」は正しく機能していることが確認されるので、そのまま維持すればよいということがわかる。

この「行動選択」では、これからする行動(スイッチオン)が「未来の外界の状態」を「照明オン」にして、「未来の感覚入力」が「明るい」になるという推定をしたうえで、別の行動(スイッチオフ)ではなくスイッチオンが選ばれる。つまり「行動選択は未来の外界の状態の推定」に基づいている。

さきほどの知覚の話のときには「知覚とは現在の外界の状態の推定」であると書いた。両者を合わせると、知覚も行動選択も「外界の状態の推定」をいかにうまく行うかが知覚の正確さ、行動選択の正しさを決める。このようにして知覚と行動選択とをまとめて捉えることができる、これが「自由エネルギー原理が知覚と行動選択を統一的に説明できる」ということの内実だ。

ここまで(情報的)自由エネルギーがなにかの説明はしてこなかったが、(情報的)自由エネルギーとは「外界の状態の推定」をするときにagentが(非明示的に)使っている指標だ。Agentが(情報的)自由エネルギーを減らすように(脳や身体といった)内部状態を変化させるとき、知覚は現在の外界の状態を正確に推定できるようになり、行動選択は未来の外界の状態を正確に推定するように選ばれる。

いったんまとめる。

  • 知覚: 現在の外界の状態の推定
  • 行動選択: 未来の外界の状態の推定(の帰結)

[0-4. 学習=外界の状態を推定するモデルの更新]

冒頭にFEPとは「知覚と行動と学習の統一原理」だと書いた。では「学習」はどこに関わってくるか?

さきほどの例を用いれば、いまagentは「感覚入力」が「暗い」を観測していて、「外界の状態の推定」(=知覚)として「照明オフ」の確率90%としている。これを確かめるために、「行動選択」を「スイッチオン」にすれば、「感覚入力」が「明るい」になるだろうという予測を立てて行動選択をする。この予測が正しければ、推定の根拠となったagentの「生成モデル」は正しいのでそのまま維持すればよい。しかしこの予測が裏切られたとき、つまり「スイッチオン」にしたのに「感覚入力」が「暗い」を観測した。このときが「学習」の出番だ。

予想外のことが起きたときのまず最初の対処法は、繰り返しスイッチオン、オフを繰り返して行動選択から予測のサイクルを回す方法だろう。しかしもしこの予想外が続くのであれば、「生成モデル」が間違っている、現在の状況に合わなくなったということなので、生成モデルをアップデートしなければならない。これが学習だ。

発達や老化も同じように捉えることができる。Agentは発達により明るさセンサーの特性が変わると、どういう状況でも「明るい」を観測するようになるかもしれない。このようにして発達においても生成モデルの改変が必要になる。

同じことは進化にもあてはまるだろう。気球規模の変動で新たな環境に対応しなければならなくなったagentは、新たな環境(火山噴火によって照明は常に暗く観測されるかもしれない)に合わせた新しいセンサー特性へのアップデートが必要になるだろう。

このようにしてFEPは「知覚と行動と学習」について「生成モデルを元に外界の状態の推定する」という単一の枠組みで統一的に説明することができる(と主張している)。以上をまとめるとこうなる:

  • 知覚: 現在の外界の状態の推定
  • 行動選択: 未来の外界の状態の推定(の帰結)
  • 学習: 生成モデルのアップデート

[0-6. まとめ、以降の方針]

これでFEPとはなにか、ということについて数式を用いない範囲で言えることをだいたいいうことができた。FEPのような原理が本当にあるのかはわからないけど、まずはこの理論について知ってみよう、そのうえで、知覚と行動選択と学習とを統一的に説明できる理論というものがありうるか考えてみたい、これが私のFEPに対する態度だ。

よって以下の説明でも、FEPのような原理はありうるのかという観点から、実際の神経科学的データを説明するためにFEPを使うテクニック的なところには入り込まないようにして、なるたけFEPの本質的なところだけ抜き出して理解することに注力するという方針を取る。

ところでこのFEPという考えはずいぶんキャラが立ってる。なんせ、知覚も行動も世界のことを知るためにあり、行動することで世界のことを理解できる、というのだから、これは学者的な世界観ではないだろうか? われわれは世界のこと全部わかってなくても不安ではないし、わからないなりにもなんとか生きてるし、わかったからってなんともならんことが多いよなと思うわけで。なんてことはどうでもいい。FEP人生論はここでストップ。


お勧めエントリ


月別過去ログ