- Step2. 中級編
- 7. 多変量解析
7-5. 階層型クラスター分析2
■サンプル間の距離計算方法
7-4章では、サンプル間の距離を計算するために「ユークリッド距離」を算出しました。距離計算には他にも様々な方法があります。ここではまず、クラスター分析で使われる距離計算方法について詳しく見てみます。
次元における2点、
と
の間の距離について考えます。
- ユークリッド距離
2点間の直線距離のことで、最も一般的な距離計算方法です。 と
の間のユークリッド距離は次の式から算出できます。
![Rendered by QuickLaTeX.com \displaystyle d(\boldsymbol{p},\ \boldsymbol{q}) = \sqrt{\sum^n_{i=1} (p_i-q_i)^2}](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-d5c7247583e605b9efbb538c59c7eaa0_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/795316b92fc766b0181f6fef074f03fa-2.png)
各次元における値の単位が異なる場合には、標準偏差 を使って2点間のユークリッド距離(標準化ユークリッド距離)を計算します。
![Rendered by QuickLaTeX.com \displaystyle d(\boldsymbol{p},\ \boldsymbol{q}) = \sqrt{\sum^n_{i=1} \left(\frac{p_i-q_i}{\sigma_i}\right)^2}](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-810c3852b290c8f61fe73834259624cb_l3.png)
碁盤の目の街を歩いたときの最短距離のことで、 と
の各次元における距離を計算しその和をとったものになります。
![Rendered by QuickLaTeX.com \displaystyle d(\boldsymbol{p},\ \boldsymbol{q}) = \sum^n_{i=1} |p_i-q_i|](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-3799002dad7e06e926599ba5277671c6_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/2b530e80c7d0de90885e285c5d798063-2.png)
を任意の整数とするとき、ミンコフスキー距離は次の式から算出できます。ユークリッド距離やマンハッタン距離を一般化したものになります。
![Rendered by QuickLaTeX.com \displaystyle d(\boldsymbol{p},\ \boldsymbol{q}) = \sum^n_{i=1} (|p_i-q_i|^{m})^{\frac{1}{m}}](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-17434b405dc1d2e8c3116bf0be0c9e28_l3.png)
この式から分かるように、 のときにはユークリッド距離となり、
のときにはマンハッタン距離となります。
サンプル間の相関関係を考慮した距離計算方法で、 と
の間のマハラノビス距離は次の式から算出できます。異常データを検知する際に使われる場合があります。
![Rendered by QuickLaTeX.com \displaystyle d(\boldsymbol{p},\ \boldsymbol{q}) = \sqrt{(p-q)^T {\sum}^{-1}(p-q)}](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-e581d0a1f2aa9321307e2546fb56f5e6_l3.png)
は分散共分散行列を表します。
![Rendered by QuickLaTeX.com \displaystyle \sum = \begin{pmatrix} \sigma_{1} & \cdots & \sigma_{1i}& \cdots & \sigma_{1n}\\ \vdots & \ddots & & & \vdots \\ \sigma_{i1}& & \sigma_{i} & & \sigma_{in} \\ \vdots & & & \ddots & \vdots \\ \sigma_{n1}& \cdots & \sigma_{ni}& \cdots & \sigma_{n} \end{pmatrix}](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-15b755e69a5a20a55e0cb2c9510060d0_l3.png)
また、 は
の逆行列を表します。
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/c8856789ec11ab8b1013037cef6929f9-4.png)
この図から分かるように、マハラノビス距離では確率的に起こりにくい=距離がより離れている=より異常な値であると見なします。
各次元における差の絶対値を算出し、その中から最大となるものが2点間のチェビシェフ距離です。
![Rendered by QuickLaTeX.com \displaystyle d(\boldsymbol{p},\ \boldsymbol{q}) = \displaystyle max_{i} (|p_i-q_i|)](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-72a762cf890e7222ff2503f50342e591_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/3a4f695a458cb0ac0aceaa2eb13ac2dd-2.png)
■クラスター間の距離計算方法
次に、クラスター間の距離算出方法について詳しく見てみます。7-4章で用いた「重心法」以外にもにもさまざまな距離計算方法が用いられます。
からなるクラスター
と
からなるクラスター
の間の距離
について考えます。
- 最短距離法
- メリット:計算量が少ない
- デメリット:分類感度が低い。外れ値に弱い、鎖効果(クラスターが帯状になる現象のこと)が出やすい
各クラスター内のサンプル間の距離のうち、最も距離が短いものをクラスター間の距離とする方法です。
![Rendered by QuickLaTeX.com \displaystyle d(C_1,\ C_2) = min(d(\boldsymbol{x},\ \boldsymbol{y}))](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-5fe8a9eaf2431a0847fcded73650e622_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/795316b92fc766b0181f6fef074f03fa-3.png)
各クラスター内のサンプル間の距離のうち、最も距離が長いものをクラスター間の距離とする方法です。
- メリット:計算量が少ない
- デメリット:外れ値に弱い、拡散効果(本当は距離が近いクラスターが結合しない現象のこと)が出やすい
![Rendered by QuickLaTeX.com \displaystyle d(C_1,\ C_2) = max(d(\boldsymbol{x},\ \boldsymbol{y}))](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-04edb9aa89eeda5df97d3f8a5e5ed77a_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/2b530e80c7d0de90885e285c5d798063-3.png)
各クラスター内のサンプルの重心を算出し、重心間の距離をクラスター間の距離とする方法です。
- メリット:計算量が比較的少ない
- デメリット:-
![Rendered by QuickLaTeX.com \displaystyle d(C_1,\ C_2) = d \left( \frac{1}{m}\sum^{m}_{\boldsymbol{x} \in C_1} \boldsymbol{x},\ \frac{1}{n}\sum^{n}_{\boldsymbol{y} \in C_1} \boldsymbol{y} \right)](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-979b2606cbb34f25b16bcdffebe52889_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/c8856789ec11ab8b1013037cef6929f9-5.png)
各クラスター内のサンプル間の距離を算出し、すべての距離の平均値をクラスター間の距離とする方法です。
- メリット:計算量が比較的少ない、鎖効果や拡散効果が出にくい
- デメリット:-
![Rendered by QuickLaTeX.com \displaystyle d(C_1,\ C_2) = \frac{1}{m} \frac{1}{n}\sum^{m}_{\boldsymbol{x} \in C_1} \sum^{n}_{\boldsymbol{y} \in C_2} d(\boldsymbol{x},\ \boldsymbol{y})](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-4fd0c4d06f3f29de51aa392ab2d74be1_l3.png)
![](https://bellcurve.jp/statistics/wp-body/wp-content/uploads/2022/11/3a4f695a458cb0ac0aceaa2eb13ac2dd-3.png)
2つのクラスターを結合した後のクラスター内サンプルの重心から各サンプルまでの距離の二乗和( の部分)から、結合前の2つのクラスター内サンプルの重心から各サンプルまでの二乗和(
と
の部分)を引いた値をクラスター間の距離とする方法です。
- メリット:分類感度が高いため、クラスター分析で非常によく用いられる
- デメリット:計算量が多い
![Rendered by QuickLaTeX.com \displaystyle d(C_1,\ C_2) = \sum^{m+n}_{\boldsymbol{z} \in C_1 \cup C_2} d(\boldsymbol{\bar{z}},\ \boldsymbol{z})^2 - \sum^{m}_{\boldsymbol{x} \in C_1} d(\boldsymbol{\bar{x}},\ \boldsymbol{x})^2 - \sum^{n}_{\boldsymbol{y} \in C_2} d(\boldsymbol{\bar{y}},\ \boldsymbol{y})^2](https://bellcurve.jp/statistics/wp-body/wp-content/ql-cache/quicklatex.com-8052962f5116b84ee3a597fede6a4bd8_l3.png)
7. 多変量解析
- 7-1. ロジスティック回帰分析1
- 7-2. ロジスティック回帰分析2
- 7-3. ロジスティック回帰分析3
- 7-4. 階層型クラスター分析1
- 7-5. 階層型クラスター分析2
- 7-6. 非階層型クラスター分析