大脳皮質のアルゴリズム BESOM Ver.1.0
産業技術総合研究所テクニカルレポート

AIST09-J00006
一杉裕志
産業技術総合研究所 脳神経情報研究部門

y-ichisugi@aist.go.jp
http://staff.aist.go.jp/y-ichisugi/j-index.html
2009 年 9 月 30 日

概要

BESOM モデルと呼ぶ、大脳皮質の計算論的モデルの詳細アルゴリズムおよび計算機シミュレーションの結果について述べる。このモデルはまだ論文誌で発表する段階にはないが、様々な証拠から、大脳皮質の認識と学習に関する主要な機能を計算機上で効率的に再現する有望なモデルであると考えている。

BESOM は表現力の高い機械学習モデルであるが、学習パラメタの数が多いため、安定動作のためには正則化の機構が不可欠である。今回 BESOM に、近傍学習、条件付確率のノイズ除去、非線形ＩＣＡ、ノード間競合、特徴間競合という５種類の正則化の機構を導入し、計算機シミュレーションにより一部不安定ながら動作を確認した。このモデルは、先行研究におけるいくつかの大脳皮質モデルの本質的特徴を１つに統合したものになっている。
本稿で述べたアルゴリズムを拡張・修正して様々な実験を容易に行えるようにする BESOM の研究支援ツー
ルを、共同研究先に提供可能である。
大脳皮質の機構の解明は、人間のような高い知能を持ったロボットの実現に向けた最も重要なステップである。
解明はかなり進んでいるが、現在のところ、細かな未解決の問題がたくさんある。機械学習理論の基礎をある程度理解した工学的センスのある大勢の研究者が、これらの問題に取り組むようになることを期待する。

目次
第 1 章 はじめに

4

第 2 章 BESOM モデルの概要

5

2.1
2.2

従来の BESOM の問題点

BESOM モデルの構成要素 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5
5

2.3

先行モデルとの関係

6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

第 3 章 認識ステップと学習ステップ

9

3.1
3.2
3.3

背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4

学習ステップ：確率分布ＳＯＭによる条件付確率表の学習

オンライン学習アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
認識ステップ：MPE の計算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . .
確率分布ＳＯＭ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10
10

3.4.2 近傍学習を行わない学習則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.3 結合の重みと条件付確率 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
正則化の必要性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10
11
11

3.4.1

3.5

9
9
9

第 4 章 近傍学習による条件付確率表の円滑化

4.1
4.2
4.3
4.4
4.5
4.6

12
背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

実験 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
機械学習理論的妥当性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
神経科学的妥当性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
今後の課題. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13
13
14
14
15

第 5 章 小さい条件付確率のノイズ除去

5.1
5.2
5.3

16
背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

具体的方法

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16
16

第 6 章 ユニット間の側抑制による非線形ＩＣＡ

6.1
6.2
6.3

6.4

17
背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
実験 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.1 ２次元平面上の１点の入力の学習 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.3.2 複数の点からなる入力の学習 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
冗長な特徴ベクトルに変換する必要性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1

17
18
18
19
21

6.5
6.6

神経科学的妥当性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
今後の課題. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22
22

第 7 章 ノード間競合による混合分布の学習

7.1
7.2
7.3

7.4

23
背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

解決のアイデア . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.3.1
7.3.2
7.3.3

学習するベイジアンネットの特徴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.3.4
7.3.5

非 ϕ 値の等確率の制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ϕ 値の中立性の制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

実験 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.4.1
7.4.2
7.5
7.6

ϕ 値を含むノードの学習則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
認識ステップにおけるノード間競合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

混合分布から生成される入力の学習 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
混合分布に対する非線形ＩＣＡ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

神経科学的妥当性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
今後の課題. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23
23
23
24
25
26
26
26
26
26
27
27

7.6.1
7.6.2
7.6.3

スパース性の制御 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
条件付確率表の近似モデル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27
29
29

7.6.4

スパース性と兄弟ノードの独立性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

スパース符号化との関係 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

第 8 章 特徴間競合による部品別学習に向けて

30

部品別学習

8.1
8.2

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
重み減衰をする学習則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30
30

8.3

今後の課題

30

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

第 9 章 ＭＰＥ計算の効率化

31

9.1
9.2
9.3

大脳皮質の計算量のオーダー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

O(n ) アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
O(n3 ) アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31
31
31

9.4
9.5

O(n) アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
局所解を避ける方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32
32

9.6
9.7
9.8

O(1) アルゴリズムの可能性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
２層 BESOM の計算量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33
33
33

4

第 10 章 近似ＭＰＥ計算アルゴリズムと神経回路

3410.1 近似ＭＰＥ計算アルゴリズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.2 近似確率伝播アルゴリズムとの比較 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.3 ホップフィールドネットワーク・ボルツマンマシンとの比較 . . . . . . . . . . . . . . . . . . . .

34
35
35

10.4 今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

36

2

第 11 章 可視化の詳細

11.1 可視化の意義 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37
37

11.2 条件付確率表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.3 １点入力時のユニットおよびＭＰＥの受容野重心 . . . . . . . . . . . . . . . . . . . . . . . . . .

37
37

11.4 多点入力時のユニット受容野 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.5 今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37
37

第 12 章 研究支援ツール BESOM-lab

38
12.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
12.2 BESOM-lab の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
12.3 今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

第 13 章 その他の今後の課題

38
40

13.1 多層化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.2 層間競合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40
40

13.3 構造学習 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.4 サイクルのある BESOM ネット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.5 強化学習との統合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40
41
41

13.6 モデルからの予言の検証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

第 14 章 まとめと今後

42

3

2. 大脳皮質が採用するアルゴリズムが必要とする計
算量とメモリ量は大脳皮質の面積に対してほぼ線形である。

第 1 章 はじめに筆者の現在までの経験では、この２つの指導原理は大変有用である。これらは大変強い制約条件なので、これを満たすようにアルゴリズムを設計することは容易でない。しかし、設計したアルゴリズムが、当初予想

神経科学と機械学習に関する膨大な知見を踏まえたしていなかった機械学習理論的妥当性や神経科学的妥

上で脳の解明に取り組む研究者は、どういうわけか非当性を持つことを、あとから発見するという経験を筆

常に少ない。筆者はその取り組みを行っており、遠く者は何度もしている。

ない将来に、人間のような知能の高いロボットを実現

本稿の読者は、ベイジアンネット [6]、ＳＯＭ [3][4]、可能にするためのブレークスルーを目指している。

機械学習理論 [21][22] の基礎知識を持っていると想定

筆者は BESOM モデルと呼ぶ、大脳皮質の神経回している。特に、尤度、同時確率、事前分布、正則化、路モデルを提案している [2]。BESOM モデルは４つ混合分布、交差確認法といった概念を理解しているこの機械学習技術（自己組織化マップ、ベイジアンネッとを前提としている。BESOM についての予備知識やト、独立成分分析、強化学習）をエレガントに組み合

神経科学に関する基礎知識はなくてもよいが、[2] に目わせたもので、脳の機能を再現させるモデルとして計を通しておいた方が読みやすいであろう。

算論的に妥当な特徴を持っている。そして、計算論的筆者が [2] の第１３章で書いたように、ヒトの脳全に導かれた近似確率伝播アルゴリズムを実行する神経体に匹敵する計算速度を持つスーパーコンピュータは

回路は、大脳皮質の主要な解剖学的特徴と非常によくすでに実現されている。１０〜２０年後であれば、よ一致しており [1]、大脳皮質の情報処理原理を説明する

り安価な計算機で実現されるようになるだろう。一方

正しいモデルであることはほぼ間違いないと考えていで、計算機上でどのようなアルゴリズムを用いれば人る。また、将来的には計算機上で効率的に実行可能で間のような知能が実現されるのかについては、現時点あると考えており、新しい機械学習技術としての工学ではまだ完全には分かっていない。しかし脳のアルゴ応用の面でも有望である。モデルの全体像およびそのリズムを１０〜２０年以内に解明することは、多くの神経科学的・計算機科学的妥当性の詳細については [2]

研究者が高い目的意識を持って取り組さえすれば、決を参照されたい。

して不可能なことではないと筆者は考えている。多く

これまでの取り組み [2] では、大脳皮質が採用していの研究者が本稿を読んで、そのような取り組みに興味るデータ構造、アルゴリズム、神経回路での実装に関を持っていただけることを期待している。

するモデルを提案してきたが、計算論的モデル、特に大脳皮質全体の目的関数については明らかではなかった。また、アルゴリズムが不完全であるため計算機シ

本稿の草稿に対して多くの改善のコメントをしていミュレーションもできなかった。そこで本稿では、計ただいた慶應義塾大学の萩原将文先生、長谷川宏聡さ

算論的妥当性を特に重視し、トップダウンに詳細な学ん、東京大学の細谷晴夫先生に感謝いたします。

習・認識アルゴリズムを導くことを試みる。そして、また、研究をエンカレッジしていただいている産総導いたアルゴリズムによって、大脳皮質が持つと思わ研の内外の多くの研究者の方々にも感謝いたします。

れる非線形ＩＣＡ、混合分布の学習といった機能が計

数多くの機械学習理論の研究者の方たちは、健全な算機シミュレーションによって定性的に再現されるこ

探究心のもと、非常に適用範囲が広くかつ精緻な理論とを示す。

体系を構築してきました。その枠組みがあって初めてアルゴリズム設計の際には以下の２つの仮説をもっ脳の動作原理が理解可能になってきたと思います。彼

とも重要な指導原理として位置づけている。

らに心からの敬意を表したいと思います。

1. 大脳皮質はベイジアンネットである。

4

第2章

BESOM モデル
の概要

基底
ノード
ユニット
ノード
...

...

2.1

BESOM モデルの構成要素

...

...

BESOM モデルは脳全体のマクロなスケールの構造

入力から、個々のニューロンの機能というミクロなスケー
ルの構造にいたるまで、幅広く関係している。
図 2.1: BESOM ネットの構成要素。四角は基底、基BESOM モデルは、現在のところＢＥＳＯＭネットと強化学習機構の２つの機構からなる。BESOM ネッ
トは図 2.1 のような構造をしている。

底の中の丸はノード、ノードの中の白い丸はユニットを表す。

BESOM ネットは、基底と呼ぶ単位の階層構造で構
イジアンネットであると考えている。また、各ノード成される。

は、10 × 10 個程度のユニットから成る２次元ＳＯＭ

基底は、多数のノードから構成される。ノードは確であると考えている。

率変数を表す。１つの基底内のノードが表す情報は独

大脳皮質、SOM、ベイジアンネットの構成要素の対

立成分分析 (ICA) により互いに独立になる。

応を簡単に表にまとめると表 2.1 のようになる。

異なる階層の基底に含まれるノードどうしはエッジで結ばれる。従って、ノードは非循環有向グラフを構成する。このノードのネットワークはベイジアンネッ

2.2トとして動作する。外界の観測データは最下端のノードの値として与えられる。

従来の BESOM の問題点

これまでの BESOM には以下の問題があった。

ノードは複数のユニットから構成される。ノードは確率変数だが、ユニットはその確率変数が取りうる値

1. 混合分布を表現できない、別の言い方をすれば、に対応する。各ノードは、自己組織化マップ（ＳＯＭ）

モジュール構造を持っていないという問題があっの競合層でもあり、自分の子ノードからの入力を圧縮た。脳は、大きく異なるカテゴリの情報は違うモする。個々の確率変数の値が持つ意味は、ＳＯＭによっ

ジュールで表現しているのではないかと想像されて獲得される。ＳＯＭの学習結果は、条件付確率表にる。新しいカテゴリの知識（例えば新しい外国語なる。

など）を学習しても、既存の知識の大半はほとん

基底の階層構造、基底内のノードの数、ノード内のど影響を受けずに保持されるからである。また、ユニットの数はすべて最初に与えられ、学習により変もしモジュール構造がなければ、すべてのシナプ化しない。学習により変化するのは、ユニット間の結スの重みがあらゆる入力刺激に対して一斉に変化

合の重みのみである。

するはずである。シナプスの重みの変化はなんら

これら BESOM の構成要素は、脳の構成要素と構かの生物学的コストを伴うであろうから、すべて

造的・機能的にうまく対応がつく。基底、ノード、ユのシナプスが常に変化するとしたら、大変効率がニット、結合の重みは、それぞれ大脳皮質の領野、ハ

悪いことになってしまう。

イパーコラム、コラム、シナプスに、ほぼ対応する。

2. ニューロン間の結合のスパース性による正則化の具体的方法が分からなかった。脳のニューロン間ヒトの大脳皮質は、２０万個程度のノードから成るベ

5

BESOM

SOM

ベイジアンネット

大脳皮質

ノード

競合層

ノード（確率変数）

ハイパーコラムユニット

入力ベクトルの要素、確率変数が取りうる値

コラム

競合層のユニット
親ノード

入力層から見た競合層

親ノード（原因）

上位領野

子ノード

競合層から見た入力層

子ノード（結果）

下位領野

ユニットの出力

入力との類似度

事後確率/MPE

５層錐体細胞の発火率

結合の重み

参照ベクトルの要素

条件付確率

シナプスの重み表 2.1: BESOM、SOM、ベイジアンネット、大脳皮質の構成要素の対応の結合はスパースであり、それが正則化の１つ手算機シミュレーションで示した上で、大脳皮質のモデ段であると思われる。３層パーセプトロンでは、ルとしての機械学習理論的妥当性と神経科学的妥当性

例えば weight decay という方法が使われ、結合について議論する。

の重みのほとんどが０になるように学習を進める
ことで、過適合を避け、汎化能力を向上させるこ

2.3とができる。しかし、 BESOM では結合の重みは条件付確率を表しているため、単純に多くの重先行モデルとの関係

BESOM モデルは過去の有名な大脳皮質の神経回路モデルの本質的な特徴を統合したものになっている（図 2.2）。

みを０にすると認識性能がかえって悪くなるという問題がある。

なかった。Ｖ１の単純型細胞の応答は、自然画像

Malsburg のモデルに始まる一連の一次視覚野のモ
デルは、Kohonen によって工学的に扱いやすい形にをスパース符号化した際の受容野とよく一致して整理され、SOM （Self-Organizing Map, 自己組織化いることが知られている。スパース符号化は入力マップ）[3] という教師なし学習アルゴリズムとして広データの統計的性質を利用して効率的に情報を圧く使われるようになった。

3. スパース符号化モデル [8] との統合がなされてい縮するため、生物にとって合理的であると考えら

一方、 Fukushima は視覚野の階層構造や単純型細る。しかし、 BESOM モデルにスパース符号化の胞・複雑型細胞に関する知見から、ネオコグニトロン

機能を持たせる方法はこれまで分からなかった。

および Selective attention model[5] というモデルを提案し、実際に頑健なパターン認識を行う能力を持つこ

4. 確率の計算における計算精度とダイナミックレンとをシミュレーションで示した。

ジの問題があった。ベイジアンネットを用いた種々

ベイジアンネット [6] と呼ばれる工学的な知識表現技の計算は、確率の掛け算を必要とする。もしヒト術を用いた確率的推論は、Pearl によって効率的なアルの大脳皮質の１つの領野が 10000 個のノードからゴリズムが開発されたおかげで、今日では様々な分野構成されるとすると、通常のベイジアンネットでで応用されている。ベイジアンネットは脳のモデルとは 10000 個のオーダーの数の掛け算を行う必要がして考えられたわけではないが、George と Hawkins

ある。そのような掛け算をオーバーフロー・アン

は視覚野の階層構造をベイジアンネットとみなす神経

ダーフローを起こさずに計算することは、計算機回路モデル [7] を提案している。

上で浮動小数点を用いる場合でも難しい。対数尤

筆者が提案した最初の BESOM モデル [1] は、ネオ度を用いればダイナミックレンジの問題は解決す

コグニトロンおよび Selective attention model の基本

るが、精度に関しては本質的な解決にはならない。

構造を踏襲しつつ、ＳＯＭとベイジアンネットを用い以上の問題を解決するため、以下の章で BESOM モてその理論的基礎付けを行ったものである。大脳皮質

デルを拡張する。また、基本機能が動作することを計の学習と認識という基本機能をうまく説明できる上、6

スパース符号化モデル[Olshausen and
Field 1996]

Malsburg's model[Malsburg 1973]

Neocognitron[Fukushima 1980]

部品別学習[Lee et al. 1999]

複数のＳＯＭによる 注意の正規化モデル
非線形ＩＣＡ[Reynolds and[田尻、倉田2004]
Heeger 2009 ]SOM[Kohonen 1995]

Selective attention
model[Fukushima 1987]

Bayesian network[Pearl 1988]

BESOM[Ichisugi 2007]

BESOM Ver.1.0

脳全体の機能を再現させるモデル[20xx]HTM[George andHawkins 2005]

小脳のモデル[Kawato 1990]

海馬のモデル[Rolls 1996]

大脳基底核のモデル[Schultz et al. 1997][Doya 2000]

図 2.2: 主な先行モデルと BESOM モデルとの関係

7

扁桃体の 前頭前野の 言語野の
モデル
モデル
モデル

アルゴリズムを実行する神経回路は大脳皮質の６層構させるモデルが近い将来実現するだろう。

造・コラム構造に関する解剖学的知見と非常によい一致を見せた。ただし、この時点では計算機シミュレー
ションが動いておらず、模式的モデルに過ぎなかった。
筆者が本稿で提案する BESOM Ver.1.0 は、最初のBESOM モデルにさらに以下に述べる４つの大脳皮質モデルの機能を統合したものになっている。
スパース符号化モデル [8] は一次視覚野の単純型細胞の応答特性を再現させるモデルである。

NMF (non-negative matrix factorization) [9] は部
品別学習 (parts-based learning) と呼ばれる機能を持
つ教師なしアルゴリズムである。大脳皮質もまた、部
品別学習を行っていると思われる証拠がある。
田尻らは、複数のＳＯＭを用いて非線形ＩＣＡを行
うアルゴリズム [11] を提案している。Oshiro らは、このアルゴリズムと似たアルゴリズムを用いて、ラットの嗅内皮質で発見されているグリッド細胞の性質を再現させることにも成功している [12]。
神経回路モデルではないが、Ｖ４，ＭＴ野などの視
覚野のニューロン応答の注意による多種多様な変化を統一的に説明する「注意の正規化モデル」[13] という計算論的モデルが提案されている。
本稿で提案するモデルは、以上のモデルの機能をすべて統合したものになっており、これにより大脳皮質の主要な機能をほぼ再現できると考えている。ただし、現段階で確認されているのは、小規模シミュレーショ
ンによるいくつかの基本機能の動作のみである。
知能の高いロボットを実現するには、脳を構成する
他の組織の機能も実現しなければならない。また、大脳皮質の基本機能が解明されたとしても、前頭前野や言語野などの個別の領野の機能の再現方法は自明ではない。しかし、これらについては、実はすでにかなり解明が進んでいる。
例えば、大脳基底核は強化学習に関与していることが今日ではほぼ確実である [14][15]。小脳 [16] や海馬[17] についても、理解がかなり進んでおり、詳細な神経回路モデルが作られている。前頭前野による記号処
理とパターン処理を統合した情報処理は、PATON という神経回路モデル [18] により再現されている。言語
野による文法獲得は Elman によるもの [19] に代表される多くの研究がある。
これら、すでに解明されている多くのモデルを大脳皮質のモデルと統合することで、脳全体の機能を再現

8

¶

³

下記の認識ステップと学習ステップを、観測デー
タが与えられるたびに繰り返す。

第 3 章 認識ステップと学習ステップ
3.1

1. 認識ステップ：
BESOM ネットは、ベイジアンネットとして動作し、入力に対する MPE を求める。
（3.3節。）
2. 学習ステップ：
BESOM ネットを構成する各ノードが、SOM

背景として動作し、自分の子ノードからの MPE

BESOM モデルによれば、大脳皮質の最も基本的なに基づいた入力を学習する。この時、条件付

機能は、外界の状態の認識と学習である。大脳皮質は、

確率表は、入力データの尤度が上がる方向に外界の状態を感覚器官から送られてくる観測データに基づいて推定し、推定結果を学習するという動作を繰µ

り返すことで、外界をよりよく近似する確率的モデル更新される。（3.4 節。）´

図 3.1: BESOM のオンライン学習アルゴリズム

を教師なし学習すると考える。
筆者の以前の取り組み [1][2] では、認識ステップで3.3

近似確率伝播アルゴリズムを用いてノードごとの事後認識ステップ：MPE の計算

確率を計算し、学習ステップで、各ノードが子ノード
認識ステップでは現在の条件付確率表の値と観測デー

における事後確率最大の値を入力として受け取って学タに基づき、MPE を計算する。

習するという仮説を説明した。しかしネットワーク全MPE (most probable explanation) とは、ベイジア
ンネットにおいて、与えられた観測データを最もよく体の目的関数が不明であり、意味のある動作をする保証がなかった。そのため、計算機シミュレーションも説明する変数の値の組のことである2 。与えられた観

行っていなかった。

測データを表す確率変数とその値の組の集合を i 、隠れ変数（観測データ以外の確率変数）とその値の組の3.2集合を h とすると、MPE となる値の組 m は次の式

オンライン学習アルゴリズムで与えられる。
本稿では、大脳皮質の学習の目的はベイジアンネッ

m = argmax P (h, i)hトの構造学習である、すなわち、観測データの尤度を最大とするベイジアンネットを獲得することであると(3.1)

いう仮説を提案する。そして、具体的にその目的を達

ただし P (h, i) は h と i との同時確率で、以下の式

成するオンライン学習アルゴリズムの候補の１つを提で表せる。

案する。このアルゴリズムは、 3.3 節で説明する MPE

P (h, i) =という概念を用いている。提案するアルゴリズムを図∏P (x|parents(x))

(3.2)

x∈h∪i

3.1 に示す1 。
現在動いている小規模シミュレーションは、このア例えば図 3.2 のベイジアンネットにおいて、観測値

用いていない。MPE 計算には、9.2 節で述べる山登り

D = d, E = e が与えられたとする。求めるＭＰＥは入力との同時確率がもっとも高い隠れ変数 A, B, C の法によるアルゴリズムを用いている。

値の組 {a, b, c} で、以下の式で表される。

ルゴリズムに基づいており、確率伝播アルゴリズムを

1 これはおそらく、確率的ＥＭアルゴリズム（参考：[22] p.251）
をオンラインアルゴリズムにしたものに相当する。ただし、隠れ変数の値の組み合わせを事後分布からサンプリングする代わりにＭＰ
Ｅで近似している。

m = argmax P (a, b, c, d, e){a,b,c}2 [6] の p.250 または [22] の p.126 も参照。

9

(3.3)

ＯＭを確率分布ＳＯＭと呼ぶことにする（図 3.3）。確A率分布ＳＯＭは、入力と出力が同じ形式をしているた
B

C

D

E

め、ＳＯＭの出力を上の階層のＳＯＭに入力するという階層構造を持たせることができる。
確率分布ＳＯＭでは、本来連続値である特徴量を離散値で表現する。１つの特徴量は、ただ１つの要素が１の値、他の要素は０の値を持つ s 個の要素からなるベクトルで表現する。例えば、特徴量が [0,1) の範囲

図 3.2: ５つのノードからなるベイジアンネットの値であれば、i 番目 (i=0,1,...,s-1) の要素が１である
場合に、特徴量が区間 [i/s, (i+1)/s) に入る値であることを意味するものとする。
特徴量が n 個ならば、 s 次元のベクトルを n 個連
結した ns 次元の入力ベクトルを確率分布ＳＯＭに与えることになる。参照ベクトルも入力ベクトルと同じ、普通のＳＯＭ（値ＳＯＭ）

ns 次元である。たとえば、 n=2, s=10 の場合、２つの特徴量の組 (0.3, 0.7) は、 20 次元の入力ベクトル(0,0,0,1,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,1,0,0) として入力さ確率分布ＳＯＭれる。

...

なお、従来の普通のＳＯＭ、すなわち１つの特徴量を１つの値で表現し、 n 個の特徴量を n 次元の入力

３次元の入力、１次元の出力の例

ベクトルで与え、参照ベクトルも n 次元であるようなＳＯＭを、ここでは値ＳＯＭと呼ぶことにする。

図 3.3: 普通のＳＯＭ（値ＳＯＭ）と確率分布ＳＯＭ。

P (a, b, c, d, e) = P (d|b, c)P (e|b, c)P (b|a)P (c|a)P (a)(3.4)

3.4.2

近傍学習を行わない学習則

学習ステップでは、 BESOM ネットの各ノードはSOM の競合層として働き、子ノードからの入力を圧3.4縮して学習する。ＳＯＭの学習は競合学習と近傍学習

学習ステップ：確率分布ＳＯＭを特徴とするが、この節では確率分布ＳＯＭの競合学による条件付確率表の学習
3.4.1

習の部分について説明する。基本的には [1][2] で述べたものと同じ学習則だが、3.2 節で提案したアルゴリ

確率分布ＳＯＭ

ズムに合わせて表現を修正した。近傍学習については、

し機械学習アルゴリズムである。ＳＯＭは、高次元の4.2 節で述べる。
ノード X が子ノード Yl (l = 1, · · · , n) を持つとす

数値ベクトルの入力を、距離関係を保ったまま次元削る。学習ステップでは、SOM は MPE における各子減し、低次元のベクトルに変換する方法を学習する。

ノードの値を、上で述べた入力ベクトルの形で受け取学習した結果は、マップとも呼ばれる。

る。すなわち、ノード Yl が値 yil (i = 0, · · · , s − 1) を

ＳＯＭは、競合学習と近傍学習を特徴とする教師な

ＳＯＭはもともとは、大脳皮質の一次視覚野のコラ取り得るとすると、Yl からの入力ベクトル v l の要素

ム構造を再現させる神経回路モデルを、工学的に扱いは以下のようになる。
{
1 (MPE における Yl の値が yjl の場合)lvj =0 (その他の場合)(3.5)

やすいよう単純化したものである。
普通のＳＯＭは参照ベクトルが特徴量の値の代表値を学習するが、BESOM で使われるＳＯＭは、特徴量の確率分布（条件付確率）を学習する。このようなＳ

10

ノード X においては、 MPE の値を表すユニット

なお、 αi を一定値にしても学習アルゴリズムは動が、競合学習における勝者になる。勝者ユニットでは、作する。その場合学習されるのは、過去の経験を忘却

通常のＳＯＭと同様、参照ベクトルを入力ベクトルにし最近の経験に比重を置いた条件付確率と解釈できる。

近づける。ノード X の勝者ユニット xi とノード Yllとすると、更のユニット yjl の間の結合の重みを wij

3.5

新式は次のようになる。
l
l
l
wij
← wij
+ αi (vjl − wij)

正則化の必要性

BESOM は学習すべきパラメタ（結合の重み）の数(3.6)

がきわめて多く、認識においても学習においても強い正則化が必要である。

学習率 αi の値は、 xi が n 回目の勝者になったと
きに 1/n となるようにする。そのためには、 αi の初神経科学的知見および BESOM モデルを前提にす

期値を 1 として、xi が勝者になるたびに以下の式で値ると、大脳皮質が実現するベイジアンネットは以下のを更新すればよい。

ような特徴を持つと考えられる。

αi ← αi /(1 + αi )3.4.3

1. （一種の）noisy-OR モデル。

(3.7)

2. 10 段程度の階層構造を持つ。階層内のノード数は固定。同一階層内のノード間にはエッジがない。

結合の重みと条件付確率3. ネットワークのマクロな構造は事前知識として与えられる。

学習の後期において近傍学習の効果が十分小さく無l視できると仮定すれば、結合の重み wij
は条件付確率P (Yl = yjl |X = xi ) となることが以下のように示される [1][2]。
ノード X のユニット xi が勝者になった回数を n、4. 最下端のノード以外はすべて隠れ変数である。
5. 各隠れ変数は、100 個程度の固定した数の値を持つ。

X の子ノード Y からの n 回目の入力ベクトルの要素
を vj (n) ∈ {0, 1}、その学習結果を wij (n) とする。ま

これらの性質のうち、１、２、３はパラメタの数をた、n 回のうち Y のユニット yj も勝者であった回数∑ni=1 vj (i) とする。学習率を ai = 1/n 、減らし、モデルの自由度を下げるが、４、５は自由度

を m(n) =を大幅に上げる。全体的には、非常に自由度が高く、また wij (1) = vj (1) = m(1) とする。

かなり強い制約条件を入れないと、学習時に意味のな

すると、数学的帰納法により wij (n) = m(n)/n がい局所解に陥ることが想像される。

示せる。n = 1 のときは自明、n > 1 のとき、帰納法

脳は極めて汎用的な学習器であるために、対象となの仮定により wij (n − 1) = m(n − 1)/(n − 1) なので、る事象固有の事前知識の作り込みはあまりできない。

以下が成り立つ。

作り込めるのは「汎用的な事前知識」しかない。そこで以下の章では、「滑らかさ」と「スパース性」を用い

wij (n)た正則化の機構を述べる。滑らかさは、「似た事象は= wij (n − 1) + αi (vj (n) − wij (n − 1))

似た信号を発生させる」という自然界に対する事前知=(1 − αi )wij (n − 1) + αi vj (n)識を表している。また、スパース性は、「事象の間の因=((n − 1)wij (n − 1) + vj (n))/n

果関係はスパースである」という自然界に対する事前=((n − 1)(m(n − 1)/(n − 1)) + vj (n))/n

知識を表している。滑らかさは条件付確率表の近傍学=(m(n − 1) + vj (n))/n

習とノイズ除去の機構によって実現され、スパース性= m(n)/nは非線形ＩＣＡ、ノード間競合、特徴間競合の機構に(3.8)

よって実現される。
これらの機構の一部は、汎化能力の向上だけでなく、この値は xi が勝者の時に yj も勝者であった比率、す認識ステップの計算量を劇的に減らす役割も果たす。

なわち条件付確率 P (Y = yj |X = xi ) である。

11

第 4 章 近傍学習による条件付確率表の円滑化

図 4.2: 通常の近傍学習を用いた学習例。
学習させてみると、図 4.2 のように、分断されたグラ

4.1

フが学習される。ここで、図 4.2 の縦軸は競合層（ユ背景

ニットの並び）を表し、各ユニットの参照ベクトルの確率分布ＳＯＭを使って、確率分布の連続なマップ

要素の値を濃淡で横方向に並べて表現している。（条を獲得させようとすると、近傍学習をどのように行う

件付確率表の可視化方法の詳細は 11.2 節参照。）

べきかが問題となる。単純に従来の値ＳＯＭと同様な

本来ならば、x と f (x) という２つの値を表すグラ近傍学習をしても、連続なマップにはならないことがフがそれぞれ１本の連続した線として学習されなけれ多い。これは、参照ベクトルの次元が n 次元から ns

ばならない。

次元と大幅に増え、機械学習モデルとしてのパラメタ

この例のように入力が正しく次元削減されていないの数が増えたために、モデルの自由度が増し、望まれと、確率分布ＳＯＭの出力を別の確率分布ＳＯＭに入る解以外の膨大な数の局所解が存在するようになった

力し、多層化することができなくなってしまうということが理由の１つである。

問題がある。

もう少し詳細に原因を検討すると、参照ベクト

この問題への対処として、参照ベクトルと入力ベク

ルと入力ベクトルの類似度を計算する際、値ＳＯ

トルの類似度の計算式を工夫する方法、近傍学習の仕Ｍの場合と違って、内積計算では必ずしも適切な値方を工夫する方法、勝者選択の仕方を工夫する方法なとならないことも理由の１つである。例えば、0.3

どが考えられる。現在のシミュレーションでは、近傍学と 0.4 は 近 い 値 で あ る が 、そ れ ぞ れ の 値 を 表 す

習の仕方を工夫することで、この問題を解決している。

参照ベクトル (0,0,0,1,0,0,0,0,0,0) と入力ベクトル

例えば、特徴量 0.3 を学習後の参照ベクトルが (0.1,(0,0,0,0,1,0,0,0,0,0) との内積値は 0 であり、まった
く類似していないことになってしまう。これでは近傍

0.2, 0.8, 1, 0.8, 0.2, 0.1, 0, 0, 0, 0) というふうにぼかした表現になるようにしておく。そうすれば、特徴量0.4 を表す入力ベクトル (0,0,0,0,1,0,0,0,0,0) との内積学習がマップを連続にする効果が出にくい。
例えば、区間の [0,1) の一様分布に従う値 x および

値は 0.8 であり、２つが比較的近い値であること示す

f (x) = (2x − 1)2 という２つの値を、それぞれ３０次元の２つの特徴量として、１次元の競合層に３０個のユニットを配置した確率分布ＳＯＭ（図 4.1）に入力しようになる。
そこで、このようなぼかした参照ベクトルを獲得するように、近傍学習の学習則を工夫すればよい。例えば、学習時に、参照ベクトルの値を近づける目標値を、
入力ベクトルをぼかした値に設定すればよい。そうす
れば、それを学習した参照ベクトルもぼかした表現に
なる。

x

f(x)

図 4.1: x と f(x) の値の組を学習する BESOM ネット。

12

x2
)
(4.9)
2σ 2
また、階段関数を使ってぼかす場合は以下のようにアルゴリズム4.2

g(x, σ) = exp(−

前節で述べたアイデアに基づく具体的な学習則を提
案する。

なる。

l
ユニット xi と yjl の間の結合の重み wijの、近傍

学習を含む学習則は以下のようになる。

vjl =

1
b(α, dxi , dyjl )
Zb

1
l
l
l
wij
← wij
+ α n(α, dxi )(vjl − wij)ZnbStep (α, dx , dy ) = step(dy , C1 α + C2 )(4.10)

nStep (α, dx ) = step(dx , C1 α + C2 ){
1 (d < 1 or d < r)step(d, r) =0 (d ≥ r)(4.11)

(4.1)
(4.2)

ただし、 b はぼかし関数、 n は近傍関数、dxi はノー(4.12)

階段関数の境界付近で値を連続にする場合は、以下

ド X における勝者ユニットとユニット xi の間の距
離、dyl はノード Yl における勝者ユニットとユニットのようにする。

yjl の間の距離である。ノード X と Yl の勝者ユニッl
トをそれぞれ xwx , ywとすると、dxi , dyl は下記の
yjbSmoothStep (α, dx , dy ) = smoothStep(dy , C1 α + C2 )j

ように定義される。

dxi = |i − wx |(4.3)

dyjl = |j − wy |(4.4)

(4.13)
n(α, dx ) = smoothStep(dx , C1 α + C2 )(4.14)(d < 1 or d < r − 1)
 1smoothStep(d, r) =r − d (r − 1 ≤ d < r)0(r ≤ d)(4.15)
SmoothStep

α は t 回目の学習ステップにおける学習率であるが、同時に、ぼかし半径と近傍半径を決めるパラメタであり、t が大きくなるにつれ 0 に近づくようにする。な

入力をぼかさない普通の近傍学習アルゴリズム場合、お、3.4 節で述べたようにユニット xi ごとに局所的にぼかし関数は以下のようになる。
{
1 (dy < 1)
N oBlurb(α, dx , dy ) =0 (dy ≥ 1)

学習率 αi を持つことが望ましいが、ここでは簡略化
し全体で１つとした1 。
正規化定数 Zb と Zn は、それぞれ下記のように定
める2 。

∑

Zb =

b(α, dx , dy )(4.5)

n(α, dx )(4.6)

nN oBlur (α, dx ) = g(dx , C1 α + C2 )y∈{y1 ,···,ys }

∑

Zn =

(4.16)(4.17)

図 4.2 の学習で用いたのはこのぼかし関数である。

x∈{x1 ,···,xs }

4.3

近傍関数もぼかし関数もともにガウス関数を用いる
場合は、以下のようになる。

b

Gauss

図 4.3 は、上から順に Gauss(C1 = s, C2 = 1)(α, dx , dy ) = g(dy , C1 α + C2 )(4.7)

nGauss (α, dx ) = g(dx , C1 α + C2 )(4.8)

1 近傍学習と局所学習率 α

実験

Step(C1 = s, C2 = 2)、SmoothStep(C1 = s, C2 = 2)
（ただし s はノード内のユニット数であり、この実
験では s = 30）の３つの近傍学習アルゴリズムを

i の両方をどう組み合わせれば最適な用いて得られた条件付確率表である。入力は x とのかは自明ではない。これは今後の課題とする。少なくとも、 n の半径は学習するノードにおける局所学習率、b の半径は入力を送る
ノードにおける局所学習率に依存すべきだろう。
2 正規化の方法は [20] に従った。ぼかし関数をこの方法で正規化∑しておけば、それを学習した結果の条件付確率がP (yj |xi ) = 1
jf (x) = (2x − 1)2 の値の組であり、x には区間 [0,1)の一様分布から生成される値を与えた。いずれの実験
結果でも、連続した確率分布のマップが正しく獲得さという条件を常に満たすようになるという利点がある。近傍関数に関しては、正規化しなければならない理論的必然性はないかもしれ
ない。

れている。

13

4.4

機械学習理論的妥当性

本章で提案した近傍学習則は、機械学習理論的に正当かどうかを検討する必要がある。
学習の初期には子ノードからの入力も、親ノードへの出力も多くのノイズを含んでいる。確率分布ＳＯＭの近傍学習則は、条件付確率表をガウス関数や階段関数を使って滑らかにすることで入出力のノイズを除去していると解釈することができる。ぼかし関数は入力のノイズを除去し、近傍関数は次回以降の出力のノイズを除去している。この理解は、 BESOM を多層化する際に重要になる。詳しくは 13.1 節で述べる。
獲得される条件付確率表は、パラメタの事後平均の近似とみなせるであろうと考えている。近似の精度が十分かどうかなどは、今後実験により検証する必要がある。この理解が正しければ、確率分布ＳＯＭが非常に少ないサンプルに対しても高い汎化性能を出す理論
的根拠になる。また、個々の学習対象の性質に応じて近傍学習則を調整し汎化性能を上げる際の指針を与えてくれる。

図 4.3: 上から順に、Gauss、Step、SmoothStep を用
いた近傍学習の結果。

4.5

ここでは、s 個の値を取り得る２つの入力ノード

Yl (l = 1, 2) が、区間 [0,1) のアナログ値 al を表現
するようにする。このとき、確率変数 Yl の値 yil の iは、以下のように計算する。

神経科学的妥当性

提案する学習則は、神経回路で十分に実現可能である。
シナプス前細胞の出力の強さが dy 、シナプス後細胞の出力の強さが dx を表すとしよう。また、局所学

i = ⌊(al )s⌋(4.18)

習率 α は、そのシナプス周辺のなんらかの化学物質の学習率 α は、 t 回目の入力に対し以下の値になるよ

濃度か、あるいは学習すべきシナプスの近傍にある、

うにスケジューリングし、およそ t = 100, 000 で学習

学習率を伝えるシナプスの重みだと仮定しよう。するを止めた。

と、シナプスの近傍に、式 (4.1), 式 (4.2) の値の計算

α = 1/(0.001t + 1)に必要なすべての値がそろっている。したがって学習(4.19)

則はこの神経回路モデルで十分に実現可能である。

Gauss はもっとも滑らかなマップが獲得されやすいが、計算量が多い。Step は計算量が少ないが、マップ

また、子ノード Y が関数 n の計算に用いる dy の値は、そっくりそのまま親ノードが関数 b の計算に用が不連続になりやすい。SmoothStep は計算量の割にいる dy の値に使えると言う点は注目に値する。このは滑らかなマップが獲得される。Step と SmoothStep

ことは、本章で提案する近傍学習のための神経回路が、では、多くのユニットで学習率 n(α, dx ) の値が０にな認識のための神経回路とうまく共有できる可能性を示るため、そのユニットの学習をスキップすれば、さら唆している。

に高速になる。
この後の章のシミュレーションでは、すべて Smooth-

Step を用いている。

14

4.6

今後の課題

どのようなぼかし方が最適かは学習対象となるデー
タの性質に依存する一種の事前知識であるため、理論だけからは決定することはできない。また、このレベルの詳細な神経科学的知見はおそらく得られておらず、
電気生理的な実験等で決定することも、あまり容易ではないだろう。最適なぼかし方は、理論的考察および計算機実験により求める必要がある。
本稿の実験ではすべて１次元ＳＯＭを用いているが、実際の大脳皮質はおそらく２次元ＳＯＭを用いている。
本章で述べた学習アルゴリズムは全く変更しなくても２次元ＳＯＭに適用できると考えているが、パラメタの再調整が必要になるかもしれない。

15ψ (x )

第 5 章 小さい条件付確率のノイズ除去

1

θ
0

1

x

背景

5.1

θ

一般にある入力ノード Y の観測データ Y = y に対し、P (y|x) が０であると、他の証拠がいかに強くX = x を支持していても事後確率 BEL(X = x) の値
図 5.1: 結合の重みと条件付確率。

が０になってしまうため、実用上問題である。
条件付確率が０になるのは、少ないサンプルから条

本稿のシミュレーションでは θ = 0.1 という値を用

件付確率表を最尤推定で求める場合に、一般に起こり

いている1 。

得る問題であり、一種の過学習である。そこで工学的

スムージングを学習時に行い、スムージング後の値には、何らかの方法で条件付確率の最低値が０になるを記憶する方法も考えられるが、この章で提案する方のを防ぐことが行われる。これはスムージングと呼ば法では、認識時にスムージングを行っている。この方れる。

法は、結合行列がスパース、すなわちほとんどの結合

例え条件付確率が０でなくても、小さな値であれば、の重みが０である時に、データ構造を工夫することで、やはり問題となる。ある条件付確率の値が ϵ である場

メモリの量を減らすことができるという利点がある。

合と 2ϵ である場合では計算される同時確率の値には生物にとっては、重みが０に近いシナプスを切ってシ２倍の違いが出るが、ϵ が小さいことはそれを経験しナプス維持コストを節約することができるという利点たサンプル数が小さいことを意味し、その情報はノイがある。

ズの影響を強く受けているはずである。

条件付確率の値に最低値を設けることは、同時確率

前章で述べた近傍学習アルゴリズムは条件付確率を計算にけるダイナミックレンジの問題も緩和する。θ が滑らかにするもので、一種のスムージングと解釈でき

ある程度大きな値であれば、同時確率計算がアンダー

るが、あくまで近似的なものなので、小さい条件付確

フローを起こしにくくなる。

率の値はやはりノイズの影響を受けていると思われる。
また、8 章で述べる機構を導入すると、学習により重みの多くが小さな値を取るようになるため、スムー

5.3

ジングの機構は必要不可欠になる。

今後の課題

この方法では ψ を適用することで条件付確率の総和が１を超えてしまうため、何らかの対策が必要かも

5.2

具体的方法

しれない。
ここではグラフが直線になる関数を用いたが、小さスムージングの方法はいろいろ考えられるが、１つな重みのノイズの影響をより抑えるためには、非線形の方法を以下に示す。認識時に、結合の重みに対しての関数を用いた方がよいだろう。

以下の関数 ψ を適用し、条件付確率の最低値が θ となるようにする（図 5.1）。

P (yj |xi ) = ψ(wij ) = (1 − θ)wij + θ

1 学習に使うパラメタ α と同じオーダーで小さくしていくとよ
いかもしれない。その場合、 α と同様に、 θ もユニットごとに持たせるべきだろう。現在のシミュレーションでは簡単化のため全体で１つの固定値とした。

(5.1)

16

第 6 章 ユニット間の側抑制による非線形ＩＣＡ

図 6.1: 同一層内にある２つのＳＯＭの各ユニットど
うしを、アンチヘブ則で学習する抑制性シナプスを通して結合する回路。

6.1

背景

図 6.1 の回路において、あるユニットの出力が大き[2] の６章で述べたように、同一階層内にある兄弟
ノードどうしは何らかの非線形独立成分分析 (非線形

くても相関の大きい他のユニットの出力が大きければICA) の機構によって独立になっていると考えている。
実際に、大脳皮質が非線形ＩＣＡを行っていると思

このような条件下でそれぞれのＳＯＭの学習を続けてわれる証拠はいくつもある。例えば、サルの側頭葉にしが無相関になる。すなわち、ノードが表現する値どは、視覚刺激として見せた顔の向きに応答するコラム

うしが独立になる。

強く抑制されるので、出力が弱まり勝者になりにくい。
いけば、やがてすべてのＳＯＭのユニットの出力どうが見つかっている [10]。顔の向きという情報は、顔の今回実装したアルゴリズムを具体的に説明する。

種類や顔の位置、大きさといった情報とは独立な情報

同じ階層に属する２つの兄弟ノードを X, Y とする。

であり、大脳皮質にそのようなコラムが存在すると言うことは、大脳皮質がＩＣＡを行っている証拠である。

X の値 xi と Y の値 yj の、ＭＰＥ（3.3 節参照）になる頻度の相関の度合いを Sij とする。ある入力に対さらに、顔の向きと言う情報から線形の演算だけで顔するＭＰＥにおいて X = xi , Y = yj （すなわち２つの視覚刺激を構成することは不可能であるから、これのＳＯＭの勝者ユニットがそれぞれ xi , yj ）だとする

は非線形なＩＣＡである。

と Sik (k = 1, · · · , s) は下記の式に従い更新する。

筆者は、田尻と倉田によって提案されていた複数のSik ← Sik + αS (δkj − Sik )ＳＯＭを用いた非線形ＩＣＡの手法 [11] を、確率分布
ＳＯＭに適用し、動作を確認したので、以下の節で説ただし δkj はクロネッカーのデルタ、αS は学習率であ明する。

る。現在のシミュレーションでは、αS はすべての Sij

なお、ここでは入力層と隠れ層のみからなる２層Ｂで共通の値にしており、下記の式に従って、ＳＯＭのＥＳＯＭを扱う。

学習率 α と同様に０に近づけている。

αS = 0.03α

6.2

(6.1)

(6.2)

アルゴリズム
同時確率の計算式 (3.2) は下記のように修正する。

２つの SOM の間のユニットを、アンチヘブ則で学習するシナプスを通して結合するネットワークを考え

P (h, i) =る（図 6.1）。
アンチヘブ則とは、抑制性シナプスにおけるヘブ則の1 −λS(h) ∏e
P (x|parents(x)) (6.3)
Zx∈h∪i

ここで Z は正規化定数、S(h) はユニット間の側抑制ことで、シナプスの前のニューロンの活動と後のニューを表す式、λ は側抑制の強さを表す定数で、本稿ではロンの活動の相関が強ければ強く抑制し、無相関であ

λ = 100 でシミュレーションを行っている。
２層ＢＥＳＯＭの場合は、S(h) は以下のように定れば抑制しないような方向に向かう学習則である。

17

義される。

∑

S(h) =

S(x, y)(6.4)

x,y∈h,x̸=yd

ただし S(x, y) はノード Y のユニット y からノード X(x,y)のユニット x への側抑制で、以下の式で定義される。

S(xi , yj ) = Sij(6.5)

なお、7 章で述べるφ値を導入する場合は以下のようにする。(Sij は i = ϕ または j = ϕ の場合には未定義とする。){

S(xi , yj ) =図 6.2: 格子点と入力点 (x, y) との間のユークリッド
距離 d 。

Sij(i ̸= ϕ, j ̸= ϕ)

0(i = ϕ or j = ϕ)(6.6)

すなわち、式 (6.3) は、同じ層にある他のノードのＭＰＥ候補の値から、相関の度合いが高いほど強い抑制を受けることを意味している。
したがって、過去において相関の高い値の組み合わ
せは、徐々にＭＰＥとして選択されにくくなる。そして最後には、どの値がＭＰＥの値になるかはノードごとに独立になる。
図 6.3: 平行四辺形の形をした確率分布からの入力の
学習結果。

6.3

実験

6.3.1

２次元平面上の１点の入力の学習

なお、現在の実験では隠れ層と入力層の間の条件付
確率 P (Yj |Xi ) のみを学習しており、隠れノードの事
前確率 P (Xi ) は定数だと仮定している。
（この後の章

この節では、ある確率分布に従って生成される２次の実験も同様である。）

元平面上の１点をＢＥＳＯＭに入力し、非線形ＩＣＡ

図 6.3、図 6.4 は、それぞれ平行四辺形、扇型をしたを行う実験例について述べる。
学習に用いたのは２層ＢＥＳＯＭであり、隠れ層の確率分布から生成される入力を学習した結果である。

ノード数は２個、入力層のノード数は 7 × 7 = 49 個で灰色の背景が入力する点を生成する分布を表している。

ある。すべてのノードのユニット数は s = 9 である。

赤と青の点はそれぞれＳＯＭの９つのユニットの受容入力データは２次元だが、以下に述べる方法で４９野の重心、格子点は 9 x 9 個あるＭＰＥの受容野の次元の特徴ベクトルに変換する。入力データは、区間重心を表す。（可視化の方法についての詳細は 11.3 節[0,1) の２つの値 x, y とする。まず、 x 座標と y 座標の区間 [0,1) を７等分する 7 x 7 個の格子点と、座標参照。）(x, y) とのユークリッド距離を計算することで、４９個の数値 di (i = 1, · · · , 49) を得る（図 6.2）。次に diから ai を以下のように計算する。

ていることが分かる。極座標が獲得できていることは、

ai = 0.8 − 3di ;図 6.3 では斜交座標、図 6.4 では極座標が獲得され非線形ＩＣＡができている証拠である。
図 6.5 は λ = 0 として学習した結果である。すなわ
ちこの例ではユニット間の側抑制を行わない。学習し(6.7)

た結果は、意味のないものになっている。２つのノー

こうして得られた値 ai から、4.3 節と同じ方法で入力

ドが表す情報も、独立にはなっていない。ベイジアン

ノード Ii に入力する。
（ただし、ai が０より小さい場

ネットの学習アルゴリズムとしては λ = 0 でも問題な

合は入力ノードの値は 7 章で述べるφ値とした。）

18

H0

I1

H1

I2

H2

...

I49
入力

元データ

変換： 回転 θ
拡大 s
平行移動 x49次元の特徴ベクトル生成

図 6.6: 点の集合からなる入力データを４９次元の特徴に変換する過程。

図 6.4: 扇型の確率分布からの入力の学習結果。

いはずなので、獲得されたベイジアンネットはおそら
く局所解の１つである。このことから、意味のある座標軸を獲得するためには側抑制もしくはそれに代わるＩＣＡの機構が不可欠であることが分かる。

6.3.2

複数の点からなる入力の学習

この節では、人工的に生成した複数の入力点からなる画像をＢＥＳＯＭに入力し学習させた例について説明する。
図 6.7 は、元となる点の集合のデータに対し、回転、拡大、水平方向の移動の３つの変換を施した文字の画像入力（図 6.6）を３つのノードで学習したときの、各ユニットの受容サンプルと受容野である。（受容野の可視化の方法についての詳細は 11.4 節参照。）変換の３つパラメタは、それぞれ一様分布に従って生成される。この図から、３つノード H0, H1, H2 がそれぞれ、
平行移動、拡大、回転という３つの独立成分を獲得しているのが分かる。

図 6.5: 側抑制を行わない例。 λ = 0 として図 6.4 と図 6.8 は、独立に動く３つの点から構成される画像

同じ入力を学習させたもの。なお MPE の受容野重心

入力を３つのノードで学習した例である。３つのノーは描画していない。

ドが、３つの独立成分を学習している。
図 6.9 は人工的に生成した、４つの点から構成される顔の画像を学習させた例である。顔の画像を生成す
るパラメタは２つあり、顔の向きと、顔の位置の平行移動量である。ノード H0 が顔の向き、ノード H1 が

19

U1

U1

U9

U9

図 6.7: 回転、拡大、水平方向の移動の３つの変換を施した文字の画像入力を３つのノードで学習したときの、各ユニットの受容サンプルと受容野。上の図は、各ユニットごとに、そのユニットが勝者ユニットとなった

図 6.8: 独立に動く３つの点から構成される画像入力

ときの入力サンプルを５個ずつ示したもの。下の図は、を３つのノードで学習したときの、各ユニットの受容ユニット U1 を黒、ユニット U9 を白、その間は灰色

サンプルと受容野。

のグラデーションを用い、各ユニットが勝者ユニットとなったときの入力サンプルの点を大量にプロットし
たもの。

20

U1

図 6.10: 入力ノードを２つにした学習結果。信号源の獲得に失敗しているが、２つのノードは独立になってU9いるので、非線形ＩＣＡにはなっている。
U9と分かるように、２つのノードは単に x 軸と y 軸を
ほぼそのまま学習したにすぎない。なお、この時でも、２つのノードが表す情報は独立になっているので、非線形ＩＣＡとしては成功している。
nH1

入力が２次元のままでは信号源の獲得に失敗し、４９次元の冗長な特徴ベクトルにすると成功する理由を説明しよう。極座標を表現するためには、２つのうち１つのノードの各ユニットは、図 6.12 の白い点線で示したような形の受容野を持つ必要がある。しかし、実

U1
U1

nH0

は２つの子ノードしか持たない１次元確率分布ＳＯＭ

U9は、複雑な形の受容野を表現する能力を持っていないのである。一方、４９次元の特徴ベクトルであれば、
図 6.9: 顔の向きと水平方向の移動で生成される画仮に特徴量と条件付確率が０か１の値しか取らないと像を２つのノードで学習したときの、各ユニットのしても、249 通りの受容野を表現することができる。

受容サンプルおよび各ＭＰＥの受容サンプル。（注：例えば図 6.12 の黒いマスで示した受容野が表現可能で

nH0=U3,nH1=U9 の受容サンプルが欠けているのはあり、これは白い点線の受容野を近似するのに十分で対応する入力サンプルが見つからなかったため。）

ある。

顔の平行移動量という独立成分をほぼ表現するように

トルに対し、任意の受容野を表現可能にするためには学習されている。

O(2n ) 次元の特徴ベクトルを使って冗長に表現しなけ

この例から分かるように、一般に n 次元の入力ベクればならない。この時、条件付確率表を記憶するメモ

6.4

リの量も O(2n ) となる。つまり、受容野の表現力とメ

冗長な特徴ベクトルに変換する

モリの量の間にトレードオフがある。

必要性

おそらく実用上は O(2n ) 次元にまで冗長にしなくても、十分に意味のある受容野が表現できる場合が多図 6.4 は２次元の入力データを４９次元の特徴ベク

いのではないかと予想する。また、仮に真の信号源のトルに変換して学習させたが、２次元のまま学習させ獲得に失敗したとしても、学習された条件付確率表はた結果が図 6.10 である。この例では意味のある軸の獲ベイジアンネットとしては正しく意味を持つので、そ得に失敗している。この図の受容野重心を見ただけでれなりの認識能力を発揮するはずである。この予想のは分かりにくいが、図 6.11 の条件付確率表を見てみる

検証は今後の課題である。

21

6.5

神経科学的妥当性

ここで述べた学習則は、ユニット同士がアンチヘブ
則で学習する抑制性シナプスを通して結合することで、神経回路で実現可能である。
抑制性細胞の一種であるシャンデリア細胞が、アンチヘブ則を実現する機構の有望な候補であると考えて
いる。

6.6

今後の課題

ユニット数 s が小さい場合、学習が収束しノードどうしが完全に独立になっても、S の要素が完全に０にならない。これが原因でノード間競合の機構と組み合わせた時に学習が振動してしまう。この問題への対処
方法はいろいろ考えられるが、その動作検証は今後の課題である。
この章で述べた学習則では、 αS の値によっては、

図 6.11: 入力ノードを２つにした時の学習後の条件付学習が振動する場合がある。本来、最急降下法で最適確率表。

化問題を解く場合は振動は起こり得ないはずである。
この現象の原因は、相関の度合いをオンライン学習しているために、その時点の条件付確率表が持つ真の相関の度合いとは時間的に遅れた情報を S が表現しているせいだと思われる。現在は αS の値を小さくする
ことで振動を回避しているが、今後、根本的な対処が必要になるかもしれない。例えば、偏微分を使って導いた正しい最急降下アルゴリズムを使う必要があるかもしれない。
現在のアルゴリズムでは２つのノード間に O(s2 ) の結合が必要になってしまうが、おそらく O(s) 程度の結合でも十分にＩＣＡは行えるのではないかと考えている。これについては、今後検討する。
相関度の学習でも近傍学習を行えば、汎化能力が向上するだろう。これも今後検証する。
一般に非線形ＩＣＡは解に一意性がない。現在は、ＳＯＭの近傍学習によって「軸が滑らかである」という制約条件を与えることで、それなりに意味のある解が得られている。大脳皮質は、領野ごとに扱う情報が
図 6.12: 複雑な形の受容野の例。

決まっているので、それに合わせてさらに別の制約条件を追加しているだろう。これを明らかにしていくこ
とも今後の重要な課題である。

22

第 7 章 ノード間競合による混合分布の学習
7.1

背景

生物が認識すべき外界は、異なる信号を生成させる
図 7.1: 混合分布を近似する複数のＳＯＭの概念図。

信号源を混合したものである。例えば、人の顔、木の実の形、捕食者の形などが、それぞれが異なる生成モ
デルで視覚刺激を生成する。実際の生物の目の前に提に何らかの値を持ち、エッジを持つ他のノードの値に示される視覚刺激は、目の前にあるどれか１つの物体影響を与えてしまう。）また、神経科学的にも、無理が生成したものであるはずである。個々の生成モデル

なく実現可能な機構でなければならない。

が作る分布は連続なのでＳＯＭで近似すれば補完され次の節で、このアイデアを実現する特殊な制約条件

汎化能力が上がるが、木の実の形と捕食者の形のようのついたベイジアンネットを提案する。この特殊なベにかけ離れた分布の間は補完するとかえって汎化能力

イジアンネットは神経回路によって生物学的に無理なが落ちることが想像される。

く実現可能である。神経科学的妥当性の詳細について
は、さらに後に続く節で考察する。

7.2

解決のアイデア

7.3

アルゴリズム

7.3.1

学習するベイジアンネットの特徴

混合分布を複数のＳＯＭで近似する場合、図 7.1 のように、個々の連続した領域を別々のＳＯＭで近似す
るようにすればよい。学習則としては、まずＳＯＭ間

本稿では入力ノードからなる層と隠れノードからなの競合により入力にもっとも近いＳＯＭを選んだあと、る層を持つ２層ＢＥＳＯＭのみを扱う。層の中のノー

その入力をＳＯＭ内の競合学習（と近傍学習）で学習

ド同士はエッジを持たない。

すればよいと考えられる。BESOM ではＳＯＭはノー本章で提案するアルゴリズムが獲得するベイジアンドでもあるので、この機構を以下 ノード間競合と呼ぶ。

ネットは、さらに以下の制約を満たすものに限定する。

ノード間競合の勝者は必ずしも１つのノードである
必要はない。詳細に表現する必要のある対象ほど、多1. 全てのノード（確率変数） X は、次に示す s + 1

くのノードを使って近似すればよい。
（その場合、6 章

個の値のうちのどれかをとるものとする。

でのべたＩＣＡの機構により、個々のノードが表す情報は独立になる。）

X ∈ {xϕ , x1 , x2 , · · · , xs−1 , xs }(7.1)

BESOM モデルとこのノード間競合のアイデアを統合する方法は自明ではない。入力の種類ごとに、ベイジアンネットの異なるサブグラフのみが「活性化」す（ノードごとに s の値が異なっていてもよいのだる（図 7.2）ことになるが、通常のベイジアンネット

同一とする。）以下、 値 xϕ のことを ϕ 値、xϕ 以には、このような機能はない。（すべてのノードが常外の値のことを非 ϕ 値と呼ぶ。

が、簡単のため、本稿ではすべてのノードで s は

23

4. すべてのノード X において、φ値の事前確率
P (xϕ ) は１に近い値である。
P (xϕ ) ≈ 1(7.5)

すなわち、 MPE においてほとんどの隠れノード

活性ノードの値がφ値になる。

不活性ノード

この制約条件を ノード活性のスパース性の制約と呼ぶ。この制約条件は、ネットワーク内の全ノードの活性度を調整する特殊なノードをベイジア

入力１

入力２

ンネットに追加することで実現される。詳しくは

入力３

7.3.3 節で述べる。
なお、等確率の制約（式 (7.4)）と合わせると、下記の式が成り立つため、δX は 1/s よりも十分に図 7.2: 混合分布を表現する BESOM ネットの概念図。

小さい値となる。

入力ごとに、活性化する親ノードの集合が異なる。不活性なノードは、あたかも存在しないかのようにふる

P (xϕ ) = 1 −まう必要がある。

P (yil |xϕ ) = P (yil ) (i = ϕ, 1, · · · , s)
m

(1 −

m
∏

(7.7)

この制約条件を ϕ 値の中立性の制約と呼ぶ。

∏
1
P (xi |u1 , · · · , um ) ≈ (1 −(1 − P (xi |uk )))
Z
k=1
(7.2)
∑
ただし Z はi P (xi |u1 , · · · , um ) = 1 にするための正規化定数で、下記の式で表せる。

i=ϕ,1,···,s(7.6)

5. すべてのノード X において、φ値 xϕ は、X のすべての子ノード Yl の値と因果関係を持たない。

は 7.6.3 節参照。）

Z=

P (xi ) = 1 − sδX ≈ 1

i=1

2. 条件付確率が下記のように近似できるものとする。
（この近似式は将来変更する予定である。詳しく∑s∑

これを満たしていれば、値がφ値であるノード（不活性ノード）は子ノードに対してあたかも存在していないかのようにふるまう。（ただし、一般にφ値は親ノードとは因果関係を持つので注意が必要である。つまり、不活性ノードは親ノードに対(1 − P (xi |uk )))しては、「あたかも存在していないかのよう」に

(7.3)

k=1

はふるまわない。）

3. ノード X における非φ値 xi (i = 1, · · · , s) の事
前確率 P (xi ) （MPE において X = xi となる確

この制約条件もある程度自動的に満たされると考率）は、ノードごとに異なるが i にはよらない定

すよう強制するのも容易である。詳しくは 7.3.5

数 δX である。

節で述べる。

P (xi ) = δX (i = 1, · · · , s)

えている（要シミュレーション）が、厳密に満た

なお、等確率の制約（式 (7.4)）と合わせると、下(7.4)

記の式が成り立つ。
この制約条件を非 ϕ 値の等確率の制約と呼ぶ1 。

P (yil |xϕ ) = P (yil ) = δYl (i = 1, · · · , s)

この制約条件はＳＯＭの性質によりある程度近似(7.8)

的に満たされるが、より厳密に満たす必要がある
場合は、簡単な神経回路を付加すれば実現可能で7.3.2ある。詳しくは 7.3.4 節で述べる。

ϕ 値を含むノードの学習則

4.2 節で述べた学習則は、φ値を含むノードに対し

1 最下端にある入力ノードもこの条件を満たすべきだが、今回のては以下のように修正される。

シミュレーションでは満たしていない。

24

子ノード Yl の勝者ユニットが yjl であった場合の vjlを計算する式 (4.1) は次のように拡張される。（なお、vjl は j ∈ {1, · · · s} に対してのみ定義され、vϕl は定義されない。）{
0(Yl の勝者がφ値の時)
lvj =1
Zb b(α, dxi , dyjl ) (Yl の勝者が非φ値の時)(7.9)′
近傍関数は、従来の近傍関数 n を拡張した n を用

H1

H2

H3

I1

I2

H4

いる。勝者ユニットが非φ値 xi であった場合の n′ は
次のように定義される。
{
0′n (α, i) =α Z1n n(α, dxi )S(i = ϕ)(i ̸= ϕ)(7.10)
図 7.3: すべての隠れノードのスパース性の制約を表

勝者ユニットがφ値 xϕ であった場合は近傍学習はせず、n′ は次のように定義される2 。
{
α (i = ϕ)′n (α, i) =0 (i ̸= ϕ)

すノード S 。
ただし、Z は正規化定数、β はスパース性を制御する(7.11)

パラメタである。A(h) は h がどの程度スパース性に関する制約を満たしているかを表す値であり、例えばlwij(j ̸= ϕ) に対する重みの更新式は、式 (4.2) を、次のように修正する。
l
l
l
wij
← wij
+ n′ (α, i)(vjl − wij)以下のように定義する3 。
∑
ASof t (h; m) = ((a(x)) − m)2x∈h{
1 (i ̸= ϕ)a(xi ) =0 (i = ϕ)(7.12)ll
wiϕの値は、wij(j ̸= ϕ) から計算する。

l
=1−
wiϕ

s
∑

l
wij

(7.15)(7.16)

ASof t は「非φ値を取る要素の数」が m 個から離れ(7.13)

j=1

るほど大きな値を取る関数である。

こ の 節 で は 、ノ ー ド 活 性 の ス パ ー ス 性 の 制 約

あるいは、以下のようなものも考えられる。
{∑
1(( x∈h a(x)) = m)Hard(7.17)
A(h; m) =∑∞ (( x∈h a(x)) ̸= m)（式 (7.5)）を満たすようにするための機構について

AHard は「非φ値を取る要素の数」が m 個ではない述べる。

ときに同時確率を０にするもので、用いるアルゴリズ

7.3.3

認識ステップにおけるノード間競合

図 7.3 のように、すべての隠れ変数ノード Hi の子

ムによっては計算機上での MPE 探索の計算量を減らノードとして、スパース性の制約を表すノード S をすことができる。

追加する。S は、Hi の値の集合 h がスパース性の制Hi と S の間の条件付確率表は固定であり、学習に約を満たすとき S = 1、そうでなければ S = 0 になる

より変化しない。MPE を求める際には、 S の観測値

確率変数である。ノード S に関する条件付確率表は、として S = 1 を与える。変数 S は noisy-OR モデルには従わず、従って条件付確率表 P (S|H1 , · · · , Hn ) の下記の式で表せるものとする。

P (S = 1|{H1 , · · · , Hn } = h) =1 −βA(h)eZ

サイズは sn となるが、実際に MPE を求める際にそ(7.14)のような表を明示的に持つ必要はないので、問題ない。
3 上の層ほどスパースにしたり、モダリティ間で優先度をつけたりと、A(h) に対して様々な事前知識の作りこみが考えられるが、本稿では最も単純なものだけを示した。

2 実は、7.3.5 節で述べるように、重み w l を明示的に学習する
ϕj

必要はない。その場合は、この学習則は不要である。

25

3.2 節で述べたように、 BESOM モデルにおいて認識とは、MPE の選択、すなわち観測データとの同時確

ϕ 値の中立性の制約

7.3.5

φ値の中立性（式 (7.7)）は、ある程度自然に成り立率を最大にする隠れ変数の値の組を求めることである。

つと予想している。子ノードと因果関係の強いノード

ノード S の追加により、同時確率の計算式 (3.2) は次がノード間競合の勝者ノードになりやすいからである。

のように変更される。（なお、ここでは２層 BESOM

この制約を学習則で強制するのは簡単である。φ値を想定している。）

ユニットが勝者になったときに P (yil |xϕ ) を明示的に∏
1
P (S = 1, h, i) = e−βA(h)P (x|parents(x))
Zx∈h∪i(7.18)
ノード間競合により、与えられた入力に対して活性たものを用いればよい。

化するノードの数が制限される。これは、パラメタ（結

7.4

実験

7.4.1

混合分布から生成される入力の学習

学習せず、代わりにノード Y の事前確率 δY を学習し合の重み）の自由度を直接制限するものではないが、学習モデルの表現力を制限することになるため、代わりに汎化能力は向上すると期待できる。

本稿で提案したノード間競合の機構が、実際に混合分

ノード間競合には、他にも様々な効果がある。

布の学習に有効であることを簡単な計算機シミュレー

この拡張により、観測データができるだけ少ない数

ションで確認した。

の活性ノードを使って説明できるように、ベイジアン

学習に用いたのは２層ＢＥＳＯＭであり、隠れ層のネットの学習が進むようになる。これは一種のスパー

ノード数は２個、入力層のノード数は 7 × 7 = 49 個

ス符号化であり、 BESOM の各層は、入力を効率的である。入力データは２次元であり、6.3.1 節と同じ方に圧縮した情報を上位層に送るようになる。詳しくは

法で４９次元に変換したあと４９個の入力ノードに入

7.6.2 節で述べる。
また、実質的に少数のノードだけを使って与えられ力する。
図 7.4 はノード間競合に AHard (h; m) (m = 1) をた値の組の同時確率を計算することができるので、同使用して２つのノードで混合分布を学習させた例であ時確率計算におけるダイナミックレンジや計算精度のる。灰色の領域は、入力の分布を表しており、この分問題が解決する。この性質は、計算機上でも生物にとっ布の中からランダムにサンプル点を生成し、 BESOMても有益である。

に入力した。２つのノードの学習結果は、それぞれ赤ノード間競合により、混合分布が表現できるようにと青で示されている。２つのノードの各ユニットが、なる。詳しくは、7.4 節の実験結果で示す。

分離している２つの領域のそれぞれに張り付くことで、ノード間競合の機構の生物学的実現はおそらく容易

効率的に入力分布を表現していることが分かる。（可である。大脳皮質と視床とを相互に接続する視床−皮視化の方法についての詳細は 11.3 節参照。）

質ループの解剖学的構造と電気生理学的振る舞いは、

図 7.5 は、同じ混合分布の入力を、ノード間競合を行

ノード間競合の機構とたいへんよく似ており、ノード間

わないで学習した例である。２つのノードが同時に入競合を実現する組織の有力な候補であると考えている。

7.3.4

力を学習するため、意味のない学習結果になっている。

非 ϕ 値の等確率の制約

7.4.2

非φ値の等確率の制約（式 (7.4)）は、近似的には、

混合分布に対する非線形ＩＣＡ

現在のところまだ正しく動作していないが、混合分

競合学習の性質により自然に成り立つのではないかと布に対する非線形ＩＣＡの実験について説明する。

筆者は予想している。

図 7.6 は、人工的に生成される４点から構成される、より厳密に成り立たせるためには、各ユニットの事

２種類の動物の顔の画像を４つのノードで学習した例

前分布 P (xi ) を学習し、その値が他のユニットよりもである。一度に活性化するノードは２つである。

大きすぎる場合は勝者になりにくいようペナルティを与えるように認識アルゴリズムを修正すればよい。

26

細な検討は今後の課題である。
注意の正規化モデル [13] に、φ値ユニットの存在の１つの証拠がある。近似確率伝播アルゴリズム [1][2]はφ値を含む BESOM ネットにも適用可能だが、その場合ノードの各ユニットの出力 ri は下記の値 Z を使って正規化されるはずである。

Z = rϕ +図 7.4: 混合分布を２つのノードで学習した例。ノー

s
∑

ri

(7.19)

i=1

ド間競合には AHard (h; m) を使用。m = 1 。

一方、注意の正規化モデルでは、空間方向の正規化を無視すると、下記のようになる。

Z =σ+

s
∑

ri

(7.20)i=1

σ は、「入力のコントラストが小さく応答が小さいときには正規化の効果は表れない（正規化係数 Z は定数になる）」という実験事実を説明するために注意の正規化モデルに導入された定数である。ところで rϕ

図 7.5: 混合分布を、ノード間競合を行わないで２つはφ値の中立性（式 (7.7)）により、入力刺激にはあまのノードで学習した例。

り依存しない値である。（全く依存しないわけではな
いが、入力刺激が弱い場合はおそらく影響が少ない。）

２種類の動物の顔が、それぞれ２つのノードを使っ

従って、もしトップダウン信号が同一であれば rϕ はて学習されている。ただし、２つのノード間のＩＣＡはほぼ定数となり、注意の正規化モデルと整合性を持つ

安定して動いていない。この原因は把握している（6.6

ことになりそうである（要シミュレーション）。ただ節参照）が、解決は今後の課題である。

し、 rϕ はトップダウン信号の影響は受けるため、この点で注意の正規化モデルとは異なっている。

7.5

神経科学的妥当性

7.3.5 節で述べたように、φ値ユニットの条件付確率表 P (yjl |xϕ ) を明示的に記憶する必要はない。また、
φ値ユニットは近傍学習の対象とならない。したがっ

7.6

今後の課題

7.6.1

スパース性の制御て、大脳皮質上にφ値に対応するコラムが、通常のコ

スパース性の度合いを表すパラメタ β は、一種のラムと同じ形態で存在する必要はない。おそらくφ値

正則化パラメタである。スパース性が下がれば多くのユニットは通常のコラムよりも少ないニューロンで実∑現可能である。一方 P (yϕl |xi ) = 1 − j P (yjl |xi ) の値

ノードを使って入力をより正確に近似できるようにな

は認識時に必要になるはずだが、その値を学習もしくは過適合におちいり、汎化能力は落ちる。最適なスパーは計算するニューロンの数も比較的少ないだろう。以ス度がどのくらいなのかは、入力データの性質に依存上の予想どおり、φ値が比較的少ないニューロンで実するので、入力に関する事前知識なしでは理論的に決現可能であるとすれば、φ値のように応答するニュー

めることはできない。

るが、それに見合うだけの入力サンプル数がない場合

ロンがこれまで実験的に知られていない理由になる。

工学的には、正則化パラメタの最適な値を決めるた

ノード間競合は、視覚野における exogenous atten-

めに、交差確認法がよく使われる。さまざまな値の正tion （外因性注意）および視床−皮質ループと視床網様核の解剖学的構造と関係があると考えているが、詳

則化パラメタで汎化誤差を見積もり、もっともよい値
を実際の応用に採用すればよい。

27

Uφ
U1

U9

図 7.6: 混合分布の学習とＩＣＡを同時に行おうとした例。４点から構成される、２種類の動物の顔の画像を４つのノードで学習したときの、各ユニットの受容サンプルと受容野。一度に活性化するノードは２つ。

28しかし、脳はオンラインで動作しなければならない。

ただし Z は正規化定数で、下記の式で表せる。（比筆者は脳は交差確認法をオンラインで実行しているの較的複雑だが、さらに近似できるかもしれない。例えではないかと考えているが、その検証は今後の課題でば分子はおそらくほぼ１である。）

ある。

7.6.2

1/Z

= (1 − P (xϕ |u1 , · · · , um ))/=スパース符号化との関係

(1 −

∏

i

P (xϕ |uk ))/k=

この章で提案したアルゴリズムは、非線形のスパー

(1 −

∏
k

ス符号化を行っている。基底ベクトルの線形和ではな∑∑(
P (xi |uk ))∑∑k

P (xϕ |uk ))/∑kP (xi |uk )i(1 − P (xϕ |uk ))k(7.22)

く、より複雑な演算によって符号から元の信号を復元できるため、より表現力が強い。逆にいえば、線形に

この式には下記のような利点がある。

限定されたスパース符号化よりも、本アルゴリズムは、

1. 活性値 x1 , · · · , xs をまとめて１つの値とみなすと、

よりスパースな符号ができる可能性がある。

２値の noisy-OR モデルに厳密に一致する。（たこのことは脳にさまざまな利点をもたらす。スパー

だし P (xϕ |uϕ ) ≈ 1 という仮定が必要である。）

ス符号化をすることで入力データが効率的に圧縮してを落とさずに減らせるので、上位層における認識の性

2. 条件付確率表をこれ以上近似しなくても、比較的簡単な神経回路で確率伝播アルゴリズムやＭＰＥ能が上がる。また、情報を記憶するためのシナプス数、計算アルゴリズムが実現できる可能性が高い。

記憶される。また、上位層に入力する特徴の数を情報

配線数、ニューロン発火率が減る。

今後、この近似式に基づいてシミュレーションを行

BESOM による非線形スパース符号化の実験は、今後の課題である。

うことで、有効性を検証する必要がある。

7.6.4
7.6.3

条件付確率表の近似モデル

スパース性と兄弟ノードの独立性

7.3.3 節で定義した ASof t および AHard に従って学習した結果は、おそらく兄弟ノードのφ値どうしが独本章で述べた条件付確率の近似式よりも好ましい近立にならない、すなわち P (xϕ , yϕ ) = P (xϕ )P (yϕ ) と似式があり得る。
式 (7.2) の近似式は、ＭＰＥを求める際にアルゴリならないだろう。これでは「同一階層内にあるノード

ズムによっては正規化係数 Z を無視できるという利同士は独立でありエッジが不要」とするＢＥＳＯＭの点がある。しかし活性値と不活性値を一様に扱ってい前提に反してしまう。そこでφ値に対しても（近似的るため、noisy-OR モデルとみなすことができず、好に）兄弟ノードが独立になるように、スパース性を制

ましくない。また、簡単な神経回路で確率伝播アルゴ約する式を改良する必要がある。

リズムやＭＰＥ計算アルゴリズムを実現する場合は、階層内のノードどうしが独立ならば、階層内の重条件付確率の値が十分に小さいと仮定して、さらに近複しないノードの部分集合の値の組み合わせどうし似する必要があるという欠点がある。

も独立になる。例えば２つのノードの値の組み合わ
せ A = a, B = b と別のノードの値の組み合わせ

現在、よりよい近似式の候補として考えているのは

X = x, Y = y は P (a, b, x, y) = P (a)P (b)P (x)P (y) =P (a, b)P (x, y) であるから独立である。これは望まし

下記の式である。

P (xi |u1 , · · · , um )P (xϕ |u1 , · · · , um )い性質である。ＢＥＳＯＭでは、１つの信号源は１つ

1 ∑
P (xi |uk )Zk∏≈
P (xϕ |uk )≈ノードではなく複数のノードのポピュレーションで表現される。ポピュレーションどうしが（ノードの重複が無視できれば近似的に）独立であるという性質によk

り、膨大な数の独立な信号源の noisy-OR モデルが少(7.21)ないノードで近似的に表現可能になる。

29

る1 。
l
l
l
wij
← max(wij+ n′ (α, i)(vjl − wij− Di ), 0) (8.1)

第 8 章 特徴間競合による部品別学習に向けて

max(a, b) は、 a と b のうち大きいものを返す関数である。減衰項 Di の値は以下のように定義される。
s∑∑l
Di = C((a(wij)) − θa )l{a(w) =
この章では、部品別学習 (parts-based learning)[9]

(8.2)

j=1

1

(w > θw )0(w ≤ θw )(8.3)

C は定数である。 Di はユニット xi と下の階層のノー
ド Yl の非φ値ユニット yjl との間の重みのうち、θw

ができるように、7.3.2 節で述べた学習則をさらに拡張する。

より大きな値を持つものの数を与える2 3 。θa は定数

ただし、アルゴリズムは不完全で、意図したとおり

θw より大きな値を持つ重みの数の目標値である。

に動作していない。

以上の学習則により、非φ値ユニットの重みの多くが小さな値をとるようになる。

8.1

この学習則により、ユニット xi と因果関係を持つ

部品別学習

特徴ノードの数は減っていく。この機構を 特徴間競合と呼ぶことにする。

自然画像は、複数の部品から構成されていることがこのアルゴリズムはシナプス間競合と呼ばれる神経多い。例えば顔画像は、目、鼻、口などの部品から構科学的現象から着想を得ている。

成される。それぞれの部品の形が異なる遺伝子から決なお、この機構により多くの条件付確率が０になる

定づけられているとすれば、個々の形状はほぼ独立なが、5 章で述べた機構により、認識に不都合が大きな信号源から生成されることになる。

生じることはない。

顔画像に限らず、一般に網膜座標において遠くに位置する視覚刺激は独立な信号源から生成される場合が多いだろう。この事前知識を学習則に作り込むことで8.3

汎化能力を上げることができるはずである。
また部品別学習は、信号源と特徴の間の因果関係のシミュレーションしてみたところ、部品別学習の効

数を劇的に減らすので、記憶量と計算量の大幅な低減果は出たとしても非常に弱い。

にもつながる。

また、条件付確率の値をゆがめるので、認識性能に

実際に、脳の視覚野が部品別の情報表現をしている

影響が出る懸念がある。

と思われる知見もある [9]。

8.2

今後の課題

現在別のアプローチのアルゴリズムを検討中である。

重み減衰をする学習則

1 この式では減衰項 D の値はユニット x ごとに決まる。計算i
i
機上で実現する場合は、勝者ユニットの Di の値を近傍ユニットの学習の際にも使用しても問題ないかもしれない。その方が計算量は減る。現在の実装は、そのようになっている。
2 ユニット x と下の階層のノード Y の非φ値ユニット y liljとの間の重みの総和を与える、という方法も考えられる（
Di =
∑ ∑s
wl ）。しかしこの方法は、重みが薄く広がってしまい、lj=1 ij

部品別学習の実現に向けて、１つの学習則を提案する。
lwij(j ̸= ϕ) に対する重みの更新式は、式 (7.12) を修正し、次のように重みに対する減衰項 Di を追加す

特徴間競合にならず好ましくないかもしれない。
3 扱う情報に関する事前知識を用いて、ノードごとに異なる事前分布を作り込むことも可能だが、本稿では最も単純なものだけを示
した。

30

¶

³

1. すべての隠れノードの値を何らかの値で初期化する。その時の値の組を h とする。

第 9 章 ＭＰＥ計算の効率化

2. h の中の高々１つの隠れノードの値を別の値に変更したものを次の状態の候補とする。
候補の集合を H とすると、H の要素のう
ち、入力 i との同時確率が最大のものを h′
とする。

9.1

大脳皮質の計算量のオーダー

h′ = argmax P (h∗ , i)h∗ ∈H

大脳皮質の面積は種によって大きく異なるが、大脳3. P (h′ , i) > P (h, i) 、すなわち同時確率が大きくなっていれば、 h := h′ として 2. に戻皮質の厚さ、ニューロンの密度、ニューロンあたりのシナプスの数、ニューロンの演算速度、物体を認識す
る速度は種によって大きくは違わない。
（と筆者は思っµている。）
それが正しいとすると、大脳皮質が物体を認識する´

図 9.1: 素朴な山登り法によってＭＰＥの近似解を求

アルゴリズムの計算量は、ニューロン数を n とする

めるアルゴリズム。

と、 O(n) であることになる。

BESOM モデルの認識ステップに行われる MPE 計
算は、一般にはノードの数を n とすると O(2n ) の計
算量を必要とする。しかし、特殊なベイジアンネット

は、式 (7.2) を用いると下記のように表される。

P (h∗ , i) ∝のもとでの近似解法でよければ、計算量を大きく減らすことができる。

∏∏(1 −(1 − P (x|uk )))∗kx∈h ∪i(9.1)

ただし uk は、値の組 h∗ における、ノード X = x の

以下の節では、実際に平均計算量 O(n) で動作する

k 番目の親ノード Uk の値である。ベイジアンネットの各ノードの親ノードの数が平均 O(n) であるとすれば、この同時確率計算の計算量は O(n2 ) である。

と思われる MPE 計算アルゴリズムについて述べる。

9.2

る。大きくなっていなければ終了。

もし平均 O(n) 回の状態変化で局所解にたどりつくO(n4 ) アルゴリズムとすれば、ＭＰＥの近似解を求めるための平均の計算
量は O(n4 ) となる。

まず手始めとして、素朴な局所探索法によってＭＰＥの近似解を求めるアルゴリズムを考える。
図 9.1 はベイジアンネットのＭＰＥの近似解を山登

9.3

り法を用いて求めるアルゴリズムである。
このアルゴリズムの平均の計算量を見積もってみる。

O(n3 ) アルゴリズム

前節で述べた素朴なアルゴリズムでは、１回の同時（本当にこの見積もり通りの平均計算量になるかどう

確率計算のコストは O(n2 ) とした。しかし、これをかは、実験によって確認する必要がある。）

O(n) に減らすことができる。
現在の状態の入力との同時確率を p, ノード X の値

ノードの数を n 、各ノードの取り得る値の数を定数s とする。現在の隠れ変数の値の組を現在の状態とす
ると、次の状態の候補の数（H の要素の数）は ns 個である。

を x から x′ に変更した後の同時確率を p′ とすると、

p′ は次の式で表せることに着目する。

状態遷移の候補 h∗ の入力 i との同時確率の計算式∏
P (x′ |u1 , · · · , um ) l P (yl |x1 , · · · , x′ , · · · , xq )∏p(9.2)p =P (x|u1 , · · · , um ) l P (yl |x1 , · · · , x, · · · , xq )
′

31

U1

...

...

Uk

P (yl |x1 , · · · , x′ , · · · , xq ) = 1 −Um

1 − P (yl |x′ )ΛY (9.7)
1 − P (yl |x) l

X の子ノードの数も O(n) なので、式 (9.2) の同時
X1

...

...

X

確率 p′ の値は O(n) で計算できることになる。

Xq

探索により値を変更するノード X が確定したら ΛXの値も再計算する必要がある。
Y1

...

Yl

...

ΛX =

∏
(1 − P (x′ |uk ))

(9.8)

k

再計算の計算量は O(n) である。再計算は１回の状態

図 9.2: ノード X と親ノード Uk および子ノード Yl 。

変化につき１回であり、状態変化１回に必要な計算量の値、xi (i = 1, · · · , q) はノード Yl から見た i 番目のO(n) を増やすことはない。
以上の工夫により、ＭＰＥ計算の平均計算量は O(n4 )親ノード Xi の値である（図 9.2）。

から O(n3 ) に下がる。

ただし、 yl は、ノード X = x の l 番目の子ノード Yl

なお、 ΛX を記憶するためのメモリ量は O(n) でまず、最初に隠れノードの値を初期化した後、各ノーある。

ド X ごとに、下記の値 ΛX を計算する。

ΛX =∏(1 − P (x|uk ))

(9.3)

k

9.4

あるノードの親ノードの数は O(n) であり、ΛX を n

ノード間競合の機構を導入し、活性ノードの平均数個すべてのノードに対して計算するから、この計算量が全ノード数 n によらず、一定値 m だとする。するは O(n2 ) である。

と、平均 O(m) 回の状態変化で局所解に到達すると予

また、初期状態の同時確率 p を計算しておく。この想されるので、ＭＰＥ計算の平均計算量は O(n2 ) にま

計算量は O(n2 ) である。（ただし、ＭＰＥ計算で必要

で落ちることになる。

なのは同時確率の変化率 p′ /p だけなので、これは必

さらに、各ノードの親ノードと子ノードの数の平均ずしも必要ではない。）

値が全ノード数 n によらず、一定値だとする。する

以上の初期化の計算量は O(n2 ) であるが、これは最と、前節で述べた同時確率計算アルゴリズムの計算量

初に一度実行されるだけなので、ＭＰＥ計算の計算量

は O(1) になるので、ＭＰＥ計算の計算量は O(n) にのオーダーを変えることはない。

なる。

次に、ノード X の値を x から x′ に変更した場合

なお、 ΛX を記憶するためのメモリ量は O(n) のまの同時確率計算について説明する。

ま変わらない。

まず、下記式の値は定数時間で計算できる。

P (x|u1 , · · · , um ) = 1 − ΛX

(9.4)

9.5

X の親ノードの数は O(n) なので、下記の式の値はO(n) で計算できる。
∏
P (x |u1 , · · · , um ) ∝ 1 −(1 − P (x′ |uk ))′局所解を避ける方法

局所探索法のうち、局所解を避ける工夫があるものには、多スタート局所探索、タブーサーチ、焼きなま
し法、粒子群最適化などがある。

(9.5)

k

また、下記の２つの値は ΛYl =O(n) アルゴリズム

当然ながら、ほぼ確実に厳密解に到達できるように∏

i (1 − P (yl |xi )) のするには指数関数的な計算時間が必要になる。
実用上はそこまでする必要はなく、いかに計算量の値を使って定数時間で計算できる。

オーダーを上げないで、無意味な局所解を避けるかがP (yl |x1 , · · · , x, · · · , xq ) = 1 − ΛYl

課題になる。具体的に、どの方法をどのようなパラメ

(9.6)

32

タで実行すると最適なのかは、扱うデータの性質にも

9.8

今後の課題

依存する。今後実験により試行錯誤で決める必要があ
スパース性制約 A(h) や側抑制 S(h) を含めた高速るだろう。図 9.1 の素朴な山登り法でも実用上あまり

アルゴリズムについてはまだ検討していない。

問題がないかもしれない。
なお筆者は、近似確率伝播アルゴリズムと局所探索

9.3 節の O(n4 ) アルゴリズムはシミュレーションに法をうまく組み合わせることで、無意味な局所解をあより動作を確認したが、9.4 節の O(n3 ) アルゴリズム

る程度避けることができるのではないかと考えている。

は未確認である。

このアイデアの妥当性の検証も今後の課題である。

9.6

O(1) アルゴリズムの可能性

これまでに述べたアルゴリズムでは、毎回の状態変化ごとに、値を変更するノードを n 個のノードから探すため、状態変化に O(n) の計算量がかかる。
これは、データベースのリニアサーチに似ている。
大脳皮質は n 個の並列演算装置でこれを実行するので、同じことをほぼ O(1) の時間で実行できる。
しかし、汎用計算機ならば並列計算しなくても、リニアサーチよりも優れたアルゴリズムを使って、計算量そのものを O(1) に減らせる可能性がある。
もしそれができれば、実用的価値は非常に大きい。
それが可能かどうかは、実データを学習した結果得られる条件付確率表がどのような性質を持つかを観察しながら検討すべきだろう。

9.7

２層 BESOM の計算量

２層 BESOM の場合、すべての隠れノードは親ノー
ドを持たないため、計算量はかなり少なくなる。
隠れノード数 n 、入力ノード数が m とすれば、同時確率の計算量は、素朴な方法でも計算量は O(mn)となる。ＭＰＥ計算の平均計算量は O(mn3 ) である。
同時計算で 9.3 節の工夫をした場合、平均計算量はO(mn2 ) に減る。
9.4 節と同様にノード間競合を導入すれば、平均計
算量は O(mn) となる。さらに入力ノードの親ノードの数が n によらず定数であれば、平均計算量は O(m)
となる。

33

以上の計算をすべてのノードが繰り返すことで、ネットワーク全体の同時確率は単調に増加し、局所解に収束する。

第 10 章 近似ＭＰＥ計算
アルゴリズムと神経回路

さて、 s(x) の具体的定義を示す前に、同時確率の式 (9.2) を思いだそう。
∏
P (x′ |u1 , · · · , um ) l P (yl |x1 , · · · , x′ , · · · , xq )
′
∏
p
p =
P (x|u1 , · · · , um ) l P (yl |x1 , · · · , x, · · · , xq )(10.3)
今求めたいのは他の変数の値との同時確率を最大にする X の値であり、新しい値の候補 x′ に依存しない

この章では、まだ不完全ではあるが、ＭＰＥを近似

分母の値や p の値は不要である。従って、同時確率の計算できる可能性のある簡単な神経回路モデルのアイ

代わりに下記の式 s1 (x′ ) を最大化すればよい。

デアについて述べる。

s1 (x′ ) = P (x′ |u1 , · · · , um )∏P (yl |x1 , · · · , x′ , · · · , xq )

l

10.1

(10.4)

近似ＭＰＥ計算アルゴリズム

ここで、[1] と同様に下記の近似が成り立つと仮定す

9.3 節で述べた O(n3 ) アルゴリズムは、神経回路での実現に適した形に変形することができる。あるノーる。（φ値に対しては特別な扱いが必要だが、その検ドの値をどの値に更新するかは、そのノードと接続を討は今後の課題とする。）

持つノードとの間の局所的な情報だけで決定すること

P (x′ |u1 , · · · , um ) ≈ができるからである。しかし、そのアルゴリズムのま∑P (x′ |uk )(10.5)kまでは神経回路はかなり複雑になってしまう。以下に、すると下記の近似が成り立つ。

比較的簡単な神経回路で実現できるように近似したＭ
ＰＥ計算アルゴリズムを述べる。

P (x′ |u1 , · · · , um ) =まず各ノード X はメッセージ b(xi ) を親ノードと子ノードに送るものとする。
{
1 (現在の状態が X = xi )b(xi ) =0 (それ以外)

1−
∑

≈

∏
(1 − P (x′ |uk ))k

P (x′ |uk )(10.6)

k(10.1)

さらに [1] と同様に十分に多くの親ノードが同じ特徴を生成すると仮定すると、下記の近似が成り立つ。

次に各ノードは、自分の周辺のノードからメッセー

P (yl |x1 , · · · , x′ , · · · , xq )ジを受け取り、s(xi ) という値を計算する。この値は、≈ P (yl |x1 ) + · · · + P (yl |x′ ) + · · · + P (yl |xq )∑≈ (P (yl |xi )) + P (yl |x′ )(10.7)

ノード X の状態が xi に変化したときに、ネットワー
ク全体の同時確率がどのくらい変化するかを表す値であるとする。その具体的定義はすぐ後に示す。

is(xi ) が計算されれば、ノード X の次の状態 x′ は次の式で決まる。
x′ = argmax s(x)従って、s1 (x′ ) は下記に定義される s2 (x′ ) で近似できる。

(10.2)

s1 (x′ )x

次の状態 x′ が決まれば、メッセージ b(xi ) を計算≈ s2 (x′ )∑∏ ∑=P (x′ |uk ) ((P (yl |xi )) + P (yl |x′ ))k

しなおし、周辺ノードに送る。

li(10.8)

34

s2 (x) を、周辺ノードからのメッセージを用いるよ
うに書き換えることで s(x) が得られる。

ＰＥ選択アルゴリズムでは argmax が選択されるため、正規化モデルなどの電気生理実験の結果を説明できない。

s(x) = λ(x)π(x)∏λ(x) =

λYl (x) = ZYl +π(x) =

κUk (x) =(10.9)

トップダウンのメッセージ ZX の計算式も２つのアルゴリズムで異なる。

λYl (x)近似確率伝播アルゴリズムと近似ＭＰＥ選択アルゴ(10.10)l

リズムの大きな違いは、ボトムアップの情報の流れで∑ある。近似確率伝播アルゴリズムでは、コラム内の情

b(yl )P (yl |x)(10.11)

報処理の最終的な出力 BEL(X = xi ) ではなく、情報

yl

処理の途中の値 λ(X = xi ) が親ノードに送られる。そ∑して、実際の大脳皮質の解剖学的構造に近いのは近似

κUk (x)(10.12)

確率伝播アルゴリズムの方である。大脳皮質の回路のk

この特徴は、ボトムアップの１パスの情報の流れだけ∑で、高速にある程度の精度の認識ができるという利点

P (x|uk )b(uk )(10.13)があるのではないかと筆者は想像している。近似ＭＰ

uk

ZX

=

∑∑∑
k

=

∑
x

=

Ｅ選択アルゴリズムにもこの機能を持たせるよう回路

∑

x

b(x)

を修正することは可能だろう。

P (x|uk )b(x)b(uk )大脳皮質の学習の目的を説明するためには、大脳皮

uk

∑∑
k

質は認識ステップでＭＰＥ計算を行っていると考えざ

P (x|uk )b(uk )るを得ない。認識がＭＰＥ計算ならば、認識と学習の繰ukb(x)π(x)

り返しは一種のＥＭアルゴリズムをオンラインで行っ(10.14)ていると解釈可能である。一方、近似確率伝播アルゴ

x

リズムだけでは、その意味に理論的な解釈をつけるこ

ただし、 ZX , ZYl はノード X および Yl から親とはできない。

ノードに向かって送られる、もう一種類のメッセージ

以上のようにこれら２つのモデルは、一長一短があ

である。

10.2

り、将来は統合されなければならない。

近似確率伝播アルゴリズムと

10.3

の比較

ホップフィールドネットワー
ク・ボルツマンマシンとの比較

前節のアルゴリズムを実行する神経回路は、[1] で前節で述べた神経回路の動作は、ホップフィールド

述べた近似確率伝播アルゴリズムとかなり似たものにネットワークの動作と定性的にとてもよく似ている。

なっている。

どちらも、局所的な値の更新のみによって、全体の目

ボトムアップ信号は子ノードごとに内積計算された的関数を最適化している。

あと掛け算され、トップダウン信号は親ノードごとに

また、ボルツマンマシンの認識動作とも似ている。

内積計算されたあと足し算され、その２つが掛けあわボルツマンマシンにおける認識動作は、全ノードの値される。

の同時確率を最大化するＭＰＥをＭＣＭＣで求めるも近似確率伝播アルゴリズムでは最終的な出力は正規のである2 。

化されることから、多くの電気生理実験を説明する「正おそらく、過去にこれらの学習モデルに関する研究

規化モデル」1 とも整合性がある。一方、この近似Ｍで得られた多くの知見が、 BESOM にも応用可能で

1 参考：「総説論文「注意の正規化モデル」の紹介」

2 参考：「Boltzmann マシン - 情報論的学習理論と機械学習の「朱鷺の杜 Wiki」」
http://ibisforest.org/index.php?Boltzmann マシン

http://staff.aist.go.jp/y-ichisugi/besom/
20090408norm.pdf

35

あろう。
なお、 9.3 節で述べたアルゴリズムはこれら先行研
究と比較すると、一般性の点で大きく異なっている。
ホップフィールドネットワークとボルツマンマシンは、
いずれも学習モデルとしては制限が強い。一方 9.3 節
で述べたアルゴリズムは noisy-OR モデルのみを仮定
した、より一般性の高いベイジアンネットを対象とし
ている。

今後の課題

10.4

工学的な応用が目的であれば、9.3 節、9.4 節の考え方を基本としたアルゴリズムで十分かもしれない。しかし、大脳皮質にある実際の神経回路に対する理解を深めるためには、本節で述べた神経回路モデルを発展させる必要がある。また、実際の脳が採用している詳細なアルゴリズムが分かれば、工学的アルゴリズムの性能向上に役立つかもしれないという期待もある。
近似確率伝播アルゴリズム同様、近似ＭＰＥ計算アルゴリズムは、大胆な近似を行っているため、何らかの補正をしないと実用的な動作をしないかもしれない。
補正の１つの可能性は、総和が１を超えないように、シグモイド関数 ϕ(x) を使うことである。例えば、λYl (x)と π(x) の計算式は次のように補正するとよいかもしれない。

λYl (x) = ϕ(ZYl +∑b(yl )P (yl |x))(10.15)yl∑
π(x) = ϕ(κUk (x))(10.16)k

ただしこの補正は、 7.6.3 節で述べた近似式を用いる場合は不要である。

36

11.3

１点入力時のユニットおよびＭＰＥの受容野重心

第 11 章 可視化の詳細

7.4 節や 6.3.1 節の図で使われている受容野重心の可視化は、以下のように行う。
まず、シミュレーション中、過去 T 回分の入力デー
タ It と、その時のＭＰＥ mt (t = 1, · · · , T ) をリング

11.1

バッファに保持する。

可視化の意義背景となる確率分布は It を灰色の点でプロットしてアルゴリズムのデバッグおよびパラメタの調整の際いる。ユニットの受容野重心は、リングバッファに保持には、学習の状況を様々な角度から可視化することがされている入力データからそのユニットが勝者になっ不可欠である。

た時の入力点の集合のみを選び出し、その重心を計算することで得られる。ＭＰＥの受容野も同様である。

11.2

なお、この可視化方法では、学習が収束していない

条件付確率表時、画面に表示されている受容野と真の受容野の間にタイムラグがある点に注意する必要がある。

4 章の図で使われている条件付確率表の可視化は、

本稿のシミュレーションでは T = 10000 で可視化

以下のように行う。

している。

通常のベイジアンネットでは親ノード Uk の値の組み合わせに対するノード X の値の条件付確率

P (X|U1 , · · · , Um ) をノード X ごとに保持するが、本稿で用いているシミュレーターは、 ノード X と子

11.4

ノード Yl との間の条件付確率 P (Y1 |X), · · · , P (Yn |X)

多点入力時のユニット受容野る。可視化も、このデータ構造を反映したものになっ

6.3.2 節の図で使われているユニットの受容野の可視化は、以下のように行う。まず灰色の背景を描画した
後、リングバッファに保持されているデータの中から、ている。

そのユニットが勝者になった時の入力点の集合を選びをノード X ごとに保持するデータ構造を採用していノード X が保持する条件付確率表は、ノード X お

だし、そのユニットに対応する色でプロットする。

よび Yl (l = 1, · · · , n) のユニット数を s とすると、本稿のシミュレーションでは T = 1000 で可視化しs × s × n 次元の配列になる。
ll
条件付確率表 P (Yl |X) を Wl = (wij), wij=ている。

P (yjl |xi ) という s × s の行列で表し、 W1 , · · · , Wn というふうに n 個行列を横に並べ、行列の要素を白黒の11.5濃淡で表現したものを画面に表示することで、可視化

今後の課題

シミュレーションするタスクごとにこまめに最適なしている。

可視化ルーチンを書くことが、シミュレーションの状況

この方法で可視化すると、BESOM の条件付確率表

を正しく把握しパラメタ調整していく上で重要である。

を関連データベースとみなす場合に理解しやすい。縦どのようなタスクにも有効な万能な可視化の方法は方向にデータベースの各行が並んでおり、横方向にはあり得ない。むしろ、タスクごとに、できるだけ少な

各行の属性値（特徴量）が並んでいるというふうに見い手間で新しい可視化ルーチンを書けるように支援することができる。

る、ライブラリの整備が必要である。

なお、φ値がある場合は０番目のユニットがφ値をさらに、可視化したものをクリックして詳細な情報表すものとする。

を表示できるようにしたり、大きさの調整やウインド

条件付確率表の上と右に出ている黒い点は、入力（特ウの移動、過去の可視化の状態の記憶など、様々な研徴量）と出力（認識結果）を表している。

究支援機構が考えられる。

37

2. シミュレーション中に、学習率などいくつかのメ
タパラメタの値をスライダで調整し、その影響を
リアルタイムで確認することが可能である。新し第 12 章 研究支援ツール
BESOM-lab

くスライダを追加する場合も３行程度（将来的には１行程度）のコードの追加で実現できる。

3. 部分アルゴリズムのいくつかのバージョンが実装済みであり、シミュレーション中にセレクタを使って変更できる。例えば、 SOM の近傍学習のアル

12.1

ゴリズムは、4.2 節で述べたものの中から選択でき

背景

るようになっている。他にも、 MPE 計算や ICA

筆者は、機械学習アルゴリズムの設計とシミュレー

についても、新たなアルゴリズムの追加・選択がションを支援する研究支援ツールを、 Java 言語を用容易になっている。

いて自作している。このツールにより、以下のような、

4. シミュレータ本体と可視化のスレッドを分けて非同期に実行することで、シミュレーションの負荷

機械学習アルゴリズム開発に独特な、様々な困難を克服しようとしている。

が変わっても滑らかに可視化されるように工夫し1. 理論だけからは決めにくいメタパラメタの値があている。

り、正しく動かすためには試行錯誤が必要となる。

5. NaN のチェックなど防御的コードが随所に埋め込（メタパラメタの数が多いと、網羅的に最適な値

まれている。

を探索するのも難しい。）

2. 学習で獲得されたパラメタは、うまく可視化しな
いとその意味を解釈できない。

この研究支援ツールは、筆者以外の研究者も利用することを想定して開発を行っている。BESOM のアル
ゴリズムは、今後も大勢の研究者によって改良・拡張

3. ある程度複雑なアルゴリズムだと、学習が失敗した場合、アルゴリズムに問題があるのか実装のバされるべきである。全体のアルゴリズムが比較的複雑になってきているため、その全体を個々の研究者が０グなのかが判断しにくい。

から実装しなおすことは効率的とは言えない。しかし

4. 浮動小数点を使うので、 NaN(not a number) 、
アンダーフロー、オーバーフローなどに関わる見つけにくいバグが発生しやすい。

この研究支援ツールを使えば、改良したい部分を実装

5. BESOM の場合、ＳＯＭ，ＩＣＡ、ＭＰＥ計算なジ数に制約がある場合はデフォルト値から変更した部

ど複数の部分アルゴリズムの集合体であり、それ分だけを書けばよい。将来的には、性能評価のベンチ

ぞれのアルゴリズムの間の干渉も問題になる。

マークも提供することで、様々なバージョンの部分アするだけで済む。論文を書く場合も、使用するアルゴ
リズムとパラメタ値のすべてを書く必要がなく、ペー

ルゴリズムの性能を比較する共通の土台となるだろう。

12.2

BESOM-lab の概要

12.3

研究支援ツール BESOM-lab (図 12.1) はオブジェク

今後の課題

今後はユーザからのフィードバックを得ることで、

ト指向フレームワークであり、前節で述べた困難さをより使いやすいツールに改良していきたい。

少しでも軽減するために、以下の工夫を行っている。

1. テンプレートクラスの継承により、比較的少ない
コードの記述で新たなアルゴリズムの実験に取り組めるようになっている。新たなタスクの追加も容易である。

38

図 12.1: BESOM-lab のスクリーンショット。

39

上位層の学習結果はすぐに一様分布になるので、トッ
プダウンの信号は下位層の認識結果に影響を与えなくなる。このような考えに基づいて学習アルゴリズムを

第 13 章 その他の今後の課題

設計すれば、ベイズ理論と矛盾せずに下の層から学習が行われ、全体として常に意味のある学習結果が得られるのではないかと考えている。

13.2
BESOM モデルの機械学習アルゴリズムとしての基

解剖学的事実との対応を考えると、ある層のノード

本技術の確立、神経回路モデルとしての神経科学的妥

は、自分よりも一段下の層からだけでなく、下位のす当性の確立に向けて、今後明らかにしなければならな

べての層のノードから入力を受け取るべきである。

い点はまだ多く残っている。

したがって、特徴間競合は、層内だけでなく異なる

本章では、これまでの章で触れなかった今後の課題

層との間でも起きる必要があるだろう。

について述べる。

13.1

層間競合

13.3

多層化

構造学習

本稿では具体的なアルゴリズムは説明していないが、これまでの章では２層 BESOM を扱ってきたが、３初期状態でネットワーク全体のエッジの数が O(n2 ) あ

層以上に拡張することができる。ただし、学習則に少り、学習が進むにつれ条件付独立なノード間のエッジし工夫が必要で、下の層から順に学習が収束するようが切れて O(n) になると考えている。

に工夫しなければならない。

しかし生物学的には、個体発生の初期状態でシナプ

工学的に用いられている多くの階層的な機械学習アスの数が O(n2 ) ほどに増えることはないかもしれな

ルゴリズムでは、下の層から学習をする場合が多い。

い。（赤ん坊時にのシナプスの数が最大になりその後

これは、下の層の学習が収束していない状況での入力

徐々に減っていくが、最大の時でも O(n2 ) ほどではな

を上の層に送って学習しても無意味だからである。

いだろう。）BESOM のように、トップダウンの信号が下位の層の学習に影響を与える場合はとくに深刻で、学習の初期のおいて、無意味な情報がトップダウンに送られる

従って実際の脳では、O(n2 ) のエッジから独立なものを減らすのではなく、少ないエッジ数の初期状態からはじめて、エッジの追加と不要なエッジの削除を常と、下位の層の意味のある学習を阻害していまう。

に行っている、という可能性も考えられる。工学的にBESOM に下の層から学習する機構を追加することも、そのようなアルゴリズムを用いた方が学習初期のは技術的には難しくないが、その理論的根拠は自明で計算量が少なく、有用である。

はない。理論的根拠が不明であれば、 BESOM モデル

また、環境の変化への適応の必要性という意味でも、の機械学習理論的合理性が損なわれるだけでなく、学エッジの追加の機構は不可欠である。

習のメタパラメタの定量的な調整の指針も立たない、

そのようなアルゴリズムの検討は今後の課題である。

という問題がある。

エッジの追加は、ランダムに行うのも１つの方法だが、筆者は、「近傍半径は出力のノイズの大きさに対する活性状態にある２つのノードの間を結ぶという方法

事前知識を反映している」という原理が、下の層からも考えられる。無意味な局所解に陥らないような構造の学習する機構に対する理論的根拠を与えるのではな

学習アルゴリズムがどのようなものかは、やはり扱う

いか考えている。我々は、学習の初期においては、上

データの性質に依存するので、実験により決める必要

位層の条件付確率表はほとんど意味を持たないノイズがある。

であるという事前知識を持っている。従って、学習初期の上位層の適切な近傍半径は無限大である。すると

40

13.4

サイクルのある BESOM ネ

13.6

ット

本稿ではアルゴリズムが一部不確定なのでこれまで全く書いてこなかったが、各部分アルゴリズムを実現

ベイジアンネットにサイクルがないことを仮定する

する神経回路から、自明でない様々な解剖学的特徴、アルゴリズムもあるが（例えば loopy でない確率伝

電気生理学的現象を予言することができる。

播アルゴリズム）、9 章、10 章で述べた認識アルゴリ

例えばノード間競合の機構はφ値ニューロンや A(h)ズムはいずれもサイクルがあっても動作するはずであの値を計算する機構の存在を予言し、非線形ＩＣＡのる。4 章で述べた学習則もまたサイクルのある BESOM

機構はアンチヘブ則で学習する側抑制シナプスの存在

ネットで動作するものである。したがって BESOM はを予言する。

「ネットワークにサイクルがない」という制約を一切

今後アルゴリズムを確定的なものにしつつ、実験で必要としない。[2] の 6.5.2 節で述べたように、サイク検証しやすい自明でない予言にどのようなものがある

ルのある BESOM ネットは再帰的な文法獲得の実現

かを、整理していく必要がある。

に必要である可能性がある。また、前頭前野による再帰的な行動プログラムの記憶や、側頭葉による相互依存的な知識構造の記憶にも必要かもしれない。サイクルのある BESOM ネットの動作確認およびその性質の詳細な調査、さらにそれを用いた再帰的な認知機能の再現は、今後の課題である。

13.5

モデルからの予言の検証

強化学習との統合

本稿が主張する「認識とは MPE 計算である」という仮説により、「ポピュレーションによる強化学習の実現」の問題を解決できると考えている。

[2] の 7.6.3 節で述べたように、脳はポピュレーショ
ンとして状態認識し、ポピュレーションのまま行動選
択し、ポピュレーションのまま運動を命令し、ポピュ
レーションのまま行動価値を更新するはずであると筆者は考えている。
このようなポピュレーションによる強化学習を、状態認識と行動選択を１つの MPE 計算で行うことで実現するアルゴリズムを筆者は現在設計中である。状態
行動対を学習する隠れノードが１ノードの場合は簡単
だが、複数の隠れノード、時系列学習、多層化などの拡張を行うにつれ、アルゴリズムは徐々に複雑になりそうである。
なお、強化学習との統合の第一歩として、BESOMの１個のノードに強化学習の機能を持たせる試みがHosoya によってなされている [20]。

41

第 14 章 まとめと今後
大脳皮質の計算論的モデルである BESOM モデルの詳細アルゴリズムを提案し、小規模な計算機シミュ
レーションの結果を示した。
今後の中規模・大規模シミュレーションに向けては、
特徴間競合アルゴリズムの再設計、 O(n) アルゴリズ
ムの実装、非線形ＩＣＡとノード間競合の機構の干渉問題の解決が最優先課題である。
本稿で提案したアルゴリズムの改良と詳細な動作確認が終われば、知能の高いロボットに向けた最大の難関が突破できたことになると思う。時系列学習との統合や、大脳基底核、海馬、小脳、扁桃体等の機構との統合などやるべき問題は残っているが、大脳皮質以外のこれらの組織の計算論的モデルの研究はすでにかな
り進んでいる。多くの優秀な研究者がこの問題に取り組みさえすれば、脳全体の機能を工学的に再現できる
日は遠くないだろう。
各章で書いたように、細かな未解決の問題がたくさんある。機械学習理論の基礎をある程度理解した工学的センスのある大勢の研究者が、これらの問題に取り組むようになることを期待する。

42

[12] Naoki Oshiro, Koji Kurata, Tetsuhiko Yamamoto
A self-organizing model of place cells with gridstructured receptive fields, Artificial Life andRobotics, Vol.11, No.1, pp.48–51, 2007.

参考文献[13] Reynolds JH, Heeger DJ: The normalization modelof attention, Neuron. 2009 Jan 29;61(2):168-85.
[14] Schultz W, Dayan P, Montague PR, A neural substrate of prediction and reward, Science
275(5306):1593-1599, Mar 1997.

[1] Yuuji ICHISUGI, The cerebral cortex model that
self-organizes conditional probability tables and executes belief propagation, In Proc. of International
Joint Conference on Neural Networks (IJCNN2007),
pp.1065–1070, Aug 2007.

[15] K. Doya, Complementary roles of basal ganglia andcerebellum in learning and motor control, Current
Opinion in Neurobiology 10 (6): 732-739 Dec 2000.
[16] 川人光男: 脳の計算理論, 産業図書, 1996.

[2] 一杉裕志、「脳の情報処理原理の解明状況」産業技術総合研究所テクニカルレポート AIST07-J00012, Mar2008.
http://staff.aist.go.jp/y-ichisugi/besom/
AIST07-J00012.pdf[17] Rolls, ET: A theory of hippocampal function inmemory, HIPPOCAMPUS, Volume: 6 Issue: 6
Pages: 601-620, 1996.
[18] T. Omori et al., Emergence of symbolic behavior
from brain like memory with dynamic attention,
Neural Networks 12 (7-8): 1157-1172 Oct-Nov 1999.

[3] T. Kohonen, Self-Organizing Maps. Springer-Verlag,
1995.
[4] T. コホネン, 自己組織化マップ（改訂版）, シュプリン
ガー・フェアラーク東京, 2005. （[3] の邦訳。）[19] Elman, J. L., Distributed representations, simple recurrent networks, and grammatical structure. Machine Learning, 7:195–224, 1991.

[5] K. Fukushima, Neural network model for selective
attention in visual-pattern recognition and associative recall, APPLIED OPTICS 26 (23): 4985-4992
Dec 1 1987.

[20] Haruo Hosoya: A motor learning neural model basedon Bayesian network and reinforcement learning, In
Proceedings of International Joint Conference on
Neural Networks, 2009.

[6] J. Pearl , Probabilistic Reasoning in Intelligent
Systems: Networks of Plausible Inference, Morgan
Kaufmann, 1988.

[21] C. M. ビショップ: パターン認識と機械学習 上 - ベイズ理論による統計的予測, シュプリンガー・ジャパン株
式会社, 2007.

[7] George, D. Hawkins, J., A hierarchical Bayesianmodel of invariant pattern recognition in the visualcortex, In proc. of IJCNN 2005, vol. 3, pp.1812-1817,
2005.

[22] C. M. ビショップ: パターン認識と機械学習 下 - ベイズ理論による統計的予測, シュプリンガー・ジャパン株
式会社, 2008.

[8] Olshausen BA, Field DJ, Emergence of simple-cell
receptive field properties by learning a sparse codefor natural images, NATURE 381 (6583): 607-609
JUN 13 1996.
[9] Daniel D. Lee and H. Sebastian Seung, Learning theparts of objects by non-negative matrix factorization
Nature 401, 788-791 (21 October 1999).
[10] Wang G, Tanaka K and Tanifuji M, Optical imaging
of functional organization in the monkey inferotemporal cortex, SCIENCE 272 (5268): 1665-1668 JUN
14 1996.
[11] 田尻 隆, 倉田 耕治: 二つの 1 次元 SOM の結合による独立成分分析と主成分分析, 電子情報通信学会技術研究報告 ニューロコンピューティング研究会, Vol.104,
No.139(20040617) pp. 61-66, 2004.

43

大脳皮質のアルゴリズム BESOM Ver.1.0
産業技術総合研究所テクニカルレポート AIST09-J00006
2009 年 9 月 30 日
独立行政法人 産業技術総合研究所〒305-8568

茨城県つくば市梅園 1-1-1

中央第 2

TEL：029-861-2000

AIST09-J00006