0
会員になると、いいね!でマイページに保存できます。
いま、「人工知能」という言葉を聞かない日はないほど、「人工知能」に関する技術には注目が集まっており、人間の知能を代替するような「強い人工知能(汎用人工知能:AGI)」が期待されている。多くの研究者がAGIの実現に向けて研究開発を行っている一方、いまだ機械が乗り越えられていない問題が存在する。それは、機械学習の分野で古くから指摘されている「意味の理解」に関する問題である。「意味」というものが何なのかを理解することによって、現状の「弱い人工知能(特化型人工知能)」にできることとできないこと、そして人工知能を研究し、ビジネスで利用を検討する上でのヒントが見えてくる。
なぜ人間のような「知能」を持つマシンが実現できないのか
いま、「人工知能」という言葉を聞かない日はないほど、巷には人工知能に関する有象無象の情報があふれている。”人工知能”という言葉からは、まるで人間と同等かそれ以上の「知能」を持つマシンが既に実現しているのではないかというイメージを持ってしまう。
しかし、「人間の与えた計算を実行するマシン」は存在しても、人間の知能を代替するような「強い人工知能(汎用人工知能)」 の実現は、極めて難しいということが指摘されている。
強い人工知能の実現に向けて、最も大きな問題となっているものは何か。それは、端的に表現すると「意味の理解」である。
この記事では、機械が最も苦手とする、意味の理解について論じていきたい。「意味」というものが何なのかを理解することで、人工知能にできることとできないこと、そして、今後の人工知能研究が目指すべき方向性が見えてくる。
なぜ機械は「意味」を理解することが難しいのか
突然だが、機械(コンピュータや人工知能)はものを「見る」ことができるだろうか。
ものを見る機械と言うと、すぐに思いつくのが「カメラ」である。コンピュータ(電子計算機)やロボットも、「目」のあるロボットは、基本的には「カメラ」を「目」にしている。「カメラ」を「目」にしているロボットは、ものを見ることができるのだろうか。
ロボットの目である「カメラ」(特にデジタルカメラ)のレンズと、人間の目の中の「網膜」は仕組みが良く似ている。カメラのレンズに投影された映像は、格子状に並んだ「画像センサー」に投影される。こうして実空間上の映像は、格子状に並んだ画素(ピクセル)の集まりとして表現される。
人間の目に入る光もまた、網膜に並ぶ網膜細胞に投影される。すなわち、ロボットの目も人間の目も、「画素(ピクセル)の集まり」として、外界を「表現」しているのである。
しかし、ロボットの目はものを映しているだけであって、それだけではものを「見ている」とは言えない。画素に光が表現されているだけでは、「どこにどんな物体があって、どのような様子か(姿勢や動き)」を理解することは極めて困難である。下図の右側を見ると、私たちの目には「2匹の馬が草を食べている様子」が見える。
しかしながら、ロボットの目には拡大した左側の図のように、無味乾燥なピクセルの羅列が映るのみであり、「どこからどこまでが馬なのか」「あるピクセルと隣のピクセルがどういった関係なのか」といった情報は、何も読み取れないのである。
このように、ただ「カメラ」があるだけでは「ものを見る」ことは到底実現できず、画素の集まりである画像や映像の中から、「もの」を見出すことが必要となる。それでは、機械はどのように「ものを見ている」のだろうか。近年盛んに研究されている「ニューラルネットワーク」の場合を紹介したい。
スマートフォンのカメラが「顔」を認識できる理由
ニューラルネットワークは、「脳の仕組みを模した計算方法」であると説明されることが多い。しかし実際のところは、脳の働きすべてを模したものというわけではない。
脳の「神経細胞」を結合してネットワークを形成すると、そのネットワークには「記憶」を埋め込むことができると知られている。これにより、次々にデータを与えてネットワークの構造を変化させていくと、そのネットワークは、まるで、人間が記憶を学習していくように成長していくように見える。この工学的な仕組み自体が、「ニューラルネットワーク」と呼ばれているのである。
データを次々に学習していくと聞くと、まるで人間が記憶を学習して成長を繰り返していくように感じられる。そして、機械は人間と異なり、疲れを知らず、膨大なデータであっても高速に処理することができることから、人間の何倍ものスピードで成長していくもののように聞こえてしまう。
このような(誤った)感覚が、ニューラルネットワークに対して過度な期待と不安を生み出し、その結果として、ブームと呼ばれるものが形成されてきた一因だ。
ここで、ニューラルネットワークが実際に行っている処理を簡単に説明する。たとえばニューラルネットワークに、さまざまな形状の「りんご」と「みかん」を記憶させるとする。そして、人間はそのニューラルネットワークに対し、そのそれぞれがりんごであるかみかんであるかを教える。
すると、ニューラルネットワークは、そのネットワーク構造の中に、りんごとみかんの境界線を作り出す。この境界線を作ることが、ニューラルネットワークにおける、「学習」に相当する。
すなわち、データを学習したネットワークが行う作業は、「境界線を作る」という作業に過ぎないのである。
もちろん、この「境界線を作る作業」をバカにすることはできない。りんごを認識しようとした場合、(理想的には)世界中のあらゆるりんごの情報を集め、あらゆる「りんごでないもの」の情報を集められれば、この方法であらゆるりんごを認識できる。
そして、世界中のりんごを集めないまでも、ある程度の数の「りんご」と「りんごでないもの」のデータを集めておけば、100%ではないにしても、ある程度の「りんご認識」を、確率的に行うことができる。
当然ながら、りんごをりんごとしてではなく、画像などのデータにしてしまうので、光の加減などによって、確率的には誤ってしまうものの、それなりに使い勝手の良い「りんご認識システム」を作ることができる。
こうやって実現しているのが、スマートフォンのカメラにも搭載される、顔認識をはじめとする、さまざまな「物体認識技術」なのである。ニューラルネットワークをはじめとする物体認識技術は、「確率的に認識する」ため、うまい使い方をすれば使い勝手が良い。一方、光の加減などの撮り方によっては、確率的に予想もしなかったような誤作動を起こしてしまうということもある。
【次ページ】機械はどんな仕組みで「認識」するのか
関連タグ