動的ボルツマンマシン(Dynamic Boltzmann Machine)
恐神貴行の「ボルツマンマシン」を大体読んだので、その感想も踏まえて動的ボルツマンマシンについて書いてみる。
復習
「はじめに」にも書いてある通り、ボルツマンマシン(BM)は人間の神経細胞網をモデル化した機械学習のモデルだ。各ユニットが神経細胞に対応していて、それぞれバイアスという量を持ち、またユニット同士の接続強度を重みという量が表す。ユニットの状態(発火するorしない)は1か0の二値を取り、その状態に対してをパラメータとしたエネルギー
が決まる。状態が現れる確率はこのエネルギーから
と定められる。このようなモデルがBMである。エネルギーの第一項は各ユニットについてバイアスが大きいほど発火しやすいことを表している。(発火状態のエネルギーが小さく、従ってこの状態が現れる確率が大きい。)同様に第二項は結合強度が大きいほど発火しやすいことを表している。この確率分布から学習則と呼ばれるパラメータの更新式を求め、の訓練データからパラメータを推定するのが、BMを用いた勾配法による機械学習のプロセスだ。
動的ボルツマンマシン
動的ボルツマンマシン(DyBM)は、BMにおける神経細胞のモデル化という側面を強化発展させたモデルである。具体的にはスパイク時間依存可塑性(STDP)という法則を表現したものだ。二つの神経細胞の接続には向きがあり、正順での発火はその接続を強くして(長期増強、LTP)、逆順での発火はその接続を弱くする(長期抑圧、LTD)という法則である。時系列を扱うために、現在の状態は、過去の時系列の条件付きとみなす。
各ユニットについて、条件付きエネルギーを
で定める。バイアスが大きいほど発火しやすいのはBMと同じである。第二項と第三項はそれぞれをパラメータとして
と表される。は帰納的に
と決まる量で、それぞれシナプス適格度トレース(SynapticET)、ニューロン適格度トレース(NeuronET)という。ただしは減衰率と呼ばれる定数とする。
各ユニットについてという向きの接続を考える。この長期増強をという時系列が表している。長期増強は常に減少していくが、ユニットが発火すると時点後にそのスパイクがユニットに伝わり接続を強くする。
一方でユニットについての長期抑圧をという時系列が表している。長期抑圧も常に減少していくが、ユニットが発火すると、直ちに(時点後に)そのスパイクがユニットとの接続を阻害し弱くする。
SynapticETとNeuronETは
より、過去の時系列から直接計算できる。
残りのについては
で定義される。これはからへのスパイクがどれだけ頻繁に伝わるかを表しており、よく伝わるならユニットの発火が抑えられる。
そして各ユニットの条件付きエネルギーは、過去の状態に関して条件付き独立とする。つまり状態の条件付きエネルギーを
で定義する。状態は、この条件付きエネルギーに基づいて定められる条件付き確率分布
に沿って現れる。このモデルをDyBMと呼ぶ。
DyBMの勾配法による学習
エネルギーの式は各パラメータに対して線型なので、本質的に学習則はBMと同様に求めることができる。むしろに関わる量が一次の項しかないのでBMより簡単と言える。計算すると学習率をとして
となる。
所感
これは機械学習という分野(特に勾配法を用いたもの)の特徴なのかもしれないが、目的函数を作って色々計算したら学習則が得られました、という感じであまり理論的な面白さがない。となると応用面での面白さを提示してほしくなるが、この本では薄い本(文字通りの意味)という制約があるため、それがない。著者の研究分野ということもあり期待していたが、個人的にはDyBMの有用性や新規性、構造的な面白さを感じ取ることは出来なかった。確かにSTDPをモデルに取り入れたという部分は興味深い結果だと思う。減衰率がモデルの収束性にも寄与しているため、そこは構造的な面白さになっている。しかし長々と本文を読んだ割には得られるものが少なかった。
この本では題名通りBMを中心とした様々なモデルが紹介され、それぞれ本文中で参考文献が挙げられ、長いリストに纏められている。従ってBMについて、あるいは機械学習についてでも良いが、気になることがあれば、まずコンパクトに纏まっているこの本を見て、それから論文を当たるという使い方が良いのかもしれない。であるならば、DyBMについても著者の原論文を当たるのが最も正統な手段なのだろう。