「脳を創る」


松本 元(理化学研究所・脳科学総合研究センター・ブレインウェイ(脳道)グループ・グループディレクター)


 脳は情報処理の仕方(アルゴリズム)を自動獲得するだけでなく、その為の情報も自動選択するシステムである。脳が情報を選択し、その情報の処理のアルゴリズムを獲得する為のアルゴリズム(脳の情報選択とその為のアルゴリズム獲得の為のアルゴリズム)を明らかにすることは、脳が自分の脳を自身で創ることを明らかにすることである。このことは、われわれが成長する為の要因を解明することでもあるので、「人とは何か」の理解に直結する。さらに、このことは、脳と同じ原理で働く情報処理システム(ブレインウェイ・コンピュータ)の工学実現を可能にする。すなわち、ブレインウェイ・コンピュータは、自身で情報を選択し、選択した情報を処理する為のアルゴリズムを自身で獲得する。ブレインウェイ・コンピュータの工学実現は、逆に脳の原理を検証することでもあり、またブレインウェイ・コンピュータは従来のプログラム稼動型コンピュータと極めて相補的である。
 本稿は「脳を創る」と言う立場からの脳科学研究とこの科学研究によって得られた脳の原理に基づく人工脳としてのブレインウェイ・コンピュータの研究開発について総説する。

1 −脳研究の2つの流れとコンピュータ研究開発−
 脳は自身で情報を選択し、その情報の処理の仕方(アルゴリズム)を自身で獲得するシステムである。現在の脳科学は主として脳が獲得したアルゴリズムの解明をめざしている。脳のアルゴリズムは脳の三次元神経回路の構造と、そこでの活動に表現されているので、脳研究はこれらの構造と活動を分析する物質科学としての確固たる手法と基盤の上に成り立っている。゛脳を知る"という研究アプローチである。
 ゛脳を知る"という脳研究は、例えば何故われわれが日本語をはなすことができるかの理由を物質科学として解明することである。この"何故か"が解明されれば、日本語を話せるアルゴリズムが明らかになり、これをもとに、プログラム稼動型コンピュータのソフトウェアを開発することで、日本語を話せるコンピュータが開発し得ることが期待できる。すなわち、この脳研究の流れの延長線上にあるコンピュータ工学としての発展としては、現在のコンピュータの利用技術としてのソフトウェア開発に多いに資することになる(図1参照)。しかし、脳の原理を基に新しいコンピュータ(ブレインウェイ・コンピュータ)を創成するということには至らない。

図1.脳研究の2つの流れとコンピュータ研究開発との関係

 これに対し、われわれは自分で何故日本語を話せるかのアルゴリズムを知らないのに、日本語を話す環境の中で育つうちに日本語が話せる様になるように、脳のアルゴリズム獲得のアルゴリズムを明らかにすることで脳を理解する、という脳研究のアプローチがある。゛脳を創る"という脳研究アプローチである。従来のニューラルネットの研究の流れである。ここで大事なことは、従来はニューラルネットが単に情報処理のアルゴリズム自動獲得の工学システムの実現を研究の主目的として、脳研究はその為の手段であった、ということである。゛脳を創る"という脳研究は、この目的と手段が逆である、と言って良い。すなわち、脳と同じ原理で働く情報処理システム(ブレインウェイ・コンピュータ)の工学実現は、゛脳を創る"という脳研究の目的の為の手段であり、脳の原理の検証となる。このことは、鳥の研究と飛行機の開発の関係を考えると良く理解できる。空を飛ぶ為の原理(揚力と推進力)の解明は、飛行機の開発を目指した流体力学によってなされた、ということに注意しよう。空を飛ぶ為の原理の表現が鳥と飛行機で異なるのは、それぞれの空を飛ぶ為の目的が異なるからである。飛行機と言う工学産物の空を飛ぶ目的は、大量輸送、スピード、安全性等、鳥の目的と大いに異なるし、また、この目的の為に構成する材料も大いに異なる。従って、飛行機の推進力の表現として、羽ばたきとは全く異なるプロペラエンジンやジェットエンジンを開発してきた。これと同じ様に、脳型コンピュータの工学実現への研究開発努力は、゛脳を創る"という脳研究にとって、本質的に重要である。この研究開発努力を通して、脳型コンピュータの工学実現イメージが明らかとなり、結果としての工学産物は従来のコンピュータが不得手とする柔らかい情報処理を可能にする革新的なものとなるだろう。ここで、飛行機開発において鳥が果たした最も重要な役割は、鳥が空を飛んでいた、という事実であることを注意したい。このことによって、空を飛ぶことが出来る、という存在証明が与えられているので、「空を飛ぶ工学産物は実現できる」という確信を得た人が飛行機を開発してきたのである。これと同様に、脳というアルゴリズム自動獲得型の情報処理システムの存在証明があるということは、脳型コンピュータの実現にとって最も本質的に重要である。
 ゛脳を知る"という脳研究がさらに進展キることで、意識、意志、理性、知識、感情など、脳の示す特異な現象としての心の理解に至ることが期待される。脳から心への理解である。これに対し、゛脳を創る"という脳研究は、脳の、いわば背後にあって、脳を動かし創るものとしての意味での心の理解をめざすもの、と言える。脳の心の理解である。この両者の脳研究が互いに深く関連し進めてゆくことで、脳の真の理解と工学産物としてのコンピュータの飛躍的発展や革新的創出に至る(図1)。この事は、両者の脳研究を並列的に進めて行くことが極めて大切である、ということである。例えば、脳の理解がさらに進むのを待って、それから脳型コンピュータ研究開発を推し進めるべきである、という主張を聞くことがあるが、ここで言う「脳の理解」というのは゛脳を知る"という意味、すなわち脳が獲得したアルゴリズムの理解、という意味である。脳型コンピュータ研究開発は、極端に言うと゛脳を知る"という意味での脳の理解が無くても行い得るのである。それはわれわれが何故日本語で話せるのかの理由が判らなくても(゛脳を知る"という立場からは、われわれは自分の脳が獲得したアルゴリズムを全く知らないという意味で脳を理解していなくても)、われわれ自身が日本語を話せるようになるからである。従って、脳型コンピュータも自身でアルゴリズムを獲得でき、それによって日本語を話すなどの能力を自動獲得したとしても、脳型コンピュータも何故日本語を話せるかなどのアルゴリズムを全く知らず話すだろう。しかし、脳型コンピュータの獲得したアルゴリズムをわれわれが少なくとも原理的な側面で理解することは、脳のアルゴリズムを分析的に研究するより容易である。すなわち、゛脳を創る"から゛脳を知る"のめざす目的にも大いに貢献することが出来る。逆に゛脳を知る"の研究成果は、゛脳を創る"立場から表現すべき脳のアルゴリズムを提示してくれる。この様に、゛脳を知る"と゛脳を創る"の研究は、脳の理解にとって車の両輪となるものである。

2 脳とはどんなコンピュータか:脳の情報原理と構成原理
 脳の情報原理は、メモリーベースアーキテクチャである。ここでメモリーとは、現在のプログラム稼動型(プロセッサベースアーキテクチャ)コンピュータで意味するデータの貯蔵あるいは貯蔵庫という意味だけではない。ここでのメモリーはアルゴリズムの固定という意味も含んでいる。その実体は、神経回路の構造とそこでの活動であるので、この構造が固定され、固定された活動が不輝発型に呼び出され得るが、後で見るように呼び出されると学習効果が生じ神経回路構築が変化して、そこでの活動も変わるというダイナミックなメモリーである。この脳の情報原理を支える構成原理は、先読みと階層構造性である。ここではまず、これらについて概説する。

3 脳の情報原理
 脳がメモリーベースアーキテクチャである、というのはどういうことだろうか。脳の情報処理の仕組みを概念的に捉えると次のようである:
(1)アルゴリズム固定(メモリー)がまず最初
 脳はまずアルゴリズムを獲得・固定する。脳のアルゴリズム獲得のアルゴリズムを学習アルゴリズムと呼ぶ。一度長期メモリーとして固定化したものは消去不能である。しかし時間と共に固定したアルゴリズムの呼び出しの見かけ上の閾値は高くなり、呼び出しにくくはなるが、メモリー自体は失われない(不輝発性)。
(2)入力情報は検索情報
 脳への入力情報は、それ以前に脳に固定化されたアルゴリズム(メモリー)を選択し出力する為の検索情報として用いられる。すなわち、脳からの出力は、あらかじめ脳に固定化されたアルゴリズム(メモリー)が選択出力されるのであって、現在のプロセッサーベースアーキテクチャのコンピュータの様に入力情報がプログラムに従って逐次処理されて出力されるのではない。
(3)脳は必要があるときだけ出力
 脳への入力情報が検索情報となる為に、脳は素早く入力情報の粗い意味概念を抽出し、これに基づき出力する価値があるかを評価する。この結果、出力する価値があると判断した時、メモリーを検索し出力するが、出力する価値がないと判断すると出力しない。
(4)出力するとメモリーが書き変わる
 脳が出力すると、学習効果が生じ、脳のアルゴリズムが変化する(メモリーが書き変わる)。すなわち、学習アルゴリズムは出力依存性である。

 脳の情報処理システムが上記の(1)→(2)→(3)→(4)→(1)→‐‐‐の順で行われ、ある程度の収束を見た時「納得」するし、収束を見ない時は「納得せず」、なんらかの不充足感が残ることは良く経験するところである。
 脳とプログラム稼動型コンピュータ(以下でコンピュータと略称する)の情報処理システムの特徴を、上記の脳の立場をもとに比較してみよう(図2)。まず、最も本質的な違いは、情報処理システムとしての目的が異なる、ということである。すなわち、コンピュータは出力することが目的であるのに対オ、脳はアルゴリズム獲得形成が目的である。これは、コンピュータが入力情報を得て、人が与えたプログラムの処理の仕方とその目的に従って、その命令通り情報処理を行い出力を得ることがコンピュータに課せられた役割(いわば、゛目的")であるのに対し、脳は出力することは手段であって、アルゴリズムの獲得形成が目的である。脳の情報システムのこの著しい特徴は、遺伝情報を含めて生物情報システムにすべて共通した特徴である(後述)。
 この目的を達成する為に、脳の情報原理がメモリーベースアーキテクチャとして表 現され、情報処理システムとしての著しい特徴となっている(図2):

図2.脳とプログラム稼働型コンピュータの情報システムとしての比較

脳:メモリベース・アーキテクチャ
(非フォンノイマン型コンピュータ)
プロセッサベース・アーキテクチャ
(フォンノイマン型コンピュータ)
プログラム・データの自動獲得 情報処理の目的と手続きを人がプログラムとして与える
メモリの検索時間 ≒ 出力時間 逐次処理:
 演算時間 = 素子の速度 × ステップ数
柔らかい情報処理
 入力情報に対し出力することが必要とあれば適宜に対応できる
計算汎用性があると思われる
 脳が第一次的に価値あると判断する事柄に対する完全な処理システムを作る
固い情報処理
 プログラムに書いてあることしか反応しない
計算汎用性が保証されているがそのためにマニュアルを完備することが必要とされる。
危機管理・危険予測に不向き
大規模問題
 メモリを階層構造化し追加学習能で対処
大規模問題
 ソフトウェア開発に対する負荷増(ソフトウェアクライシス)
ハードウェア:単一の基本素子だけで ハードウェア:各種プロセッサとメモリ
低消費エネルギー:脳の必要な領域だけ活性化される 消費エネルギーの増大:プロセッサの高速化に伴って付随する問題点

(1)アルゴリズム(コンピュータでのプログラム・データに相当するもの)の自動獲得・形成。これに対し、コンピュータはプログラムがあらかじめ与えられ、これに従って入力情報を逐次処理して出力を出す。コンピュータが出力する為には、必ずその為のプログラムがあらかじめ備わっていなくてはならないのに対し、脳ではプログラムがなくても出力し、その結果プログラムが形成あるいは変更される。脳はアルゴリズム獲得形成が目的であるからである。
(2)出力時間はほぼメモリーの検索時間。脳では入力情報を得ると、メモリーの検索の為の前処理としての粗い意味把握とそれに基づく価値評価をもとに、メモリーを検索して出力するだけである。主として大脳辺縁系が行う前処理によって、頭頂側頭連合野にメモリーの検索領野を設定し、大脳新皮質の検索すべきメモリーの領野を限定する。その後大脳新皮質感覚野・感覚周辺野で認知情報に関するさらに詳しい検討が行われ、運動野・運動周辺野を通して外部出力される。したがって脳での出力時間は、検索の為の前処理時間に比べ、圧倒的に大脳新皮質でのメモリーの検索時間が長い。しかし、この事がパターン認識などを含む知識情報処理が著しく早く行える為の基本機構となっている。例えば人の顔パターン認識が100ミリ秒程度で行えるということは、神経細胞での情報処理・伝達に要する時間が10ミリ秒程度であるとこを考えると驚異的である。この事が驚くべき事と考える基盤は、現在のコンピュータが基本的に逐次処理であるので、出力時間が素子(メモリーサイクル及びプロセッサースピード)と処理ステップ数の積であり、且つ顔パターン認識を行う為のプログラム長の長さを考えると現在のスーパーコンピュータでも途方も無い計算時間を要する(実際には顔認識は次の(3)に掲げる理由でコンピュータには不可能である)からである。脳型コンピュータが、このメモリーベースアーキテクチャの原理をもとに、脳の基本素子としての神経細胞に相当する基本脳型デバイスを、例えばシリコン超LSI素子化するなどによって10ナノ秒程度の情報処理素子で構築できれば、人の顔認識が脳に比べ100万倍高速に行えるコンピュータとして工学実現することも可能だろう。この事は、シリコンLSI化した脳型デバイスを開発することによって基本的に検証されている(後述)。さらに、顔メモリーのアルゴリズム作成も(学習に要する時間)、出力時間が早くなるということは、出力依存型学習アルゴリズムの原理に従って早いということが言える。すなわち、脳や脳型コンピュータの出力時間は、現在のコンピュータに比べ著しく早いのである。しかし、早いことは正確である、ということを意味しない。これらの目的がアルゴリズム獲得形成にあるので、出力することが手段にすぎないからである。しかしながら、早く出力することを早く繰り返し行うことで、アルゴリズムをより正確に精密に整え、的確な答を早く用意することが出来るようになる。
(3)柔らかい情報処理。脳は、入力情報から出力することが必要と判断すると、何らかの出力を出して入力に対応する。この事が、柔らかい情報処理ということの意味である。出力すれば、メモリーが書き替わり、この入力情報に対する対応が一般的に適宜になる。脳が成長する(゛脳を創る")ということである。入力情報から出力をする必要性を強く受け取ると、脳は適確な答がなくても何らかの答を出して対応することで成長するのである。出力依存型学習性が脳の局所・広域によらず成り立っていることが判る(後述)。これに対し、コンピュータはプログラム通りに入力情報を処理し出力するが、プログラムに書いていないことは全く対応できない。この意味で、コンピュータの情報処理は固い。コンピュータは情報に対応するのでなく、反応するのにすぎない、と言って過言ではない。従って、計算汎用性が保証されているコンピュータがなんでも出来る様にする為には、プログラムを完備すること(マニュアルを完備すること)が必要とされる。しかし、実社会で起こるすべての事柄に対しプログラムを完備することは、実際不可能であるので、最大公約数的対応しかできない。人工知能が本来の意味で実現されない理由である。そこで、情報化社会と言われる現代では、このコンピュータの欠点を補完する為に、意図的に、あるいは意図せずして人や社会をマニュアル化することが行われている。さらに、固いコンピュータは危機管理・危険回避が不得手である。これも反応型であって、脳のように将来を予測し先読みした対応が出来ないからである。例えば自動安全走行する自動車の開発を、固いコンピュータを用いて行う場合を考えよう。自動車のテストサーキット場を安全に自動走行する自動車を開発することは可能かもしれない。それは、自動車が走る環境が人工的に良く整備され、すべてプログラム化出来る程度の範囲で事が起きることが想定されるからである。しかし、町内でこの自動車を走行させることはできない。「こんな所から人が飛び出す筈がない」というと所から人が飛び出す等の可能性が否定できないからである。固いコンピュータは事件が起きた後で、初めてプログラム化する。しかも頻度に依らず状況や時を選ばず一般化(最大公約数的)してマニュアル化してしまうことが多い。この為、固いコンピュータで情報社会を作る上げると、社会や人に対する過度な拘束を強いて、かえって人が生きにくくなる。その良い例が、法律などのマニュアルを用いての社会規範にのっとった生き方である。さらに、固いコンピュータで社会の危機管理を行うと、マニュアルを整備すると危機の頻度は減少しても、その規模は大きくなる可能性もある。これに対し、脳は必要とあれば完全な答がその時例えなくても、その場その時にできるもっとも適宜な対応がなされ、被害を最小にくい止めるということが可能であり、この一つの経験が概念化され他の類似ケースにも適用出来る様に統合汎化されるので、単にこれ以降この経験での危機回避の事例が次回もっと適宜に対応できるに止まらず、汎化的な能力として蓄積し使うことが出来る様になる。脳と全く目的を異にする固いコンピュータによって、情報伝達の媒介や情報処理システムとして使うことで人や社会を管理することが、いかに人や社会に不適合をもたらすかは枚挙にいとまがない。情報化社会の進展が急速に行われて行く現在、脳と情報原理を同じくする脳型コンピュータの必要性・緊急性が特筆されるべきである。
(4)大規模問題はメモリーを階層構造化し追加学習性で対処。脳は、アルゴリズムを長期メモリー化し、それをもとに出力することで新しいアルゴリズムを獲得形成してゆく。すなわち、追加学習性を持つと言える。この階層構造化による追加学習能によって、脳は大規模問題に対処する。この時過去のメモリーは消去せず、新しく獲得したメモリーを階層的に構造化する。過去のメモリーは新しいメモリーが構造化すると読み出しの閾値がいわば高くなるように記憶の取り出しが難しくなるので、古い事柄は一見忘れてゆく様に思われる。しかし、長期記憶化したメモリーは消去不能である。古い事柄のメモリーが取り出され想起されるのは、そのメモリーが作られたと同じあるいは非常に近い状況が再現された時、または何らかの原因で脳の活性が非常に高まった時のいづれかである。前者は古い事柄に関するメモリーとそれに関与する事柄が特異的に取り出されるのに対し、後者は多くのメモリーが時系列的に(丁度走馬灯の絵を見る様に)取り出される。これに対し、コンピュータの大規模問題に対する対処は、ソフトウェア開発によって成される。問題の大規模化に応じてプログラム開発に対する負担は増大加する。ソフトウェアクライシスと呼ばれる由縁である。
(5)脳の基本素子としての神経細胞の種類は少ない。脳には、小脳で4種類、大脳で10種類程度の神経細胞という基本素子が用意され、これが特異的に結合して神経回路構造を形成することで脳としての情報処理が行われる。これらの神経細胞を、脳型コンピュータの基本素子としての脳型デバイス化する時、どの様にして汎化するか、という問題は後で議論するが、基本的に単一デバイスによって素子が行うべき情報処理や学習・記憶の特性を選択するようにすることができる。その後の基本素子の演算特性は学習によって決定すると共に、並列的な事が行えることの性質(例えば、1つの神経細胞が1万の入力結合を実時間計算が実行できるなど)を有することができる。これらは、現在のコンピュータでの演算実行時間を早くする為に、プロセッサーとメモリーサイクルのスピードを単に早くするだけでなく、プロセッサーの演算特性を飛躍的に向上させて設計することが求められていることと極めて対比的である。脳型デバイスの演算特性は学習によってデバイス自身が獲得してゆくので、デザイナーはその基本特性を用意することだけに最大の労力を集中することが求められる。また、デバイス技術に対して、従来のプロセッサーベースアーキテクチャの世界ではプロセッサーとメモリーは空間的に離れておくことが出来る構造であったので、夫々異なるチップとして素子化されてきた。これに対し、脳型ではメモリーベースアーキテク`ャとしての構造上、プロセッサーとメモリーが同じシリコンウェファー上に近接して存在することが好ましい。このデバイス技術の研究開発は今端緒についたばかりである。
(6)脳は低消費エネルギー。脳は必要な分野だけを活性化してメモリーを取り出しアルゴリズムを形成・更新するので、エネルギー消費が極めて少ない。これに対し、コンピュータでは、スーパーコンピュータで典型的にみるように、プロセッシング時間やメモリーサイクル時間を早くすることが性能向上の基本戦略の一つであるので、電力消費量の著しい増大とそれに伴う発熱の問題が深刻である。情報処理の規模が大きくなるのに従って両者のエネルギー差は増大する傾向にあり、たとえ脳を丸ごとシミュレーションするスーパーコンピュータが実現したとしても、エネルギー的に非現実的である。脳の実現には、脳型コンピュータが必要である。以上のような脳の情報処理を正面から突破し、実現しようとするのが゛脳を創る"(ブレインウェイ・コンピュータ)の目的なのである。


戻る