機械学習って、膨大なデータを人間がわかるようにしてくれる作業なのね

How artificial intelligence are doing supervised learning, unsupervised learning.

皆さんこんにちは。Amazonで早速AI関係の本を購入したKusunoko-CIです。

Amazonってホント便利ですよね。しかも最近では私のクレカのポイントが、6倍になるキャンペーンをやってまして、該当日にはついついぽちっとしてしまうのです。

で、私はかなりAmazonファンですが、どんなサイトであれ、購入履歴から「こんなのいかがですか?」的な提案を見かけますね。あれがいわゆる機械学習で導き出された答えで、私たちこれでもかーとものを売ってくるわけですね。決して人間が画面の向こうでずーっと我々の購買活動をチェックして、やっているわけではないです。

そんなわけで今回は、意外と身近にある、機械学習を学んでみたいと思います。

機械学習

もちろんこれ自体はAIではないということは以前お話ししました。そもそもお勉強方法ですよね。

ちなみに、「機械学習において、繰り返し処理を行い目標となるモデルに近づけることを『学習』といいます」(AI研究所さんより)とのこと。

いっぱいバットの素振りをして、イチローみたいになるということですね。

いわゆる将来的に、我々がイメージしているようなAI=ドラえもんみないな汎用型AI(モデル)を実現するため、各国・各社、しのぎを削っています。

で、そのために、機械は学習していかなくてはいけない。この、まだまだ赤ちゃん状態のコンピューターが、いろいろなことができるようになるために必要なプロセスです。

で、その学習というのが、もちろん人間がいてあげないとできないわけですね。そこでまずは、「教師あり学習」という話になります。

「教師あり学習」

ラベル付きのデータで学習させる方法。

つまり猫の画像を正解として見せる(ラベル付き)。猫だとわかる。でも1枚見ただけじゃわからないので山ほど見る。例えば10万枚とか100万枚とか見る。そうすることによって猫の「特徴」とされるデータを集めていく(特徴量)。ということは、学習するためには膨大なビッグデータが必要になる、ここまではわかりやすいですね。

基本人間がデータとその正解を与え、一緒に学んでもらうんで「教師あり学習」と。

一応Wikiさんがなんって言ってるか、見てみましょう。

教師あり学習(きょうしありがくしゅう, 英: Supervised learning)とは、機械学習の手法の一つである。事前に与えられたデータをいわば「例題(=先生からの助言)」とみなして、それをガイドに学習(=データへの何らかのフィッティング)を行うところからこの名がある。

単純に言えば、答え合わせということですかね。

「教師なし学習」

「教師あり」があるなら「教師なし」もあるはず、ということで、機械学習には「教師なし学習」も存在します。

今回はまずWikiさんで確認。

教師なし学習(きょうしなしがくしゅう, 英: Unsupervised Learning)とは、機械学習の手法の一つである。「出力すべきもの」があらかじめ決まっていないという点で教師あり学習とは大きく異なる。データの背後に存在する本質的な構造を抽出するために用いられる。

「教師あり」は、上の例では“猫”見つけだすことでしたね。コンピューターが“猫”正しく言い当てられたら、それは正しい学習をしたということです。

で、「教師なし学習」は、「主にデータの特徴を捉えるための用途に使われることが多」(AI研究所さんより)いのだそうです。具体的には、冒頭でもお話したAmazonのサイト商品推薦。ああいうのですね。

で、その手法としまして4つ。

1.クラスタリング

クラスタリングは、Clusterという英語ですね。集団とかいう意味です。Clusteringということで集団やグループにまとめることですね。

データの中での似ている性質の集まりを見出す手法であり、そしてその似たもの集合を作成するというイメージです。(SiTestさん)

〇とか×とか▲がいっぱいあったとき、それをグループに分けてくれる。年齢・性別・居住地域などでグループを作って、そこからそのグループはこういうものを買ってくれるんじゃないかという予測をたてたりするのに役立ちます。

2.主成分分析

これは、散布図があったときに、そこにえいやっと線を入れることで、大まかな傾向をつかみやすくしてくれる、統計学上のデータ解析手法のひとつ。

散布図は品質管理でもつかわれる手法ですが、これはさらに難しいです。

コンピューターはいわゆるビッグデータ=大量かつ様々な情報を取り扱います。膨大であるがゆえ(多変量、多次元)なので、そのままではなんだか理解できないです。

そこでこの主成分分析を行って、データの持つ情報をできる限り失なわず、それでいてデータ全体の雰囲気を見える化し、誰もが理解しやすい形にすることが可能ということなんですが。雰囲気でわかるようにしてくれる優れものですね!

正直、統計や多変量解析の知識がないと、プロセスの理解は無理です。Kusunoko-CIですか? 散布図までです!

株式会社インテージさんのサイト参考にしました。具体例もあります。)

3.自己組織化マップ(SOM)

勝手に整理整頓 ─ 自動分類アルゴリズム サイトより

これに関しては池谷裕二さんという東京大学薬学部の教授の書かれたサイトがとても分かりやすいです。

勝手に整理整頓 ─ 自動分類アルゴリズム

このサイトでは、とても簡単なプログラムでも、時間がたつと自然に分類分けができてくる実際の例を見せながら、この自己組織化マップというものを説明しています。

2番目の主成分分析もそうですが、大量のデータを瞬時に理解しやすいものにするのは大変です。ですが、コンピューターはこの自己組織化マップという方法で、それをわかりやすい形に分類して我々に見せてくれます(視覚化)。これもなかなかいい機能だなー。

4.ベクトル量子化

そして最後になんだかすごいの来ました。ベクトルで量子化ですよ。高校2年の時ベクトルで躓いた私は、どうしたらいいんでしょうか。

やまほどネット情報をあさって、多分一番ここがわかりやすいです。ちょっと覗いてみてください。

ソフテックだより「ベクトル量子化を用いた情報圧縮」

一番わかりやすくてここですよ。難しいでしょう?

Kusunoko-CI、自慢じゃないですが、完全な文系人間。エンジニアでもないです。

正直、ほかのサイトでは全く分からなかったですよ。ここが一番わかりやすい。でもまだ難しいですよね。

でも、わからないでは済まされない。私は、このAI関連のことがわかっている人と、そうでない人との極端な二極化を、なんとか避けるための懸け橋になっていきたいのです。

とりあえずよく読んだので、理解はしました。が、これをどう人に説明すればいいのだろうという。

何を言ってるかというと、ある程度似た者同士まとめてしまえば、正確さは失われるけどデータ量の圧縮にはなるんじゃね? ということです。

そりゃそうだ。佐藤、左藤、 佐東、佐棟を一個にまとめりゃ、違いを記した漢字を全部伝える必要ないですもんね。

でそれを「佐トウ」(セントロイド、centroid=重心です)というふうにしてしまって、それを次に佐トウなんだけれども、そこに佐トウであったり、佐トウであったり、佐トウであったりする微妙な誤差も、えいやっと「佐トウ」という書体で書くことに決める。

そすることによって、正確さはある程度失われてしまうけれども、「佐トウ」であるという情報が伝わり再現可能となる。こういうことでしょうか?

この「量子化する」というのがわからなくて いろいろ調べてみたのですが

連続的な量をとびとびの数値で表す

「ある連続量を、データ量削減のために、最も近い不連続値に近似化して、値の精度を落とすこと」

とか出てますが、何言ってんだお前?

Wikiさんから

これならわかる。レコード音源(青い線:アナログで切れ目ないやつ)をCDで再現するときに見られる現象だ! おおざっぱにしていく(赤い線)のね!

なるほど、画像認識、音声認識につかわれる技術なんですね。これたぶんスマホの顔認証でアンロックかけてる人もいると思うんで、わりと身近な技術ではあると思うのですが。

要は、アナログのままだとデータとして検知しようのないものを、デジタルにする(単純化)ことで機械でも検知できるようにする、という技術。

検知できれば、例えばセキュリティ関係は飛躍的な進歩になりますね。膨大な量のデータにアクセスさせ、学ばせ、この人の顔・あるいは声はOKみたいな結果が得られれば、機械に学習させている意味がありますね。

この辺は最終的にNECさんのサイトで理解しました。

まとめ

今回は、機械学習のあれこれでした。

たいへんためになりましたが、極めて難しい。ほんとにね、何度も挫折したくなるようなわかりづらさでしたよ。

なんだろう、わかってる人が書いてるからでしょうか。あるいは彼らに言わせれば、「そんなこともわからないのか」という気持ちなのかもしれませんが。

最後のベクトル量子化なんて、ものすごい数のサイトはヒットしますよ。でもね、「で?」っていう。今、機械学習の話してるんだよね? 機械学習って、言ってしまえば機械に学習させて、結果を得て、我々人間がどんだけ便益を得られるかですよね? なんで、これが存在する目的を書いたサイトが一個もないんですかね? 謎です。

わりと真剣に一つ言わせてもらいたい。Jリーグができたのは、キャプテン翼のおかげですよ。あれが、子供の心に火をつけて、「サッカー、かっけー!」と思う子供をふやしたから生まれたんです。すそ野を広げたんです。

子供がわかるようにしましょうよ。教えて、興味を持ってもらって、「AIエンジニア、かっけー!」って思わせましょうよ。そうしたら、どんどんすそ野が広がって、日本という国の発展に貢献していくはず。

あと10年後の日本の、世界でのプレゼンス、ご存知ですか? ARシステム株式会社のCEO雑賀端之耀さんがセミナーではっきり言っておられました。「日本は、今すでにIT後進国です」。

どなたか立ち上がってください。この国の未来のために。私も一緒に頑張りますよ。

Kusunoko-CIは、わからないながらも、調べて咀嚼して、誰でもわかるように情報発信していきます。内容、まちがってたら指摘してください。そうやってみんながわかるものにしていきたいです!

今日はたいへんなものにお付き合い、ありがとうございました。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA