読者です 読者をやめる 読者になる 読者になる

人工知能ってなんぞや???

こんばんは。

ただでさえ友達が少ないのに友達みんな帰省してしまい、しかもお金がないというダブルパンチで、大晦日だというのにやることがなくて困っているりとささんです。

 

思えば今年はひじょおおおおおに濃密な一年間でした。

濃密すぎてちょっと疲れました(笑)あんなにおいしいダシがとれるのだからその素はもっとおいしいのだろうとおもって、味の素をペロッと舐めてオエッってなる感じです(伝わりますかね...笑)

 

僕の今の研究分野の機械学習を本格的に勉強し始めたのも、ちょうど1年ほど前からだったような気がします。

それまでは別のことを勉強していました。(物理モデルを用いた"最適化"による画像修復なので、一概に無関係とは言えないかもしれませんが)

勉強したことをここではちょくちょく記録して振り返ろうと思うのですが、その前に機械学習が何たるか、勉強してわかったことから俯瞰的な立ち位置で、今年の締めくくりとして大雑把にかつわかりやすく頑張って説明してみたいと思います。

 

最近人工知能がアツいですよね

アツくないですか?(笑)

ちょうど人工知能ブームが来る直前にこの世界に入った感じなので、我ながら先見の明があったのだなあと。(すみません本当に超たまたまなんです)

 

あらゆるメディアでもてはやされている人工知能ですが、無理もありません。

最近ではGoogleが開発したAlphaGoという人工知能囲碁ロボットが、囲碁のトップ棋士に4勝1敗で勝ち越しました。

1990年代ごろだったかな...すでにチェスではヨーロッパのどこかの国のチェスチャンピオンが機械に負けているのですが(それにまつわるある心温まるお話も聞いたことがあるのですがそれはまた別の機会に笑)、チェスと囲碁とを比較すると、取りうる盤面の数が桁違いで囲碁の方が多いので、長年機械は人間には囲碁では勝てないと思われていました。

 

また、今医療診断に人工知能を導入しようとする動きもあり、実際にアメリカ軍の医療機関では医師でも発見が難しいガン細胞を画像から見つける人工知能が導入されています。

 

国内でももちろん研究がどんどんされていて、東京大学合格を目指す人工知能「東ロボくん」の開発も記憶に新しいです。

実はもう今は東大合格は諦めているようなのですが(人間が持ち合わせている「常識」が絡んでくる問題や、言語処理系の問題がやはりまだ苦手なようです)、それでも数学の全国模試で偏差値68を出したりしています。

 

このように「機械ができること」がどんどん増えていっています。

しかし一方でそれに対して恐怖心を覚える人もいて、ひょっとしたら人工知能が人間の知性を超える「技術的特異点(シンギュラリティ)」の到来も絵空事ではないのではないかと思う人もたくさんいるようです。(僕自身はこのシンギュラリティの到来には懐疑的な立場なのですが、その理由はこのブログの最後に述べます)

 

人工知能って中身どーなってんの?

しかしいくら「知能」といっても、所詮は機械のなかで行われる計算が導き出した「人口」のものなので、機械の中ではめまぐるしく計算が行われ、その結果を反映させているにすぎません。

この裏で動かしているアルゴリズムのことを、総称して機械学習アルゴリズムとよんでいます。

機械学習アルゴリズムには本当にたくさん種類があり、とても挙げきれるものではないのですが、超大まかにわけると、「教師あり学習(supervised machine learning)」と「教師なし学習(unsupervised machine learning)」にわけられます。(本当は強化学習や、半教師あり学習などの亜種もあるのですが、脇においときます笑)

人工知能というと、小難しいことが内部で起こっているんだろうと思われがちですが、細かいアルゴリズムはさておいて、やっていること自体は至極単純です。

 

  • 教師あり学習

教師あり学習とは、ある解きたい問題があったときに、それに対する「問題」と「答え」を与えて機械に学習させていき、そのモデルで今度は「答え」がない問題に対して予測、対処させるという方法です。

 

f:id:phyquar:20161231140709p:plain

 

 やっていることは、僕たちが学校でテスト期間中に経験した、「テスト前日に教科書の問題を見る→何らかの答えを出す→答え合わせ→間違っているところは勉強する→テスト当日→とりあえずわかってもわからなくても解答欄埋める」のプロセスと全く変わりません。

代表的な手法としては、ニューラルネットサポートベクターマシンSVM)が挙げられます。

 

教師あり学習の目標は、「未知の状況に対して、正解を予測する」ということに尽きると思います。

乱数を発生させてサンプルを作ってみました!下の図をご覧ください。

f:id:phyquar:20161231144430p:plain

 上の図は地図で、それぞれのプロットは観測した天気(赤が晴れ、青が雨)だと思ってください。

ここで、教師あり学習の一手法であるサポートベクターマシンというありがた~い手法を使ってこの二つの境界線を引くと次のようになります。

f:id:phyquar:20161231150908p:plain

 

なんか若干パラメータチューニングがうまくいっていない気がしますが(笑)

とにかく境界線が引けました。

この例では、「各サンプルの位置において、天気は晴れか雨か?」という問題に対して、「各地点におけるお天気データ(実際に晴れだったか雨だったか)」といった答えをもとに、学習を行っています。

 

「これができて何が嬉しいんだよ!」と思う方もいると思います。

例えば観測ができなかった次の緑の位置の天気を知りたいときはどうでしょう。

f:id:phyquar:20161231152230p:plain

 

このとき、もし境界線を作っておけば、たとえ本当の天気を知らなくても「この境界線より下側にあるから、この緑の点は晴れなんじゃないかな」と機械が予測することができます。

今のはすごく簡単な例でしたが、この「機械が結果を予測する」ということが実は昨今人工知能と呼ばれるものの礎になっていたりします。

 

  • 教師なし学習

教師なし学習とは、教師あり学習では「答え」が存在していましたが、その答えがないバージョンです。

f:id:phyquar:20161231155451p:plain

先程とは異なり、サンプルごとに「正解」は与えられていません。

ですが僕たち人間がこの図をパッと見たときに、「なんとなく右上と左下にかたまりがあるな~」ということが直感的にわかると思います。

ですがこのことは、機械にとって必ずしも自明ではありません。

が、教師なし学習のk-means法と呼ばれる手法などなどを使うと、いい感じに分離してくれます。

この、なんとなーくなかたまりを見つけるアルゴリズムクラスタリングと言ったりします。

このように、教師あり学習は「結果を予測する」という目的のアルゴリズムだったのに対し、教師なし学習では「データの背後に隠れた規則性を見つけ出す」という目的のアルゴリズムであるといえます。

それゆえ、教師なし学習での実験、とくにクラスタリングの実験では、正解か不正解かを測る尺度がないので、定量的な評価が難しかったりします。

僕の研究室の博士は、「クラスタリングの実験は評価のしようがないから、見た目の美しさで決まるんやで。あんなのアートやん」って言ってました。(笑)

 

シンギュラリティって来ますかね?来ませんかね?

どう思いますか?

実はえらい学者さんの間でも意見が分かれているようで。

このままの状態で技術が進歩していくと、2045年に人工知能の知性が人間をこえるのではないかという2045年問題というのも話題です。

 

matome.naver.jp

 

ちなみに僕は来ないんじゃないの?派です。(笑)研究しといてあれですけど。(笑)

 

まず、人工知能が人間の知性を超えるためには、自ら考え、創造するという、ある意味0から1を生み出すような発想の機構が必要になってきます。(でないと、その人工知能はそれを作った作成者の知性を超えることができません)

ここで、今まで述べたように人工知能の背後で動くアルゴリズムを考えたときに教師あり学習か教師なし学習かの大まかに二つに分類されるのでした。

しかしながら、教師あり学習はあくまで今までのトレーニングデータ(問題と正解)の積み重ねから、未知の状況に対して結果を予測しているにすぎません。

つまり、トレーニングデータからは全く想像もつかないような結果を出力するということはできません。

教師なし学習に至ってはその目的がデータの隠れた規則性を見つけることなので論外です。

唯一可能性があるとしたら、今まで説明しなかった強化学習かなとも思います。

強化学習とは、機械にある探索範囲内で自分でtryアンドerrorで「学習」をさせ、その結果をトレーニングに使うという、自学自習版教師あり学習です。

ですが、これも探索範囲や探索のルールを作成者が決めておく必要があるので、この範囲外の行動は機械はできません。

 

もう少し踏み込んで、今現在機械が人間を超えているものについて考えます。

だいたいこの3つなんじゃないかなあと思います。

  1. パワー
  2. 情報処理、伝達速度
  3. 情報記憶力

パワーについて、僕たちがショベルカーに勝てないのは言うまでもありませんが、そのパワーの源は、電気だったりガソリンだったりといった、エネルギー資源を力という形に変換しているおかげだといえます。

情報処理、伝達速度について、これらはICチップの中を電気がめっちゃ速く動いていたり、光ファイバーが光速(屈折率とかありますけど)で移動しているおかげです。

情報記憶力に関しては、2の情報処理速度が人間も速ければ、同じ土俵に立てます。

だって高速でメモを取ればいいんだもの(笑)

 

これらのことを考えると、1と2に関しては自然界の資源やその物質の特性の恩恵を受けてようやく人間を超えることができているといえます。

人間の知性を超えるということは、作成者が人間であるうちは、「知性の源泉」的なサムシングを見つけない限り不可能なのではないかなあと思います。

 

まとめ

 

と、ここまで言っておいてあれなのですが、人間に害のない形でならシンギュラリティ来てほしいです。(笑)

だって研究とか仕事とか機械にやらせればいいんだもの←

なにより夢がありますよね!

僕は幽霊は見たことないから信じてないんですけど、でも人間死んだらそれまでってのはなんか悲しいからいてほしい!みたいな感じに似てます。

 

大晦日。暇を持て余してたっぷり語ってしまいました。

なんだか最近忙しくて、何もやらなくていい(てか、お金がなくて何もできないんですけどね(´;ω;`))日は久しぶりでした。

ああすがすがしい。

てかコーヒーがうめえ。

 

全く人工知能機械学習を知らない人に、少しでも興味を持ってもらえれば嬉しいなあと思って書きました。

だって流行りものの人工知能の裏では、こんなに面白い世界が広がっているから。

 

次回からは勉強したことの備忘録、整理ノートとして使わせてもらいます。

最後まで読んでくださってありがとうございました。m(_ _)m

そして新年もどうぞよろしくお願いいたします。