機器學習 方差 協方差與皮爾遜值

2022-01-11 00:43:42 字數 3134 閱讀 7368

今天是概率統計專題的第六篇,我們來看看方差相關的概念。

方差在我們的日常生活當中非常常見,它主要是為了提供樣本離群程度的描述。舉個簡單的例子,我們去買一包薯片,一般來說一袋薯片當中的數量是固定的。我們假設平均每袋當中都有50片薯片好了,即使是機器灌裝,也不可能做到每一袋都剛好是50片,或多或少都會有些誤差。而均值則無法衡量這種誤差。

如果現在有兩個薯片品牌,它們的口味都差不多,平均每袋也都是50片。但是其中a品牌的薯片有一半是80片,還有一半是20片。b品牌呢,99%都在45-55之間。你說你會買哪乙個牌子呢?(在不考慮通過稱重的情況下)。

在現代社會,凡是工廠出廠的產品,基本上都離不開方差這個概念。方差越低,說明工廠的生產能力越強,能夠做到每乙個產品都很精細,相反如果方差越大,則說明瑕疵很多,不夠精細。也就是說,方差衡量的是樣本距離均值的期望。

它本來應該寫成:\(e|x-e(x)|\)。

但是由於式子當中存在絕對值,我們通常會對它平方,從而將絕對值消掉。寫成:

\[var(x) = e\

\]這裡的e表示期望,這是統計學當中的寫法,如果看不明白,我們也可以把式子展開寫成:

\[var(x) = \frac^n (x_i - \bar)^2}

\]這裡的n表示的是樣本數量,\(\bar\)是樣本的均值。var是英文variance的縮寫,我們也可以寫成d(x)。

由於方差是通過平方計算得到的,我們也可以將它進行開方,得到標準差。\(\sqrt\),也可以寫成\(\sigma(x)\)。

關於方差有幾個著名的性質,如果x是變數,而c是常數。那麼:

\[d(cx)=c^2d(x)

\]也就是對於每乙個變數都乘上乙個常數,那麼整體的方差擴大c的平方倍。這個很好理解,因為樣本值擴大了c倍,由於我們在計算方差的時候用到了平方,那麼自然就是擴大了c的平方倍。我們利用上面展開的公式代入可以很容易得到證明。

\[d(x+c) = d(x)

\]也就是全體樣本加上乙個常數,整體的方差不變。如果我們的樣本不是乙個值,而是乙個向量的話,那麼這個公式可以拓展成樣本加上乙個常數向量,樣本的方差保持不變。這個也很好理解,樣本加上乙個常數向量,相當於整體朝著向量的方向移動了乙個距離,對於整體的分布並不會影響

如果某個樣本x的方差為0,那麼說明樣本內只有乙個值。

下面乙個性質稍微複雜一點:

\[d(x) = e(x^2) - [e(x)]^2

\]也就是說方差等於樣本平方的期望減去樣本期望的平方,我們光從定義上很難得出這個結論,需要通過嚴謹的推導:

\[\begin

d(x) &= e\ \\

&= e\\\

&= e(x^2) - 2e(x)e(x) + [e(x)]^2 \\

&= e(x^2) - [e(x)]^2

\end

\]在有些時候,我們直接求解樣本的方差不太方便,而求解平方的期望很容易,這個時候我們可以考慮使用這個公式進行代換。

方差我們一般不直接在機器學習當中進行使用,更多的時候是用在特徵分析當中,檢視特徵的方差來感知它的離散情況,決定要不要對特徵進行一些處理。因為對於一些模型來說,如果特徵的方差過大,那麼模型可能很難收斂,或者是收斂的效果可能會受到影響。這個時候往往需要考慮使用一些方法對特徵值進行標準化處理。

除了方差之外,還有乙個類似的概念也經常被用到,就是用來衡量兩個變數之間相關性的協方差。

協方差的公式其實和方差也有脫不開的關係,我們先來簡單推導一下。

首先,我們來看一下d(x+y),這裡x和y是兩個變數,d(x+y)就表示x+y的方差,我們來看下d(x+y)和d(x)和d(y)之間的關係。

我們可以來推導一下,根據方差的定義:

\[d(x+y) = \frac

\]這裡的n是乙個常量,我們可以忽略,只用來看分子即可。我們把式子展開:

\[\begin

d(x+y) &= \frac(x^2+2xy+y^2-2(x+y)e(x+y)) \\

&= \frac(x^2+2xy+y^2-2(x+y)\overline + \overline^2) \\

&= \frac(x^2 + 2xy + y^2 - 2(x\bar+x\bar+\bary+y\bar)+ \bar^2 + 2\bar\bar + \bar^2) \\

&= \frac((x-\bar)^2 + (y-\bar)^2+2(xy + \bar\bar - x\bar - \bary)) \\

&= \frac((x-e(x))^2 + (y - e(y))^2 + 2(x-e(x))(y-e(y))) \\

&= d(x) + d(y) + 2e((x - e(x))(y-e(y)))

\end

\]我們看下上面化簡之後的結果:

\[d(x+y) = d(x) + d(y) + 2e((x - e(x))(y-e(y)))

\]在這個式子當中\(d(x)\),\(d(y)\)都是固定的,並不會隨xy是否相關而發生變化。但是後面一項不是,它和xy的相關性有關。

\[cov(x, y) = e((x - e(x))(y-e(y)))

\]\[p = \frac)(y-\bar))}\sqrt}= \frac)(y-\bar))})^2}\sqrt)^2}}

\]這個形式已經非常像是兩個向量夾角的余弦值,它就是大名鼎鼎的皮爾遜值。皮爾遜值和余弦值類似,可以反映兩個分布之間的相關性,如果p值大於0,說明兩組變數成正相關,否則則成負相關。我們可以通過計算證明p值是乙個位於-1到1之間的數。

如果p值等於0,說明x和y完全獨立,沒有任何相關性。如果p值等於1,說明可以找到相應的係數w和b使得y = wx+b。

在機器學習領域當中,計算兩組變數之間的相關性非常重要。因為本質上來機器學習的模型做的就是通過挖掘特徵和**值之間的相關性來完成**,如果某一組特徵和**值之間是完全獨立的,那麼它對於模型來說就是無用的,無論我們選擇什麼樣的模型都是如此。

所以,我們經常會通過分析特徵和label之間的皮爾遜值來衡量特徵的重要程度,從而對特徵進行取捨和再加工。如果單純只看皮爾遜值和它的公式,很難完全理解和記住,而我們從方差入手,將整個鏈路梳理了一遍,則要容易得多,即使以後忘記了,也可以根據它們之間的關係重新推導。

方差與協方差

方差是實際值與期望值 均值 之差平方的平均值,衡量的是一組資料對於其期望值的離散程度。d x k 1 xk e x 2pk 其中e x 是x的期望值,p pk,k 1,2 是x的分布律。d x x e x 2 f x dx其中f x 是x的概率密度。由數學期望的性質展開,上面兩式都可得到 d x e...

方差與協方差

方差 variance 是度量一組資料分散的程度。方差是各個樣本與樣本均值的差的平方和的均值 var x ni 1 xi?x 2n?1 numpy裡面有var方法可以直接計算方差,ddof引數是貝塞爾 無偏估計 校正係數 bessel s correction 設定為1,可得樣本方差無偏估計量。pr...

詳解協方差與協方差矩陣

協方差的定義 對於一般的分布,直接代入 e x 之類的就可以計算出來了,但真給你乙個具體數值的分布,要計算協方差矩陣,根據這個公式來計算,還真不容易反應過來。網上值得參考的資料也不多,這裡用乙個例子說明協方差矩陣是怎麼計算出來的吧。記住,x y 是乙個列向量,它表示了每種情況下每個樣本可能出現的數。...