gooブログはじめました!

写真付きで日記や趣味を書くならgooブログ

人間の思考中枢をつくり上げる

2013-08-25 11:48:59 | インポート

 Ray Kurzweil著の How to create a mind (Penguin Group)を読んだ記念に、著者が主張したい中心思想と思われるものを記録に残しておきたいと考えた。この本の主要なテーマは、ヒトの大脳の思考中枢である新皮質がどのように働くかを追求することであるが、それは、最新のAI(人工知能)の開発そのものと言ってもよい程に、AIと深い関係をもっている。

 ヒトの大脳の一部である新皮質は、厚さ2.5mmほどの膜であるが、6層から成っている。その基本ユニットは、パターン認識機構(モジュール)である。1つのパターン認識モジュールは、およそ100ニューロンから構成され、新皮質には3億個ほどの認識モジュールがあると推定される。そして、認識モジュールは、パターンの構成に従って、階層構成となっている、と考えられる。以下、新皮質のモデルとして考案されているパターン認識モジュールの構成と動作についてまとめる。

 各モジュールは、下位層のモジュールからそれぞれ信号を入力する複数のdendriteと、上位層のモジュールへ認識信号を送信するaxonとを有する。また、モジュールは、上位層からの期待信号を受け取ることができる。各dendriteは、接続されている下位モジュールに期待信号を送ることができる。

 各dendriteは、ウェイト、サイズおよびサイズの変動性の各パラメータをもつ。ウェイトは、入力される信号の重要性を示す。サイズは、入力される信号の期待される長さである。変動性は、そのサイズがどの程度変動するのかを示す。モジュールは、上位へ認識信号を送るためにそれを発火させ、上位層のモジュールへ信号を送るか否かを決めるための「しきい値」をもつ。基本的には、各dendriteへの入力信号の大きさにウェイトを掛けて全dendriteについて合計した値がしきい値を越えるとき、モジュールは発火となる。

 例えば、印刷文字や手書き文字の最下位パターンは、文字を構成する垂直線分、水平線分、左斜め線分、右斜め線分、PやOを構成するループなど、文字要素であり、各々を認識するモジュールがある。次の上位レベルパターンは、A,B,Cなど英文字である。各文字には、フォントの違いや手書き文字の違いなど変形が許されるので、これらを認識可能なだけの数のモジュールが必要である。英文字の上位パターンは、APPLE,PEAR,・・・など英単語であり、各単語ごとにモジュールが必要である。例えば、APPLEという単語をみたとき、各文字ごとに文字要素を認識した後に、認識した文字要素からの認識信号を入力信号として文字を認識し、次に認識した文字列からの認識信号を各々入力信号として英単語を認識し、さらに認識した英単語からの認識信号を入力信号としてその上位の単語の意味認識に移る。

 音声認識に関しては、最下位パターンは、話される単語を構成する音素である。例えば、steepという単語を発音したとき、[s],[t],[E],[p]が音素である。サイズは、音素が発音されている時間的長さであり、変動性は、サイズの変動程度を示す。[t]と[p]は、ともに期待されるサイズは短く、変動性は小さい。[s]は、サイズが短いが、延ばして発音されることがあるため、変動性が大きい。[E]は、期待されるサイズは長く、変動性も大きい。音素の上位レベルパターンは、steep,appleなど、発音された単語である。各音素モジュールは、担当する音素を認識したとき、上位モジュールへ認識信号を送る。各単語モジュールは、認識した音素列からの認識信号を各々入力信号として単語を認識し、その意味を認識するために認識信号を上位モジュールへ送る。

 感覚器官からの情報が2次元情報であるとしても、モジュールへの入力情報は、常に時間の経過に従って流れる1次元情報のリストである。「メモリ」とは、実際にはリストの形式をしたパターンのシーケンスであり、単独のモジュール又は並列するモジュール列によって実現される。つまり、パターン認識モジュールは、メモリと論理回路の両方の役割を果たすことになる。

 そういうことであれば、大脳の思考中枢として多数のパターン認識モジュールを装備した人間は、森の中で獲物となる動物を見つけたり、人の顔を認識することは得意であるが、物理学や数学を習得するなど、抽象的な思考をするのは苦手である、というのも納得できる。

 それにしても、今まで、大脳には一時記憶として使用される短期記憶を司る部位と、人の名前など長期に亘って情報が保存される長期記憶を司る部位とがある、と教えられてきた。こう書くと、コンピュータからの類推で、大脳の記憶部位と論理回路の部分とは別のように聞こえる。しかし、短期記憶/長期記憶の区分は、同じパターン認識モジュールをその学習程度で区分しているものと考えれば、矛盾はない。単発の入力信号(情報)を受け取るモジュールが前者で、充分学習が済んで固定した情報を保存するとともに、該当する情報を受け取ったときそれを認識するモジュールが後者ということだろうか。

 もし、モジュールが、上位のモジュールから期待信号を受け取ったならば、そのしきい値を下げてそのモジュールの発火を容易にする。あるいは、単にウェイト付けした入力値の合計にその期待信号を加えることによって、そのモジュールへの入力信号が欠落している場合にも、そのモジュールを発火できるようにする。

 モジュールは、サイズ・パラメータおよびウェイト・パラメータを用いて、実際の入力によってそのパターンが現れたか否かを示す全体的な確率を計算するものとする。モジュールは、入力信号のサイズとモジュール内のサイズ・パラメータとを比較し、その結果を確率の計算に反映させる。そのモジュールが過去に学習した成果が保存するサイズやウェイトのパラメータに反映され、これらパラメータの現在値が確率の計算に反映されるようだ。

 情報は、モジュールの階層を下位から上位に向かって流れるだけでなく、上位から下位へ下方向にも流れる。‘APPLE’認識モジュールは、‘APPL’のように入力信号が欠落していても、確率計算によって‘APPLE’と認識し、下位の‘E’へ期待信号を送る。‘APPLE’モジュールは、‘E’モジュールから入力信号を得て、ウェイト付けした入力値の合計がしきい値を越え、モジュールの発火に達するのであろう。

 ヒトの大脳がもつ重要な特性を一言で表すものとして、autoassociation(自動補正とでも訳すのだろうか)invariance(不変性)という概念がある。

 自動補正とは、例えば、‘APPL’のように入力情報の一部が欠落していても、可能性からみておそらく‘APPLE’のことだろうと判断して認識モジュールがそのように判定する能力のことである。また、他の例では、楽器で演奏される音は、一般に複数の周波数成分からなる複合音であるが、そのうちの一番低い周波数成分である基本周波数をわざと欠落させた音を発生させ人に聞かせても、大脳は、残っている倍音成分から基本周波数成分を推定して補正する。その結果、欠落した基本周波数成分が知覚される。あるいは、人の顔のイメージからかなりの画素を削除したものを提示しても、その人の顔の特徴的な部分が残っていれば、大脳は、誰の顔か正しく判定できる。

 不変性とは、例えば、手書き文字のように個人差によって文字が大きくデフォルメされていても、大脳が何の文字か判定する能力のことである。他の例では、人の話す言葉は、個人差によって周波数帯域も継続時間も大きく異なるにもかかわらず、大脳は、話される言葉が何かを認識する能力をもつ。このように、大脳は、入力される情報が変形されていても、過去の学習経験から入力情報に該当する不変なパターンは何かを推定する能力をもつと考えられる。

 従来のニューラル・ネットを用いた大脳のシミュレーションは、ネットを構成する各ニューロンが、下位ニューロンからの各入力信号の大きさにウェイトを掛けて全入力について合計した値がしきい値を越えるとき、上位ニューロンへ認識信号を送る。この機能によって、不変的な情報が入力される限り、ニューラル・ネットは情報を正しく認識できる。しかし、ニューラル・ネットには確率計算の仕組みがないために、大脳がもつ自動補正や不変性の能力をシミュレートすることはできなかった。

 パターン認識モジュールをユニットとする階層ネットワークには、認識プロセスの大枠を確率過程のトポロジーで設定するマルコフ・モデルと、学習経験を通じてモジュールのしきい値やパラメータ値を求める遺伝的アルゴリズムと、パラメータの現在値を用いて行う確率計算との3つの方式が適用される。

 適用されるマルコフ・モデルは、hierarchical hidden Markov models(HHMM)と呼ばれている。Hierarchical(階層的な)とは、マルコフ連鎖がパターン認識モジュールの階層構成に合わせて、階層構成をしているためだろう。hidden(隠された)とは、このモデルを大脳の動作に適用することが正しいと証明のしようがないので、あくまで仮説である、という意図が込められているという。

 例えば、‘APPLE’認識モジュールを例にとると、このモジュールに関しては、A,P,P,L,Eの各文字を正しく認識したか否かを各々判定し、それまでの全体的な確率を計算するステップが、状態として記述され、次のステップに遷移するために必要な確率が設定されているのだろう。

 A文字モジュールからの認識信号を入力した‘APPLE’モジュールは、A判定状態となり、それが本当にAである確率を計算し、設定された確率に達していれば、次のP判定状態に遷移してP文字モジュールからの認識信号が真か偽かを判定するのであろう。P判定状態では、入力された信号が本当にPである確率を計算し、それまでの全体的な確率を計算して、全体確率が所定の確率に達していれば、その次のP判定状態に遷移するのだろう。ここでの全体的な確率の計算式は、単純に連続した2つの独立事象の確率とみれば、「Aが真である確率×Pが真である確率」であるが、もっと複雑な計算式かも知れない。このようにして、最後のE判定状態で計算した全体的な確率が所定の確率に達していると判定すれば、合格となり、‘APPLE’モジュールは、上位モジュールへ認識信号を送信する。ただし、A,P,Pの判定状態を経て、L判定状態で計算された全体的な確率が、特に完了条件として設定された確率に達していれば、次のE判定ステップをスキップして、とりあえず合格とすることも可能である。

 このようなマルコフ連鎖が認識モジュールの階層構成に合わせて階層的に結合され、初期のトポロジーがマルコフ・モデルとして設定される。その後、パターン認識のシミュレーション・プロセスに合わせてこのマルコフ・モデルを参照し、使われないマルコフ連鎖の部分を削除してトポロジーを最適化していく。

 パターン認識のシミュレーションは、サンプル情報を目的のパターン認識モジュールに入力し、マルコフ・モデルを参照して必要なステップごとにパラメータ値を用いて入力信号に関する確率を計算し、それまでの全体的な確率を計算し、そのステップで認識動作を停止するか、次のステップへ遷移するか、そのモジュールの認識処理を完了して上位モジュールへ認識信号を送るかを判定する。この本では、確率計算は複雑なものになると述べ、その詳細を記述していない。

 量子力学では、物理現象からシュレディンガー方程式を作成し、この方程式の解から計算によって理論的な物理数値を求め、これを実験値と照合する。量子力学の理論は、ある種の仮定が加わった数学的手続きであり、それが正しいか否か証明しようがないので、あくまで仮説である。実験値が理論値と一致するので、量子力学の理論が正しいものとみなされている。

 Ray Kurzweilのパターン認識シミュレーションも同様であり、ヒトの大脳の新皮質が複雑な確率計算を実行しているか否か明らかでない。AIとしてのパターン認識シミュレーションが、ヒトの大脳の動作とよく類似した結果を出力すれば、モデルが正しいものとみなす、という結果オーライの考え方のようである。


再びナンプレのアルゴリズムを問う

2013-08-01 19:15:24 | ブログ

 朝日新聞の土曜版に数独の問題が掲載されていたので、私が紹介する第1フェーズと第2フェーズのアルゴリズムが適用できるのか否か、試してみた。その結果、このパズルは、第1フェーズと第2フェーズのいずれのアルゴリズムも適用できない難問であることが分かった。いやはや、ナンプレ(数独)とは、これほど奥の深いものであるのか。

 またしてもパズルの転載となるが、具体例がないと話を進めにくいので、以下にお借りします。