> 産業技術総合研究所 > 一杉裕志 > 脳とベイジアンネット > . 2014-04-24 更新)

BESOM 研究テーマ案一覧

BESOM は大脳皮質の計算論的モデルを参考にして設計した機械学習アルゴリズムです。 不完全ながら、ようやくある程度は動くようになってきました。

これを使って 人間のような知能(強いAI)の実現を目指す様々な研究ができると思います。 具体的な研究テーマ案をいくつか書いてみました。

ここに挙げたテーマに限らず、人間のような知能を目指す研究をしてみたい研究者の方は、 ご連絡いただければいろいろお手伝いできると思います。 私が考える大きな到達目標については 「全脳アーキテクチャ解明ロードマップ」のページに書きましたが、 このページでは1人で1〜3年間で取り組める細かい問題に分解してあります。

注意
BESOM は機械学習アルゴリズムとしてなんとか動くようになってきましたが、 現状はまだまだ不完全で使いにくい技術です。

自分の仕事に使えそうな 「便利なツール」を求めているだけの人には、お勧めできません。

あくまで人間のような知能の実現に近づきたいという目的意識を持ち、 そのための努力を惜しまないという人、 大脳皮質ベイジアンネットモデルの有望さと現状の問題点とその解決策を自分で考えられるような人に、 ぜひ使っていただきたいです。 そのような人に対しては全力で支援いたします。

BESOM の機械学習アルゴリズムとしての評価・デモ

BESOM は Deep Learning と同じ構造を持ったベイジアンネットです。 Feedforward 型の Deep Learning と比べると、

  • トップダウンの情報を使い文脈依存の認識、ノイズに強い認識ができる。
  • 入力と出力の区別がないので、半教師ありデータや欠損値を含むデータの活用が容易。
  • 生成モデルなので、オクルージョンなどの視覚に関するモデルが自然に表現可能。

などの利点が期待できます。 これらの効果が実際にあることを確認し、デモすることは、 Deep Learning にベイジアンネットを用いることの工学的有用性をアピールする意味で重要です。

文字認識 (優先度高)

現在 MNIST 手書き数字データベースでパターン認識の動作確認を行っていますが、 認識率90%程度とあまり性能が出ていません。 パラメータチューニング等でもう少し性能を上げたいところです。

BESOM にはたたみ込みニューラルネットでいう pooling 層のような、 不変性を実現するための作り込みがありません。 Denoising autoencoders や Slow feature analysis のような機構で、 pooling 層の機能を 自己組織化させないと認識率は上がらないと思います。

ノーフリーランチ定理というのがあるので、高機能な BESOM では MNIST のような簡単なタスクではかえって不利である可能性もあります。 文脈依存の認識など、 BESOM の特性を生かしたタスクを設計し、 評価することに注力すべきかもしれません。

例えば辞書や確率的言語モデルを使って、 そこからの予測によって文字認識精度を上げる、 ということは BESOM では比較的やりやすいと思います。

一般物体認識

Google のネコの論文でやっているように、 まず大量の自然画像データから教師なしで学習した後、 教師ありのベンチマークで性能を計ってみる やり方が BESOM には向いていると思います。

表現学習

大量のデータを学習させることで、様々な抽象概念が自己組織化されることを 示すことが必要です。

たとえば BESOM で大量の人の顔を学習させて、感情、性別、年齢、人種などの軸を 教師なしで学習できると面白いと思います。 うまくいかない場合は半教師ありでもよいかもしれません。

BESOM が獲得した上位層での表現が、高次視覚野での情報表現の知見と どの程度一致するのかも興味のあるところです。

生成モデルとしての機能

先行研究で deep learning で生成モデルを学習する例はあるようですが、 BESOM ではより深く複雑な生成モデルを表現できる可能性があると思っています。
参考: The Shape Boltzmann Machine: a Strong Model of Object Shape

BESOM 本体の改良

オンラインEMの完全な実装 ◆最優先◆

現在、デフォルトで学習にはオンラインEMアルゴリズムを使っていますが、 まだ実装が不完全です。 入力の学習はEMですが、側抑制と勝率ペナルティの学習はまだ以前のMPEを使った学習を用いています。 ここが認識精度が上がらない一番の理由かもしれません。

Loopy BP の振動対策 ◆最優先◆

Loopy BP は条件によって振動することがあり、 それがネットワークの大規模化を阻む大きな問題だと考えています。

振動については過去にもよく研究されているようなので、 それを勉強するところから始める必要があります。

BESOM は従来の典型的なベイジアンネットとは形が異なるので、 BESOM における振動しやすい条件(エッジの数、状態の数、CPTの特徴など) が何かも把握する必要があります。

振動対策にはいろいろ方法な考えられます。 後述の短期記憶の実装もその1つだと考えています。

スパース符号化 ◆最優先◆

BESOM の大規模ネットワーク化のためには、 スパース符号化が安定して動作することが必要だと考えています。 現在「BESOM Ver.3.0 β版のアルゴリズム」 に書いたスパース符号化のアルゴリズムを実装ずみですが、 loopy BP の振動が起きて、安定動作していません。 振動の問題が解決すればスパース符号化も安定動作するようになるかもしれませんが、 だめな場合はなんらかの対策が必要かもしれません。

未実装機能の実装(優先度高)

EMにもとずいたオンライン学習アルゴリズムの近傍学習対応、 2次元SOMの実装、学習状況やメッセージの振動状況などのリアルタイムな評価など。

過適合・局所解を避ける工夫

Momentum, Dropout の導入、 ハイパーパラメタの値のスケジューリング方法の調整など。

認識時の計算量の削減

ビームサーチのような機構の導入、 メッセージ伝搬スケジューリングの工夫、 ミニバッチなどの工夫の導入など。

側抑制ICAのアルゴリズムの改良

現在の実装では側抑制の重みの学習にMPEを使っていて、 オンラインEMアルゴリズムには対応していません。 また、近傍学習をやっていません。これらを実装する必要があります。

勝率ペナルティも同様の問題を持っており、改良が必要です。

時系列学習、短期記憶

参考: 研究構想説明資料「BESOMモデルへの時系列学習機構の追加の構想」

理論的基盤の強化

現在、ベイジアンネットのEMアルゴリズムを参考にした 学習アルゴリズムを実装済みですが、 理論的な正しさはまだ完全には確認されていません。 アルゴリズムの理論的な理解が進めば、 それをもとにした性能向上の可能性もあり、重要な課題です。

リカレント BESOM

人間は再帰的な構造を持った情報を扱えるため、 そのための特別な機構を脳内に持っている可能性があります。

たとえば人間は再帰的な文法を構文解析できます。言語野のモデルは、 ベイジアンネットで再帰的な構造を受け付ける仕掛けを持っている必要があります。 そのための1つのアイデアとしてリカレント BESOM というものの可能性を考えています。 これは時系列学習をする BESOM とは違い、 層内の(一時刻前でなく)現在のノードの状態をその層に入力するようなリカレントな構造を持った BESOM ネットワークです。

リカレント BESOM というものが存在できるのか、 存在できたとしてどういう特徴を持っているのかは、現時点ではわかりません。 理論的にはサイクルのあるベイジアンネットは正規化しないと同時確率を表さないという問題があるようなので、何か特別な工夫が必要になるのかもしれません。

BESOM の並列化

マルチスレッド対応

BESOM-lab はいちおう将来のマルチスレッド化を意識して作ってありますが、 ソースコード全体を見直して問題がないか注意深く確認する必要があります。

Hadoop 対応

まずはハイパーパラメタの値の並列探索のような、 粒度の粗い並列化から始めるのが楽そうです。 現在の BESOM-lab はGUIを使ってますが、 そこをスタブにして切り替えて、 GUIがなくても動くようにする必要があると思います。

将来的には大規模 BESOM ネットワークの学習を 分散処理で高速化したいところです。

GPGPU 対応

BESOM の確率伝搬アルゴリズムは巨大な行列演算を使うわけではないので、 GPGPU 対応はちょっと面倒になる気がしています。

研究開発ツール BESOM-lab の改良

可視化

確率伝搬のメッセージ伝搬状況の可視化、 ユニットが最もよく応答する入力画像の可視化、など。

使いやすさの改良

GUI部品が増えてきたときに使いにくくなる問題への対策。

研究開発のベストプラクティスの支援

開発日誌作成、パラメタ設定や実行結果のログ、 画面スナップショット作成などの支援。

フレームワークのリファクタリング(優先度高)

モジュラリティ、再利用性、拡張性を高めるために、 フレームワークのAPIのリファクタリングが必要。 可視化フレームワーク、 タスク切り替え、ネットワークアーキテクチャ切り替え、 ノード単位・エッジ単位で柔軟にハイパパラメタの値を調整可能にする、など。

関連研究の調査

オープンソースのAIアーキテクチャ実装フレームワーク OpenCog や、 ロボット制御のフレームワークであるRTミドルウエアなど。

視覚野のモデル

V1のモデル

方位選択性、ブロブ、3層から3層へ同じ方位選択性コラムへの結合など特徴の再現。

V2、V4の特徴の再現

参考:https://staff.aist.go.jp/y-ichisugi/brain-archi/20140129_Sakai_forWeb.pdf(第2回 全脳アーキテクチャ勉強会 資料)

「注意の正規化モデル」の再現

参考: 所内ゼミ資料:「総説論文「注意の正規化モデル」の紹介」

MT・MST野の特徴の再現

網膜中心座標から身体中心座標、環境中心座標への変換

参考:
研究構想説明資料「視覚刺激の座標変換を行う神経回路を独立成分分析により自己組織化するモデルの構想」
「大脳皮質と Deep Learning」(第2回 全脳アーキテクチャ勉強会 資料)

眼球運動のエミュレーション

ヒトやサルは頭を動かさずに視線だけを動かすことができます。 視野の中心にあたる網膜の位置には黄斑と呼ばれる、 他の場所よりも解像度が高いところがあります。 人間は視野全体を高い解像度で見ているように感じていますが、 実際には解像度が高いのは視野の中心だけのようです。 この機構は視覚情報処理のコストを下げるのに役立っているのかもしれません。 これを工学的に再現すれば、低次視覚野のコストを大幅に下げられる 可能性があります。

大脳皮質と大脳基底核の連携モデル

[Ichisugi 2012] で隠れノードが1ノードの場合の BESOM 強化学習のアルゴリズムを 提案しました。 より現実的なタスクで動かすためには、 これを多ノード(ポピュレーション強化学習)、 多層(階層型強化学習)に拡張していく必要があります。

参考:「運動野と感覚野は役割が全く違うのになぜ構造が似ているのか?」

ポピュレーション強化学習(優先度高)

2層 BESOM を用いた BESOM 強化学習です。 小脳損傷患者の滑らかでない運動が再現できるかどうかも興味のあるところです。

階層型強化学習

BESOM 強化学習を多層にする場合、上位層から下位層に送る仮想報酬を どう設計すればよいか、など、いくつか自明でない問題があります。 解決の方針は立ちつつありますが、現在説明資料を準備中です。

運動細胞のモデル

大脳皮質が belief revision ではなく belief propagation を実行しているとすると、 運動野の BEL(x) を運動細胞に出力することになりますが、 そのことに理論的妥当性があるのか、いまのところよくわかりません。 運動細胞のモデルと合わせて、よく考え直す必要があります。

参考: 研究構想説明資料「運動細胞のモデルの構想」

言語野のモデル

参考: 研究構想説明資料:「BESOMを使った言語野モデルの構想」

文法獲得・構文解析

係り受け解析

海馬モデルと連携した複雑な意味理解

大脳皮質と海馬の連携モデル

睡眠時の海馬から大脳皮質への記憶の転送のモデル

参考: 研究構想説明資料「海馬と大脳皮質感覚連合野の相互連携のモデルの構想」

SLAM と BESOM の融合(優先度高)

SLAMは自己位置と地図を同時に推定する技術で、海馬の働きと似ています。 SLAMはHMM(隠れマルコフモデル)で実装されることが多く、 その場合、ベイジアンネットとの融合は容易なように思います。 融合したものが定性的に海馬と同じ機能を持つことを示すことができれば、 海馬の脳内での役割がほぼ確定することになり、 全脳アーキテクチャ解明が大きく進展することになると思います。

海馬のモデル

海馬の効率の良さを工学的に再現するためには、 嗅内皮質、歯状回、CA3、CA1、海馬支脚などからなる 複雑な海馬周辺の計算論的モデルを構築する必要があります。 多くの神経科学的知見を参考にした上で、 足りないところを機械学習の視点から補完する必要があるでしょう。

思考のモデル

動物でも行っていそうな単純な思考を実現するためだけでも、 ベイジアンネットの枠組みの外側に様々な作り込みが必要になりそうです。
参考: 研究構想説明資料 「脳における思考の役割とその実現機構についての考察」

再帰的な行動計画を立てられるところが人間の脳の大きな特徴だと思いますが、 そのための機構についても現在考察中です。 時間的に離れた事象の間の因果関係を学習する必要があるなど、 かなりの工夫が必要そうです。

大脳皮質と小脳の連携モデル

私は小脳の役割は、大脳皮質の時系列学習の能力の低さを 補うところにあるのではないかと考えています。 解剖学的知見などを参考にし、連携モデルを作る必要があります。

認知科学

視覚バインディング、オブジェクトファイル(優先度高)

参考: 研究構想説明資料「BESOMを使った言語野モデルの構想」

知識表現・概念獲得

概念と概念の間の継承関係を学習する人工知能技術として、 「バージョン空間法」というものがあるようです。 BESOM の各ノードは、バージョン空間法と同じ動作をするのではないかと考えています。 (特徴量のワイルドカードは一様分布で表現されます。) BESOM のこの動作を確認できれば、人工知能研究者や認知科学者の 強い興味を引くかもしれません。

メタ認知

神経科学

神経科学者の興味を引くためには神経科学的妥当性の検証が必要です。 それには下記の2つが必要となります。

  • モデルやシミュレーション結果と、既存の知見との整合性。
  • モデルが予言する未知の現象の実験による検証。

文献調査

既存の知見との整合性を主張するためには、膨大な文献調査が必要となります。 大脳皮質内の詳細な知見、とくに シャンデリア細胞、 6層構造・コラム構造、 バスケット細胞とマクロコラムの関係などが重要だと考えています。

実験による検証

シナプスが条件付確率を学習することを示すことができれば、 それが大脳皮質ベイジアンネットモデルのもっとも直接的な証拠になると考えています。

哲学

自由意思、心身問題、認識論・・・、など。

社会科学

「人間のような知能」に向けた研究がなかなか加速しない理由の1つとして、 それが社会にどのように影響するのか想像がつかないため、 多くの研究者が参加に躊躇してしているということも大きいと思います。 しかし、様々な分野の社会科学の専門家であれば、 社会への影響をある程度は予測できることもあるのではないでしょうか。

また、現時点では高度な人工知能は日本以外の国で最初に実現される可能性が高く、 そのときに何が起きるのかを予見して、 先回りして条約で研究開発を規制するのなど対策が必要ではないかと危惧しています。

経済への影響

政治形態への影響

国際社会への影響

人類種への影響

すべての労働が自動化されると、人間は昔の貴族のように働かなくてもすむようになります。 そうなったときに、人類は退化してしまうのでしょうか。 平安貴族が和歌や蹴鞠で知的能力・運動能力を維持したように、 退化せずに能力を維持し続けるかもしれません。


コメント、質問などお待ちしております。
一杉裕志のページ