強いAIの実現方法 ~実用化に向けた実践的な作り方~

強いAIの実践的な作り方を検討しています。メイン記事に主張をまとめています。人工知能関係の書評もあり。なお、今後、任意団体として活動してみたいと考えており、手伝ってみたいという方は是非ご連絡下さい。詳しくは、メイン記事の7を参照下さい。

シンギュラリティの夢

 プログラミング、人工知能関連の話題を書くブログといえば、Qiitaという選択もある。他の人も悩むようで、はてな、Qiita等で検索すると、どちらに書くべきかという記事がいくつかあった。それらを読むと、Qiitaのガイドラインは、

  • Qiitaには再利用性、汎用性の高い情報を集める

 なのだから、ポエム系は自分のブログで書こう、という記事があり、なるほどと了解した。ということで、当面はてなブログに書き続けることになります(^^)。

 今回は特にポエム系なので、「ひとりごと」カテゴリー。

 

 強いAIを作るというのは、人間の知性を工学的に実現することを目指すことだ。

 その人間の知性は、自己複製をするタンパク質が、複製を繰り返しているうちにシンギュラリティを突破したものだと言える。従って、コンピュータにシンギュラリティを越えさせようというのであれば、タンパク質が(利己的な遺伝子が命じるがまま?)どのようにシンギュラリティ越えを実現したのかというのを考えたくなる。
 人類が直立二足歩行を始めた境界はミッシングリングであり、直立二足歩行で重い脳を支えられるようになったということ以外、未だに良く分かっていないようだ。アーサーCクラークはシンギュラリティの訪れをモノリスで表現していた(と言えると思った。今となってではあるが。2001年宇宙の旅は古い小説・映画なので…)。

 他に知的な振る舞いをする生物の例として、蟻はマルチエージェントシステムであり、単機能のエージェントが多数集まることで高機能を実現している。自己複製をすれば良いという観点からでは、人間でも蟻でもゾウリムシでもタンパク質的にはなんでも良いのかもいれない。しかし、蟻塚程度の生成物では人工物とは比べ物にならず、シンギュラリティを越えたのは唯一人類である。

 なお、人間においても狩猟時代、農耕時代、工業時代、情報時代と段階がいろいろあるが、これは人間が使いこなせる道具が進歩したのであって、人間の知性の質はあまり変わっていないであろう。そのため、外界モデル、身体モデルを作る際にも、まずは狩猟時代を想定するので良いと思う。ちなみに、道具の進歩は加速度的であるが、ようはシステムの進化は加速度的であるというのがカーツワイルの著書の本質である。

tomotomo47.hatenablog.com

 

 別項で、具体的に脳モデルのニューラルネット入力層をどうするべきかについて考え始めているが、視覚についてはCNN、言語認識ではRNN?、エージェントアプローチ等種々のアルゴリズムがあり、それらを複合したニューラルネットを作るなど、どうするべきか良く分からない。特に、以下に迷いがある。

 作ろうALifeに載っていたエサの量や方向を探知して行動を決めるニューラルネットエージェントは、知性には遠く及ばないが、実は私の信じる「探知→行動」アルゴリズムに則っている。やっぱり「探知→行動」では駄目なのではないか。あるいはこれに視覚センサのCNNを通した認識結果を入力するべきなのか。しかし、ニューラルネットエージェントへの入力は1ニューロンに対するスカラー量であり、CNNでの認識結果など入力できないであろう。やはり、認識結果を判断するユニットが必要なのかもしれない。等。

 そこで、自分の立ち位置を今一度明確にしておこうと思った。

  • 生物は探知→行動のループで動作する(探知→判断→行動ではない)byブルックス
  • 生物が複雑な動作をするのは環境が複雑だからだ byブルックス

  この2つの原理が正しいことは譲らない。
 環境が複雑になっていけばエージェントはより複雑な動作をするようになり、いずれシンギュラリティを越えるであろう(脳の容量の担保があれば)。従って、外界モデル、身体モデルを通し脳モデルに複雑さを味あわせることが基本であることに変わりはない。


 環境には別個体のエージェントも含む。それらと会話することが環境の複雑さを大いに増すであろう。会話をすることも、探知→行動のループであり、「判断」は入らないのではないか。実世界で会話していても、実は自分の発言は自然に反射的に出てきて、考えていないことがある。また、そもそも人が何かを考えるということは、自分の発言を自分が聞くことではないか。
 ようは、判断という機能を脳モデルにはいれず、他エージェントや自分の発言も入力として、判断という機能が介入せずに会話を含む行動をとっていくことを目指したい。(End-to-Endと似たような形になっていくのかもしれない。自動運転で言われるEnd-to-Endは、あくまで判断をやらせようというものではあるが)

 なお、外界と身体を記号化する、というのがブログ筆者の主張の一つであるが、エージェントに会話機能を持たせるには、記号化された外界と身体に基づいた独自言語を導入するのが良いと思う。独自言語とは、トールキンのようであるが。

 結論としては、複雑な環境に応じ(会話を含む)複雑な行動をさせていく、それが十分複雑になれば、シンギュラリティを越えていけるのではないか、ということです。

 

 それにしても、おなかがすいたと誰かが発言したのを聞いたら、あいつはおなかがすいたんだなぁと理解するにはミラーニューロン系の仕組みが必要になる可能性が高い。エージェント内部に外部モデルみたいのが必要になってくると、ブルックスの言う「表象無き知性」に反するのであまり良いとは思えないのだが…。