如何通俗易懂地解釋「協方差」與「相關係數」的概念?

其背後的原理為何可以達到衡量「相關性」的效果?


最喜歡通俗易懂地解釋一個事情。

一、協方差:

可以通俗的理解為:兩個變數在變化過程中是同方向變化?還是反方向變化?同向或反向程度如何?

你變大,同時我也變大,說明兩個變數是同向變化的,這時協方差就是正的。

你變大,同時我變小,說明兩個變數是反向變化的,這時協方差就是負的。

從數值來看,協方差的數值越大,兩個變數同向程度也就越大。反之亦然。

咱們從公式出發來理解一下:

Cov(X,Y)=E[(X-mu _{x})(Y-mu _{y})]

公式簡單翻譯一下是:如果有X,Y兩個變數,每個時刻的「X值與其均值之差」乘以「Y值與其均值之差」得到一個乘積,再對這每時刻的乘積求和並求出均值(其實是求「期望」,但就不引申太多新概念了,簡單認為就是求均值了)。

下面舉個例子來說明吧:

比如有兩個變數X,Y,觀察t1-t7(7個時刻)他們的變化情況。

簡單做了個圖:分別用紅點和綠點表示X、Y,橫軸是時間。可以看到X,Y均圍繞各自的均值運動,並且很明顯是同向變化的。

這時,我們發現每一時刻X-mu _{x}的值與Y-mu _{y}的值的「正負號」一定相同(如下圖:比如t1時刻,他們同為正,t2時刻他們同為負):

所以,像上圖那樣,當他們同向變化時,X-mu _{x}Y-mu _{y}的乘積為正。這樣,當你把t1-t7時刻X-mu _{x}Y-mu _{y}的乘積加在一起,求平均後也就是正數了。

如果反向運動呢?

很明顯,X-mu _{x}的值與Y-mu _{y}的值的「正負號」一定相反,於是X-mu _{x}Y-mu _{y}的乘積就是負值了。這樣當你把t1-t7時刻X-mu _{x}Y-mu _{y}的乘積加在一起,求平均的時候也就是負數了。

當然上面說的是兩種特殊情況,很多時候X,Y的運動是不規律的,比如:

這時,很可能某一時刻X-mu _{x}的值與Y-mu _{y}的值乘積為正,另外一個時刻X-mu _{x}的值與Y-mu _{y}的值乘積為負。

將每一時刻X-mu _{x}Y-mu _{y}的乘積加在一起,其中的正負項就會抵消掉,最後求平均得出的值就是協方差,通過協方差的數值大小,就可以判斷這兩個變數同向或反向的程度了。

所以,t1-t7時刻中,X-mu _{x}Y-mu _{y}的乘積為正的越多,說明同向變化的次數越多,也即同向程度越高。反之亦然。

總結一下,如果協方差為正,說明X,Y同向變化,協方差越大說明同向程度越高;如果協方差為負,說明X,Y反向運動,協方差越小說明反向程度越高。

--------LINE---------

一般的同學看到above the line的內容就ok了。但有一些愛鑽研的同學,可能會進一步提問:

那如果X,Y同向變化,但X大於均值,Y小於均值,那X-mu _{x}Y-mu _{y}的乘積為負值啊?這不是矛盾了嗎?

那就繼續往下看……

這種情況是有可能出現的,比如:

可以看到,t1時刻,X-mu _{x}Y-mu _{y}的符號相反,他們的乘積為負值。

但是,總體看,這兩個變數的協方差仍然是正的,因為你還要計算t2,t3……t7時刻X-mu _{x}Y-mu _{y}的乘積,然後再把這7個時刻的乘積求和做均值,才是最後X,Y的協方差。1個負、6個正,顯然最後協方差很大可能性是正的。

所以t1時刻X-mu _{x}Y-mu _{y}的乘積為負值,並不能說明他們反向運動,要結合整體的情況來判斷。

那麼你可能又要問了,既然都是同向變化,那t1時刻X-mu _{x}Y-mu _{y}的乘積為負值、其他時刻乘積為正的這種情況,與,t1-t7時刻X-mu _{x}Y-mu _{y}的乘積均為正值的情況,到底有什麼差異呢?這點其實前面也解釋過了,差異就是:第一種情況的同向程度不如第二種情況的同向程度大(第一種情況6正1負,第二種情況7正,所以第一種情況的協方差小於第二種情況的協方差,第一種情況X,Y變化的同向程度要小於第二種情況)。

另外,如果你還鑽牛角尖,說如果t1,t2,t3……t7時刻X,Y都在增大,而且X都比均值大,Y都比均值小,這種情況協方差不就是負的了?7個負值求平均肯定是負值啊?但是X,Y都是增大的,都是同向變化的,這不就矛盾了?

這個更好解釋了:這種情況不可能出現!

因為,你的均值算錯了……

X,Y的值應該均勻的分布在均值兩側才對,不可能都比均值大,或都比均值小。

所以,實際它的圖應該是下面這樣的:

發現沒有,又變成X-mu _{x}Y-mu _{y}的符號相同的情況了~有沒有種被大自然打敗的感覺~

好了,現在,對於協方差應該有點感覺了吧?

二、相關係數:

對於相關係數,我們從它的公式入手。一般情況下,相關係數的公式為:

翻譯一下:就是用X、Y的協方差除以X的標準差和Y的標準差。

所以,相關係數也可以看成協方差:一種剔除了兩個變數量綱影響、標準化後的特殊協方差。

既然是一種特殊的協方差,那它:

1、也可以反映兩個變數變化時是同向還是反向,如果同向變化就為正,反向變化就為負。

2、由於它是標準化後的協方差,因此更重要的特性來了:它消除了兩個變數變化幅度的影響,而只是單純反應兩個變數每單位變化時的相似程度。

比較抽象,下面還是舉個例子來說明:

首先,還是承接上文中的變數X、Y變化的示意圖(X為紅點,Y為綠點),來看兩種情況:

很容易就可以看出以上兩種情況X,Y都是同向變化的,而這個「同向變化」,有個非常顯著特徵:X、Y同向變化的過程,具有極高的相似度!無論第一還是第二種情況下,都是:t1時刻X、Y都大於均值,t2時刻X、Y都變小且小於均值,t3時刻X、Y繼續變小且小於均值,t4時刻X、Y變大但仍小於均值,t5時刻X、Y變大且大於均值……

可是,計算一下他們的協方差,

第一種情況下:

[(100-0)	imes (70-0) +( -100-0)	imes ( -70-0)+(-200-0)	imes (-200-0)...]div 7approx 15428.57

第二種情況下:

[(0.01-0)	imes (70-0) +( -0.01-0)	imes ( -70-0)+(-0.02-0)	imes (-200-0)...]div 7approx 1.542857

協方差差出了一萬倍,只能從兩個協方差都是正數判斷出兩種情況下X、Y都是同向變化,但是,一點也看不出兩種情況下X、Y的變化都具有相似性這一特點。

這是為什麼呢?

因為以上兩種情況下,在X、Y兩個變數同向變化時,X變化的幅度不同,這樣,兩種情況的協方差更多的被變數的變化幅度所影響了。

所以,為了能準確的研究兩個變數在變化過程中的相似程度,我們就要把變化幅度對協方差的影響,從協方差中剔除掉。於是,相關係數就橫空出世了,就有了最開始相關係數的公式:

那麼為什麼要通過除以標準差的方式來剔除變化幅度的影響呢?咱們簡單從標準差公式看一下:

從公式可以看出,標準差計算方法為,每一時刻變數值與變數均值之差再平方,求得一個數值,再將每一時刻這個數值相加後求平均,再開方。

「變數值與變數均值之差」X-mu _{x}是什麼呢?就是偏離均值的幅度:

那為何要對它做平方呢?因為有時候變數值與均值是反向偏離的(見下圖),X-mu _{x}是個負數,平方後,就可以把負號消除了。這樣在後面求平均時,每一項數值才不會被正負抵消掉,最後求出的平均值才能更好的體現出每次變化偏離均值的情況。

當然,最後求出平均值後並沒有結束,因為剛才為了消除負號,把X-mu _{x}進行了平方,那最後肯定要把求出的均值開方,將這個偏離均值的幅度還原回原來的量級。於是就有了下面標準差的公式:

所以標準差描述了變數在整體變化過程中偏離均值的幅度。協方差除以標準差,也就是把協方差中變數變化幅度對協方差的影響剔除掉,這樣協方差也就標準化了,它反應的就是兩個變數每單位變化時的情況。這也就是相關係數的公式含義了。

同時,你可以反過來想像一下:既然相關係數是協方差除以標準差,那麼,當X或Y的波動幅度變大的時候,它們的協方差會變大,標準差也會變大,這樣相關係數的分子分母都變大,其實變大的趨勢會被抵消掉,變小時也亦然。於是,很明顯的,相關係數不像協方差一樣可以在+infty 到-infty 間變化,它只能在+1到-1之間變化(相關係數的取值範圍在+1到-1之間變化可以通過施瓦茨不等式來證明,有些複雜,這裡就不贅述了,有興趣的可以google下)。

總結一下,對於兩個變數X、Y,

當他們的相關係數為1時,說明兩個變數變化時的正向相似度最大,即,你變大一倍,我也變大一倍;你變小一倍,我也變小一倍。也即是完全正相關(以X、Y為橫縱坐標軸,可以畫出一條斜率為正數的直線,所以X、Y是線性關係的)。

隨著他們相關係數減小,兩個變數變化時的相似度也變小,當相關係數為0時,兩個變數的變化過程沒有任何相似度,也即兩個變數無關。

當相關係數繼續變小,小於0時,兩個變數開始出現反向的相似度,隨著相關係數繼續變小,反向相似度會逐漸變大。

當相關係數為-1時,說明兩個變數變化的反向相似度最大,即,你變大一倍,我變小一倍;你變小一倍,我變大一倍。也即是完全負相關(以X、Y為橫縱坐標軸,可以畫出一條斜率為負數的直線,所以X、Y也是線性關係的)。

有了上面的背景,我們再回到最初的變數X、Y的例子中,可以先看一下第一種情況的相關係數:

X的標準差為

sigma _{X} =sqrt{E((X-mu _{x})^{2} )} =sqrt{[(100-0)^{2}+ (-100-0)^{2}...]div 7} approx 130.9307

Y的標準差為

sigma _{Y} =sqrt{E((Y-mu _{y})^{2} )} =sqrt{[(70-0)^{2}+ (-70-0)^{2}...]div 7} approx 119.2836

於是相關係數為


ho =15428.57div (130.9307	imes 119.2836)approx 0.9879

說明第一種情況下,X的變化與Y的變化具有很高的相似度,而且已經接近完全正相關了,X、Y幾乎就是線性變化的。

那第二種情況呢?

X的標準差為

sigma _{X} =sqrt{E((X-mu _{x})^{2} )} =sqrt{[(0.01-0)^{2}+ (-0.01-0)^{2}...]div 7} approx 0.01309307

Y的標準差為

sigma _{Y} =sqrt{E((Y-mu _{y})^{2} )} =sqrt{[(70-0)^{2}+ (-70-0)^{2}...]div 7}approx 119.2836

於是相關係數為


ho =1.542857div (0.01309307	imes 119.2836)approx 0.9879

說明第二種情況下,雖然X的變化幅度比第一種情況X的變化幅度小了10000倍,但是絲毫沒有改變「X的變化與Y的變化具有很高的相似度」這一結論。同時,由於第一種、第二種情況的相關係數是相等的,因此在這兩種情況下,X、Y的變化過程有著同樣的相似度。

好了,講了這麼多,不知你看完是否對相關係數也有了一些感覺?

三、寫在最後

本文主要還是想給非理工專業、入門級的各位朋友看的,自己也曾在茫茫公式海中痛苦過,但後來發現對一個公式的原理有了一個感覺後,它也就變得好記很多了,而且也願意深入研究它了。這篇文章也就是培養你對於協方差、相關係數的這種感覺。但是,為了通俗易懂,有些地方也不夠全面、嚴謹。也許你看完本文,經過自己的學習研究,也會有自己的一些想法,那你可以繼續研究一下本題目下其他答主的答案,通過引入向量、內積等定義,會把協方差、相關係數說明得更加嚴謹和透徹。總之學習是一個循序漸進的過程,不要覺得徹底明白了什麼,那往往是你踏入一個領域的第一步。

(完)

其他一些推薦的通俗易懂類答案,感興趣的朋友可以閱讀:

作為一個非金融從業者怎樣才能看懂電影《大空頭》? - GRAYLAMB 的回答 - 知乎

關於外匯標價方法的定義,直接標價法到底是什麼? - GRAYLAMB 的回答 - 知乎

如何淺顯易懂地解說 Paxos 的演算法?

未來計劃繼續通俗易懂解讀ApplePay、區塊鏈、機器學習,歡迎關注。

——2017.2.25

關於比特幣與區塊鏈的文章寫好了,有興趣的可以來瞅瞅~

GRAYLAMB:比特幣 (Bitcoin) 系統是如何運行的?

——2017.8.4


協方差就是倆人跳舞的舞步協同程度,如果一起向前走或者向後退,協方差就是正值;如果一個朝前一個朝後,協方差就是負值;如果各自都不動,就是零。
相關係數就是標準化的協方差,就是剔除了倆人舞步尺度大小不一的影響。


協方差、相關係數是緊密相關的,二者都是用來描述兩個連續變數的線性相關關係。
本答案先簡要闡述相關概念,再具體闡述幾何上的理解,最後提出一點個人看法。

簡要闡述如下:

一.協方差
只表示線性相關的方向,取值正無窮到負無窮。
也就是說,協方差為正值,說明一個變數變大另一個變數也變大;取負值說明一個變數變大另一個變數變小,取0說明兩個變數沒有相關關係。
注意:協方差的絕對值不反映線性相關的程度(其絕對值與變數的取值範圍有關係)。

二.相關係數
不僅表示線性相關的方向,還表示線性相關的程度,取值[-1,1]。
也就是說,相關係數為正值,說明一個變數變大另一個變數也變大;取負值說明一個變數變大另一個變數變小,取0說明兩個變數沒有相關關係。同時,相關係數的絕對值越接近1,線性關係越顯著。
通常情況下,當相關係數的絕對值大於2/sqrt(N),N為樣本點的數量時,我們認為線性關係是存在的。

三.協方差與相關係數的關係
協方差的公式為 S_{xy}=sum_i^N frac{(x_i-mu_x)(y_i - mu_y)}{N-1}
相關係數的公式為r = frac{S_{xy}}{S_x S_y},其中Sx,Sy分別表示x和y的標準差。
由兩者的相關關係,可以看出為什麼相關係數比協方差多闡述了線性相關的程度:
原因在於協方差和大小和x,y的取值範圍緊密相關,舉個例子,x,y都取值[-1000,1000]或都取值[-0.001,0.001],這兩者的協方差肯定呈現量級般的差異,但是都除以標準差後,相當於在同樣的尺度上衡量問題,所以相關係數是有意義的,反映了線性相關的程度。
備註:其實也不一定必須得除以標準差,只要除的值等夠度量數據的波動範圍就可以了,標準差只是一種通俗慣例的選擇。


具體闡述如下:
回答協方差(相關係數)的幾何意義。
本質上,它就是數據的點積度量sum_i^N {(x_i-mu_x)(y_i - mu_y)},點積的幾何意義是一個向量在另一個向量上的投影,或者理解成兩個向量的重合程度。
當向量角為0時,重合值最大;當向量角為90時,重合值最小。
同時,考慮點積時,也必須考慮向量x,y的長度。如果不考慮x,y的取值範圍,那麼點積的意義只是向量的夾角是銳角直角還是鈍角,其值並不能反映向量的重合程度(和協方差很像)。為了能夠確切反映向量的重合程度,我們可以把x,y向量都比例化,那麼點積不僅反映了夾角,還反映了向量的重合程度(和相關係數類似)。

此外,還有一種更直觀的理解,可以參考variance - How would you explain covariance to someone who understands only the mean?,講的很棒。


最後,一些值得注意的地方
協方差,相關係數這些只不過是數學工具,對於二值變數的相關關係,最好是先做出散點圖,再利用這些數學工具去分析,否則容易得出錯誤的結果。


觀察圖片如下:

這四組數據中,x值的平均數都是9.0,y值的平均數都是7.5;x值的方差都是10.0,y值的方差都是3.75;它們的相關度都是0.816,線性回歸線都是y=3+0.5x。單從這些統計數字上看來,四組數據所反映出的實際情況非常相近,而事實上,這四組數據有著天壤之別。對這個問題感興趣的可以搜索下Anscombe』s Quartet。


看到這個問題,馬上想到我那天回答的另一個問題了。我們在刻畫這個世界之間的各種關係的時候,常常會希望度量「距離」:

  1. 對於空間中的兩個點,我們可以用勾股定理定義平方和作為距離;
  2. 對於兩個二進位序列,或者兩段基因序列,我們可以用漢明距離來度量二者之間的差異,作為「距離」;
  3. 那麼假如對於兩個複雜的量(描述這兩個量可能用很多很多的參數),那麼這時候怎樣度量二者之間的「相關性」呢?

按照真正的邏輯順序來講,應該是這樣講的:

把所有的這些複雜的參數排成一列,就拍成了一個向量,很多很多的這樣的向量構成了一個向量空間。向量空間裡面的東西沒有「距離」這樣的概念,對於一個向量空間裡面的向量,甚至沒有「長度」這樣的概念,因為向量空間只是一個代數結構,沒有度量或者拓撲的概念在其中,那這時候怎樣度量向量的長度來呢?接下來,又怎樣來確定兩個向量之間的「距離」呢?

對於一個可以定義距離的結構(度量空間),我們需要有一些要求,認為滿足這些要求的一個函數就可以認為是距離,例如我們要求:A到B的距離等於B到A的距離,A到A的距離等於0,兩個點之間的距離非負,三角不等式。那麼對於一個向量空間,怎樣可以最自然地給它一個「範數」,使得它有可能推廣到一個距離空間(度量空間)呢?最自然的方法就是引入「內積」的概念了,通過內積的運算,得到內積空間,再用內積來定義距離(範數),於是也就有可能得到距離空間。

為什麼內積空間可以變成一個度量空間呢?這就是我在「學一門課的時候,要注意理解和思考,不要一味的背公式,背習題是什麼意思?」這個問題裡面,我反覆用到了 Cauchy 不等式,目的也正在此。Cauchy 不等式為我們提供了判斷兩個向量是否相關的方案:(a?b)/|a||b| 可以作為度量相關性的一個函數,而它的直觀意義是什麼,請看下面。

—————————————這是一條分割線——————————————

好了,截止到目前,都是我認為一個比較正常,且不算太難的一種解釋的方法,如果覺得這樣理解起來還有困難,那麼接下來就只能用能讓中學生聽懂的,最直觀的方法了,但是我並不喜歡這樣直觀的講法,因為這個講法的邏輯是很混亂的,事先就引入了很多不應該過早引入的概念,不過為了幫助理解,也就這樣吧:

  • 有兩個向量,我們希望定義它們是不是相關。一個很自然的想法,用向量與向量的夾角來作為距離的定義,夾角小,就距離小,夾角大,就距離大。
  • 但是怎樣來計算夾角呢?為了讓這種計算可行,我們要選一種恰當的三角函數來算。
  • 正弦函數的不太好的一個原因是因為加上個90°,正弦算出來得到的結果一樣,而兩個向量的夾角是30°還是120°這是完全的兩碼事,此外,正弦函數也不適合推廣到高維度向量的計算中的「兩兩比較」。
  • 那麼考慮用餘弦吧,這個可以很方便地區分30°和120°,而且還有一個好處——餘弦的計算非常簡單,用內積就可以計算了,中學數學中就學過: (x1,y1)?(x2,y2)=x1x2+y1y2,這就是內積,你要是喜歡,也可以把這個叫做「協方差」。
  • 但是這個內積的定義很奇怪哎?要是兩個向量本身就長,那這個也算不出夾角來,所以再要除以兩個向量本身的長度,即,夾角:cos &<a, b&> =(a?b)/|a||b|;
  • 這樣,那麼兩個量是不是相關,怎麼來判斷?就用餘弦的大小就可以了,我們把兩個向量的夾角的餘弦,就叫做「相關係數」,正如上面的式子所指出的,寫開了就是:

    分子上面的就是一個內積的計算,也就是前面我說的「協方差」,分子下面是兩個勾股定理乘起來,是兩個向量的長度。如果兩個向量平行,則它們夾角的餘弦(也就是「相關係數」)就等於1或者-1,同向的時候是1,反向的時候就是-1。如果兩個向量垂直,則夾角的餘弦就等於0,說明二者不相關。

  • 再寫我都不好意思了,我覺得這樣應該很容易就可以懂了……

  • 二元正態分布的總體相關係數

X 每增大一個(X的)標準差,Y 的條件分布均值增大多少個(Y的)標準差。

相關係數絕對值總是 ≤ 1。如果這兩個變數是同一性質變數在兩個時點或者兩個場合的重複測量並分別作了標準化,有個反直覺的結果:假如父子身高正相關0.6,身高在同代人裡頭正一個標準差的傢伙,預測他的父親或者孩子在各自世代中的身高,都變矮了0.4個標準差,只剩正 0.6 標準差。把身高換為智商、成績、開心程度,以及任何你能想像的(適合在兩個重測場合各自作標準化之後報告的)變數,看看是不是夠反直覺。

  • 二元正態分布的總體協方差

協方差是一個平方的概念。如果一個長方形橫軸是 X 變化的一個標準差,縱軸是 Y 的條件分布均值隨之變化的距離,這個長方形的面積就是總體協方差。

########上面的操作化解讀對大部分知友都「通俗易懂」#########
#####下面的向量解讀,對學過線性代數的知友才「形象易懂」#####

  • 樣本量為 n 的樣本相關係數

n 維度空間,拆分成對角線向量 left[egin{array}{c} 1\ 1\ vdots\ 1 end{array}
ight] 所在1個維度 + 與之正交的 n-1 維度子空間。兩個向量vec{x}, vec{y}在後者(n-1 維子空間)投影向量的夾角餘弦等於樣本相關係數 r,其夾角即 arccos(r)

這裡還藏著一個問題:高維空間中的兩個向量夾角是什麼意思? @傅渥成 的回答解釋了高維空間中的長度和內積怎麼在代數上定義高維向量夾角。不過從心理學視角,兩個向量夾出的三角形三邊長度比例已經可以「幾何地」表徵高維空間里的夾角。因為三角形(以及夾角)即使在高維空間里仍然還只是二維概念,基於視覺+運動的具身經驗對不超過三維的概念可以達成幾何而非代數的心理表徵。

借用 n =3 情形的 SS=Sum of Squares (of Deviations) 定義示意圖,演示對角線垂直平面上的投影。這個投影(把紅線扔到盤面),X 原坐標系每個分量 (X_i-M)即 Deviation / 離差,其長度平方定義了 SS。注意到盤面維度 df 只有 n -1,所以樣本方差估計為 SS/(n-1) 。把 SS 字面中的Squares 改成 Products,SP 即兩個 X 各自的離差向量(畫出來即各自在盤面投影)的內積。同樣地,樣本協方差估計為 SP/(n-1) 。

  • 多自變數回歸R^2

vec{x}_1,vec{x}_2,...,vec{x}_p在上述 n-1 維度子空間投影張成 p 維度超平面,vec{y}的投影與這個超平面的夾角即 arccos(R)

這個幾何解讀可以幫助理解下面匪夷所思的反直覺案例——只有任何一個自變數時,R^2約等於0;如果兩個自變數都進入模型,R^2約等於1。圖中藍色箭頭是因變數(投影 n-1 維度子空間的)向量,與兩個自變數(投影 n-1 維度子空間的)向量幾乎垂直,卻與其張成平面夾很小的銳角。

相關閱讀——

  • DV predicted by two IVs, vs. triangular pyramid ——最後一圖示例模擬生成數據的 R 代碼,三個投影向量的夾角可在網頁自定義,在線提交即得到模擬數據結果
  • 怎麼理解統計學中「自由度」這個概念? - 李曉煦的回答
  • 為何歷史上那些高智商的名人子孫往往都難以再創輝煌? - 李曉煦的回答

看看哥的博客就明白了
終於明白協方差的意義了

協方差代表了兩個變數之間的是否同時偏離均值。


如果正相關,這個計算公式,每個樣本對(Xi, Yi), 每個求和項大部分都是正數,即兩個同方向偏離各自均值,而不同時偏離的也有,但是少,這樣當樣本多時,總和結果為正。下面這個圖就很直觀。下面轉載自:協方差的意義

在概率論中,兩個隨機變數 X 與 Y 之間相互關係,大致有下列3種情況:

當 X, Y 的聯合分布像上圖那樣時,我們可以看出,大致上有: X 越大 Y 也越大, X 越小 Y 也越小,這種情況,我們稱為「正相關」。

當X, Y 的聯合分布像上圖那樣時,我們可以看出,大致上有:X 越大Y 反而越小,X 越小 Y 反而越大,這種情況,我們稱為「負相關」。

當X, Y 的聯合分布像上圖那樣時,我們可以看出:既不是X 越大Y 也越大,也不是 X 越大 Y 反而越小,這種情況我們稱為「不相關」。

怎樣將這3種相關情況,用一個簡單的數字表達出來呢?

在圖中的區域(1)中,有 X&>EX ,Y-EY&>0 ,所以(X-EX)(Y-EY)&>0;

在圖中的區域(2)中,有 X&0 ,所以(X-EX)(Y-EY)&<0;

在圖中的區域(3)中,有 X&0;

在圖中的區域(4)中,有 X&>EX ,Y-EY&<0 ,所以(X-EX)(Y-EY)&<0。

當X Y 正相關時,它們的分布大部分在區域(1)和(3)中,小部分在區域(2)和(4)中,所以平均來說,有E(X-EX)(Y-EY)&>0

當 X與 Y負相關時,它們的分布大部分在區域(2)和(4)中,小部分在區域(1)和(3)中,所以平均來說,有(X-EX)(Y-EY)&<0

當 X與 Y不相關時,它們在區域(1)和(3)中的分布,與在區域(2)和(4)中的分布幾乎一樣多,所以平均來說,有(X-EX)(Y-EY)=0

所以,我們可以定義一個表示X, Y 相互關係的數字特徵,也就是協方差
cov(X, Y) = E(X-EX)(Y-EY)。

當 cov(X, Y)&>0時,表明 XY 正相關

cov(X, Y)&<0時,表明XY負相關;

cov(X, Y)=0時,表明XY不相關。

這就是協方差的意義。


先說協方差
兩個變數有多大的「可能」朝一個方向改變?協方差就是用來形容這個「可能」的程度的。
比如你和我是兩個變數,你變大我也變大,你變小我也變小,那麼咱倆的協方差就是正數。
相反,如果你變大我卻變小,你變小我卻變大,那麼咱倆的協方差就是負數。

這時候再來看一下協方差的公式
Cov(X,Y)=E[(X-mu _{x})(Y-mu _{y})]
其中X,Y就是兩個隨機變數,如果我是X你是Y,那麼當我變大(即大於均值)時,X-mu _{x}的值就為正,這時候你也變大(即大於你的均值),那麼Y-mu _{y}的值也是正的。

假設現在有十個時刻,分別為t_{1},t_{2},t_{3}...t_{10}
t_{1}時刻,我變大你變大,(X-mu _{x})(Y-mu _{y})的值為正。
t_{2}時刻,我變大你也變大,(X-mu _{x})(Y-mu _{y})的值還是為正。
如果在這十個時刻裡面,每次我變大的時候,你也變大,那麼十個(X-mu _{x})(Y-mu _{y})的值都是正的,那麼這十個值得均值也肯定是正的。
就說明,咱們倆朝一個方向改變的「可能」的程度,很大。

這時候再考慮兩種情況
1.我變大了很多,你變大了一點
2.我變大了很多,你也變大了很多
這時候,兩種情況的協方差都是正值,但是第二種情況的值就要大於第一種情況。
代入公式也很容易理解吧。

相反,負值就是我變大你變小,思路是一樣的。


一群人慾研究不同地區的螞蟻爬行速度和本地極限風速的關係。
用協方差當然可以做出來。
協方差的思路是,先給數學期望,即平均值。
如果該地區的螞蟻爬速和極限風速都高於或者都低於各自平均值,那麼假定它們「正聯繫」多一些
如果一個越高於平均值,另外一個就越低於平均值,那麼假定它們的「負聯繫」多一些
其它情況就認為兩者任何聯繫都沒有
因此出現了下面協方差的公式:

根據正負數的計演算法則,這樣構造一個協方差公式,恰好就把這三種情況表示出來了。
(實際上這種表示是否合理還要商榷,它忠實反映現實了嗎?為什麼「不相關」是在負相關和正相關之間呢?幸好大多數研究不需要涉及探討不相關和相關的關係,不然又有很多人草率地用這種數量關係來表述一種現實關係了)。

後來又來了一幫人,欲研究,螞蟻爬速和極限風速的關係,和螞蟻爬速和本地經緯度的關係,哪個更強這個問題。
那麼毛病就來了。
經緯度的變化幅度顯然要比風速大很多,或者在另外一些情況下小很多。
這樣,協方差公式出來的表示兩者「共變」的東西,在不同變數計算下就不公平了。
你看,假如在數的層級上,經緯度的變化最多用幾十來衡量,風速的變化可能要用幾百,幾千,上萬,怎麼不可能,我把單位變成厘米/s、毫米/s了。
這樣協方差的大小反映的不僅僅是共變的幅度,而且是在事物本身計量方式的基礎上的共變幅度。
計量單位都是人規定的。一厘米也是1,一光年也是1,你怎麼區分?
真希望有一個尺子,把世間萬物的變化都「歸一化」,放到一個變化幅度上來衡量啊。
這個東西不就是標準差嗎?
因此得到相關公式。

最後貼一段以前做行為數據的時候,要做選擇回歸到標準係數或者非標準係數的時候,給課題組老大看得一段話:

要報告標準係數還是要用非標準係數要視情況而定。如果多種自變數沒有相同的單位,應該盡量用標準係數(例如性別和年齡對於成績的影響)。而多種自變數的單位是相同的,那麼還要審慎地視情況而定:用非標準係數,然後將多種自變數的均值和標準差展示出來,這樣有利於實驗報告的外部效度,因為自變數改變消耗的「能量」在現實世界中是不一而足的;而簡單地報告標準係數,則有利於向讀者展示實驗報告的內部信度,因為報告展示的是本次實驗樣本自變數改變消耗「能量」等價基礎上的結果。

很多實驗通常用每個樣本的slope值和0做單樣本t檢驗(不是統計課本上那種總體回歸做的單樣本t檢驗)。-無窮到+無窮的斜率壓縮到-1到+1(類似log(ax)),並非是線性轉化,並且絕對值上限為1,無法滿足t檢驗的假設。因為當相關係數或者標準回歸係數太接近±1時,則顯然不是對稱分布,方差也會被壓縮。因此這裡的slope應該用非標準回歸係數。如果需要去除單位的影響,需要對相關係數或者標準回歸係數進行Fisher Z轉化。轉化後實際上依然不是對稱分布,但已經可以做t檢驗了。


多的不扯(2016.12.16更新,保留這句):
①協方差就是看兩個變數是否正負相關,也就是數值上變化是否同或反向
②相關係數直接衡量的就是線性相關關係,取值就在+-1之間,體現的含義是X和Y多大程度在一條斜率存在且不為0的直線上;
~覺得這是廢話?那是對概念還不熟悉~歸根結底是不懂數學

下面開始扯多的東西(一直會講到投資學的CAL(資本配置線)):
1.E(X-EX)(Y-EY)這個定義就蘊含了一切的一切。注意到按照現在分析學形式的概率論是柯爾莫哥洛夫時代後才加上去的,最原始的定義應該是出現雜皮爾遜時代,就一個很樸素的思想:離差乘積的均值(還不是除以n-1那種,那個時候連無偏性都沒提出):把(EX,EY)在坐標系原點,Y=EY和X=EX可以將平面分為四個區域,順時針排列為(1)(2)(3)(4),協方差大於0的點(X,Y)顯然位於(1)(3),小於0顯然點位於(2)(4),這不就是正負相關的圖示法嘛。

  • 其實從坐標變換的觀點看,衡量兩個變數X和Y有沒有(線性)相關關係就是看它們的數值會不會同向變化,即為X變大,Y也變大。如果把原來的坐標系XOY平移到以(EX,EY)原點的坐標系,相當於新坐標系中每個數值變作以下變換x=X-EX,y=Y-EY,在新坐標系中,Exy=E(X-EX)(Y-EY)的正負衡量的是平均意義下的相關關係(正相關 or 負相關)。
  • 由上面分析可以看出,其實在EX=EY=0時,可以直接用EXY來衡量是否具有(線性)相關性。
  • 再進一步分析,如果X變化Y幾乎不變或者X變化Y變化很少,這時候協方差就會近似為0,而完全不相關意味著XOY坐標平面上有一條直線Y=y或者X=x,這就是不相關(不線性相關)的基礎含義;但是我們實踐中還發現一種情況:X變大Y有些變大有些變小,導致總體來說X變化導致Y變化的均值為0,這時候數據形態體現為變換後的坐標原點附近的四周聚集,或者是在x軸或y軸上出現一定的周期性或震蕩性,也可能是兩組均值為0的不同向隨機數在坐標平面上的表現。
  • 如果協方差不顯著為0,也不意味著就一定存在嚴格的線性相關關係,很可能按照插值曲線是一段非線性的單調函數(或者不是單調的,但趨勢是存在的),這也就是協方差衡量的相關關係把「線性」二字隱去的原因。還有一種可能,就是數據出現嚴重偏奇,導致沒有相關關係的數據在協方差計算上出現了相關關係,例如下圖的情況(高票答案盜來的,見諒~):

    這種情況預先製作散點圖是好辦法,還有一些其他檢驗手段,例如相關係數的顯著性檢驗。

說了上面幾點,應該對一開始提出的結論①:協方差就是看兩個變數是否正負相關,也就是數值上變化是否同或反向,有一個比較徹底全面的認識,而對於隨機變數的協方差如何計算是按照發芽於應用統計中的原始定義,用概率論的語言表達的。要真正理解協方差的含義不能去看那個二重積分的式子,要回到樣本中搞清楚它的起源和意義以及局限性。

2.至於相關係數,無數的教材證明了相關係數在[-1,1]之間,回到最原始的一點,就是協方差除以各自標準差之積。回到最原始的公式上,這不就是X和Y的數據都標準化後求的協方差嘛,其衡量線性關係的性質也是易證的。

  • 先明確一點,相關係數也是一種協方差,這在定義可以看出來
ho =frac{Cov(X,Y)}{sigma_{X} sigma _{Y}} =E(frac{{X-EX}}{sigma_{X} })(frac{{Y-EY}}{ sigma_{X}   })

這相當於原始數據做了平移和伸縮變換,即:
x=frac{{X-EX}}{sigma_{X} },
y=frac{{Y-EY}}{ sigma_{Y}}
並且變換後的數據滿足Ex=Ey=0,Var(x)=Var(y)=1,這種變換成為標準化變換。因此,對於標準化後的數據,有Cov(x,y)=Exy=
ho _{X,Y} ,因此,相關係數就是標準化數據的協方差。

  • 作為一種特殊的協方差,當相關係數為0時,數據的表現也是上面分析的幾種情況:斜率為0或不存在的直線;以變換後的原點四周類似於圓域的密集;坐標軸上一定的震蕩性或周期性;兩組均值為0,方差為1的不同向變化隨機數在坐標平面上的表現。這裡要注意的是,斜率為0或者斜率不存在的直線不是相關係數所衡量的線性關係的範疇。
  • 相關係數絕對值為1時,說明原始數據X與Y的圖像是一條斜率存在且不為0的直線:

Y=kX+b,有: frac{Y-ar{Y}}{S_{Y} } =kfrac{S_{X}}{S_{Y}}(frac{X-ar{X}}{S_{X} } )Rightarrow y=k_{1} x
注意到標準化變換後
ho _{X,Y} =Exy=k_{1} Ex^{2} ,且Var(x)=Ex^{2} =1,故
ho _{X,Y} =k_{1}
且在樣本中,如果 y=k_{1} xLeftrightarrow E( y-k_{1} x)=0,Var(y-k_{1} x)=0(這對於隨機變數不成立,兩個有限區間隨機變數相等的充要條件是其各階原點矩相等)
當且僅當
ho _{X,Y} =pm 1時,Var(y-k_{1}x)=0,此時k_{1} =pm 1,k=pm frac{s_{y} }{s_{x}} ,且Var(y-(kx+b))=0
因此:在相關係數絕對值為1時,原始數據X與Y呈現嚴格的線性關係,Y關於X的圖像是一條斜率存在且不為0的直線,經過標準化後變換的數據均可以變為一條新坐標系中斜率絕對值為1的直線。

  • 拓展:根據上面分析,還可以得到以下三個結論:

①標準化變換能夠把任意直線變換為斜率為+-1的直線,如圖:

②兩個存在嚴格線性關係的變數Y關於X的直三個斜率k=pm frac{s_{y} }{s_{x}} ,
③根據y-Ey=pm frac{s_{y} }{s_{x}} (x-Ex)有:兩個存在嚴格線性關係的變數在經過0均值化平移變換後的直線斜率為k=pm frac{s_{y} }{s_{x}}
結論③對於我們理解投資學中的資本配置線(CAL)是有意義的,闡述如下:
先看資本配置線的原始方程:R_{p}-r_{f}=frac{sigma_{p}}{sigma_{m}} (R_{m}-r_{f}),其中Rp是某種資產的收益率,rf是無風險收益率(以1年期短期國債為標準),Rm是市場組合收益率。
我們從CAL斜率可以看出,這個模型蘊含了以下假設:
(1)待研究的資產收益率和市場組合收益率嚴格線性相關
(2)待研究資產和市場組合的期望收益率的期望為無風險收益率。注意到這裡的期望收益率不是模型給出的期望收益率,而是長期意義下的期望收益率,這裡蘊含的意義是長期意義下風險溢價期望為0,因此消極策略有一定意義。
這裡要指出的是投資學中大量的期望收益率並不是數學意義下的期望,而是指根據模型算出來的理論收益。造成這種術語混淆是因為在馬可維茨時代建立起資產組合理論的先驅們大多沒有接受今日概率論話語系統下的學術訓練,另外中文譯者在翻譯時也沒注意區別,最後國內教材跟風成性,這樣長久以來就造成了表述上的混亂。很多人已經答了協方差,希望從這個角度答的相關係數有一定啟發作用。最後還是要說一句,如果想要對數理統計中的一些概念有深刻理解,需要從樣本的角度考察,不能只是對著概率論裡面的公式想當然。現代意義下的統計學發展不算很久,很多概念是1930年左右開始成型的,完全可以追溯回當時最原始的想法加以分析。


講投資學講到吐的概念

最簡單的理解方法,你觀察一下公式。如果你認為x和y是正相關,那麼你會expect x大於平均數的時候y也大於平均數,這就造成了x-mean(x)與y-mean(y)相乘的每一項為正,加和也為正。所以如果協方差大於零,反應x與y正相關


感覺大家的解釋都不太直觀,和透徹,我提供一個非常非常直觀的解釋吧。

先回顧一下:

方差 delta 其實是隨機變數 X 偏離均值 mu 的「距離」

考慮任意兩個隨機變數 X,Y

均值分別是 mu_1,~~mu_2

反差: delta_1,~~~delta_2

他們有如下幾種情況

其實兩個變數的相關性程度和他們自由度的「夾角」(影響程度),或者說是正交程度相關

那麼:

oxed{overrightarrow{delta_1}cdotoverrightarrow{delta_2}=|delta_1|cdot|delta_2|cdotcos	heta}

得到:

cos	heta=frac{overrightarrow{delta_1} cdot overrightarrow{delta_2}}{|delta_1|cdot|delta_2|}=frac{Cov(X,Y)}{delta_1cdot delta_2} (這個自己想為啥哈~~~哈哈哈, 分子是把變數們拍扁到一個維度, 分母是不拍扁)

所以,實際上,兩個隨機變數的相關性其實就是他們自由度的夾角。

當兩個變數的自由度互相垂直的話,相關性為0, 當兩個變數同一個方向的話,影響是疊加態,相關性為1, 當兩個變數相反方向的話,是互相抵消的,相關性為-1


實名對傅兄回答進行修正 @傅渥成
在回答這個問題前,我們首先搞清我們要協方差這個概念究竟要做什麼,從字面意義上來說,協方差,是一種「協」的方差,所以我們回歸到方差的概念,在知乎信號,物理,概率論的眾多標題下,我們都能發現,不少答主的回答都會將方差與能量勾結在一起,以便於人們理解,坦白來講,方向正確,但是,方差本身並不表示能量,表示能量的是二階範數這個概念(方差則可以看做是原始數據零均值化後的能量),傅兄的不當之處在我看來也在此處。
而在概率論中,協方差與方差是衡量數據本身或之間的一種相互牽引的關係,即相互之間」變化「」的關係,例如,一串恆等信號,不管在資訊理論還是概率論中,其研究價值都不大,所以我們往往在其中將均值去掉,牽扯到均值會引入我們不想要的能量的部分,而我們本身只需要變化的能量的部分。
舉個例子,【0,1,0】與【1,0,1】兩個向量正交,但是如果按照公式推導,他們之間的協方差並不為零,(如果我沒算錯應該是-6/27),哪裡出錯了呢,其實按照傅兄的演算法依然可以,不過,夾角的表述方式,一定要將原有向量零均值化後才能進行計算(即去掉不變的能兩部分),變成【1/3,-2/3,1/3】[-1/3,2/3,-1/3],具體各位可以通過D(x+y)=D(x)+D(y)+2COV(x,y)這個公式進行驗證。
按照傅兄的看法其要將相關函數與是否正交建立關係,從R_XY
(t)=m_x m_y+C_XY (t)(我不知道知乎怎麼貼公式,大家見諒,要是有疑惑我就再貼圖),在t=0的情況下,當R=0時時即為正交,要注意這個式子並不限制歸零,m表示均值,同理可推出一樣的互相關係數C(關於t這是移位的概念,再扯就要扯到各態歷經之類的東西了,並不影響我們理解這個問題,在此不表)。
總結一下,正交這個線性代數概念,本身表示兩個向量完全不能相互表示,但這並不表示他們的相關係數為零(這其中牽扯到了向量本身的均值,我本來想用能量來類比,但實在是找不到合適的量來表示均值相乘的意義,),而協方差本身則表示兩個向量各自的變化之間是否有某種趨向性(從一開始就去掉了均值的原罪),故而傅兄的表述要加上一個大前提,就是連個向量已經完成零均值,但是這樣也就可能修改了他們的夾角。
小魚小蝦,不知是否有所偏頗,望各位指正。


變數觀測值的序列,先做個中心化,然後看作向量,n維空間中,相關係數就是向量的餘弦距離,協方差和秩數平方的乘積就是向量點乘。


協方差相當於 內積, 相關係數相當於兩個做內積的向量之間夾角的餘弦,那麼[-1,1]之間的cos值,不就很能簡單明了的說明兩個向量之間的相關程度了?0表示相互正交,那麼就不相關。越靠近1表示兩個向量的方向越接近,那就越正相關。-1相反。


協方差就是兩個變數共同變化的量,相關係數分母里是兩個變數各自變化的量,相關係數的本質其實就是標準化的協方差,這也是為什麼皮爾遜相關係數的平方能代表兩個變數各自解釋變異百分比。


協方差表示兩個變數之間的關係程度,如果協方差是正的則資產正相關,資產組合時不會對衝風險,如果負的則能對衝風險,

因為協方差求出來的是一個不容易與其他資產組合做對比的數值、因此將其除以各個資產標準差的乘積而求出的就是相關係數,(ps:就像是我們經常將某個收益化成收益率一樣,這樣較直觀、易比較分析)同理如果係數為正則不能對衝風險、負的可以對衝風險。不知道能不能幫到題主………


如果不是要徹底掌握它們之間的聯繫以進行現實中的數學分析的話,可以大概這樣理解:
協方差衡量的是兩個變數如何【同時】變化,而一個公式中涉及兩個或兩個以上的變數之間計算時,都會考慮對它們之間相關係數進行分析。所以協方差是通過不同數學公式及模型作為 介質 間接與相關係數聯繫到一起的。
只是自己的感覺,對於這個不求甚解的人(我)理解到這個程度就知足了,餘下的結合前輩大神制定的公式(比如涉及雙重加總、西格瑪求和、複合型的演算、以及其他定理或方法)進行推導就可以解決很多問題了。


已刪除~~啦啦啦~~


實用易懂,大寫的贊。等更更多其他數學問題或者開個知乎live


發現了一篇文章,協方差部分寫的不錯,通俗。

對於概率論數字特徵的理解


好複雜, 很難懂


首先搞兩種東西的兩個集合,可以是任何東西;
然後搞個時間軸;
然後,隨時間變化,兩個集合裡面的東西的狀態會隨時間變化而變化;
然後,分別為兩個集合裡面的不同狀態賦值,用自然數就可以;
然後,就可以分別計算出兩種自然數的平均數;
然後,在時間軸上任找一個時間點,計算當時不同狀態的賦值與其平均數的差。
這個就是我們要真正關心的數據。
至於後面把差乘一下再累加再除時間點數,只不過是給你一個直觀的摸的著的數,以便比較。


推薦閱讀:

初學matlab,有什麼學習路線可以推薦?
政府的數據公開有哪些商業價值?
想轉專業機器學習(人工智慧)需要學哪些課程?
為什麼《英雄聯盟》有這麼多玩家?
Python2和Python3哪個更適合初學者學習來爬蟲呢?

TAG:數學 | 統計學 | 數據分析 |