いさぼうネット
賛助会員一覧
こんにちはゲストさん

登録情報変更(パスワード再発行)

  • rss配信いさぼうネット更新情報はこちら
 シリーズコラム 「社会を支える人工知能」 
【第5回】 人間では見出すことが困難なデータの特徴を捉えてくれる人工知能
 

 前回は、機械学習の「教師あり学習」についてお伝えしました。 今回は機械学習の「教師なし学習」を紹介させていただこうと思います。

 図1は「教師あり学習」と「教師なし学習」の違いを示しています。 「教師あり学習」は、前回説明したように、人工知能から得られた結果と正しい結果の誤差を元に人工知能内のパラメータを更新することで学習を行います。 一方、「教師なし学習」では正しい結果との比較はせず、入力データのみで学習を行います。


図1 「教師あり学習」と「教師なし学習」の違い

 正しい結果が分からずに学習するとはどういうことなのでしょうか?

 また、入力データから何を学習しているのでしょうか?

 教師なし学習では入力データの特徴を元に学習を行うのです!

 と言っても、なかなかイメージしづらいと思いますので、教師なし学習の一種であるクラスタリング(分類分け)を例にして説明させていただきます。 表1に、今回利用する入力データを示します。 入力データは40個あり、各入力データは2つデータ(A、B)で構成されています。 表1を見る限り、入力データにどのような特徴があるのか全く検討がつきません。

表1 入力データ
データ名 A B データ名 A B
データ1 2.605097 1.225296 データ21 0.64004 4.124011
データ2 0.532377 3.313389 データ22 2.441163 1.309416
データ3 0.802314 4.381962 データ23 1.132804 3.876739
データ4 0.528537 4.497239 データ24 1.048292 5.030924
データ5 2.618585 0.357698 データ25 -1.26637 2.629988
データ6 1.591415 4.904977 データ26 2.316906 0.81189
データ7 1.74266 5.038467 データ27 2.362307 1.358767
データ8 2.375333 0.089186 データ28 1.209101 3.535665
データ9 -2.12133 2.664474 データ29 -2.54225 3.950129
データ10 1.720396 5.251732 データ30 1.481533 0.678754
データ11 3.136886 1.565928 データ31 -1.59488 3.486328
データ12 -0.37495 2.387874 データ32 -1.82556 2.798921
データ13 -1.84562 2.719246 データ33 -1.13374 2.684673
データ14 0.721444 4.08475 データ34 -1.7587 3.158623
データ15 0.161171 4.535178 データ35 0.349872 4.692533
データ16 -1.99913 2.712857 データ36 1.685486 1.669171
データ17 -1.47804 3.209359 データ37 2.989047 1.350686
データ18 1.870677 0.777974 データ38 1.737344 1.23588
データ19 -1.59334 2.768987 データ39 0.659109 4.122417
データ20 2.035626 0.313617 データ40 1.154453 4.657074

 では、表1の入力データを散布図にしてみましょう。 図2に、その散布図を示します。 すると、40個の入力データを3つのグループに分けることができそうです。 表1の入力データはグループ化可能という特徴があると言えます。

 
図2 入力データの散布図

 表1の各入力データは40個と少なく、また、AとBだけで構成されているため、人間でも散布図を利用することでクラスタリングできそうですが、実際に活用されている入力データは数十から数百ものデータで構成されています。 また、入力データ数は何万から何千万オーダーにもなります(ビッグデータと呼ばれるもの)。 このような場合、人手でクラスタリングすることは不可能です。

 そこで、機械学習の教師なし学習により入力データの特徴を自動で捉えてクラスタリングするのです!

 それでは、教師なし学習でクラスタリングをしてみましょう。 今回はk-means法※1と呼ばれる手法で表1の入力データをクラスタリングしてみます。

 
図3 教師なし学習によるクラスタリング

 図3は、k-means法によるクラスタリングの結果です。 図3から分かるように、表1の各入力データは3つのグループ(Group1、Group 2、Group 3)に分けられています。

 ここで注目していただきたいのは各グループの中心点を示す星印です。 また、図3の状態は最終結果であるという点にも気をつけて頂きたいと思います。 各入力データは最も近い星印のグループに属しています。 k-means法では各入力データと星印の距離を計算していく過程で、各グループの中心点である星印は移動します。

 この星印の移動が教師なし学習の一つであるk-means法の学習なのです!そして、指定した条件を満たした時点で星印の移動(学習)が終了し、最終結果(図3)を出力します。

 k-means法によるクラスタリングを教師なし学習の一例として紹介させていただきました。 この例から分かるように、「教師あり学習」とは違い正しい結果は利用していません。 先にも述べたように、入力データだけで学習をしているのです。 これは、事前に正解が分からないものに対して処理を行っていると言えます。

 したがって、入力データにどのような特徴があるのかを調査するために、教師なし学習はよく利用されているのです。

※1 k-means法の詳細はWikipediaの「k平均法」に詳しく書かれています。
(URL:https://ja.wikipedia.org/wiki/K%E5%B9%B3%E5%9D%87%E6%B3%95 )

Copyright(C) 2002- ISABOU.NET All rights reserved.