知識グラフ全体

階層的クラスター分析(最短距離法)を読み解く

10個の点をドラッグして配置し,「距離が近いものから順にグループにまとめていく」だけの単純なルールから,樹形図(デンドログラム)がどのように組み上がるのかを観察できるアプリの,しくみと数式の解説.

対象アプリ:階層的クラスター学習


01 - 概要

このアプリで学べること

階層的クラスター分析は,あらかじめ「いくつのグループに分けるか」を決めなくても,個体どうしの距離だけを頼りに,近いものから順にまとめていく手法である.このアプリを操作すると,次のことが体感できる.

  • 「距離が最も近い2つをまとめる」という単純な操作を繰り返すだけで,階層構造(樹形図)が自然にできあがっていく過程.
  • 樹形図の枝の高さが,そのままそこで結合した2つのグループ間の距離を表しているという読み方.
  • 点の配置(ドラッグ)を変えるだけで,できあがるグループ分けや樹形図の形が大きく変わること.
  • この手法特有の「連鎖効果」1点が一直線に近い配置だと,1個ずつ吸収されるように鎖状にまとまっていく現象.

02 - モデル化

個体・距離・クラスター

このアプリでは,平面上の10個の点をそれぞれ1つの「個体」とみなす.分析は次の3つの材料だけで進む.

個体 盤面上の1つの点.最初は10個すべてが,それぞれ単独の1個のクラスターとして始まる.
距離 2つの個体(点)の間の,平面上でのまっすぐな距離(ユークリッド距離).
クラスター 1個以上の個体の集まり.結合を繰り返すたびに,クラスターの数は1つずつ減っていく.

盤面の一番端の列にいるときは「左」または「右」の一方が存在しない.そうした境界では,存在しない方向を最初から比較の対象から外す.次の図は,あるマス(状態)から見える3方向の候補を示したものである.

03 - 数式

距離とクラスター間距

2点 a , b の座標をそれぞれ x a , y a x b , y b とすると,2点間の距離は次のユークリッド距離で求める.

個体間の距離

d a , b = x a x b 2 + y a y b 2

クラスターどうしの距離をどう決めるかにはいくつかの流儀があるが,このアプリが採用しているのは最短距離法(単連結法)である.2つのクラスターの距離を,両者に属する個体の組み合わせの中で最も近い1組の距離と定義する.

クラスター間の距離(最短距離法)

D C 1 , C 2 = min d p , q | p C 1 , q C 2

連結法(linkage)には,最短距離法(単連結法)のほかにも「最長距離法(完全連結法)」「群平均法」「ウォード法」などがある.同じ距離データでも連結法を変えるとできあがる樹形図の形は変わる.このアプリが再現しているのは,その中でも最も素朴な最短距離法である.

04 -手順

アルゴリズムの手順(凝集型階層クラスタリング)

  1. 最初はすべての個体を,それぞれ単独の1個のクラスターとして扱う(10個体なら10個のクラスター).
  2. すべてのクラスターの組み合わせについて,クラスター間の距離 D を計算する.
  3. その中で最も距離が近い2つのクラスターを1つに結合する.結合した高さ(=そのときの距離)を記録する.
  4. クラスターの数が1つになるまで,手順2〜3を繰り返す.

10個体であれば,9回結合を繰り返すとすべてが1つのクラスターにまとまり,分析は完了する.このアプリの「次を結合」ボタンは,この手順2〜3をちょうど1回分だけ実行するボタンである.

05 - 樹形図

樹形図(デンドログラム)の読み方

樹形図は,上の手順で記録した結合の履歴をそのまま絵にしたものである.下の図は4個体 A・B・C・D を例に,結合が3回起こる様子を示している.

樹形図はある高さで水平に「輪切り」にすることで,その時点でのグループ分けを取り出せる.たとえば上の例を高さ1.5で切ると「{A,B}」と「{C}」と「{D}」の3グループに分かれる.高さを下げるほど細かいグループに,上げるほど大きなグループにまとまる.

06 - 観察

観察ポイント

  • 結合順と高さ: 「次を結合」を押すたびに,その瞬間もっとも距離が近い2つのクラスターだけが結合される.樹形図の下から上へ,結合の高さがだんだん大きくなっていくことを確認する.
  • 配置の影響: 同じ10点でも,まとまって固まっている配置と,ばらばらに散らばっている配置とでは,できあがる樹形図の形(枝分かれの高さのばらつき)が大きく異なる.
  • 色分けとの対応: 左の散布図の点の色・番号は,右の樹形図のどのクラスターに属しているかと常に対応している.結合のたびに両方が同時に更新される様子を見比べる.
点の配置 樹形図の傾向
数個の塊にまとまっている 塊ごとに低い高さでまとまり,塊どうしが最後に高い位置で結合する,段差のはっきりした樹形図になりやすい
ほぼ均等に散らばっている 結合の高さがなだらかに増えていき,どこで輪切りにするかで結果が変わりやすい

07 - 実験

やってみよう

  1. 点を2つの塊(左上に5点,右下に5点など)に分けて配置し,「分析スタート」→「次を結合」を9回繰り返す.最後の1回だけ極端に高い位置で結合することを確認する.
  2. 「ランダム配置」で何度か配置をやり直し,そのたびに樹形図の形がどう変わるかを見比べる.
  3. 樹形図をある高さで(頭の中で)輪切りにして,そのときのグループ数と,左の散布図で実際に何色に分かれているかを対応させてみる.

08 - 用語

用語ミニ辞典

個体 分析の対象となる1つのデータ.このアプリでは平面上の1つの点.
クラスター 1個以上の個体からなるグループ.結合を繰り返すたびに数が減っていく.
距離行列 すべての個体(またはクラスター)どうしの距離を一覧にしたもの.
連結法(linkage) クラスター間の距離をどう定義するかの方式.最短距離法・最長距離法・群平均法などがある.
報酬 行動の直後に環境から与えられる数値の手がかり.良し悪しの唯一の情報源.
最短距離法
(単連結法)
2クラスター間の距離を,両者に属する個体の中で最も近い1組の距離とする連結法.このアプリが採用している方式.
樹形図
(デンドログラム)
結合の履歴を,結合の高さ(距離)とともに描いた木構造の図.
凝集型階層
   クラスタリング
個々の個体から出発し,近いものどうしを繰り返し結合していく(下から積み上げる)階層クラスタリングの方式.
連鎖効果 最短距離法で,点が線状に並んでいるときに1個ずつ吸収されるように結合が進む現象.

 

この記事は 階層クラスター分析アプリ の実装内容にもとづく解説であり,実際にアプリを操作しながら読むことを想定している.

ホーム>>カテゴリー別分類>>データ分析>>階層的クラスター分析(最短距離法)を読み解く

最終更新日:2026年7月17日

[ページトップ]

金沢工業大学

利用規約,誤植や誤りなどがございましたら、こちらからご連絡ください。

google translate (English version)