クラスタリングとは
機械学習には、大きく分けて教師あり学習と教師なし学習の二つがあり、クラスタリングは教師無し学習に含まれる学習方法になります。
まず、教師なし学習とは何かというと、データに存在する未知のデータを見つけるために、学習する時に正解を与えない学習方法のこと。正解と不正解が明確に存在する問題に対して有効的な教師あり学習と違い、教師なし学習は現実問題に関してはあまり適していません。その代わりに、新しい市場を開拓するときなどに適しています。
そして、その教師なし学習に含まれるクラスタリングとは、与えられたデータに特徴を見出しクラスタと呼ばれるグループに分ける方法のこと。与えられるデータは様々で、顧客や企業・地域・質問項目を分類したりすることで、セグメンテーションなどに用いられます。
[関連記事]機械学習と深層学習(ディープラーニング)の違いはこちら↓
分類との違い
データをグループ分けするというと、よく混同されるのが分類。この二つがどの様に違うかというと、クラスタリングは教師なし学習なのに対して、分類は教師あり学習に当てはまること。つまり、分類は既にあるデータを参考に、予測して正解を導き出すのに対して、クラスタリングは明確な答えというものを持ちません。
クラスタリングはグループ分けすることに目的があるのではなく、グループ分けすることで新たな市場を開拓することに目的があるため、その点において分類との違いがあります。
階層クラスタリングと非階層クラスタリング
そしてクラスタリングには、階層クラスタリング・非階層クラスタリングの2種類があります。
階層クラスタリングとは、例えば魚のネタを種類に上げたとき、赤身・白身と大きく二つに分けても、赤身の中にはマグロ・サーモン・カツオなどがあり、またマグロの中には大トロ・中トロなどと、樹形図の様にだんだん細かくなっていくグルーピングのことを指します。メリットとしては、グルーピングの過程が分かりやすく、サンプル数が少ないものに対して有効です。
対して非階層クラスタリングとは、階層クラスタリングの様に樹形図を作らず、最初に決めた代表点・クラスタ数に合わせて、グルーピングを行うこと。メリットとしては、サンプル数が多くても使いやすいことにあります。その代わりに、クラスタ数を自分で決める必要があり、まだ最適なクラスタ数を計算する方法が存在しないことが難点にあります。