標籤:

如何理解皮爾遜相關係數(Pearson Correlation Coefficient)?

做計算似度的時候經常會用皮爾遜相關係數,那麼應該如何理解該係數?其數學含義、本質是什麼?


要理解Pearson相關係數,首先要理解協方差(Covariance),協方差是一個反映兩個隨機變數相關程度的指標,如果一個變數跟隨著另一個變數同時變大或者變小,那麼這兩個變數的協方差就是正值,反之相反,公式如下:

Pearson相關係數公式如下:

由公式可知,Pearson相關係數是用協方差除以兩個變數的標準差得到的,雖然協方差能反映兩個隨機變數的相關程度(協方差大於0的時候表示兩者正相關,小於0的時候表示兩者負相關),但是協方差值的大小並不能很好地度量兩個隨機變數的關聯程度,例如,現在二維空間中分布著一些數據,我們想知道數據點坐標X軸和Y軸的相關程度,如果X與Y的相關程度較小但是數據分布的比較離散,這樣會導致求出的協方差值較大,用這個值來度量相關程度是不合理的,如下圖:

為了更好的度量兩個隨機變數的相關程度,引入了Pearson相關係數,其在協方差的基礎上除以了兩個隨機變數的標準差,容易得出,pearson是一個介於-1和1之間的值,當兩個變數的線性關係增強時,相關係數趨於1或-1;當一個變數增大,另一個變數也增大時,表明它們之間是正相關的,相關係數大於0;如果一個變數增大,另一個變數卻減小,表明它們之間是負相關的,相關係數小於0;如果相關係數等於0,表明它們之間不存在線性相關關係。《數據挖掘導論》給出了一個很好的圖來說明:


樓上這些的回答都太複雜了!!!

先說結論: 皮爾遜相關係數是餘弦相似度在維度值缺失情況下的一種改進, 皮爾遜相關係數是餘弦相似度在維度值缺失情況下的一種改進, 皮爾遜相關係數是餘弦相似度在維度值缺失情況下的一種改進.

樓主如果高中正常畢業, 參加過高考, 那麼肯定會這麼一個公式

cos& = a ? b / |a|?|b|

假設a = (3, 1, 0), b = (2, -1, 2)

分子是a, b兩個向量的內積, (3, 1, 0) ? (2, -1, 2) = 3?2 + 1?(-1) + 0?2 = 5

分母是兩個向量模(模指的是向量的長度)的乘積.

總之這個cos的計算不要太簡單...高考一向這是送分題...

然後問題來了, 皮爾遜係數和這個cos啥關係...(不好意思借用了我們學校老師的課件...)

皮爾森相關係數計算公式

其實皮爾遜係數就是cos計算之前兩個向量都先進行中心化(centered)...就這麼簡單...

中心化的意思是說, 對每個向量, 我先計算所有元素的平均值avg, 然後向量中每個維度的值都減去這個avg, 得到的這個向量叫做被中心化的向量. 機器學習, 數據挖掘要計算向量餘弦相似度的時候, 由於向量經常在某個維度上有數據的缺失, 預處理階段都要對所有維度的數值進行中心化處理.

我們觀察皮爾遜係數的公式:

分子部分: 每個向量的每個數字要先減掉向量各個數字的平均值, 這就是在中心化.

分母部分: 兩個根號式子就是在做取模運算, 裡面的所有的 r 也要減掉平均值, 其實也就是在做中心化.

note: 我其實是今天上推薦系統課, 講相似性計算的時候才發現原來餘弦計算和皮爾遜相關係數計算就是一個東西兩個名字啊......氣死我了...高中的時候我還是靠背公式解題的...逃....

================2017-11-15更新: 對餘弦相似度和皮爾森相關係數的進一步認識================

餘弦距離(餘弦相似度), 計算的是兩個向量在空間中的夾角大小, 值域為[-1, 1]: 1代表夾角為0°, 完全重疊/完全相似; -1代表夾角為180°, 完全相反方向/毫不相似.

餘弦相似度的問題是: 其計算嚴格要求"兩個向量必須所有維度上都有數值", 比如:

v1 = (1, 2, 4),

v2=(3, -1, null),

那麼這兩個向量由於v2中第三個維度有null, 無法進行計算.

然而, 實際我們做數據挖掘的過程中, 向量在某個維度的值常常是缺失的, 比如v2=(3, -1, null), v2數據採集或者保存中缺少一個維度的信息, 只有兩個維度. 那麼, 我們一個很樸素的想法就是, 我們在這個地方填充一個值, 不就滿足了"兩個向量必須所有維度上都有數值"的嚴格要求了嗎? 填充值的時候, 我們一般這個向量已有數據的平均值, 所以v2填充後變成v2=(3, -1, 2), 接下來我們就可以計算cos&了.

而皮爾遜相關係數的思路是, 我把這些null的維度都填上0, 然後讓所有其他維度減去這個向量各維度的平均值, 這樣的操作叫作中心化. 中心化之後所有維度的平均值就是0了, 也滿足進行餘弦計算的要求. 然後再進行我們的餘弦計算得到結果. 這樣先中心化再餘弦計得到的相關係數叫作皮爾遜相關係數.

所以, 從本質上, 皮爾遜相關係數是餘弦相似度在維度值缺失情況下的一種改進.

另外, 以movielens數據集計算兩個用戶之間相似度的協同過濾場景來說, 餘弦相似度和皮爾遜相關係數所表現的都是在兩個用戶都有打分記錄的那些特徵維度下, 他們超過自身打分平均值的幅度是否接近. 如果各維度下的超出幅度都類似, 那麼就是比較相似的.


最近剛好用到,查了不少資料,分享一下:

  • 數據挖掘 - 如何理解皮爾遜相關係數(Pearson Correlation Coefficient)?

  • 皮爾遜相關係數-wikipedia.org

  • pearson、spearman、Kendall』s tau-b三種相關性的區別

還可以通過玩遊戲,直觀了解點的二維分布和相關係數大小:Guess the Correlation


L^2(Omega,{cal F},P) 是Hilbert空間,如果定義 <X,Y>=E(XY) 的話, E(XY) 滿足內積的性質,就可以用夾角啊正交啊那套東西來考慮。

這個相關係數 
ho=dfrac{<X,Y>}{||X|| ||Y||} 其實就是兩者中心化保證零均值之後的夾角的cos。


從泛函分析的角度看,相關係數就是兩個n維隨機向量夾角的餘弦值,取值都為-1~1,越接近1,向量夾角越小,兩個向量的正相關性就越大。

相關係數的公式其實也就是向量夾角的餘弦公式:

cos(a,b)=a·b/(|a|*|b|)

這需要一些高等代數和泛函的知識,同樣的思路還可用於更直觀理解數分中的其它一些定理,如Schwarz不等式等。題主可以系統學習一下。


幾何上可以理解為夾角的餘弦值


matlab

doc corrcoef


這裡有個比較全面的回答:http://segmentfault.com/question/212/%E5%A6%82%E4%BD%95%E7%90%86%E8%A7%A3%E7%9A%AE%E5%B0%94%E9%80%8A%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0-pearson-correlation-coefficient


推薦閱讀:

證明:在任意 15個整數中,必有8個整數的和是8的倍數?
一些初等函數如e^x^2之原函數不存在應如何證明?是否有系統的理論用以解決類似的函數原函數不存在的證明?
等號上面有一個三角是什麼運算符?
隨機變數除了離散型和連續型還有什麼類型?
求推薦適合自學的複分析教材(學過複變函數)?

TAG:數學 |