12/22/2019 0 Comments AI

「機械学習」について知りたい! ―教師なし学習って?-



Yuki Igarashiです。


前回は機械学習は、「教師あり学習」「教師なし学習」「強化学習」の3つに大きくわけられる話をして、機械学習のうちの「教師あり学習」について解説をしました。
今回は、「教師なし学習」について解説したいと思います。

教師なし学習とは、その名の通り、教師なし、つまり、正解データのラベルがない状態で、推論を行うタイプの機械学習です。「クラスタリング」「次元圧縮」「異常検知」などの種類があります。

クラスタリングとは入力データを分類すること

中でもわかりやすいクラスタリングを取り上げて説明したいと思います。クラスタリングとは、入力データを共通するグループに分類する手法です。右図のようなデータの分布の“かたまり”を「クラスタ(Cluster)」と呼び、いくつかのかたまりに分類することを「クラスタリング(Clustering)」と呼びます。

例えば、顧客データをクラスタリングすることで、主婦が買いそうな品物と、独身男性が買いそうな品物に分類することができたり、購入時間帯に着目して何時ごろはどういった商品が売れるかといった販売戦略を立てたりすることにも使えます。

クラスタリングの方法には、個々のデータに対して、近くのデータやクラスタをまとめてクラスタをボトムアップ的にどんどんまとめてゆくことでクラスタを作成する「階層的クラスタリング」と、全体のデータの散らばりからトップダウン的に最適な分割を求めていく、「分割最適化クラスタリング」があります。

この中でも分割最適化クラスタリングの代表的な手段「k-means法」について紹介しておきます。

k-means法の「k」は、「k個のクラスタに分類する」という意味です。k-means法を利用して、1600万色の画像を入力して16個のクラスタに色を分類することで16色に減色する例や、手書き数字を分類する例などが、書籍「OpenCVとPythonによる機械学習プログラミング」(株式会社マイナビ出版)にソースコードつきで詳しく解説されています。

一方で、k-means法はあらかじめk個のクラスタに分類できる、つまり、k個のクラスタに分類されているデータである、といった情報を与える必要があり、正しいクラスタ数がわからないような複雑なデータについては、そのk個という値自体を決定する必要があります。そのkの値を決定するための手法もいろいろ(エルボー法、シルエット分析、ガウス混合モデル、等)存在します。

機械学習についての書籍は、「教師あり学習」のほうに比重を置いて紹介しているものが多いのですが、教師あり学習を学んだあとに教師なし学習を学ぶとより理解が深まるように思います。インターネット上にもたくさんの教材がありますし、書籍「Pythonで動かして学ぶ!機械学習の教科書」(株式会社翔泳社)や、もっとざっくり知りたいという人には「マンガでわかる機械学習」(株式会社オーム社)がわかりやすくかみ砕いて説明してあり、お勧めです。

Yuki Igarashi(五十嵐悠紀)

profile
コンピュータグラフィックス、ユーザインタフェース分野の研究者。子育て中の母でもある。
著書に『AI世代のデジタル教育 6歳までにきたえておきたい能力55』(河出書房新社)、『スマホに振り回される子 スマホを使いこなす子 (ネット社会の子育て)(ジアース教育新社)、他。

ABOUT US



Share: