『回歸分析』
『線性回歸中的平方誤差』![]()
如上圖,線性回歸的平方誤差如下:
SEline=(y1−(mx1+b))2+(y2−(mx2+b))2+...+(yn−(mxn+b))2
『線性回歸公式的推導』
根據前面得到的線性回歸的平方誤差,對公式做進一步推導:
SEline=(y1−(mx1+b))2+(y2−(mx2+b))2+...+(yn−(mxn+b))2=y12−2y1(mx1+b)+(mx1+b)2+y22−2y2(mx2+b)+(mx2+b)2+...+yn2−2yn(mxn+b)+(mxn+b)2=(y12+y22+...+yn2)−2mb(x1+x2+...+xn)−2b(y1+y2+...+yn)+m2(x12+x22+...+xn2)+2mb(x1+x2+...+xn)+nb2
利用均值來做替換,得到:
SEline=ny2−2mnxy−2bny+m2nx2+2mbnx+nb2
下面畫出SEline對m和b的曲面:
![]()
要求使得SEline最小的m和b,可以對m和b求偏導,在最低點處導數為零。
−2nxy+2mnx2+2bnx=0
−2ny+2mnx+2bn=0
化簡可以得到:
mx2+bx=xy
mx+b=y
比較最佳擬合直線的方程:y=mx+b,我們可以發現:
x和y的均值落在最佳擬合直線上,這裡確定擬合直線的一個點(x,y)。
兩點確定一條直線,我們還需要確定一個點,將第一個式子化成mx+b的形式,得到:
mxx2+b=xxy
這就得到最佳擬合直線上的另外一個點的坐標(xx2,xxy)。
於是我們就確定最佳擬合直線上的兩個點:(x,y)和(xx2,xxy)
接下來求出m和b:
m=x−xx2y−xxy=(x)2−x2x⋅y−xy
b=y−mx
下面來看個例子,我們去擬合下面三個點:![]()
得到:
m=73,b=1
所以:
y=73x+1
『決定係數R2』
![]()
對於直線的擬合程度,我們當然可以計算出具體有多少誤差,但是還有一種對直線擬合程度更有意義的估計:
首先提個問題:y的波動程度有多少百分比能被 x 的波動程度所描述?
這裡,我們可以先求出y的總波動:
SEy=(y1−y)2+(y2−y)2+...+(yn−y)2
我們想求出x波動所描述的百分佔比,但是這個百分比不太好衡量,其實可以換個思路,看看y有什麼波動沒有被x的波動所描述?
於是我們考慮一下,總波動中有多少沒有被回歸線所描述,對此我們已經有了衡量,就是直線的平方誤差,這個誤差是沒有被回歸線描述的。於是我們得到:
SEYSELine
表示總波動中有多少百分比沒有被x的波動所描述,或者說,沒有被回歸線所描述。
那麼,回到前面的問題,我們想知道「多少百分比由x的波動描述」這一問題,只需要看剩下的就行了。於是得到:
r2=1−SEYSELine
這告訴我們總波動有多少百分比被直線所描述,或者說被x的波動描述,這個數字稱作決定係數,記做r2。
r2越接近於1,則y的波動很多都被x的波動描述,說明直線擬合的好。
『協方差和回歸線』
協方差的定義為:兩隨機變量離各自均值距離之積的期望值。
cov(X,Y)=E[(X−E[X])(Y−E[Y])]
其實,協方差就是表示兩變量多大程度上一同變化。
如何理解這句話?
假設總體中有一個點(隨機變量的一個實例),也就是從總體中抽取的一個樣本:X = 1,Y = 3,已知E[X]=0,E[Y]=4,X−E[X]=1−0=1,Y−E[Y]=3−4=−1,這表示,對於這個樣本,從X和Y中抽取一個樣本後,X高於期望值,Y低於期望值,如果對於總體,情況都是如此,那麼協方差就會得到負數,一個上升另一個就下降,一個下降另一個就上升,如果兩者同時上升,同時下降,那麼就是正協方差,同步程度確定協方差的大小。
我們來看一下如何將協方差的定義同最小二乘回歸聯繫起來。
下面對協方差的定義做些變化:
Cov(X,Y)=E[(X−E[X])(Y−E[Y])]=E[XY−XE[Y]−E[X]Y+E[X]E[Y]]=E[XY]−E[XE[Y]]−E[E[X]Y]+E[E[X]E[Y]]=E[XY]−E[X]E[Y]−E[X]E[Y]+E[X]E[Y]=E[XY]−E[X]E[Y]
其中,E[XY]可以用X、Y積的樣本均值XY近似,E[X]可以用X近似,E[Y]可以用Y近似,那麼兩隨機變量的協方差可以用XY−X⋅Y表示,這就是回歸線斜率的分子部分。
回歸線的斜率如下:
m^=x2−(x)2xy−x⋅y=Var(X)Cov(X,Y)
這樣就將協方差的定義同最小二乘回歸聯繫起來。
『χ2分布』
面對一個新的分布,首先,我們提出人生的終極三問:
下面我們就從這三個方面來了解一下χ2分布:
- (1)第一個問題,χ2分布是個啥?
若n個相互獨立的隨機變量ξ1,ξ2,...,ξn均服從標準正態分布(也稱獨立同分布於標準正態分布),則這n個服從標準正態分布的隨機變量的平方和
Q=i=1∑nξi2
構成一個新的隨機變量,其卡方分布規律稱為χ2分布(chi-square distribution),其中參數n稱為自由度,正如正態分布中均值或方差不同就是另一個正態分布一樣,這裡卡方分布自由度不同就是另一個分布。記為Q∼χ2(k)。卡方分布是由正態分布構造而成的一個新的分布,當自由度n很大時,χ2分布近似為正態分布。
如下圖,從一個標準正態分布中採樣樣本,並取平方,得到的是自由度為1的卡方分布:Q1=χ12;
從兩個獨立的標準正態分布中採樣樣本,並取平方和,得到的是自由度為2的卡方分布:Q2=χ22;
![]()
下面看一下χ2分布的圖像:
![]()
隨著自由度的增加,卡方分布的曲線逐漸右移,這裡可以直觀的解釋一下:
因為卡方分布是由標準正態分布採樣來的,根據正態分布的曲線,採樣到0附近的概率最大,所以當自由度很小時,卡方分布在靠近0的地方概率就很大,但是隨著自由度的增加,卡方分布的隨機變量變成了很多樣本點的平方和,當然得到0的概率逐漸減小,均值逐漸增大,所以卡方分布的曲線逐漸右移,當自由度n很大時,χ2分布近似為正態分布。
- (2)第二個問題,χ2分布從哪裡來?
從前面的介紹就可以知道了,χ2分布是從正態分布中採樣來的分布,同其他分布一樣,肯定是這種分布在自然界中普遍存在,並且可以用來解決一些問題,所以統計學家才會去研究這種分布的性質,構造一些通用的「模板」(統計學的第一部分提到了這個概念),來供我們使用。
這樣,自然而然地引入第三個問題,這玩意兒到底可以用來幹啥?
- (3)第三個問題,χ2分布有什麼用?(到哪裡去?)
首先,簡短地概括:χ2分布用於檢驗理論分布同觀測結果吻合得有多好。
所以,這個分布的用處就是,衡量離期望值的誤差有多大。
所以,在下面這種情況下,可以使用χ2分布:
以特定概率分布為某種情況進行建模時,事物長期結果較為穩定,能夠清晰進行把握。但是期望與事實存在差異怎麼辦?偏差是正常小幅度波動引起的或者是建模錯誤,如何來判別?此時,可以利用卡方分布分析結果,排除可疑結果。【事實與期望不符合的情況下,使用卡方分布進行檢驗】
通常,對我們我們來說,使用χ2分布時,同正態分布和t分布一樣,只要知道如何查χ2分布表就可以了,下面看一下如何使用:
如圖,我們想要求Q2>2.41的概率:
![]()
從表格中可以查到:自由度為2的χ2分布Q2的值大於2.41的概率為0.3,所以如下圖所示:陰影部分的面積就是0.3。
![]()
『卡方檢驗』
卡方檢驗是一種基於卡方分布的常用的統計(顯著性)檢驗,其統計量在原假設成立時服從卡方分布。
在不明確說明的情況下,卡方檢驗默認指代皮爾森卡方檢驗,根據樣本數據推斷總體分布與期望分布是否有顯著差異,或推斷分類變量間是否相互關聯或彼此獨立。
皮爾森卡方檢驗:擬合優度檢驗
假設實驗中從總體中隨機取樣得到的 n 個觀察值被劃分為 k 個互斥的分類,這樣每個分類都有一個對應的實際觀察次數xi(i=1,2,...,k)。研究人員會對實驗中各個觀察值落入第 i 個分類的概率pi的分布提出零假設,從而獲得了對應所有第 i 分類的理論期望次數mi=npi以及限制條件:
∑i=1kpi=1以及∑i=1kmi=∑i=1kxi=n。
皮爾森提出,在上述零假設成立以及 n 趨向∞的時候,以下統計量的極限分布趨向χ2分布:
X2=∑i=1kmi(xi−mi)2=∑i=1kmixi2−n
皮爾森首先討論零假設中所有分類的理論期望次數mi均為足夠大且已知的情況,同時假設各分類的實際觀測次數xi均服從正態分布。皮爾森由此得到當樣本容量 n 足夠大時,X2趨近服從自由度為(k−1)的 χ2分布。
不同的卡方檢驗使用不同的計算公式計算統計量,卡方檢驗都假設其使用的統計量服從卡方分布。
對分類數據進行分析的統計方法主要是利用卡方分布,也被稱作卡方檢驗。
卡方檢驗的應用主要表現在兩個方面,分別是擬合優度檢驗和獨立性檢驗,前者用於單變量,後者用於雙變量。
1、分類數據與卡方統計量
數據類型一般可分為無序類別數據、有序類別數據和數值型數據,在處理無序類別數據和有序類別數據時需要特別注意,當你用一個數字去代替某一類別時,需時刻記得數字之間的間隔不能反映類別之間的差距,在有序類別中僅可以用來比較大小,在無序類別中僅僅是一個代號而已。
我們常用類別出現的頻數對分類數據進行分析,而卡方檢驗正可以對這類數據進行分析。
卡方檢驗其實是測定兩個分類變量之間的相關程度,它是利用類別變量的觀測值頻數與期望值頻數進行構建的:
χ2=∑fe(fo−fe)2
其中:fo代表觀察值頻數,fe代表期望值頻數;
可以看到,卡方統計量其實反映了觀察值頻數和期望值頻數之間的差距,當差距較小時,統計量的值也會變小。所以卡方檢驗正是通過計算卡方統計量與臨界值進行比較來確定相關的顯著性的。
2、擬合優度檢驗
擬合優度檢驗很簡單,它符合假設檢驗的的基本理論,所以使用的流程與之前的假設檢驗是一樣,我們來看一個例子,你就知道它在說什麼:
泰坦尼克沉船事件:當時船上2208人,男性1738人,女性470人,海難發生後,倖存者718人,其中男性374人,女性344人,我們想知道倖存狀況是否與性別有關。
總結為下表:
- | 男性 | 女性 | 總數 |
---|
船上 | 1738 | 470 | 2208 |
倖存 | 374 | 344 | 718 |
這個問題在機器學習上會是另外一種問法:性別對預測是否存活的貢獻有多大,其實二者想表達的東西是一樣的,因為只涉及到一個變量,所以是一個單變量分析的方法:
我們想知道倖存狀況是否與性別有關,所以要去做假設檢驗:
H0:倖存狀況與性別無關;
H1:倖存狀況與性別有關;
這裡設定顯著性水平是5%。
首先,我們已經知道了觀察頻數:男性374人,女性470人,那期望頻數如何計算呢,這裡需要提到我們的假設條件,我們的原假設是:存活與性別無關。這意味著在存活的人中,男女存活的比例應該與總人數中男女比例是一樣的。所以,男性期望頻數:718∗22081738=565。女性的期望頻數:718∗2208470=153,如下:
- | 男性 | 女性 | 總數 |
---|
船上 | 1738 | 470 | 2208 |
倖存 | 374 | 344 | 718 |
Expected | 565 | 153 | 718 |
下面構造卡方統計量:
χ2=∑fe(fo−fe)2=565(374−565)2+153(344−153)2=303+19.82=322.82
由於度為分類變量類型個數-1,所以,這裡服從自由度為1的卡方分布。
我們查得此狀態下的p值遠小於0.025,所以存活狀況與性別顯著性相關。
我正考慮購入一家餐廳,我詢問目前的店主,店內每天顧客數的分布是怎樣的?於是他給了我這樣一個分布:
Day | M | T | W | T | F | S |
---|
店主(%) | 10 | 10 | 15 | 20 | 30 | 15 |
觀測值 | 30 | 14 | 34 | 45 | 57 | 20 |
我有些懷疑,想檢驗他給我的分布和我觀測的數據是否吻合,於是我得到一周內的觀測值,要看是否吻合,所以,我需要進行假設檢驗:
H0:店主的分布是正確的;
H1:店主的分布是錯誤的;
顯著性水平是5%。
我要根據這些數據計算出一個統計量,且統計量近似服從卡方分布。
思路: 根據特定自由度的卡方分布,計算卡方統計量,我想知道得到這樣或更極端結果的概率是否小於5%,如果該概率小於5%,我將拒絕零假設,也就是拒絕店主的分布。如果卡方統計量得到如此極端或更極端的概率大於顯著性水平α,我就不能拒絕它,沒有理由認為店主在撒謊。
假設店主的分布是正確的,在此前提下,觀測值預計會得到多少呢?我們得到下面的期望值:
Day | M | T | W | T | F | S | 總計 |
---|
店主(%) | 10 | 10 | 15 | 20 | 30 | 15 | 100 |
觀測值 | 30 | 14 | 34 | 45 | 57 | 20 | 200 |
Expected | 20 | 20 | 30 | 40 | 60 | 30 | 200 |
下面計算卡方統計量:
由於這裡只是近似卡方分布,所以我們寫作X2。
X2=20(30−20)2+20(14−20)2+30(34−30)2+40(45−40)2+60(57−60)2+30(20−30)2=11.44
我們先求出5%概率對應的臨界χ2值,如果我們這裡求出的的結果比該臨界值更極端,我們就拒絕零假設。
下面求臨界χ2值:
我們要先求出自由度,這裡總共求了6次和,也許會誤認為這裡的自由度是6,其實,通過前5條信息就能求出第6條信息,n個像這樣的數據點,對比觀測值和預計值,自由度只有 n−1,因為第n個數據點能夠通過其它數據求出,因此,這裡的自由度是5。
對於顯著性水平是5%,自由度是5的卡方分布,查χ2分布表:
![]()
查得臨界χ2值是11.07,在圖中的位置如下:
![]()
結果至少達到11.07這麼極端的概率是5%。
χc2=11.07
而我們得到的結果11.44甚至比這更極端,可能性更小,其概率小於顯著性水平,因此我們將拒絕店主給我們的分布。
3、獨立性檢驗
擬合優度檢驗可以看作是獨立性檢驗的特例,獨立性檢驗通常對兩個變量進行檢驗,查看這兩個類別變量之間是否存在某種聯繫。
已知原料有不同的等級,而原料又來自不同的地區,我們關心等級與產地是否有關,對這兩個變量關係的檢驗,就可以用到獨立性檢驗,通常利用一種叫做列聯表的方式呈現,所以也被稱作列聯分析,我們來看等級和產地的例子:
![]()
以上非合計的單元格就是觀察頻數,所以我們現在需要計算期望頻數,我們以第一單元,即來自甲地區一級原料的期望數量為例:
首先一級原料佔比:162/500,然後計算甲地區原料佔比:140/500,那麼原本甲地區一級原料應該是:(500140)(500162)∗500=45.36,依次類推得到計算的期望值:
![]()
構造統計量χ2=∑fe(fo−fe)2=19.82,服從自由度(3−1)(3−1)=4的卡方分布,由於χ2>χ0.052(4)=9.4877,所以可以認為原料登記受地區影響。
![]()
基於以上我們可以看到χ2檢驗其實可以用來做變量初篩,而且它沒有皮爾遜相關性的線性假設。
以最著名的皮爾森卡方檢驗為例,假設我們認為慣用手與性別無關,即原假設為慣用手與性別相互獨立,並且我們得到的數據可以總結在一個列聯表中:
- | 男(期望) | 女(期望) | 總計 |
---|
右 | 43(45.24) | 44(41.76) | 87 |
左 | 6(6.76) | 4(6.24) | 13 |
總計 | 52 | 48 | 100 |
其中的期望為在原假設下每種情況的期望次數,計算公式為:
Ei,j=N(∑nc=1cOi,nc)⋅(∑nr=1rOnr,j)
其中N為樣本大小。
統計值的計算公式為:
χ2=i=1∑rj=1∑cEi,j(Oi,j−Ei,j)2
根據上式可以計算本例中統計值為:
χ2=45.24(43−45.24)2+41.76(44−41.76)2+6.76(9−6.76)2+6.24(4−6.24)2=1.777
而自由度為(r−1)(c−1)=(2−1)(2−1)=1。
查表可得在統計量為1.777,自由度為1的情況下p-值是0.1825,大於0.05,無法拒絕原假設,即無法拒絕慣用手與性別獨立的假設。
另外值得一提的一點是不僅有卡方檢驗使用卡方分布,許多著名的統計檢驗也假設其統計量在原假設成立的情況下服從卡方分布。
由此,可以看出:
卡方檢驗可以研究類別變量之間是否相互關聯或彼此獨立
參考文獻:
[1] 卡方 機器之心
[2] 卡方檢驗 維基百科
[3] 分類數據與卡方檢驗 知乎
[4] 統計 可汗學院