BESOM ver.2.0を描いてみた

先日の言語処理学会第19回年次大会(NLP2013)で招待講演されていた一杉先生のBESOMですが、UStreamで配信が始まったので早速見てみました。see: BESOM(ビーソム)ブログ Ustream 配信開始「脳は計算機科学者に解明されるのを待っている」

それでさっそく論文リストから「大脳皮質のアルゴリズムBESOM Ver.2.0」などを読み始めたのですけども、けっこう理解に手間取ってしまいました。ようやく少しわかってきて、理解の確認のために絵を描いたのでシェアしておきます。

離散変数のベイジアンネット

まずBESOMでは脳内にベイジアンネットがあるというモデルです。ここでは左図のように確率変数xに親が3つ、子が3つあるようなベイジアンネットを考えて見ることにします。(この時点ですでにわからない人はまずPRML8章「グラフィカルモデル」を読むこと)

中図で濃い色の部分にズームインしてみましょう。BESOMでは確率変数が離散値を取ると仮定しているので、一つの確率変数は取りうる値の種類(図では3)個のユニットの集まりで表現されます。

ユニットは脳内では何に相当するか

左図のようにxの中の1個のユニット(小さい丸)に注目してズームインしてみましょう。この「ユニット」を僕は当初ニューロンのことだと思っていたのですけどそれは勘違いでした。これが大脳皮質の6層モデルの1つのカラムになります。ミニカラムになる、と言ってもいいのかな?これは少し自信なし。

ユニット間の結合と大脳皮質の領野間結合

ユニット間の結合に注目してみると、これが大脳皮質の領野間の結合に相当します。

近似Belief Revisionアルゴリズムの式との対応

プレゼンの中で使われていた領野間の結合の図では、下位レイヤーから正規化係数のZも渡ってくるように書かれていましたが、式を見る限りでは渡ってきていません。逆に図には書かれていないρが式には現れています。このミスマッチがどういうことかはよくわかっていません。

→追記:プレゼンスライド中の近似確率伝播アルゴリズムではBESOM ver. 2.0で紹介されているものを比べると「BESOM ver. 2.0ではλが2つ出てくるが、スライドでは1つのlになっている」「BESOM ver. 2.0での大文字Zの他に、スライドの側では小文字zが導入されていて、それが上位領野に伝搬されている」ということがわかりました。

続き

一般に上位領野や下位領野は複数個ありえるので、κやλも複数個になりえます。λを集計したものも(添字が違うとはいえ)λで表現されているのでややこしい。計算が進んでρが求まります。

ここから先の図は書いていないですがρは確率変数Xを表現しているユニットのうちの1つにつき1つ存在するので、Xを表現している全ユニットについて足しあわせて正規化する回路が入って、その出力がBEL(x)になります。

おまけ

はてなダイアリーが画像を勝手に小さくするので、ここの図が全部入った、A4でプリントアウトできるPDFを置いときました https://dl.dropbox.com/u/370621/BESOM_print.pdf

あ、そうそう、信念伝搬は積和アルゴリズムの特別な場合とみなしてよい、とPRMLのP. 117に書いてあるので、Belief Revisionはmax-sumの特別な場合とみなして良いのだと思います。

一昨年にネタで途中まで作った「脳神経系をモチーフにした言語Neuronyを作りました」ですけど、同じような感じでBESOMのモデルを記述する言語を作ると面白いのではないかと思っています。将来的にはもちろん「その言語で記述したネットワークをコンパイルするとFPGAでハードウェア的に回路が組まれる」とかね。