機械学習 Machine Learning
ディープラーニングの話を先にしましたが、実はそれは、数ある「機械学習」手法の1つです。現在もっとも先進的で、成果が期待されているものなので先に解説しました。ここからは一歩手前にもどる感じで、機械学習というものを全般的に概観し、そこに見られる概念について整理していきます。
機械学習の位置づけ
まずは人工知能という領域の中で、機械学習がどういう位置づけに置かれているか、整理しておきます。下の図のような関係になります。
つまり、人工知能の研究課題の1つであり、コンピュータがセンサーやデータベースなどから取得したデータを解析して学習するはたらきが「機械学習」です。学習する対象は、データの中に見られる有用な特性、たとえば規則性や法則、傾向、知識、判断基準、分類などです。
なお、「データマイニング」と「機械学習」は、「データの塊から有用な知識を引き出すこと」を行う点で共通しており、用いる技法も共通のものが多いので混同されることもあります。しかし厳密にはちがっていて、「機械学習」は主に既知の知識を機械に習得させる目的で行うのに対し、「データマイニング」は未知の有用知識をデータの塊から抽出することを目的とします。
機械学習の分類
機械学習には種類があります。
まず大きく分けて「教師あり学習」と「教師なし学習」です。
教師あり学習
分類や回帰をあつかう問題で使われることが多い機械学習の手法です。
教師あり学習では、コンピュータに与えるデータにあらかじめ「正解」が書かれています。カードの表に問題が書いてあり、裏返せばすぐに正解がチェックできるような感じです。
たとえば、コンピュータに犬と猫の写真を見せて分類させる問題があるとしましょう。
まず、ある程度コンピュータには予習をさせます。前の記事で書いたディープラーニングを思い出してください。犬なら犬、猫なら猫の画像を大量に見せて、それぞれの特徴を把握させます。この予習の段階では、最初から「犬だよ」、「猫だよ」と明らかにしていますので、「教師あり」です。
予習(トレーニング)が済んだらテストです。いろいろな犬の画像と猫の画像をランダムに見せていき、分類させます。ここでも1枚見て分類するごとにコンピュータには正解をチェックさせ、バックプロパゲーションを通じて特徴量を変更させます。ここでも正解をチェックできるということは、「教師あり」なのです。
ここでお分かりのように、バックプロパゲーションは典型的な「教師あり学習」です。
そのほかの教師あり学習の例としては、サポートベクターマシン(SVM)、事例ベース推論、単純ベイズ分類器などがあります。
教師なし学習
「正解」がわかっている教師あり学習に対して、教師なし学習ではあらかじめ正解は決まっていません。「わかっていない」こともあります。つまり「未知」ということで、未知の答えを探るはたらきは「データマイニング」の仕事ですので、データマイニングは本質的に「教師なし学習」ということになります。
例として単純な分類問題を、k平均法(k-means法)というアルゴリズムを使ってコンピュータにやらせてみましょう。100×100の平面空間に、同じくらいの経営規模を持つ200の農場がまんべんなく散らばっているとします。それぞれの位置は、xとyの値で座標として定義されます。
これら200の農場をA、B、C、D、Eの5つの農業協同組合(農協)に分けて所属させ、各農協の集荷場の場所も決める、という問題をコンピュータにやらせます。個々の農場にとっては、集荷場はなるべく近い方が効率的です。(こちらのサイトで視覚的に体験できます)
コンピュータはまず、何も考えずランダムに各農場に5農協への所属を割り振ります。AからEまでの5農協の農場が、平面上に入り乱れて散らばる形になります。
次に、A農協ならA農協、BならBと、農協ごとに所属農場の所在位置の平均値(重心)を計算します。各農場のxの合計、yの合計を農場数で割るだけです。すると最初は、5農協それぞれの重心は平面の中心ちかくに集まる感じになるでしょう。
ここで、各農場の所属農協の見直し、割り振りのやり直しを行います。基準は「距離」です。ひとつひとつの農場は、自分の位置から見て、もっとも近い重心を持つ農協を選び、その農協に所属替えします。中には変わらない農場もあるでしょうし、変わる農場もあるでしょう。
続いて5つの農協ごとに、ふたたび所属農場の位置の平均、重心を計算します。所属農場が変わっているので、重心も動きます。平面の中心から離れるでしょう。そしてふたたび農場ごとに、いちばん近い重心位置を持つ農協への所属替えをします。
農協ごとの重心位置計算、農場ごとの所属替え、これを繰り返すわけです。そして変化がなくなったら完了です。各農場がAからEのどの農協に所属するかが確定し、集荷場も各農協の重心位置に建てれば良い、となるわけです。
これが教師なし学習による機械学習手法のひとつ、k平均法の例です。
教師なし学習には、このほかに「主成分分析」やニューラルネットワークを用いる「自己組織化マップ」などの手法もあります。
さて、次の記事では教師なし学習の中でも昨今重要性を増している「データマイニング」に注目しましょう。