<金融アトラス/a>

金融アトラス

個人の勉強も兼ねて、少しずつまとめます。

クラスター分析とは何か

本ページでは、クラスター分析とは何かについてまとめたい。

 

クラスター分析とは、総務省の定義によれば、「様々な性質をもつデータが大量に集まった中から、特徴が似ているデータを集めていくつかのグループに分類し、データの特性や共通項を把握したり、大量のデータを扱いやすくする分析手法」である。クラスター分析には①階層的クラスター分析と②非階層的クラスター分析の2種類があり、いかそれぞれについて説明する。

 

階層的クラスター分析

階層的クラスター分析は、似ているデータを順に結合(クラスタリング)していく方法である。この階層的クラスタリングの結果は、デンドログラムと呼ばれる図に視覚的に表現され、データ間の類似度を見ることができる。

デンドログラムの例(総務省資料より抜粋)

では、どのようにこうしたクラスターを作っていけばよいのか?まず、個々のデータ間の類似度、つまり「距離」を計測する必要がある。距離の計測には、通常「ユークリッド距離」が用いられる。

例えば、A、B、C、D、E、F、Gという6人の生徒が国語、算数、理科、社会、英語という5科目の試験を受けた場合を考える。階層的クラスタリングによって、この6人の生徒を分類することを考える。

 

このとき、例えば生徒Aと生徒Bのユークリッド距離は

√(国語の得点差)^2+(算数の得点差)^2+(理科の得点差)^2+(社会の得点差)^2+(英語の得点差)^2

となる。このユークリッド距離を全ての生徒間の組み合わせで計算し、最も距離の近い2人をまず最初のクラスターとする。ここでは、例えばAとBが1つのクラスターになったとする。次に、このクラスターと他の生徒(C、D、E、F、G)との距離を計算しなおすのだが、ここで問題になるのは、クラスターとの距離をどのように測ればよいかという問題である。ここでよく用いられるのが「ウォード法」という手法である(詳細は以下の参考文献を参照)。以降、この処理を繰り返すことで、最終的に上記のようなデンドログラムが完成する。

 

非階層的クラスター分析

非階層的クラスター分析は、分割するクラスターの数をあらかじめ定めておき、その数に従ってクラスタリングを行う手法である。

 

非階層的クラスター分析の代表的な手法にk-means 法が挙げられる。

まず、K個のクラスターを作るとし、データセットの中からK個のデータを「プロトタイプ」として指定する。そして、その他のデータについて、最も距離の近いプロトタイプと暫定的にクラスターを形成する。次に、各クラスターの重心を計算する(つまりK個の重心が計算される)。その後は、その重心と各データの距離を再計算し、最も近い距離の重心が同じもの同士で再度クラスターを作り、またその重心を計算し、、、という動作を繰り返し、最終的にクラスターが変化しない状態にまで収束した段階で終了する。この手法は、全データ間の距離を計算する手間が省けるので、ビックデータを扱う際に重宝する。

 

 

(出典):

総務省高等学校における「情報II」のためのデータサイエンス・データ解析入門

(参考):

吉原一紘,徳高平蔵(2014)「 クラスター分析の概要」Journal of Surface Analysis Vol.21 No.1 pp. 10-17

www.business-research-lab.com