【數據挖掘】聚類 Cluster 矩陣轉換 數據矩陣 -> 相似度矩陣 ( 聚類數據類型 | 區間標度型變量及標準化 | 相似度計算 | 明科斯基距離 | 曼哈頓距離 | 歐幾里得距離 )



I . 聚類數據類型



聚類數據類型 :


① 區間標度變量 : 由 數值 和 單位組成 , 如 , 168 cmcm , 30 oC^{o}C , 等值 ;

② 二元變量 :

③ 標稱型變量 :

④ 序數型變量 :

⑤ 比例標度型變量 :

⑥ 混合型變量 :



II . 區間標度型變量



1 . 區間標度型變量 :


① 舉例 : 重量 , 高度 , 長度 , 距離 , 經緯度 , 溫度 , 氣壓 等由 數值 和 刻度單位 組成的變量 ;

② 度量單位影響 : 區間標度型變量 採用的 度量單位 , 直接影響聚類的分組結果 , 如身高使用 米 , 釐米 , 毫米 , 作爲單位 , 其數值的數量級都不同 ;

③ 數據標準化 : 爲了避免度量單位對聚類分析結果的影響 , 將數據進行標準化操作 , 將 數值 + 單位 組成的標度型變量 , 規範化爲單純由 數值 表示的值 ;



III . 區間標度型變量 標準化



1 . 數據標準化 : 對於 區間標度型變量 ff , 消除其單位對聚類分析結果的影響 , 需要對齊進行標準化 ;


2 . 數據標準化過程 :


① 計算所有樣本 ff 屬性的平均值 ;

② 計算平均絕對偏差值 ;

③ 計算標準化度量值 ;



IV . 區間標度型變量 標準化 ( 1 ) 計算所有數據的平均值



計算所有數據的平均值 : 假設數據集有 nn 個樣本 , 將樣本 xxff 屬性值變量相加除以 nn 取平均值 ;


mf=1n(x1f+x2f++xnf)m_f = \frac{1}{n} ( x_{1f} + x_{2f} + \cdots + x_{nf} )


nn 表示 數據集樣本的個數 ;

mfm_f 表示 nn 個樣的 ff 屬性的平均值 ;

xix_i 表示第 ii 個樣本 ;

xnfx_{nf} 表示第 nn 個樣本的 ff 屬性的值 , x1fx_{1f} 表示第 11 個樣本的 ff 屬性 , x2fx_{2f} 表示第 22 個樣本的 ff 屬性 ;



V . 區間標度型變量 標準化 ( 2 ) 計算平均絕對偏差



1 . 計算平均絕對偏差 : 每個樣本的 ff 屬性減去 所有樣本的 ff 屬性平均值 , 然後這個差取絕對值 , nn 個樣本的 ff 屬性 與平均值的差絕對值 相加 , 然後再 取其平均值 , 平均絕對偏差 ;


① 樣本偏差 : 計算單個樣本的 ff 屬性 與 所有樣本的 ff 平均值的差 , 該值可能是正數 , 可能是負數 , 也可能是 0 ;

② 樣本絕對偏差 : 將上面計算的 符號 ( 正負號 ) 位置的樣本偏差取絕對值 ;

③ 平均絕對偏差 : nn 個樣本的絕對偏差相加 , 處於 nn 取平均值 , 即可得到平均絕對偏差 ;


2 . 平均絕對偏差公式如下 :


Sf=1n(x1fmf+x2fmf++xnfmf)S_f = \frac{1}{n} ( | x_1f - m_f | + | x_2f - m_f | + \cdots + | x_nf - m_f | )


SfS_f 表示 平均絕對偏差 ;

x1fmf| x_1f - m_f | 表示第 11 個樣本的 ff 屬性值 , 減去平均值後的絕對值 ;



VI . 區間標度型變量 標準化 ( 3 ) 計算標準化度量值



1 . 計算標準化度量值 : 進行 Z-Score 變換 , 這是數據標準化處理的常用方法 ;


2 . Z-Score 變換公式如下 : 根據每個樣本的 ff 屬性值 , 樣本的 ff 屬性平均值 , 平均絕對偏差 SfS_f , 計算出每個樣本的 ff 屬性標準化後的值 ;


Zif=xifmfSfZ_{if} = \frac{x_{if} - m_f}{S_f}


ZifZ_{if} 表示 數據樣本 標準化 後的 屬性值 , 該屬性值只有數值 , 沒有單位 ;

xifx_{if} 表示第 ii 個樣本的 ff 屬性值 ;

mfm_f 表示 nn 個樣的 ff 屬性的平均值 ;

SfS_f 表示 平均絕對偏差 ;


3 . 樣本數據屬性 標準化 本質 : 獲取 數據集中的 單個樣本屬性 平均屬性 偏差 , 相對於 平均絕對偏差 比值 ; 最終的本質是 偏差的比值 ; 根據偏差 確定 樣本的相似度 ;



VII . 區間標度型變量 標準化 ( 4 ) 屬性標準化示例



已知 : 33 個樣本數據 , 代表 33 個人 , 身高屬性分別是 145 cmcm , 180 cmcm , 165 cmcm , 將其標準化 ;


1 . 計算平均值 :

mf=1n(x1f+x2f++xnf)=145+180+1653163.333\begin{array}{lcl} m_f &=& \frac{1}{n} ( x_{1f} + x_{2f} + \cdots + x_{nf} )\\\\ &=& \dfrac{145 + 180 + 165}{3}\\\\ &\approx& 163.333 \end{array}


平均值計算結果是 163.333163.333 ;



2 . 計算平均絕對偏差 :

Sf=1n(x1fmf+x2fmf++xnfmf)=145163.333+180163.333+165163.3333=18.333+16.667+1.6673=36.667312.222\begin{array}{lcl} S_f &=& \frac{1}{n} ( | x_1f - m_f | + | x_2f - m_f | + \cdots + | x_nf - m_f | )\\\\ &=&\dfrac{|145 - 163.333| + |180 - 163.333| + |165 - 163.333| }{3}\\\\ &=&\dfrac{18.333 + 16.667‬ + 1.667 }{3}\\\\ &=&\dfrac{36.667‬ }{3}\\\\ &\approx& 12.222 \end{array}


平均絕對偏差值 計算結果是 12.22212.222 ;



3 . Z-Score 標準化 :


① 樣本 11 身高 145 cmcm 標準化 : 標準化後的值爲 1.5-1.5 , 沒有單位只有一個數值 ;

Zif=xifmfSf=145163.33312.222=18.33312.222=1.5\begin{array}{lcl} Z_{if} &=& \dfrac{x_{if} - m_f}{S_f}\\\\ &=&\dfrac{145 - 163.333}{12.222}\\\\ &=&\dfrac{-18.333‬}{12.222}\\\\ &=& -1.5 \end{array}


② 樣本 22 身高 180 cmcm 標準化 : 標準化後的值爲 1.3641.364 , 沒有單位只有一個數值 ;

Zif=xifmfSf=180163.33312.222=16.66712.2221.364\begin{array}{lcl} Z_{if} &=& \dfrac{x_{if} - m_f}{S_f}\\\\ &=&\dfrac{180 - 163.333}{12.222}\\\\ &=&\dfrac{16.667‬}{12.222}\\\\ &\approx& 1.364 \end{array}


③ 樣本 33 身高 165 cmcm 標準化 : 標準化後的值爲 0.1360.136 , 沒有單位只有一個數值 ;

Zif=xifmfSf=165163.33312.222=1.66712.2220.136\begin{array}{lcl} Z_{if} &=& \dfrac{x_{if} - m_f}{S_f}\\\\ &=&\dfrac{165 - 163.333}{12.222}\\\\ &=&\dfrac{1.667‬}{12.222}\\\\ &\approx& 0.136 \end{array}



4 . 標準化結果 : 33 個樣本數據 , 代表 33 個人 , 身高屬性分別是 145 cmcm , 180 cmcm , 165 cmcm , 將其標準化後的值分別是 : 1.5,1.364,0.136-1.5 , 1.364 , 0.136



VIII . 相似度計算 ( 1 ) 明科斯基距離



1 . 對象相似度 ( 相異度 ) 計算 : 根據 兩個 樣本對象 之間的 距離 計算 , 通常使用 明科斯基 距離 公式進行計算 ;


2 . 明科斯基 距離 計算公式 :


d(i,j)=xi1xj1q+xi2xj2q++xipxjpqqd(i, j) = \sqrt [q] { | x_{i1} - x_{j1} | ^q + | x_{i2} - x_{j2} | ^q + \cdots + | x_{ip} - x_{jp} | ^q }


d(i,j)d(i, j) 表示兩個樣本之間的距離 , 明科斯基 距離 ;

qq 是一個係數 , 取值 {1,2,}\{1 , 2 , \cdots\} ; 該取值很重要 , 不同取值衍生出不同的公式 ;

pp 表示屬性的個數 , 每個樣本有 pp 個屬性 ;

iijj 表示兩個 樣本的索引值 , 取值範圍是 {1,2,,q}\{1 , 2, \cdots , q\} ;

xipxjpx_{ip} - x_{jp} 表示兩個樣本 第 pp 個屬性值 的差值 , xi1xj1x_{i1} - x_{j1} 表示兩個樣本 第 11 個屬性值 的差值 , xi2xj2x_{i2} - x_{j2} 表示兩個樣本 第 22 個屬性值 的差值 ;

xipxjp|x_{ip} - x_{jp}| 表示兩個樣本 第 pp 個屬性值 的差值 的絕對值 , xi1xj1|x_{i1} - x_{j1}| 表示兩個樣本 第 11 個屬性值 的差值 的絕對值 , xi2xj2|x_{i2} - x_{j2}| 表示兩個樣本 第 22 個屬性值 的差值 的絕對值 ;

最外層計算 ( qq 次方根 ) : 最終計算需要求 (xi1xj1q+xi2xj2q++xipxjpq)( { | x_{i1} - x_{j1} | ^q + | x_{i2} - x_{j2} | ^q + \cdots + | x_{ip} - x_{jp} | ^q } )qq 次方根 ;




IX . 相似度計算 ( 2 ) 曼哈頓距離



1 . 曼哈頓距離 : 明科斯基距離計算很複雜 , 尤其是 qq 取值很大時 , 因此該公式並不常用 , 通常情況下會將 qq 取值爲 11 , 或 22 , 當 q=1q = 1 時 , 該距離又稱爲 曼哈頓距離 ;


2 . 曼哈頓距離 公式如下 :


d(i,j)=xi1xj1+xi2xj2++xipxjpd(i, j) = | x_{i1} - x_{j1} | + | x_{i2} - x_{j2} | + \cdots + | x_{ip} - x_{jp} |


d(i,j)d(i, j) 表示兩個樣本之間的距離 , 曼哈頓距離 ;

pp 表示屬性的個數 , 每個樣本有 pp 個屬性 ;

iijj 表示兩個 樣本的索引值 , 取值範圍是 {1,2,,q}\{1 , 2, \cdots , q\} ;

xipxjpx_{ip} - x_{jp} 表示兩個樣本 第 pp 個屬性值 的差值 , xi1xj1x_{i1} - x_{j1} 表示兩個樣本 第 11 個屬性值 的差值 , xi2xj2x_{i2} - x_{j2} 表示兩個樣本 第 22 個屬性值 的差值 ;


3 . 曼哈頓距離 與 明科斯基距離 :


① 去掉了外層 qq 次方跟計算 : q=1q = 1 時 , 外層開 11 次方根 , 直接將 qq 次方根計算的根號去掉即可 ;

② 去掉了樣本差的指數計算 : 計算 xi1xj1| x_{i1} - x_{j1} | 值的 11 次方 , 也可以取消 qq 次方的指數計算 ;


4 . 曼哈頓距離圖示 : 曼哈頓的街道都是橫平豎直的 , 從 AA 點到 BB 點 , 一般就是其 xx 軸座標差 加上其 yy 軸座標差 , 即 x+yx + y ;

在這裏插入圖片描述



X . 相似度計算 ( 3 ) 歐幾里得距離



1 . 歐幾里得距離 : 明科斯基距離計算很複雜 , 尤其是 qq 取值很大時 , 因此該公式並不常用 , 通常情況下會將 qq 取值爲 11 , 或 22 , 當 q=2q = 2 時 , 該距離又稱爲 歐幾里得距離 ;


2 . 歐幾里得 距離 公式如下 :


d(i,j)=xi1xj12+xi2xj22++xipxjp2d(i, j) = \sqrt { | x_{i1} - x_{j1} | ^2 + | x_{i2} - x_{j2} | ^2 + \cdots + | x_{ip} - x_{jp} | ^2 }


d(i,j)d(i, j) 表示兩個樣本之間的距離 , 明科斯基 距離 ;

pp 表示屬性的個數 , 每個樣本有 pp 個屬性 ;

iijj 表示兩個 樣本的索引值 , 取值範圍是 {1,2,,q}\{1 , 2, \cdots , q\} ;

xipxjpx_{ip} - x_{jp} 表示兩個樣本 第 pp 個屬性值 的差值 , xi1xj1x_{i1} - x_{j1} 表示兩個樣本 第 11 個屬性值 的差值 , xi2xj2x_{i2} - x_{j2} 表示兩個樣本 第 22 個屬性值 的差值 ;


3 . 歐幾里得距離圖示 :AA 點到 BB 點的實際直線距離 , 即 zz 距離 ;

在這裏插入圖片描述

歐氏空間 : 可以計算歐幾里得距離的空間 , 叫做歐氏空間 ;


4 . 歐幾里得 距離 屬性 :


① 樣本之間的距離非負 : d(i,j)0d(i, j) \geq 0 , 歐幾里得 距離是先 求平方和 , 再開根號 , 這個值一定是一個大於等於 00 的數值 ;

② 樣本與其本身的距離爲 00 : d(i,i)=0d(i, i) = 0 , 一個樣本與其本身的 相似度值 肯定爲 00 , 因爲其屬性值完全相同 ;

③ 對稱性 : d(i,j)=d(j,i)d(i , j) = d(j , i) , 樣本 ii 與 樣本 jj 的相似度 , 肯定等於 樣本 jj 與 樣本 ii 的相似度 ;

④ 三角不等式 : 兩邊之和 , 一定大於第三邊 , d(i,j)d(i,l)+d(l,j)d(i , j) \leq d(i , l) + d(l , j) , 從 第 ii 個樣本到第 jj 個樣本的 直接距離 , 小於等於 其途徑任何樣本 ll 生成的的兩個距離之和 d(i,l)+d(l,j)d(i , l) + d(l , j), 這兩個距離分別是 樣本 ii 到 樣本 ll 的距離 d(i,l)d(i , l) , 和樣本 ll 到 樣本 jj 的距離 d(l,j)d(l , j) ;


5 . 屬性權重 : 計算時 , 有些屬性可能很重要 , 有些屬性不重要 , 可以爲樣本的不同屬性 , 賦予不同的權重 , wiw_i ;


公式變爲 :


d(i,j)=w1xi1xj12+w2xi2xj22++wpxipxjp2d(i, j) = \sqrt { w_1 | x_{i1} - x_{j1} | ^2 + w_2 | x_{i2} - x_{j2} | ^2 + \cdots + w_p | x_{ip} - x_{jp} | ^2 }


其中 w1w_1 表示屬性 11 的權重 , w2w_2 表示屬性 22 的權重 , wpw_p 表示屬性 pp 的權重 ;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章