標籤:
在分類聚類演算法,推薦系統中,常要用到兩個輸入變數(通常是特徵向量的形式)距離的計算,即相似性度量.不同相似性度量對於演算法的結果,有些時候,差異很大.因此,有必要根據輸入資料的特徵,選擇一種合適的相似性度量方法。
令X=(x1,x2,..,xn)T,Y=(y1,y2,...yn)T為兩個輸入向量,
1.歐幾裡得距離(Euclidean distance)-EuclideanDistanceMeasure.
?
相當於高維空間內向量說表示的點到點之間的距離。
由於特徵向量的各分量的量綱不一致,通常需要先對各分量進行標準化,使其與單位無關,比如對身高(cm)和體重(kg)兩個單位不同的指標使用歐式距離可能使結果失效。
優點:簡單,應用廣泛(如果也算一個優點的話),能夠很好體現數值上的差異,kmeans常通過歐氏距離進行計算
缺點:沒有考慮分量之間的相關性,體現單一特徵的多個分量會干擾結果。
2.馬氏距離(Mahalanobis distance)-MahalanobisDistanceMeasure
?
C=E[(X-X平均)(Y-Y平均)]為該類輸入向量X的共變數矩陣.(T為轉置符號,E取平均時是樣本因此為n-1)
適用場合:
1)度量兩個服從同一分布並且其共變數矩陣為C的隨機變數X與Y的差異程度
2)度量X與某一類的均值向量的差異程度,判別樣本的歸屬。此時,Y為類均值向量.
優點:
1)獨立於分量量綱
2)排除了樣本之間的相關性影響。
缺點:不同的特徵不能差別對待,可能誇大弱特徵。
3.閔可夫斯基距離(Minkowsk distance)-MinkowskiDistanceMeasure(預設p=3)
?
可看成是歐氏距離的指數推廣,還沒有見到過很好的應用執行個體,但通常,推廣都是一種進步,特別的,
當p=1,也成做曼哈頓距離,也稱絕對距離,曼哈頓距離來源於城市區塊距離,是將多個維度上的距離進行求和後的結果。ManhattanDistanceMeasure.
?
當q=∞時,稱為切比雪夫距離,ChebyshevDistanceMeasure
切比雪夫距離起源於國際象棋中國王的走法,我們知道國際象棋國王每次只能往周圍的8格中走一步,那麼如果要從棋盤中A格(x1, y1)走到B格(x2, y2)最少需要走幾步?擴充到多維空間,其實切比雪夫距離就是當p趨向於無窮大時的明氏距離:
4.漢明距離(Hamming distance)-Mahout無
在資訊理論中,兩個等長字串之間的漢明距離是兩個字串對應位置的不同字元的個數。換句話說,它就是將一個字串變換成另外一個字串所需要替換的字元個數。
例如:
1011101 與 1001001 之間的漢明距離是 2。
2143896 與 2233796 之間的漢明距離是 3。
"toned" 與 "roses" 之間的漢明距離是 3。
5.Tanimoto係數(又稱廣義Jaccard係數)-TanimotoDistanceMeasure.
通常應用於X為布爾向量,即各分量只取0或1的時候。此時,表示的是X,Y的公用特徵的占X,Y所佔有的特徵的比例。
5.Jaccard係數
Jaccard係數主要用於計算符號度量或布爾值度量的個體間的相似度,因為個體的特徵屬性都是由符號度量或者布爾值標識,因此無法衡量差異具體值的大小,只能獲得“是否相同”這個結果,所以Jaccard係數只關心個體間共同具有的特徵是否一致這個問題。如果比較X與Y的Jaccard相似係數, 只比較xn和yn中相同的個數,公式如下:
7.皮爾遜相關係數(Pearson correlation coefficient)-PearsonCorrelationSimilarity
即相關分析中的相關係數r,分別對X和Y基於自身總體標準化後計算空間向量的餘弦夾角。公式如下:
?
8.餘弦相似度(cosine similarity)-CosineDistanceMeasure
?
就是兩個向量之間的夾角的餘弦值。
餘弦相似度用向量空間中兩個向量夾角的餘弦值作為衡量兩個個體間差異的大小。相比距離度量,餘弦相似度更加註重兩個向量在方向上的差異,而非距離或長度上。
優點:不受座標軸微調,向內縮小的影響。
9.調整餘弦相似度-Adjusted Cosine Similarity
雖然餘弦相似度對個體間存在的偏見可以進行一定的修正,但是因為只能分辨個體在維之間的差異,沒法衡量每個維數值的差異,會導致這樣一個情況:比如使用者對內容評分,5分制,X和Y兩個使用者對兩個內容的評分分別為(1,2)和(4,5),使用餘弦相似度得出的結果是0.98,兩者極為相似,但從評分上看X似乎不喜歡這2個內容,而Y比較喜歡,餘弦相似度對數值的不敏感導致了結果的誤差,需要修正這種不合理性,就出現了調整餘弦相似度,即 所有維度上的數值都減去一個均值,比如X和Y的評分均值都是3,那麼調整後為(-2,-1)和(1,2),再用餘弦相似度計算,得到-0.8,相似度為負 值並且差異不小,但顯然更加符合現實。
調整餘弦相似度和餘弦相似度,皮爾遜相關係數在推薦系統中應用較多。在基於項目的推薦中,GroupLens有篇論文結果表明調整餘弦相似度效能要優於後兩者。
10.基於權重的距離計算方法:
WeightedDistanceMeasure、WeightedEuclideanDistanceMeasure 、 WeightedManhattanDistanceMeasure
歐氏距離與餘弦相似度
歐氏距離衡量的是空間各點間的絕對距離,跟各個點所在的位置座標(即個體特徵維度數值)直接相關;而餘弦相似度衡量的是空間向量的夾角,更加的是體現在方向上的差異,而不是位置。如果保持A點的位置不變,B點朝原方向遠離座標軸原點,那麼這個時候餘弦相似度cosθ是保持不變的,因為夾角不變,而A、B兩點的距離顯然在發生改變,這就是歐氏距離和餘弦相似度的不同之處。
藉助三維座標系來看下歐氏距離和餘弦相似度的區別:
根據歐氏距離和餘弦相似度各自的計算方式和衡量特徵,分別適用於不同的資料分析模型:歐氏距離能夠體現個體數值特徵的絕對差異,所以更多的用於需要從維度數值大小中體現差異的分析,如使用使用者行為指標分析使用者價值的相似度或差異;而 餘弦相似度更多的是從方向上區分差異,而對絕對的數值不敏感,更多的用於使用使用者對內容評分來區分使用者興趣的相似度和差異,同時修正了使用者間可能存在的度量標準不統一的問題(因為餘弦相似度對絕對數值不敏感)。
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
機器學習相似性計算方法選擇理論依據