趣味記録

自転車、本、PCなど色々

人工知能は実は知能じゃない!......かもしれない

 

 警告

 最初に言っておきますが私は人工知能を研究してるわけでも情報系に特別詳しいわけでも何でもないです。ディープラーニングについて多少知識があるといってもCNNがわかるだけでRNNもGANも全く知りません。このことを知ったうえで絶対に鵜呑みにせず、にわかがなんか言ってるぜと思って読んでください。タイトルに「かもしれない」ってついてるのはそういうことです。内容の間違いに気づいた方は指摘してくださるとうれしいです。

 なお、最近の人工知能といえばディープラーニングのことなのでここではディープラーニングについて説明していきます。また、この記事は直感的な説明を行うのが目的のため、多々飛ばす要素があります。

 ディープラーニングとは

 私はディープラーニングとは「計算でごりおしする関数近似器」だとおもってます。

下の画像は一番簡単なネットワークを表しています。(画像はネットからとってきたのを加工しました)ディープラーニングといっても色々種類がありますがこれはすべての基本となる構造です(多分.....)。まず前提として入力層からデータは入力され、線を伝って出力層までいきます。データと大仰に書きましたが要するにただの数字です。

f:id:arark:20170730182048j:plain

 で、下の画像が局部的に拡大したものです。ペイントでつくりましたクオリティは許してください。左からデータが伝わってきてそれぞれ掛け算して足し合わせ右に流す、という仕組みになってます。(ほんとはほかにもやってますがこの記事では無視します)線に紐づけられてる数字(画像では2.1, 1.8, 3.6のこと)を「重み」といいます。

 f:id:arark:20170730181447p:plain

 以上がネットワークの簡単な説明です。これをちょっと大きくするだけで90%以上の精度で手書き数字認識ができます。

 さて、上でネットワークの説明をしたので次は人工知能の学習について話します。あたりまえですが人工知能はなんらかの規則性があるものしか学習してくれません。パン屋の時間帯ごとの来客数は学習できますが、さいころがどのような順序で数字をだすのかは学習できません。ここではある日の(最高気温, 最高湿度, 日照時間)がわかっているときにその日の熱中症患者数を学習したいとします。f:id:arark:20170730182048j:plain

 まず上の入力層の上から順に(最高気温, 最高湿度, 日照時間)を入力すると約束します(説明くどいですが一応)。入力された数字は線を伝って掛け算と足し算を繰り返し出力層へながれていきます。最初、重みは全くのランダムです。ランダムの値をかけて足していったので出力される値もランダムです。たとえば(最高気温, 最高湿度, 日照時間)=(40,90,15)をネットワークに入力して10が出力されたとしましょう。しかし現実では100人の患者がでています。ここで全部の重みを少しずつ増減させ、出力値を確認します。ある重みを0.1増やした時に出力値が11になった場合これは正解に近づいているといえます。この作業を大量のデータに何回も繰り返すことで人工知能は学習し、未知のデータに対しても予測ができるわけです。(前述したとおり大幅に簡略化しています)

まとめ

 以上の説明から何が言いたいかというと、人間の脳細胞を模したニューラルネットワークを使っていかに人間らしい判断ができたとしても、人工知能は意識をもちクオリアを感じて判断しているわけではないということです。そういう意味でのタイトルでした。最近facebook人工知能が暴走したとかいうニュースがありますが恐らくただの比喩です。多分きっと。そもそも人工知能はどこまでが人工知能なのか・・・定型文をかえすBOT人工知能ではないのか・・・という問題にもなるのですが。

 繰り返しますが以上の主張は私の妄想です。誤りが含まれている可能性が多分にあります。