人工知能は人間を超えるのか/松尾豊

人工知能

最近よく聞く言葉ですよね。僕だってもちろん聞いたことくらいありますよ。

 

「じゃあ説明してよ!」

え…?人工知能でしょ。えーっと…。あの…。あ、そういえば今日は予定があったんだったっけ…。あはは。今日はお先に失礼します。

って感じですよね。

 

IT企業につとめて、自社でも「人工知能」が使っているのに、これじゃいかん!

人工知能について説明できるイケてるIT系社会人になりたい!

と、いうわけで人工知能の国内第一人者、東大の松尾豊先生の本を読んでみました。

難しい部分はわからなかったので、僕なりに理解したり面白いなと思ったところだけまとめてみました。(詳細は調べられていないので怪しい箇所は自学ください)

 

そもそも出来ないわけがない。

松尾さんの思想として一番大きなテーゼはここ。

なぜコンピューターで人間の脳を再現できると言い切れるのか、というと、人間の脳はそもそも電気回路であるのだから。

 

 世にある人工知能の4つのレベル

人工知能って言ってもよくわかんないよ。なんか色々あるし。

そんな様々な人工知能を4つのタイプに分類したものが以下。

<レベル1>

マーケティング的に「人工知能」と読んでいるだけで、ごく単純な制御プログラムを搭載しているだけの電化製品に、「人工知能搭載」などと謳っているケース。学問的には「制御工学」「システム工学」に当たる分野の研究であり、実際に人工知能とはかなり違う

ex)エアコン・掃除機・洗濯機(あくまで一例)

<レベル2>

古典的人工知能。入力と出力のパターンの数が非常に多いもの。

掃除機ロボットや将棋のプログラムなど。

<レベル3>

機械学習を取り入れた人工知能。サンプルとなるデータをもとに自分でルールや知識を学習する。

<レベル4>

ディープラーニングを取り入れた人工知能機械学習する際のデータを表すために使われる変数自体を学習する。

 

って言ってもよくわかんないですよね。噛み砕いたのが更にこちら。

レベル1〜4の違い

例として、「たくさんの荷物が置かれた流通倉庫」で使用される人工知能を想定すると、

レベル1:縦何センチ以上、横何センチ以上、高さ何センチ以上の荷物は「大」のと頃に移動する。何センチ〜何センチは「中」、それ未満は「小」と厳格なルールのとおりに動くだけ。

レベル2:レベル1の動きに加えて「割れ物注意のタグ」がついていれば慎重に扱い、天地無用であれば上下は入れ替えないなど、荷物の種類に応じても動きが変わる(入力と出力が多彩)

レベル3:最初から厳格なルールは与えられていない。幾つかのサンプルで「これは大」「これは中」「これは小」ということを学ぶと、次からは自分で判断をして仕分けられるようになる。

レベル4:たとえばゴルフバックがあったときに「このタイプの荷物はサイズ的には「大」かもしれないが、他とは明らかに異なる形状なので特別扱いした方がいい」と気が付き、自分でルールを作るなどの動きをとる。

 

人工知能もだいたいこの順番で発展をしてきており、レベル3とレベル4が生まれだしたのはつい最近のこと。

このあたりを歴史を追いながら説明していきましょう。

 

第一次AIブーム(1950年代後半)

「推論」「探索」を行う。将棋やチェスなどのように明確にルールが決められた世界での問題は解決できるようになったが、普段人間が直面するような答えのない問いに対して思考するという課題の解決は出来ない。

第二次AIブーム(1980年代)

「知識」のインプットが必要であるとされた時代。

医療であれば「病気に関するたくさんの知識をインプット」、弁護士の代わりをしようと思えば「法律に関するたくさんの知識をインプット」すれば良い。専門家の知識を入れたエキスパートシステムの開発が盛んになりました。

 

しかし「知識」をいれた人工知能はその「意味」を理解するというところには大きなハードルがあります。

人工知能の難問

人工知能の実現のためには非常に大きな問題がある。ここでは代表的なものを2つご紹介しましょう。

①フレーム問題

洞窟の中にロボットを動かすためのバッテリーが存在しており、その上に時限爆弾が仕掛けられている。ロボットはバッテリーをとってこないとバッテリー切れで動けなくなってしまう。

ロボット1号はバッテリーをとってくるように設計され、無事にバッテリーをとってくることが出来た。しかし時限爆弾も一緒に取ってきたためそのまま爆破されてしまった。

ロボット2号は、バッテリーを持ち出すときに爆弾も一緒に持ち出すかどうかを判断させるために「自分が何かをしたら、その行動に伴って副次的に起こること」まで考えるように設計された。その結果、バッテリーを前にして「自分がワゴンをひっぱたら壁の色が変わるだろうか」「天井が落ちてこないか」ありとあらゆる事象を考え、時間切れで爆発が起こってしまう。

ロボット3号は「目的を遂行する前に無関係なことは考慮しないように」と設計された。その結果動き出す前に「壁の色は今回の目的と無関係だろうか」「天井が落ちるかは今回の目的と無関係だろうか」と無限に考慮を始めてしまった。

フレーム問題は、あるタスクを実現するのに「関係ある知識だけを取り出してそれを使う」という人間が当たり前にやっている作業がいかに難しいかを表しています。

②シンボルグラウンディング問題

シマウマを見たことがない人に「シマウマという動物がいて、シマシマのあるウマなんだ」と教えたら、本物のシマウマを見たときに「あれが話に聞いていたシマウマかも知れない」とすぐに認識できるだろう。これは人間がシマとウマの「意味」を理解しているからできることである。

一方でコンピューターには意味を理解するということが出来ない。「シマシマのあるウマ」という知識を入れることは出来てもそれはただの記号にすぎないので、シマウマをもみてもシマウマというシンボル(記号)が、それを意味するものとグラウンド(結びついて)いないという問題が発生する。

 

このように知識を入れることは非常に大変であり、すべての知識を入れて人工知能と言うものを完成させることは不可能なのではないか。そこで第二次AIブームが下火を迎えてしまいます。

 

第三次AIブーム

2度のブームが下火になった人工知能でありましたが、「機械学習」が発展したことにより人工知能は一気に拡大をしていきます。

機械学習の誕生によって、あらゆる物事を「分ける」という処理ができるようになりました。一例では「新しく入力されたこのデータは過去に入力された◯◯というデーターと近い」などのように学習をしていく。例えば「手書きの3という数字」をすべて「3」だと認識するのには膨大な数の手書きの3と、これが「3」である、というインプットを繰り返す。それにより別の手書きの3が出てきたときにも特徴(特徴量)を掴んで、識別することができるようになったのだ。

ただし「機械学習」に於いて一点大きな問題があります。それは「特徴量」つまり入力においてどんあ変数を使用するかということは人間が判断しなければらないということです。

特徴量と言われてもわからないので、説明する例として次のようなものを考えてみましょう。

「年収を予測する問題」において特徴量を「性別」「居住地域」「誕生日」などどんな情報を用いて判断するのが適切かということを考える必要がある。例えば「居住地域」は年収に相関がありそうだが、「誕生日」は相関がなさそう。

このようにどんな変数を読み込ませるかということは予測の精度に大きく寄与します。機械学習ではこれをコンピューターが行うことできず、人間が頭を使って行わなければならなかったのです。

 

しかし、近年コンピューターが与えられたデータから重要な「特徴量」を生成する方法ができつつある。これが人工知能のブレークスルーになっているディープラーニング

「ネコ」という正解を与えることで、ネコの特徴をコンピューターが自動的に学習して行く。そうすることで次にネコを見たときにも「これはネコだ」と判断することができる。

機械学習では、「ネコの特徴」(目や耳の形、ひげ、全体の形状、鳴き声など)の部分を人間がインプットしなければならなかった)

 

上述の手書きの3についての話で言うと、「典型的な3のかたち」を一回教えてしまうと、似たような3があるとそれを一度相関するものとしてまとまりにして、そこから特徴を抽出して3のルールを自分の中でつくってしまうということになります。

 

シンギュラリティ(技術的特異点

ディープラーニングが言われていることで「人工知能が人間の仕事を奪う」ようになるなど様々なことが言われるようになりました。そこで大きく言われているのがシンギュラリティ(技術的特異点)です。

シンギュラリティとは「人工知能が自分の能力を超える人工知能を自ら作り出せるようになる時点」と言われています。

数学的に考えるとわかりやすいのですが、例えば0.9を1000回かけてもほぼ0になるだけだが、1.1を1000回かけると10の41乗にもなる。この時点を超えると人工知能は無限大に進化することができると言われているのです。

松尾先生は人工知能が人間を超えて侵略をするということは説いていない。今後人工知能が発展すれば人間の社会に大きなインパクトを与えることは間違いないでしょう。