Sideswipe

情報工学、計算論的神経科学など、真面目なこと書くブログ。お仕事の話は Twitter: @kazoo04 にお願いします。

たくさんデータを保存するとハードディスクの質量は変化するか?

フォロワーが話題にしていたので記事にしました。
当然「変わらない」という話なのですが、それだと面白くありません。

まっとうな答え

いいえ

ハードディスクはなにかの物質を入れたり出したりするわけではなく、磁気を変化させてデータを記録します。
磁気が変わるだけなので、重さは変わりません。情報に質量はありません。

すこし凝った答え

軽くなります

ハードディスクは回転部品が含まれているので、次第に摩耗していくぶん、その摩耗した部品がHDDから失われると考えれば、わずかずつ軽くなります*1

より興味深い答え

重くなります

みなさんが期待していた回答です!どうにかして「データを保存するほど重くなる」という結論を導きましょう。

重くなる理由

色々な考え方がある気がしますが、まず直感的に考えられるのは ランダウアーの原理相対性理論 を使うものでしょう。ここでもこれを使ってみます。

ランダウアーの原理によると、1ビットの情報を記録する時は最低でも1ビットぶんエントロピーが上昇します*2*3。このときに発生する熱の下限は, k をボルツマン定数、 T を温度としたときに { E= kT \ln{2} } になります(ランダウアーの限界)。

このエネルギーは最低限のものですから、実際にはこれより遥かにおおきなエネルギーを投入する必要があります( つまり { E\gg kT \ln{2} } )。ここでは最低限の量を考えましょう。

ボルツマン定数{ k = 1.3806488×10^{−23} \mathrm{JK^{-1}} } なので、Tを摂氏20度とすると、 1bit あたりだいたい { 10^{-21} } J くらいの必要だということです。

もし1TBの記録媒体があれば、 1TB ≒ 8e+12 bit なので、すべてのビットを埋めるのに { 10^{-21} \times 8 \times 10^{12} = 8 \times 10^{-9} } くらいのエネルギーは最低限投入しないといけないことになります。

そして、相対性理論によれば { E = mc^2 } であり、エネルギーと質量は等価です*4。ここから、

{ m = \frac{E}{C^2} = \frac{8 \times 10^{-9}}{C^2} \approx 9 \times 10^{-26} \mathrm{kg} }

となり、「いっぱいになった1TBのハードディスク」は、少なくともだいたい
0.0000000000000000000000001 kg ほど重くなるといえます*5

他にも、たとえば Ellipsix Informatics: How much does data weigh? では、ハードディスク内の磁気双極子が持つエネルギーを考えて、上記よりずっと大きな質量変化( 10e-14 g )を示しています。

また、ハードディスクに書き込まれるデータのエントロピーを考えることでも上記のような議論が可能になると思います。

*1:実際には密閉されているので 失われた ものはHDD内に留まると思われる

*2:本当は記録するときではなく今までにあった情報を削除するとき

*3:情報の忘却によってエントロピーが上昇してしまうことは、マクスウェルの悪魔が動かない理由でもある

*4:ただし、今までの議論を成り立たせるためには、この記録媒体のすべてのビットの状態を知っている必要がある

*5:もっとも、当然ながらここでのエネルギーと質量は自由に相互変換が可能な形で存在しているわけではない

コンピューターで「脳」がつくれるか? FAQ編

既にご存知の方も多いと思いますが、 コンピューターで「脳」がつくれるか という本を 9月27日に出版します(噂によると都内の大型書店なら15日か16日に先行販売する書店もあるらしい?です、謎)。

コンピューターで「脳」がつくれるか

コンピューターで「脳」がつくれるか

で、今回は

「これは絶対質問来るだろうな〜今のうちに対策しておこう!」

という話題です。

Q. どんな本ですか?

一言で言えば人工知能の本ですが、汎用人工知能(汎用AI, AGI)を中心にしたそこそこ珍しい本です。
あとAIと脳を同時に扱っているのも珍しいポイント高めです。

Q. 汎用AIってなんですか?

雑にいうと、「SF映画にでてくる、人間みたいな人工知能」です。
つまり、今あるような囲碁とか将棋とか車の自動運転とか、ある特定の問題だけをうまくやるAI……ではなく
動物のようにあらゆる問題に対してそこそこ対応できるAIのことを指します。
SFでいうと、チャッピー、HAL9000ターミネーター、WALL-E、ドラえもんあたりかな。
汎用AIの定義は結構難しくて、人間も自分ではなんでもできると思ってるだけでその汎用性については疑問が残りますが、とりあえずそういう感じだと思ってください。
もう少し詳しい話は Wikipedia の「強いAIと弱いAI」がカジュアルに読めると思います。

Q. 私は文系ですが読めますか?

数式は一つも出てこないので、数学アレルギーの方でも安心です。
英語もなるべく排除し、日本語でいいかえるか、どうしても不自然になってしまうものはカタカナ表記にしました。

Q. 人工知能情報工学のこと全然知りませんが大丈夫ですか?

そのような方でも気軽に読めるように最大限配慮し、注意深く書きました。
多分中学生くらいでも読めるはずです。
もちろん、簡単な紹介だけで終わらないように、なるべく深く説明しようとは努力しました。
「わかりやすいこと」に主眼をおいたので、多少正確性を犠牲にして、喩え話やイラストをふんだんに盛り込みました。
特に重要な部分については、参考文献も併記しました。

Q. その本を読んだら私はなにがわかりますか?

  • 今のAIってどういう仕組みなの?
  • 人間の脳ってどんな仕組みなの?
  • 機械学習ってなに?
  • ディープラーニングってなにがすごかったの?
  • 映画に出てくるような、人間のように考えたり喋ったりするAIがまだ開発できないのはなぜ?
  • そういうAIはどうやったら作れるの?
  • 人間のようなAIができたら世界はどうなるの?
  • そもそも「知能」ってなに?

といったことがわかります!わくわくしますね!

Q. 特化型AIと汎用AIってなにが違うんですか?

本を読みましょう!

Q. 特化型AIと汎用AIをわけることにこだわりがあるみたいですが、どちらも本質的には同じではないのですか?

難しい話ですが、両者はどこかではっきりと分けられるようなものではなくて、連続しているとおもいます。0か1かではなくて、境界が曖昧で混ざり合っている部分もあるでしょう。
とはいえ現状は特化型AIと汎用AIの差があまりにも大きいうえに、目指している方向性も違うので、「とりあえず両者は分けて考えましょう」ということになっています。

もともと「人工知能作ってみたい!」という欲求が人類にはあったので、いろいろな研究(記号による推論とか)があり、そこそこ成果を収めました。
ところがやがて「簡単かと思ったけどこれはなかなか難しいぞ」ということに気づきはじめます。フレーム問題シンボルグラウンディング問題などの難題も見つかってしまいました。
そこで「人間のように考える機械(強いAI)」はいったん諦めて、それまでの知見を活かし、各分野に対して個別に解決するプログラム(弱いAI)に注力していくようになりました。

f:id:kazoo04:20160912231607p:plain

たとえばチェスをするとか、顔認識をするとか、車の自動運転をするとか、音声認識とかがそうです。
ジャンルをどれか1つに絞れば人間に迫る性能を出せますし、それはそれで非常に有用なのですが、「人間みたいな奴が作りたい」っていう目的からはだいぶそれてしまったというわけです。

Q. 「人間のような」と言っていますが、動物にだって知能があるのでは?

これはその通りで、汎用AIの当面の目的は鳥類とか齧歯類くらいの知能を目指すことになるはずです。
ただ、「ネズミの脳を作ろうとしています」といってもピンとこないので、わかりやすさのために「人間のようなロボットを作るのが目的です」のような説明をしています。
もっといえば、身体も必須ではないはずなので、「ロボット」に限定する必要はありません。
ただし、動物のような知能を開発する以上は、自分の意志で動かせる身体が事実上必要だろうと考えられています(身体性といいます)。

Q. Wikipediaを見たら汎用AIは見通しがいまいちだから脳をシミュレートしたほうがまだマシだと思いました

脳をシミュレートすれば脳と同じことができるはずというのは自然な発想ですが、測定技術とシミュレートの技術とコンピュータの性能の点でそれはそれで厳しいのではないかと思っています。
また、脳をコピーしてシミュレートできたとしても、結局知能についてはよくわからないままという問題もあります*1

飛行機を開発するときも、鳥のコピーを作るのではなくて、飛ぶためのエッセンスをある程度解き明かしてから実験を繰り返すことで、
「鳥のような羽毛はないし羽ばたかないしくちばしもないけど、飛ぶことはできる」ものができたわけです。

飛行機で言うところの航空力学的な部分を抑えつつ、同時に鳥やムササビの飛翔技術を学ぶように脳に学び、知能の構成要素を明らかにしながらパーツを組み合わせるほうが効率が良いし、実用的にも優れていると考えています*2
そしてなにより、Wikipediaには書いてないかもしれませんが、汎用AIのための技術はちょっとずつではありますが、確実に知見が溜まってきています。

ちなみに、脳をまるごとコピーしてシミュレーションすることは全脳シミュレーションといい、
知能を構成するメカニズムを解明してからそれを機械で再現する方向性は全脳アーキテクチャと呼ばれることもあります。

Q. 内容の正確性はどうですか? あなたの思い込みや妄想が多いと困ります。

今回はかなり扱っている範囲が非常に広いので、

にチェックしてもらいました。極端におかしい部分はないはずですが、「わかりやすさを優先したいのはわかるがさすがに思い切りが良すぎるのでは?」と言われたところは結構あります。
逆に言うと、専門家がドン引きする程度にはわかりやすさを優先しました。

Q. 汎用AIは夢物語だから特化型AIに注力するべきだと偉い人が言っていました

汎用AIができるかできないかという点は、専門家でも意見が分かれています*3
ただ、「できない」ことが証明されたわけではないので、誰が否定しようが汎用AIを作る試みは続きます。
短期的には従来の特化型AIのほうが役に立つのも間違いないでしょう。たとえばネズミと同じ知能を持つAIができたとして、それがなんの役に立つのでしょうか?
ただしそれが改良されていって人間に近づいてくる(または追い越す)と、今度は革命的に世界が変わっていくと思います。
ライト兄弟の飛行機は最初100mほどしか飛べませんでしたが、そこで「飛行機なんてなんの役にも立たない。これからも自動車や馬車だ」と思う人間は先見の明がないといえるでしょう。

クラークの三法則

  • 高名だが年配の科学者が可能であると言った場合、その主張はほぼ間違いない。また不可能であると言った場合には、その主張はまず間違っている。
  • 可能性の限界を測る唯一の方法は、不可能であるとされることまでやってみることである。
  • 充分に発達した科学技術は、魔法と見分けが付かない。

そもそも、人間みたいなAI、作ってみたくないですか?作ってみたいですよね?
個人的には「作れそうだからやってみる」というのが一番の動機であって、役に立つかどうかは別の人間が考えればよいのです。

*1:ただし、医療分野ではかなりの貢献があるはずです

*2:それに脳の完璧なコピーができたらそこには人権が発生しそうな気がしますし、産業的に扱いづらい気がします

*3:もっと言えば、強いAIができるかどうか、機械に意識が宿るかどうかなど定義によっていろいろ異なります

人工知能についてアンケートしたら意外な結果だった

人工知能」について、みんなどう思ってるんだろう?と気になったので、Twitterでアンケートしました。

f:id:kazoo04:20160902010120p:plain

アンケート結果

というわけでアンケート結果です。

知能ってなんなの?という質問

まず1つめ。そもそも機械に知能って宿るの?という確認。

これは知能の定義で回答が変わってくるので、そこを曖昧にしたままアンケートをするのは反則っぽいのですが、こんな感じになりました。すごく意外だったのは、「将来、今のAI技術の延長で知能が宿る」が1位ではなかったことです。
つまり、SiriとかPepperとかWatsonは、「知能っぽいモノ」であって、動物の知能とは方向性は違うだろうと思っている人が結構多いようです。その理由はいろいろあって、

  • 感情がないから
  • 本能的な欲求を持たないから
  • 自分自身でプログラムを書き換えることはないから
  • 動物の脳に比べると単純過ぎる
  • プログラムに従って決定的に動くから

などが多いようでした。ここではそれぞれの意見に対してコメントはしませんが、私はもっとも得票数の多かった 将来、今とは根本的に異なる技術で知能が宿る 派だったので、まさか一致するとは思わなかったなあというのが意外な点です。
1割位の人が「そもそも人工知能なんてできないよ」って思ってるのはだいたい予想通りでした。まあ、魂とかの話になってくるとこのへんは機械だと無理そうだなあという感じがしますし。

どうやって作るの?という点

人工知能できるよ派の人は、どのような技術で達成されると思ってるのかも気になるので聞いてみました。

これすごく面白い結果だなあと思っていて、「既存の技術の延長でできるよ」派と、「未来の(未知の)技術によってできるよ」派と、「ていうか脳をまるごとシミュレートすればいいじゃん」派で3つにわけると、ちょうど1/3ずつなんですね。

1つ目のアンケートで既存のAI(PepperやSiri)にも知能はあると答えた人が13%で、今回既存のAI技術(ディープラーニング含む)の改良のみで可能と答えた人が19%なので、まあ大体同じ人が投票したんだと思います。差分の6ポイントは、「今のAIには知能ないけど、このままPepperとかSiriをIT技術者が改良しつづければいつかは知能っぽくなるでしょ」と思ってる人たちだと思います。

脳をシミュレートすれば知能生まれるだろうっていうのは唯物論や機械論に従うのであればまあ当然かなと思うので、これは妥当な線かと思います。

「未来の技術で」派の人たちは量子コンピュータ派かな?でも脳で量子力学が積極的に利用されている説(量子脳理論)は証拠が見つかっていないのであんまり支持されてないです。

どっちが先?

今回のアンケートで悩ましいのは、「脳をシミュレート」するのが先か、「脳の理論を解明してそれと同じように動く機械を作る」のが先かという点かなと思います。空を飛ぶときに、まったく鳥と同じものを作る(オーニソプター)か、航空力学などを使って鳥とは違うけど空をとべる機械を作る(要するに飛行機)かといったのと似た問題です。この場合は様々な先駆者が「羽ばたく機械」で頑張ろうとしてる間に、ライト兄弟が固定翼機を作って飛翔に成功しましたが、脳の場合はどうでしょうかね?

お前はどう思うんだという点

じゃあ筆者はどう考えているのかというと、

  • 将来、今とは根本的に異なる技術で知能が宿る
  • 既存の計算機の改良+新アルゴリズム

という立場です。前者は最多得票でしたが、後者は逆に最小得票数でした。「既存の計算機の改良+新アルゴリズム」派はもっと多いかなと思ってたんですが……。

将来、今とは根本的に異なる技術で知能が宿る

まずこちらですが、雑に理由を並べると

  • そもそも今のAIは何かの問題に特化させて、自動化するのが目的である
  • だから、「人間の知能の再現」を最初から目指してない
  • 「人間のような知能」を作りたいなら、最初からそれを目指してやるべきだ

といったあたりになります。文字認識とか、自動翻訳とか、PepperとかSiriとかWatsonみたいなものは、ある特定の問題を人間の代わりにやってくれる機械です。特定の問題に特化しているので最近は区別するため、 **特化型AI** と呼んだりします。まあ今ブームのAIは全部これですね。

たしかに古く(1950年代とか)から「人間のような知能」の研究はあって、特に「推論」あたりの話だと、そこからフレーム問題とかシンボルグラウンディング問題のような難題が提起されたり、ホップフィールドネットワークで連想記憶が実現できるとか、チューリングテストの考案とかいろいろあった(というかそのような研究が積み重なってきたからこそ、人間っぽいAIと、特化型AIという違いが認識されてきたともいえる)のですが、結局今は下火です。今はそこから派生していったアルゴリズムを特定の問題(文字認識とか自動翻訳とか車の自動運転とかね)に使うことが主流なのは間違いありません。

動物の知能は、むしろなにかに特化するのは危険で、複雑な自然界においてなるべく柔軟に対応していくことが求められます。
広く浅く何でもできることが大事です。こちらの「動物っぽいAI」を **汎用AI** と呼んだりします。もちろん今のところ汎用AIの開発に成功した人はいませんが……(ごく一部の研究グループでは開発に着手しているみたいです)。

既存の計算機の改良+新アルゴリズム

次にこの予想に反して票数が少なかったほうですが、

  • 脳はニューロンの集まりによってできている
  • 1つ1つのニューロンの振る舞いは、計算機でも再現できるだろう
  • であれば、既存のハードウェアでも知能は再現できるだろう
  • ただし、1つ1つのニューロンから再現するのは効率が悪すぎるので、もっと粒度を大きくする必要はある

といった理由から、私はこの立場です。空をとぶとき、鳥の羽毛を1本1本、筋繊維の1本1本を忠実に再現してもあまり意味がありません。
それよりは、「どうすれば飛べるのかというエッセンス(≒航空力学)」をまず研究し、空を飛ぶための最小構成から始めるほうが効率が良いのではないかと思うのです。たとえば、まずはグライダーを作ってみて、うまく行ったらプロペラ機を作って、といった感じです。全脳シミュレーションはあまりにも大変なので、たぶんこちらのほうが先にうまくいくんじゃないかなと思います。
もちろん全脳シミュレーション自体は非常に役に立つと思いますが(たとえば、てんかん自閉症の研究などに使えるでしょう)。

おわりに

もともとは、「今あるAIってあたかも人間の脳を模倣した…とか言ってるけど全然人間の知能とは違うじゃないか!」という怒りから生まれたアンケートだったんですけど、蓋を開けてみたら意外とみんな「まあ…人間の知能とはぜんぜん違うよね…」みたいな冷めた感じだったのでなんというかああよかったなあという気持ちになりました。

今のAI、つまり特化型AIはそれはそれでものすごく便利で、実際色んな所で使われているわけですが、「動物のような知能を持った機械も作りたい!」という汎用AI研究は超下火どころか風前の灯火です。
このあたりにもっとフォーカスがあたるといいなあと思った次第です。

おまけ

  • 知能ってなんなのか
  • なんで今のいわゆるAIでは知能が宿らないのか
  • 特化型AIと汎用AIってなにがどう違うの
  • なんで汎用AIはすごそうなのにあんまり研究されてないの
  • 汎用AIを作るための理論って聞いたことないけどマジであるの?

っていうのを実は本にまとめました。今月技術評論社さんから発売されますが、Amazonではもう予約できるみたいです。
人工知能機械学習情報工学について全く知らない人でも、気軽に読めるものにしました。英語や数式は1つもないカジュアルな内容です。

コンピューターで「脳」がつくれるか

コンピューターで「脳」がつくれるか

価格も「なるべく安くしてください」って伝えたらまさかの2000円を切るお求めやすいものになりました。
興味があったらぜひ読んでみてください。

汎用人工知能

これは 人工知能アドベントカレンダー の25日目の記事です。

最終日です。ここまで紹介してきた情報を元にして、汎用人工知能を作るために必要な理論と技術をあらためて見ていきましょう。

脳全体のモデル

比較的よく見られるものを紹介します。まず、脳をおおまかに大脳(大脳新皮質)・大脳基底核・小脳にわけて、それぞれ以下のアルゴリズムをベースにモデル化します。

大脳→教師なし学習

kazoo04.hatenablog.com
kazoo04.hatenablog.com

小脳→教師あり学習

kazoo04.hatenablog.com
kazoo04.hatenablog.com

大脳基底核→強化学習

kazoo04.hatenablog.com
kazoo04.hatenablog.com

主な役割としては、

  • 大脳基底核は快不快を元にして、自分にとって最も利益があるような行動を選ぶことを担当します。
  • 大脳は外界から得た複雑に変化する情報を整理して、本質的な情報、高次の情報を抽出します。
  • 小脳は教師あり学習できるようなものを担当して外界を含めた内部モデルの学習をします。

理論によって差はありますが、概ね上記の3つを当てはめたものが多いようです。わかりやすいですし、単純化しすぎている感じもしますがそれなりに説得力があります。

大脳のモデル

大脳新皮質のモデルとしては、 Slow Feature Analysis *1を使ったものや、Topographic Independent Component Analysis *2を使ったもの、TICAを応用して一次感覚野の位相マップを説明するもの*3などがあります。低次領野の一部しか説明できていませんが、高次の領野についてはより多くの生理学的な知見が必要になるでしょう。

f:id:kazoo04:20151219011358p:plain
f:id:kazoo04:20151219011527p:plain
TICAによって得られた視覚野と聴覚野の再現。一次感覚野に限定すれば、すでにそれなりの結果が得られていることがわかる*4

共通しているのは、教師なし学習を行うという点です。知能の高い動物は、本能だけでなく生まれた後に「学習」することでより生存率を高めています。外界のことをなにも知らないので、わからないものから有用な情報を抽出する必要があります。大脳は学習に非常に時間がかかるものの、比較的頑健な情報を教師なしで抽出することが得意なようです。

小脳のモデル

小脳のモデルは、既に見てきた小脳パーセプトロン仮説をベースにしたものが支配的で、教師あり学習によって内部モデルを獲得することを目的とします。小脳は最初は乱雑に接続されているだけなので学習がまったくできていない状態ですが、任意の関数を近似でき、かつ大規模な並列計算によって高速に処理できるという特徴があるので、大脳新皮質から情報を送って小脳で処理した結果を受け取る、といったこともしています。まさにCPUに対するGPU的な位置づけですね。

アルゴリズムとしては、Perceptron *5*6や Liquid State Machine*7*8をベースに構築したものが多いようです*9*10*11

大脳基底核のモデル

大脳基底核の主要な役割のひとつは強化学習とみられています*12
具体的にはQ学習に近いのではないか?といった説もあります*13が、具体的なアルゴリズムについてはまだ議論の余地があります。

ただ、報酬誤差を表現していることがわかっている点、動物の原始的な機能としての強化学習の役割といった点などから、大脳基底核で強化学習が行われているというのはほぼ確実だろうと考えられています。

最近では、強化学習とDeep Learningを組み合わせた Deep Q-Network*14が発表されたりと活発な分野です。

より実践的なモデル

それぞれのアルゴリズムはわかりましたが、具体的にはどのような仕組みになっているのでしょうか。小脳と大脳基底核はすでに色々な説を紹介しましたが、大脳新皮質についてはより細かいモデルも提案されています。

Hierarchical Temporal Memory (HTM)

HTM は NumentaJeff Hawkins が提案しているモデル*15で、視覚・聴覚・体性感覚・言語といった様々なモジュールがピラミッドのような階層的な接続で構築されているものです。

HTMは、時系列データを主眼においており、入力されてきた時々刻々と変化する信号を観察し、同じような並びのデータが来たらそれを一つのグループとしてまとめる*16ことでより抽象的なデータになっていく、と考えます。

Jeff Hawkins は 「考える脳 考えるコンピューター」 という本を出しており、その中でもHTMのアーキテクチャについて解説しているのですが、残念ながら今は中古本しか手にはいらないようです。脳科学や機械学習を全く知らなくても楽しく読める本なので、機会があれば是非ご一読ください。

考える脳 考えるコンピューター

考える脳 考えるコンピューター

BESOM

BESOMは産業技術総合研究所の一杉裕志が提唱しているモデルです。これもモジュールが階層構造をなしているという点は同じです。基本的なアイディアとしては、Self Organized Maps (SOM) と Independent Component Analysis (ICA) をベースとしたモジュールで情報抽出を行い、さらにベイジアンネットワークを用いてネットワークを構築するという方法です。

f:id:kazoo04:20151224011309p:plain
BESOMモデルにおける大脳新皮質の6層構造 *17

興味のある方は日本語の資料が沢山公開されているので調べてみてください。

Information Integration Theory (情報統合理論, IIT)

IITは、ジュリオ・トノーニ(Giulio Tononi)が提案している理論で、上で紹介したものとは趣向が異なり、意識そのもののモデルです*18

異論はいろいろあるのですが、意識を直接数学的なモデルにしようという試みは今までにないものなので、妥当性は別としても大きな注目を集めています。IITは日本ではまだマイナーな存在なので、ここでは簡単に概要を説明します。IITの論文では、これから述べるようなぼんやりとしたものではなく、数学的な手順を踏んだ論理的なものになっているので、気になった方は論文をご覧ください。

IITを理解する上でのポイントは(筆者の考えでは)3つあり、「情報」、「(情報の)統合」、「統合情報量」がわかればなんとなく全体像が掴めると思います。

IIT - 情報

IITは頻繁に information (情報) という単語が出てきますが、ここでの情報は普段使われる情報とはやや異なります。
IITにおける情報とは、システムの内的な情報(intrinsic information) のことだけを指します。つまり、外界がどうなっているか、あるいは外界からどのような信号を受け取っているかは、ここでは情報と考えません(extrinsic information)。

内的な情報、についてより詳しく説明すると、IITでは「現在の状態が、過去と未来の情報に対してなんらかの因果関係があること」が内的な情報だとします。たとえば2つの値を受け取って加算した結果を表示するような単純な機械を考えます。これは外部の情報を受け取って加算し、ただ表示しているだけなので、これが加算であろうと複雑な方程式を解くものだろうと情報はゼロとします。同様に考えると、サーモスタットにも情報は生じないし、意識も生じないことになります*19

IIT - 情報統合

統合(integration) は、文字通り複数の情報を統合してひとつにすることです。IITでは、「意識は情報が統合されたときに生じる」と考えます。どれだけシステム内部で複雑な計算をしたとしても、それらの情報が統合されなければ意識は生じないとするのです。

IIT - 統合情報量φ

統合情報量というものを考え、これをφ(ギリシャ文字のファイ)で表します。φは情報統合理論を知る上で欠かせない中心的な概念です。
φは、システムを分割したときにどれくらい情報が失われるかで表します。意識がないものはそのシステムを2つに分割しても内部の情報処理になんの影響ももたらさない一方で、意識があるものはそのシステム(脳)を分割すると瞬く間に機能しなくなってしまう、ということです。

そして、最大のφを生み出すシステムの組み合わせが意識になる、というのがIITにおける「意識とは何か」に対する回答です。IITではこの組み合わせをコンプレックス(complex)と呼びます。
なぜこのようなことを考えるのかというと、たとえば二人の人間が会話をしているところを想像してみましょう。ここでは言語によって二人の人間がお互いに情報をやり取りし、かつ内部で情報処理を行っています。情報統合について考えると、この二人でひとつの意識があることになりますが、それはちょっと受け入れがたい結論です。そこでコンプレックスについて考えると、この二人で一つの意識として考えるより、個々の人間が一つずつの意識を持っているとしたほうがφが大きくなります。φの最大化を考えることで、人間同士の意識が別個に保たれることを保証しているのです。

もうひとつ実用的な例を出すと、分離脳についても情報統合理論である程度説明することができます。

kazoo04.hatenablog.com

普段は大脳の左半球と右半球は脳梁によって接続されており、ひとつの意識を形成しています。外科手術によって脳梁を分離すると分離脳の状態となり、左半球と右半球で別々の意識が生じたかのような振る舞いをし始めます。これは、脳梁によって接続された2つの大脳半球のφが大きいので通常は一つのシステム(一つの意識)として動くのですが、分離脳になると右半球でひとつ、左半球でひとつのシステム(意識)であるほうがφが大きくなるので、別個に意識が生まれるとするのです*20

それでは具体的にあるシステム(たとえば動物の脳)のφをどうやって計算してコンプレックスを見つけるのかという点ですが、これは計算量的にほとんど不可能で、非常に小さいシステムでしか測れないという問題があります。なんらかの近似はできるかもしれませんが……。とはいえ、意識を測る基準を設けたという点では大きな進歩です。 トノーニは近年も活発にIITについての研究成果を発表しているので、気になる方は調べてみてください。

意識はいつ生まれるのか――脳の謎に挑む統合情報理論

意識はいつ生まれるのか――脳の謎に挑む統合情報理論

より大局的なモデル

最終日ということで、せっかくなので私の考えも含めてお話します。私は大脳皮質のモデル化より、小脳や大脳基底核のほうに興味があり、これらも含めた包括的なアーキテクチャを考えています。

f:id:kazoo04:20151225003918p:plain

生理学的な知見から、大まかには上図のような3つのループがある構造になっていると考えています。つまり、視床→大脳皮質→大脳基底核視床というループと、視床→大脳皮質→小脳→視床というループと、視床→大脳皮質内→視床という3つから成ります*21*22*23

f:id:kazoo04:20151224234849p:plain

大脳基底核は強化学習によって自己の利益を最大化しようとし、小脳は外界や自己を含めた世界の内部モデルを教師あり学習によって構築するのが役割です。大脳皮質は教師なし学習で外界から得た情報から有用な情報を抽出し、より高度な、あるいは抽象的な概念の獲得を目的とします。大脳基底核や小脳の構造が種によってさほど変化がない一方で、ヒトの大脳皮質は非常に大きいというのもこの考えに一致するところがあります。

未解決の問題

まだわかっていないところは挙げていったらキリがありませんが、特にAGI研究においてまだ不十分な部分を主要なものに絞って挙げると以下の様なものがあります。

脳のDefault Mode Network はなにをしているか

脳は「なにもしてないとき」つまりぼーっとしているときにかなり活発に活動していることがわかっています。これをデフォルトモードネットワーク(Default Mode Network)と呼びます。神経細胞を活動させるのにはエネルギーが必要なので、普通に考えると何も考えてないのならなるべく神経の活動を抑えるほうが理にかなっています。にもかからわずデフォルトモードネットワークのような活動があるということは、たとえエネルギー消費量が多くなってもやる価値がある処理、というわけです。一般には「次に何かが起きた時に素早く反応できるようにしておく」という説が主流ですが、その割にはエネルギー消費が大きすぎるという問題もあります。

大脳皮質のコラムは何を計算しているのか

大脳皮質は Deep Learning 研究で特に一次視覚野と似たようなニューロンを獲得したことから、「大脳皮質はDeep Learningなのではないか?」と言われることもありますが、実際の大脳皮質はもっと複雑な構造をしており、1つのコラムが様々な処理をしていることは明らかです。コラムは大脳皮質の最小処理単位と考えられているので、コラムの計算機構を明らかにするのは重要な課題です。

注意のモデル化

脳科学における注意(attention)というのは、意識をそこに向けるというだけでなくもう少し広い意味を持っていますが、注意によって大脳皮質の特定の活動だけを反応させやすくする機構があるようです。これは大脳の高次の領野から低次の領野への接続がかかせませんが、たとえばDeep Learningにはこのようなメカニズムはありません。そもそも注意の大元はどこからくるのか?意識なのか?もっと別の仕組みなのか?もよくわかっていません。

アウェアネス

どうするとある感覚について意識に登ってくるのかもよくわかっていません。たとえば盲視と呼ばれる状態は、その人自身は「何も見えない」と思っている状態ですが、たとえば目の前にあるものを勘で手に取るようなタスクを行うと、偶然とは思えない確率で成功します。意識に上るか上らないかはなにによって決まるのか、なぜ盲視が起きるのかは意識にも絡み重要な問題です。

記憶

海馬はどのように記憶を保持しているのか。短期記憶が長期記憶として定着する仕組みなど。

kazoo04.hatenablog.com

ミラーニューロンはどのように獲得されるか

ミラーニューロン*24は自分が行うときも、他人が行うときも同じように反応するニューロンです。たとえば自分が物をつかむときに反応し、かつ他人が物をつかむところを見ているときも同様に反応するニューロンがあるのです。このようなニューロンがどのように生まれるのかはよくわかっていません。後天的に獲得されるものもあるようですが、生まれたばかりの個体でも表情を真似たりできることから、単に教師あり学習や強化学習的なものではないようです。ミラーニューロンは学習における重要な役割を果たす「模倣」に不可欠だと考えられているため、ミラーニューロンの神経基盤を知ることはAGI研究の大きな手がかりになります。

ミラーニューロンの発見―「物まね細胞」が明かす驚きの脳科学 (ハヤカワ・ノンフィクション文庫)

ミラーニューロンの発見―「物まね細胞」が明かす驚きの脳科学 (ハヤカワ・ノンフィクション文庫)

バインディング問題

バインディング問題は、脳内ではバラバラに処理されているはずの情報が、正しく統合されて知覚されるのはなぜかという問題です。たとえば色を認識する領野、形を認識する領野、動きを認識する領野は異なります。そのため、たとえば「右に動いている赤い四角形」と「左に動いている青い三角形」があったとき、最初のうちは「右に動いている」「左に動いている」「赤い」「青い」「四角い」「三角」といった情報がバラバラに処理されているはずです。ですが最終的にはきちんと正しい組み合わせになって意識に上り、混乱することはありません。バインディング問題が起きずにどんなときも常に正しく知覚できるということは、これが高度な処理ではなく大脳皮質のかなり基本的な原則によって成されていると考えられますが*25、あまりわかっていません*26

さいごに

25日にわたって、汎用人工知能に必要なごく基本的な知識について紹介しました。どの日の記事をとっても、書いたのは本当に表面的なことだけで、実際にはもっと多くのことがわかっていますし、理論的なバックグラウンドがあります。ただ、より多くの方に汎用人工知能とはなにか?今までに何がわかっていて、これからはどのような取り組みをしていくのか?を紹介できたらなという思いでなんとか25日連続で更新することができました。

別の目的としては、筆者もまたAGIの研究開発をしているひとりであり、行き詰ったところで頭の中の整理をしようと思ったという点もあります。基本的にこのアドベントカレンダーは私が今までに実装したり調査したりしたものが中心となっていますが、いざ書き出していくと意外とわかっていないこともあるものです。

また、どうにも世界にはAGIを研究している人があまり多くないようで、私のような方が他にも見つかればいいなと思ったのもモチベーションになりました。

今回ご紹介しきれなかったもの、より多くの注釈や解説が必要なもの、数学的なモデルを含めた紹介*27、色々未練があるので、そのうち加筆修正したものを電子書籍かなにかにするかもしれません*28。そのときはまたよろしくお願いします。

それでは。

*1:Wiskott, L. and Sejnowski, T. Slow feature analysis: unsupervised learning of invariances. Neural Computation, 14(4):715--770, 2002.

*2:Aapo Hyvärinen, Patrik O. Hoyer, and Mika Inki, Topographic Independent Component Analysis, Neural Computation 13(7):1527-1558, 2001

*3:Terashima, H. and Hosoya, H.: Sparse codes of harmonic natural sounds and their modulatory interactions, Network: Computation in Neural Systems, Vol. 20, No. 4, pp. 253–267, 2009

*4:寺島裕貴, 岡田真人, 視覚野・聴覚野地図の同一適応アルゴリズムによる解釈 から引用

*5:Rosenblatt 1958

*6:Ramelhart 1986

*7:Buonomano DV and Maass W. Statedependent computations: spatiotemporal processing in cortical networks. Nature Rev Neurosci 10:113–125. 2009

*8: Jaeger H, Maass W, and Principe J. Echo State Networks and Liquid State Machines, Volume 20 of Neural Netw. 2007

*9:Marr D. A theory of cerebellar cortex. J Physiol (Lond) 202:437–470. 1969

*10:Ito M. Long-term depression. Annu Rev Neurosci 12:85–102. 1989

*11:Yamazaki T and Tanaka S. The cerebellum as a liquid state machine. Neural Netw 20:290–297. 2007

*12:Wolfram Schultz. Predictive Reward Signal of Dopamine Neurons. Journal of Neurophysiology Published 1 July 1998 Vol. 80 no. 1, 1-27

*13:Samejima K1, Ueda Y, Doya K, Kimura M. Representation of action-specific reward values in the striatum. Science. 2005 Nov 25;310(5752):1337-40.

*14:Volodymyr Mnih, Koray Kavukcuoglu David Silver, Alex Graves, Ioannis Antonoglou, Daan Wierstra, Martin Riedmiller. Playing Atari with Deep Reinforcement Learning, NIPS Deep Learning Workshop 2013.

*15:ただ、Hawkins自身はこれは脳を完全にシミュレートすることを目指すのではなく、脳の処理を模倣することでより柔軟なマシンを作るといった方向でいる

*16:Hawkinsはよく「名前をつける」と表現している

*17:一杉裕志, 大脳皮質とベイジアンネット, 日本ロボット学会誌 Vol.29 No.5, pp.412-415, 2011 https://staff.aist.go.jp/y-ichisugi/besom/29_412.pdf から引用

*18:Tononi G. An information integration theory of consciousness. BMC Neurosci.2004 Nov 2 ; 5():42.

*19:なぜ急にサーモスタットの話をしたのかというと、デビッド・チャーマーズが「どんなものにも多かれ少なかれ意識があるとするなら、サーモスタットは外界の気温という情報を受け取って、自身の温度を変化させて環境を一定に保つ能力があるので、十分に意識があるといえることになる」旨の発言をしたので、サーモスタットの例はよく引き合いに出される

*20:この理論が正しい場合、少しずつ脳梁を切断していくと、ある閾値を超えた瞬間に突然左右の半球に2つの意識が生じることになるが、このような実験は難しいので実証はされていない

*21:Alexander GE, Crutcher MD. Functional architecture of basal ganglia circuits: neural substrates of parallel processing. Trends Neurosci 1990; 13: 266-271.

*22:Hikosaka O, et al. Role of the basal ganglia in the control of purposive saccadic eye movements. Physiol Rev 2000; 80: 953-978.

*23:Takakusaki K, Habaguchi T, Ohinata-Sugimoto J, et al. Basal ganglia efferents to the brainstem centers controlling postural muscle tone and locomotion: a new concept for understanding motor disorders in basal ganglia dysfunction. Neuroscience 2003; 119: 293-308

*24:Giacomo Rizzolatti et al. Premotor cortex and the recognition of motor actions, Cognitive Brain Research 3 131-141. 1996

*25:仮に脳のどこかの領域でバインディング問題を解いている専用の場所があるとしたら、その部分の障害でバインディング問題を解けない人が出てくるはずだが、そういった人がいない

*26:脳波の位相によって表現されているのではないかという説が多い

*27:特にSVMのあたりが適当過ぎるので、カーネルトリックも含めた解説

*28:売れるだろうか?

言語のモデルと意識

これは 人工知能アドベントカレンダー の24日目の記事です。

今回は前回の小脳のモデルとは異なり、まだ明らかにされていない部分が多い言語や意識について関連研究を見ていきましょう。

両者は全く異なるように思えますが、あることが意識に上っているか(アウェアネス, aweaness)は言語によって確認することが多いので、まとめて扱います。

関連記事

言語のモデル

実は言語野については計算機モデルがあまりなくあまり書くことがありません*1。そもそも言語野の機能自体がまったくわかっていないのにそれを具体的にモデル化できないのは当然なのですが……。

既に8日目の記事で説明したように、各部位がある行動をしているときに活発に活動するという相関関係はfMRIによってかなり良く調べられているのですが、各部位がなにをどのように処理してどこに送っているのかについては不明瞭な点が多いのです。ブローカ野、ウェルニッケ野の発見に始まり、近年では左下前頭回から左運動前野は文法処理に関わっているとされるなど色々進展はあるのですが、言語は「何を話したいか」という動機が重要で意識の問題が絡むので解明が難しい部分です。

たとえば、近年はDeep Learningベースの言語モデルがたくさん発表されて、自然な文章を生成することができつつあります(有名なものだと、Recursive Neural Network, Recurrent Neural Network, Long Short-Term Memory(LSTM)*2 )。ここでいう言語モデルは、「ある文章がどれだけ自然か」の評価方法のようなものであって、一番重要な「何を話したいか」という部分のモデルがないという問題があります。

とはいえ、言語野が左半球にあることと関連して、意識はどこで生まれるのかについて興味深い実験がたくさんあります。

意識はどこにあるか

脳の働きによって意識が生まれるとするなら、それはどこの部位でどのようなメカニズムによるのかというのは大きな疑問です。
たとえば小脳は欠損していても体のなめらかな動きが阻害されたり、知能の低下が見られたりしますが、意識そのものは保たれます。また、視覚野が障害されると網膜などが正常でも目が見えなくなりますが、意識は保たれます*3。脳機能の局在を仮定するなら、どこかに「意識を処理している」部分がありそうです。

分離脳の研究から、意識は主に左側にありそうに思えます*4*5

左半球は主に言語、計算、意図して行う行為などに対して優位であり、右半球は空間的注意、外界と自己の位置関係の把握、比喩の理解などに対して優位な傾向があるようです。概して言えるのは、左半球が扱っているものは「わかりやすい」ものが多く、右半球は比較的「わかりにくい」、つまり普段あまり意識に登らないものの高度な精神的活動をする上で重要なものを扱っているようです。ですから、左半球が重要で右半球は大したことをしていない、というわけではないことに注意してください*6

脳の処理と意識はどれくらい関係しているか

一般的には、「脳で処理した情報が意識に登ってきて、そこで諸々の判断をして身体にフィードバックする」、といったモデルを考えることが多いと思います。これはどれくらい正しいでしょうか。言い換えれば、無意識と意識はどれくらいの割合あるのでしょうか。

分離脳患者の例

分離脳の患者に対して、患者の左視野(右半球で処理される)に「歩け」というカードを見せると、患者は席を立って部屋から出ていきました。実験者(スペリー)が「なぜ部屋から出て行ったのか?」と聞くと、被験者は「喉が渇いたのでコーラを取りに行こうとした」と答えた例があります。もちろん本当の理由は、歩けというカードを見たからなのですが、その情報は言語野がある左半球には送られなかったので、適当な理由を作った(作話)わけです。

作話の例をもうひとつ挙げると、海馬に損傷があり前向性健忘をもった患者に対して、実験者が握手を求めます。もちろん患者は快く握手に応じるのですが、このときに隠し持った装置で軽い電気ショックを与えます。すると患者は当然怒り出すのですが、記憶を保持できないのでしばらくすると忘れてしまいます。翌日に同じ実験者がまた握手を求めると、電気ショックのことは記憶に保持出来ないはずなのに患者は握手を拒否するのです。さらにおもしろい点は、「なぜ握手したくないのですか?」と聞くと「さっきトイレにいって手を洗ってないので」と答えたのです。どうも脳は結論がまずあって、それと矛盾しないような記憶や理由をでっち上げることがあるようです(しかもそこそこ妥当な理由を非常に高速に作り出す)。

kazoo04.hatenablog.com


別の例だと、男性の左半球と右半球にそれぞれ「卒業したらなにになりたいか?」と聞くと、左半球は「建築家(architect)になりたいので今は学校でその勉強をしています」と答えました。一方、右半球だけに聞くと*7どうなるでしょうか?右半球は言葉を話せないのですが、この男性は右半球にも少し言語能力があって声には出せないけれど左手で文字が書かれたブロックを並べて意思表示をすることはできました。答えは左半球同様、「建築家」でしょうか?

なんと、患者の左手は「カーレーサー(race car driver)になりたい」と答えたのです。結果を見た実験者(ガザニガ)はもちろん、患者本人も非常に驚き「なぜこんなことを言った(書いた)のかわからない」と困惑しました。

これらの例を見ると、左半球は意識を生み出しているというよりは意識を統合している部分があるようです。通常であれば、右半球の情報は脳梁を通って左半球にも送られるので、ここで情報が統合されて、先の例であれば「カーレーサーになりたい」という情報が上書きされるか、競合して消えるのかもしれません。

運動準備電位の例

準備電位(readiness potential) というのは、身体(筋肉)を動かす少し前に観察される脳の活動でこれ自体は昔から知られていました。ただ、準備電位が「体を動かそうと思う前」なのか「体を動かそうと思った後」なのかは実験が難しいのでわかっていませんでした。通常であれば、「体を動かそう」と思うから体を動かすわけで逆はあり得なさそうに思えます。

有名な Libet らの実験*8や、その後の追試では、「体を動かそう」と思う「前」に準備電位が発声することがわかったのです。つまり順番としては

  • 体を動かそうと思う
  • 準備電位が発生する
  • 実際に筋肉が動く

ではなく

  • (何かの理由で)準備電位が発生する
  • 体を動かそうと思う
  • 実際に筋肉が動く

の順番なのです*9。つまり、少なくともある環境においては、意識というものは実際の行動を追認して適当な理由を作っているだけであることがわかってきたのです。

f:id:kazoo04:20151223234512j:plain
図で 0sec と書かれているところが「体を動かそうと決意した瞬間」の時刻のはずだが、それよりすこし前からすでに準備電位が上昇している (Libet et al. 1982, Public Domain)

このあたりの「意識はどれくらい身体に影響を及ぼしているか」については様々な仮説があり、「意識はただ身体の反応を後追いで認識しているだけで自由意志というものはない」という極端なものももちろん含まれます(受動意識仮説)。

意識の役割はなにか

既に見てきたように、そもそも意識がほんとうに必要なのかといった根本的な問いから、意識はどれくらい我々の行動に影響を及ぼしているのかといった点まで広範な議論がなされています。

度々このアドベントカレンダーにも出てきているガザニガは、「脳は様々なモジュールが独立に動いているが、それらをすべてひとつに統合する解釈装置があり、ここで情報が統合される結果、意識的な決定も無意識的な決定も区別できなくなる」といったような仮説を提唱しています。

脳が様々なモジュールの連携によって動作しているということはもはや議論の余地がないほどですが、特に大脳新皮質の各モジュール(領野)がどのように連携してなにをしているのかについては、明日の記事で詳しく見ていきましょう。

*1:ここでチョムスキー形式言語の話をしても脱線するだけなので、触れない

*2:S. Hochreiter and J. Schmidhuber, “Long short-term memory,” Neural Computation, 9(8), pp. 1735–1780, 1997.

*3:視覚の部分的喪失の場合、本人は見えていないことを自覚していないことが多く、さらにそれを指摘されても否定する行動を取る(アントン症候群, Anton's syndrome)こともある

*4:詳しくは分離脳の記事を参照

*5:単に左半球に言語野があるから感じたことを言葉で表現できる、というだけで、これだけでは右半球に意識がないとはいえない。意識はあるがそれを表現する術を持たないだけかもしれない。このあたりは議論の余地があるようだ

*6:ただし、言語野はその性質上重要なので、外科手術の際はどちらに言語野があるのか(大抵左だが、右半球にあることも珍しくはない)を調べることがある

*7:実験では、左視野だけに「卒業」という文字を見せて、「…したらなにをしたいですか?」と聞いた

*8:B, Libet., EW Jr, Wright., and CA, Gleason (1982). “Readiness-potentials preceding unrestricted 'spontaneous' vs. pre-planned voluntary acts”. Electroencephalogr Clin Neurophysiol 54 (3): 322-335.

*9:あまりにも信じられない結果に、Libet自身がこの結果を否定するような解釈をしている。たとえば「意識(自由意志)というのは、体を動かそうとする無意識に対してそれをキャンセルするようなことだ」という様々な無意識的活動を抑制することこそが自由意志であるとする説。ただしあまり支持されていない

小脳のモデル

これは 人工知能アドベントカレンダー の23日目の記事です。

小脳は文字通り大脳と比べると小さな器官で、多少損傷してもなめらかな運動ができなくなるといった程度で、昔は運動の微調整のための器官であると思われていました。

しかし、脳全体の1割程度しかない重さの小脳は、脳全体の8割のニューロンを有しているのです*1。「ニューロンが脳の処理の最小単位」であると仮定すれば、脳での処理の8割は小脳によって成されるといえます。さらに小脳は脊椎動物ならどの種であっても大きさが異なるだけで同じ構造をしています。

つまり、脳は動物における高度な情報処理において極めて重要かつ普遍的ななにかをしていると考えられますから、大脳基底核同様AGI研究においては極めて重要な部位だといえます。

小脳のおさらい

小脳については、アドベントカレンダー6日目で紹介しました。こちらも併せてご覧ください。
kazoo04.hatenablog.com

小脳特有の構造としては、下図のような3層構造がどこを見ても均一に、整然と並んでいるという点にあります。大脳新皮質はこれまで見てきたように、非常に複雑なネットワークがあり、また低次の領野から高次の領野へと情報が伝達されてより高度な情報処理が行われていると考えられています。

f:id:kazoo04:20151124012007p:plain

f:id:kazoo04:20151124005649p:plain

一方で小脳を見ると意外とシンプルで、この層構造がずっと続いているだけです。もう一つの興味深い点は、顆粒細胞同士、ゴルジ細胞同時、あるいはプルキンエ細胞同士の接続はなく、情報はかならず別の層へと伝わっていく点です。

小脳の障害を観察する

「小脳が何をしているか?」は、「小脳が傷つくと何ができなくなるか?」によって探すことができます。

運動障害

小脳が障害されると、ぎこちない動きしかできなくなったり、なめらかに歩行したりすることができなくなる、ということは1950年代には既に知られていました。その後もなめらかな運動が障害されるという知見は蓄積されていき、

  • 「目標物に指で触れる」といったタスクで、目標物を通りすぎてしまったり、手前で止まってしまったりといった測定障害(dysmetria)
  • 決められたリズムで同じ行動を何度も行うことが難しくなる(特に早く動かすときに顕著)、変換運動障害(dysdiadochokinesis)
  • 同時に身体の複数の部位を動かすことが難しくなり、別々に動かしてしまう共同運動障害(dyssynergia)

などが知られていました。

その他の障害

90年代になると、小脳は運動だけでなく他の機能にも影響を及ぼしているということが次々にわかってきました。有名な例では、「名詞から動詞の連想に小脳が使われている」というもの*2*3や、心的回転*4、目隠しした状態で物体を触ってなにか当てるタスク*5、パズル(ハノイの塔)を解く様子を想像する*6 など多岐に渡ります。

ここまで見た限りでは、小脳は「なんでもやっている」といってもいいような程、様々な課題において活動しているようです。

小脳のモデル

それでは小脳は具体的に何を計算している器官なのでしょうか。今まで見てきたように、小脳は内部でのフィードバックもない単純な3層のネットワークしかありません。基本原理は比較的単純なもののはずです。今まで上げてきたタスクに共通する何かはなんでしょうか。

内部モデル

比較的古くから支持されている理論は、「内部モデルの教師あり学習」です。内部モデルの学習を仮定すると、今まで挙げてきたどのタスクも比較的うまく説明できます。

まず内部モデルについて説明します。内部モデルは順モデルと逆モデルの2つがあります。

順モデル (forward model)

順モデルの意味は比較的簡単で、原因から結果を予想するようなものです。より詳しく言えば、「この筋肉にこのくらいの信号を送れば、実世界ではこのような結果が起きるだろうな」という予想をするモデルです。フィードフォワード制御フィードバック制御を合体させたような概念です。たとえば、自分自身をくすぐっても、くすぐったくありません。これは、どう指を動かすかという指令を送るときに、「こう指を動かしたのだから、身体からはこんな感覚が返ってくるだろう」という予想を内部モデルを使って行うからです。

逆モデル (backward model)

逆モデルは、文字通り順モデルの逆で、結果から原因を予想するものです。とはいってもわかりにくいと思うので、もう少し詳しく説明します。

よく挙げられる例としては、視覚から外界を予想することがあります。網膜上に入ってきた時点で視覚情報は2次元になっていますが、外界は3次元で、自分がいるのも3次元なので、たとえば前方にあるドアノブに手を伸ばすときは2次元の情報を元に3次元空間を動かないといけません。「3次元空間のある位置から目で見たとき、どう見えるか?」は完全に推定可能ですが、逆は必要な情報が欠けているので完璧に行うのは不可能です。これを不良設定問題(ill-posed problem)といいます。

目標物に向かって手を伸ばすとき、手の軌道は無数にあるのにもかかわらず最適(=なんらかの基準において最適と思われる)な軌道を選択するのも不良設定問題のひとつです。これも「こうありたい=目標物に触れたい」という結果から、あるべき運動(=どの筋肉をどのタイミングでどれくらい動かすか)を決めなければならない逆モデルがないといけません。

内部モデルは意識に上らないのでいまいち実感しにくいと思いますが、たとえば3Dのテレビゲームをするときに、コントローラーの「上キー」*7を押すと、キャラクターが「前」に進みます。このとき、まずキャラクターの3次元的な位置を2次元のディスプレイを見て推定し、さらに自分自身がそのキャラクターと同じ場所にいるかのように感じます。さらに、前に進みたいと思ったときには自分自身が前に進んでしまうのではなく、親指を動かしてコントローラーの上を押すわけです。ここでは、ゲームとコントローラーを自分自身の内部モデルに取り込んでいるのでなんの不自由もなくキャラクターを動かすことが出来るというわけです。

もっと身近な例では、マウスを動かすときも、ポインタを「上」に動かしたいときはマウスを「前」に動かさなければなりません。また、ディスプレイに対して手が斜めになっているときは、真上に動かしたくてもマウスはそれに合わせて若干斜め方向に動かす必要がありますが、通常このような計算は最初の数秒だけ戸惑うかもしれませんが、その後はすぐに無意識化で行われます。

テニスラケットでボールを打ち返す時も、自分の手より数十cmほど手が伸びたかのように腕を動かさないとラケットではなく自分の指にボールがあたってしまいますが、このようなミスをすることなく人間はすぐに順応できます。車の運転からUFOキャッチャーの操作まで、「外界にあるものを自分の体の延長として扱う」ようなタスクは数多くありますが、非常に複雑な計算も意識することなく瞬時に慣れることができるのは驚異的なことで、ロボットには殆どできません。

このようなモデルの構築について小脳が大きな役割を果たしている、と考えられています。

ここまでのまとめ

ここまでの話をまとめると、小脳は自分自身や外界を含めた様々なモデルを構築し、保持し、必要に応じて入力を変換して返せるような器官になっていると考えられます。
この世のものは様々な法則によって動いており、等速直線運動のような単純な動きから、飛ぶ鳥のような複雑でノイズも含まれる動き、マウスの動かし方や安定して歩く方法のような身近なもの、2次元の情報から3次元形状を復元するような不良設定問題という本質的に解けないような問題もあります。

これらがすべて小脳のあの単純な構造から計算されているということは、小脳はとてつもなく万能なシステムということになります。本当にそんな万能なものが実現できるのでしょうか。

教師あり学習

次に教師あり学習ですが、これは先日説明しました。

kazoo04.hatenablog.com

これはいくつかの例題とその答えを用意しておくと、そのうち正解がなくても上手く問題が解けるようなアルゴリズムです。テニスの例でいえば、初めてテニスをやるときはラケットを振って思ったように弾が打ち返せなくても、何度かやってるうちに上手く出来るようになり、最終的には特に意識しなくても自然に飛んできたボールを打ち返せるようになる、といった具合です。

今までのどの例でも、「上手くいったかどうか?」というフィードバックがあって初めて成り立つタスクです。マウスを動かす時も、思っているのと少し違う方向に動いたら「おや、思っているのと違うぞ」と思うわけです*8。これが教師信号となって小脳に伝達され、正しい回答(動き)が得られるようにモデルが修正されるのです。
自転車をこぐときも、ぐらぐらして転倒してしまったら、「痛い、悔しい、失敗した」と思うことが教師信号になり、失敗しないようなモデルが構築され、最終的には転倒せずに自転車に乗れるようになる、と考えます*9

小脳パーセプトロン仮説

小脳のモデルで最も有名なのは、小脳パーセプトロン仮説*10*11です。

これは文字通り小脳はパーセプトロンである、という仮説*12です。パーセプトロンについては15日目に説明しました。

kazoo04.hatenablog.com

下の図は最初にも提示した小脳の構造です。

f:id:kazoo04:20151124005649p:plain

パーセプトロンは下の図です。

f:id:kazoo04:20151223014612p:plain

ちょっと無理がある気もしますが、似ているといえばそうも見えます。この説を支持するためには

  • 教師信号か誤差信号が送られてきていること
  • 送られてきた信号によってネットワークの重みが変わり、それが維持されること

は少なくとも示す必要があります。Itoらは、図で示した一番上のプルキンエ層、平行線維とプルキンエ細胞との間に長期抑圧(LTD)という現象が起きること、下オリーブ核から投射される途上繊維に誤差信号が含まれていることを発見し、このパーセプトロン仮説はかなり説得力を持つことになります。

さらに洗練されたモデル

とはいえ、たったそれだけの証拠で小脳=パーセプトロンとは結論できません。「パーセプトロンのような」仕組みにはなっていそうですが、より洗練されたモデルが必要です。それに下オリーブ核の仕組みも解明しなければ、「どのようにして教師信号を得ているのか」という重要な部分もわかりません。

後者についてはあまりわかっていないのですが、小脳パーセプトロン仮説をもとに様々なモデルが提案されています。

Liquid State Machine

最近はLSMを応用したモデルが多いようです*13。LSMはパーセプトロンと結構似ているのですが、一部にランダムに接続された部分があるという変わったアルゴリズムで、このランダムさが様々な長所を生んでいます*14

f:id:kazoo04:20151223020511p:plain
LSMを使った小脳のモデルのうちのひとつ。山崎らの研究(2008)*15 から引用

LSMそのものについてはここで解説すると文量が3倍くらいになってしまうので、本アドベントカレンダーでは避けて、いつか別の日を設けて詳しく扱うかもしれません。

なぜ3層のモデルを採用したか

これまで見てきたように、ニューラルネットワークは多層にすると表現能力が上がります(= Deep Learning)。実際に大脳新皮質は多層のネットワークを使って高度な情報処理をしているようです。それなら、小脳も3層ではなくもっと層を増やせば性能向上が見込めそうです。なぜ浅いネットワーク(shallow network)を獲得しているのでしょうか。

ここからは筆者の推測がまじりますが、これはいくつかの理由が考えられます。最大の理由はおそらく処理速度の点ではないかと考えられます。コンピュータと異なり、ニューロンの反応速度は非常に遅く、数十Hzしか出ません。コンピュータのトランジスタが数GHz(1GHz = 1,000,000,000Hz)で動作することを考えると相当な遅さです。このような素子を多層に(直列に)繋ぐと、結果が得られるまでの時間がどんどん伸びてしまいます。情報をとっさに処理できないのは動物としては致命的な問題になりうるので、直列ではなく並列に計算したほうが有利です。

一方で、層を浅くするとネットワークの表現能力が落ちるため、これを補うために中間層(隠れ層)のノード数(ニューロン数)を大幅に増やす必要があります。これが小脳に大量の顆粒細胞がある理由だと思われます。大脳新皮質ほど高度な処理はできないけれど、処理ユニットを超並列化して、任意の関数の近似を非常に高速に行う、というのが小脳の役割というわけです。

コンピュータに例えて言うなら、大脳新皮質は様々な高度な処理が柔軟にできるかわりに速度はある程度のところで頭打ちになってしまうCPUで、小脳はある程度決まったことしかできないけれど、コア数がものすごく多くて並列計算するので非常に速いGPU、といったところでしょうか。

まとめ

小脳は構造が比較的単純な割に、脊椎動物に共通して見られることから古くから精力的に研究されてきました。そのおかげで脳の他の部位と比べかなりモデル化が進んでいます。今回紹介したLSMベースのモデルのほかにも様々な手法が研究されていますが、基本的には小脳パーセプトロン仮説を基盤としているものが多いようです。

ニューラルネットワークとしてかなり早い段階から提唱されてきたパーセプトロンが、動物にとって基本的かつ重要な役割を持つ小脳のモデルとして適切であるということは非常に面白い流れだと思います。小脳研究は現在もかなり活発に進んでいるため、モデルもさらに洗練されていくはずなので、今最も脳の模倣に近いところにいるのは小脳なのではないでしょうか。

今回で各部位の解説、モデルの紹介は一通り終わりました。次回以降は今まで紹介してきたものを統合しつつAGIを実現するために必要なものについてあらためて考えてみましょう。

*1:さらに詳しく見ると、このニューロンのほとんどは顆粒細胞で、顆粒細胞だけで脳全体の7割を占める

*2:たとえば、"nail(釘)"に対して"hammer(打つ)"、"boat(ボート)"に対して"row(漕ぐ)"と答えるというもの。ただし問題は1.5秒に1回とかなり高速に出るので、最初のうちはうまくいかない。ただし練習すると次第にうまくなる。この研究ではその仮定で活動する脳の位置が異なってくることを発見した

*3:Raichle ME, Fiez JA, Videen TO, MacLeod AM, Pardo JV, Fox PT, Petersen SE. Practice-related changes in human brain functional anatomy during nonmotor learning. Cereb. Cortex, 4, 8-26, 1994.

*4:図を見た時に頭の中でその図を回転させたイメージをすること

*5:Gao JH, Parsons LM, Bower JM, Xiong J, Li J, Fox PT. Cerebellum implicated in sensory acquisition and discrimination rather than motor control. Science. 1996 Apr 26;272(5261):545-7.

*6:Grafman J, Litvan I, Massaquoi S, Stewart M, Sirigu A, Hallett M. Cognitive planning deficit in patient with cerebellar atrophy. Neurology. 1992 Aug;42(8):1493-6.

*7:パソコンでFPSをやるときはW

*8:実際にはマウスを動かすたびに小脳によってモデルの学習が行われていたらマウスの位置がちょっと変わる度に何度も練習しなければならないため例としては不正確である。実際には、「マウスがこのように置かれていてポインタがこのように動くなら、これくらいの角度で動かす」という包括的なモデルが構築されるため、どのような環境でも正しくポインタを動かせると考える

*9:スポーツにおける練習も、ただ漠然と数をこなすだけではあまりうまくならず、自分のフォームなり結果なりを逐次振り返りながら行ったほうが効果が高い、というのは小脳に良質な教師信号を送れているかどうか、という違いなのかもしれない

*10:David Marr. A theory of cerebellar cortex. Journal of Physiology 202: 437-470. 1969.

*11:M Ito. Climbing fibre induced depression of both mossy fibre responsiveness and glutamate sensitivity of cerebellar Purkinje cells. Journal of Physiology 324: 113-134. 1982.

*12:ここではただのパーセプトロンではなく、バックプロパゲーションのようなものを指している

*13:LSMベースの手法は、特にスイス連邦工科大学電気通信大学で精力的に活動しておられる方がいるようだ。たとえば Guillaume Hennequin や 山崎匡 など

*14:学習の必要がないので速い、過学習しにくい、様々な特徴の組み合わせを生成し非線形分離しやすくする、適当で良いので生体的にも構築が楽で頑健、など。似たアルゴリズムにEcho State Network(ESN)があるが、数学的にはほとんど等価

*15:山崎 匡, 永雄 総一. 運動記憶の転送を行う小脳のスパイキングネットワークモデル. 日本神経回路学会 2008年9月

大脳基底核のモデル

これは 人工知能アドベントカレンダー の22日目の記事です。

大脳基底核(basal ganglia)は古くは運動制御に関わっていると考えられていましたが、今では運動制御はもちろんのこと、感情、学習など幅広い部分で主要な働きをしていることがわかっています。大脳新皮質は種によってかなり大きさや構造が異なりますが、大脳基底核と小脳(特に小脳)は外観こそ大きく異なるものの、爬虫類や鳥類でも似たような構造で似たような役割を果たしていると考えられています。一般に、知能・思考の中枢といえば大脳新皮質が挙げられますが、AGI的には大脳基底核と後日触れる小脳のほうが注目すべき存在だといえます*1

大脳基底核のおさらい

大脳基底核アドベントカレンダー5日目で触れたので、併せてご覧ください。

kazoo04.hatenablog.com

特に役に立ちそうな図を再掲します。

f:id:kazoo04:20151123023626p:plain
大脳基底核は脳のほぼ中心部にあり、丸い形をしたレンズ核(lentiform nucleus)から尾状核(caudate nucleus)が伸びるという特徴的な形をしている。また、大脳の他の部位同様、左右に1つずつある。

f:id:kazoo04:20151123031537p:plain
脳の冠状断面。赤い矢印は興奮性、青い矢印は抑制性。視床大脳新皮質大脳基底核視床というループが存在する。

大脳基底核は何をしているか

大脳基底核の主要な働きについては、強化学習(reinforcement learning)をしているのではないかという説が比較的多いようです。

kazoo04.hatenablog.com

というのも、大脳基底核が報酬予測の誤差を情報として扱っている間接的な証拠が見つかったため*2で、また強化学習の「どうするのが正解かはまったくわからないが、試行錯誤して自分にとって得になるような行動を見つけ出す」というコンセプト自体、動物の極めて基本的な能力の一つとよく合致していますから、そういう意味でも自然な発想だといえます。

他にも、大脳基底核が強化学習を行っているという説を補強するものとして、以下のようなものが挙げられます。

  • 視床から情報を受けとり、大脳新皮質に投射して、その結果を受け取り、さらに運動野に投射するようなネットワークがあるため、行動選択や出力の度合いを決める上で適した位置にある
  • 大脳皮質のほぼすべてから入力を受け取っていて、様々な情報を総合的に見ることができる
  • 快・不快に対して反応するニューロンがあることがすでにわかっている
  • 扁桃体側坐核など、快不快、恐怖、嗜癖に重要な部位と直接接続されている
  • 上記に加えて、快・不快そのものではなく、「これくらいの報酬が受け取れるはずだ」という予想と、実際に受け取った報酬の差を表現していることがわかっている

特に重要なのは Schultz の研究の「報酬予測誤差を表現している」という点で、まさにこれは強化学習*3そのものです。

改めて書くと、大脳基底核の主な働きは、大脳新皮質で処理している情報と、視床に入力されてくる外部の感覚と、内的な好き嫌いや感情を勘案して、自分にとって一番良い結果があるような行動*4はなにか?を計算し、それに従って行動を制御している、と考えられます。

f:id:kazoo04:20151214011609p:plain

大脳基底核のモデル

kazoo04.hatenablog.com以前解説したように、一口に強化学習といっても、実際のアルゴリズムは様々です。大脳基底核が強化学習をしているのなら、その具体的なアルゴリズムはなんでしょうか。これについては様々な理論がありますが、よく見られるのは以下の2つです。

  • Actor-Critic
  • Q学習

Actor-Critic

Actor-Criticの良いところは、ひとつは選べる行動が連続値をとるとき(わかりやすく言えば無数にあるとき)でも自然に強化学習を扱える点です。動物が取れる行動は無数に存在しますが、Q学習はすべての状態と行動の組を覚えておかなければならないので、とてつもない数のニューロンがないと成り立たない、というわけです。その点Actor-Criticは有利です。

もうひとつは、Actor-Criticはその名のとおりActorとCriticの2つのモジュールで成り立っており、前者は誤差信号を計算し、後者は誤差が0になるように行動を選択していきます。この2つに分かれているというところが大脳基底核と対応するのに都合が良いのです。Actor-Criticを採用したモデルとしては、古いものでは Houk(1995) らの研究があります*5

Q学習

Q学習もQ学習なりの根拠があります。
Samejima らの研究では、*6生理学的にActor-CriticではなくQ学習のほうが適切だと思われる結果がでています。

とはいっても、Q学習は「状態」と「行動」のペア、つまり「こういう状態だったら、何をするべきか」の表を持っておかないといけないため、状態と行動が取れるパターンが多くなるとこのペアが爆発的に増えてしまうのであまり現実的でないという致命的な問題があります。ここはどう考えればよいでしょうか。

実は Deep Learning の研究で同じ問題に取り組んでいるものがあります。

Deep Q-Network (DQN)

DQN は Deep Mind(現 Google)が開発したアルゴリズムで、ブロック崩しパックマンをやらせると、最初はうまくできないものの人間が教えること無く、試行錯誤のみでうまくプレイできるようになるというもので一時期注目されました。

DQN以前にも、Q学習+ニューラルネットワークという手法はあったので、まずこちらから説明しましょう。

Q学習+ニューラルネットワーク

Q学習は、状態と行動のペア(これをQ(s,a)と表現する)をすべて保持しないといけないので組み合わせパターンが爆発してしまう問題がありました。そこでこのペアを厳密にすべて保持するのではなくて、なるべく情報を保ったままニューラルネットワークで圧縮することを考えます*7

Q(s,a)を近似できるニューラルネットワークがあれば、わざわざすべてのペアを保存しなくてもニューラルネットワークに問い合わせれば近似値を出力してくれるので、ネットワークを保持するだけのメモリがあればこと足ります。

この手法というかテクニックは割と古くからあり、筆者も楽天のAIコンテストでQ学習+ニューラルネットワークのプログラムで出場したことがあります。

Q学習 + Deep Learning

Deep Learningは従来の3層程度のニューラルネットワークを多層化し、より高度な情報表現ができるようになったものだということは、過去の記事からすでにご存知かと思います。

というわけで、Q学習においても従来バックプロパゲーションを使っていた部分をDeep Learningに置き換えたら性能が上がりそうだというアイディアは比較的自然なものです。

これを今までの話と照らし合わせると、大脳基底核大脳新皮質に情報を送り、また送り返されてきた情報を処理していることがわかっています。加えて、大脳新皮質は(特に視覚野は)Deep Learningを使ったモデル化が進んでいます。つまり、大脳基底核は強化学習を行い、大脳新皮質はDeep Learningのような情報抽出・圧縮を行っている、と考えると、工学的にはすっきりします。

まとめ

大脳基底核は強化学習、特にQ学習によってモデル化が進められていること、Deep Q-network と似たような方法で効率の良い情報処理をしているのではないかという仮説について紹介しました。

ただ、大脳基底核がどのように運動制御に関わっているのか、感情との関係といった点についてはまだ発展途上です。今後はこれらの要素についても組み込まれたモデルが提案されていくと同時に、強化学習部分についてもDeep Learningがそうであったように、情報工学的なアプローチと神経科学的なアプローチが相互に影響しあって発展していくのではないかなと思います。

*1:種に関係なく同じような構造ということは、それが万能・普遍的な処理をしているということになる

*2:Wolfram Schultz. Predictive Reward Signal of Dopamine Neurons. Journal of Neurophysiology Published 1 July 1998 Vol. 80 no. 1, 1-27

*3:TD誤差

*4:お金や食べ物が貰える、褒められるといったプラスのものもあるし、お金や食べ物を取られてしまう、怒られるといったマイナスのものもある

*5:J. C. Houk, J. L. Adams, and A. G. Barto. A model of how the basal ganglia generate and use neural signals that predict reinforcement. In J. C. Houk, J. L. Davis, and D. G. Beiser, editors, Models of Information Processing in the Basal Ganglia, pages 249–270. MIT Press, Cambridge, Massachusetts, 1995.

*6:Samejima K1, Ueda Y, Doya K, Kimura M. Representation of action-specific reward values in the striatum. Science. 2005 Nov 25;310(5752):1337-40.

*7:本当は関数近似するといったほうが正しい