引言
如果要將極大似然估計應用到線性回歸模型中,模型的復雜度會被兩個因素所控制:基函數的數目(的維數)和樣本的數目。盡管為對數極大似然估計加上一個正則項(或者是參數的先驗分布),在一定程度上可以限制模型的復雜度,防止過擬合,但基函數的選擇對模型的性能仍然起着決定性的作用。
上面說了那么大一段,就是想說明一個問題:由於極大似然估計總是會使得模型過於的復雜以至於產生過擬合的現象,所以單純的使用極大似然估計並不是特別的有效。
當然,交叉驗證是一種有效的限制模型復雜度,防止過擬合的方法,但是交叉驗證需要將數據分為訓練集合測試集,對數據樣本的浪費也是非常的嚴重的。
貝葉斯回歸
基於上面的討論,這里就可以引出本文的核心內容:貝葉斯線性回歸。
貝葉斯線性回歸不僅可以解決極大似然估計中存在的過擬合的問題。
它對數據樣本的利用率是100%,僅僅使用訓練樣本就可以有效而准確的確定模型的復雜度。
在極大似然估計線性回歸中我們把參數看成是一個未知的固定值,而貝葉斯學派則把看成是一個隨機變量。
線性回歸模型是一組輸入變量的基函數的線性組合,在數學上其形式如下:
這里就是前面提到的基函數,總共的基函數的數目為個,如果定義的話,那個上面的式子就可以簡單的表示為:
以下是對應的目標輸出,即樣本為,並且假設樣本集合滿足正態分布,參數也滿足正態分布,和分別對應於與樣本集合的高斯分布方差。
則參數滿足以下分布:
線性模型的概率表示如下:
參數有點多。表示樣本的輸出關於輸入特征、模型參數以及樣本分布方差的概率密度函數。其服從於正態分布,這個正態分布在線性回歸的概率解釋中出現過,表示均值為,方差為的正態分布(),可以通過殘差的獨立正態分布性質推導得到。
一般來說,我們稱為共軛先驗(conjugate prior)。
在貝葉斯統計中,如果后驗分布與先驗分布屬於同類,則先驗分布與后驗分布被稱為共軛分布,而先驗分布被稱為似然函數的共軛先驗。
共軛先驗的好處主要在於代數上的方便性,可以直接給出后驗分布的封閉形式,否則的話只能數值計算。共軛先驗也有助於獲得關於似然函數如何更新先驗分布的直觀印象。
那么,線性模型的后驗概率函數:下面筆誤。
且注意,到這一步之后與最大似然估計其實一模一樣了,最大后驗估計與最大似然估計的唯一區別就在於是否加上先驗也就是這里的,乘上之后不必再糾結在中為隨機變量,此時的完全可以理解為MLE中的待估參數,在先驗給定下是已經確定了的,只是我們還不知道。
對數后驗概率函數為:
最后我們可以化為:
這不就是加了L2正則的loss function嗎,於是我們就利用貝葉斯估計准確來講是最大后驗估計加上高斯先驗推導出了帶有L2正則的線性回歸!
這里可以看出,先驗概率對應的就是正則項,其正則參數為。
可以假設,復雜的模型有較小的先驗概率,而相對簡單的模型有較大的先驗概率。
貝葉斯線性回歸的學習過程
根據前面關於貝葉斯估計的增量學習可以很容易得到下面這個式子,這個就是貝葉斯學習過程:在前一個訓練集合的后驗概率上,乘以新的測試樣本點的似然估計,得到新的集合的后驗概率,這樣,相當於成為了的先驗概率分布:
有了上面的基礎知識,這里就着重的講下面這幅圖,這個圖是從RMPL第155頁截取下來的,這幅圖清晰的描述了貝葉斯線性回歸的學習過程,下面結合這幅圖,詳細的說明一下貝葉斯學習過程。
首先,說一下這里的模型:
第一行:
第一行是初始狀態,此時只有關於的先驗信息,即:。先看中間這幅圖,這幅圖是關於的先驗分布,由於我們假設初始為高斯分布,故其圖形是以為中心的圓組成的。由於此時還沒有樣本點進入,所以沒有關於樣本的似然估計,故第一行中左邊likelihood沒有圖。第一行右邊data space的那幅圖顯示的是從第二幅圖prior/posterior中隨機抽取一些點,並以為參數,畫出來的直線,此時這些直線是隨機的。
第二行:
此時有了第一個樣本點,那么根據就可以得到第二行中,關於的似然估計,由於,似然估計的結果其實是這個式子的對偶式(單個樣本hypothesis就是結果,完全擬合),即。從第二行的最右邊data space中的圖中可以估計出,第一個樣本點的坐標大概為:,所以其第一幅圖中,似然估計的中心線的方程為:
近似為左邊那幅圖的畫法。由於第二行的先驗分布是第一行的后驗分布,也就是第一行的中間那幅圖。則,第二行的后驗分布的求法就是:將第二行的第左邊那幅圖和第一行的中間那幅圖相乘,就可以得到第二行中間那幅圖。第二行最右邊那幅圖就是從第二行中間那幅圖中隨機抽取一些點,並以為參數,畫出來的直線。
第三行之后,就可以一次類推了。
上面就是貝葉斯學習過程的完整描述。
貝葉斯回歸的優缺點
優點:
貝葉斯回歸對數據有自適應能力,可以重復的利用實驗數據,並防止過擬合
貝葉斯回歸可以在估計過程中引入正則項
先驗分布:如果具備領域知識或者對於模型參數的猜測,我們可以在模型中將它們包含進來,而不是像在線性回歸的頻率方法那樣:假設所有關於參數的所需信息都來自於數據。如果事先沒有沒有任何的預估,我們可以為參數使用無信息先驗,比如一個正態分布。(例如高斯先驗引入了L2正則化)
后驗分布:使用貝葉斯線性回歸的結果是一個基於訓練數據和先驗概率的模型參數的分布。這使得我們能夠量化對模型的不確定性:如果我們擁有較少的數據點,后驗分布將更加分散。
缺點:
貝葉斯回歸的學習過程開銷太大
參考文章:
貝葉斯回歸
線性回歸概率解釋(Linear Regression)
原文鏈接:https://blog.csdn.net/qq_32742009/article/details/81485887