深入理解線性迴歸算法(一)

前言

線性迴歸算法是公衆號介紹的第一個機器學習算法,原理比較簡單,相信大部分人對線性迴歸算法的理解多於其他算法。本文介紹的線性迴歸算法包括最小二乘法和最大似然法,進而討論這兩種算法蘊含的一些小知識,然後分析算法的偏差和方差問題,最後總結全文。

                                                                                           目錄


1、最小二乘法和最大似然法

2、算法若干細節的分析

3、偏差和方差

4、總結

 

                                                最小二乘法和最大似然函數


最小二乘法

最大似然函數

假設訓練數據的目標變量t是由確定性方程y(x,w)和高斯噪聲疊加產生的,即:

其中是期望爲0,精度爲β(方差的倒數)的高斯噪聲的隨機抽樣。

目標變量t的分佈推導如下:

因此,目標變量t的分佈:

即觀測數據集的似然函數:

  

爲了書寫方便,求最大似然函數對應的參數

似然函數取對數並不影響結果:

因此,對於輸入變量x,即可求得輸出變量t的期望。

                                                                    

期望值就是模型的預測輸出變量,與最小二乘法的預測結果相同

 

                                                  算法若干細節的分析


偏置參數w0

線性迴歸表達式的偏置參數w0有什麼意義,我們最小化來求解w0,根據w0結果來說明其意義。

由w0結果可知,偏置參數w0補償了目標值的平均值(在訓練集)與基函數的值的加權求和之間的差。

圖形表示爲:

                                                      

最小二乘法的幾何意義

根據最小二乘法的結果可以作如下推導:

圖形表示如下:

                                                           

黑色線表示噪聲

備註:推導公式是假設是非奇異矩陣(的行列式不等於0),若是奇異矩陣,則需要通過奇異值分解(SVD)成新的基向量,後續文章會講到。

噪聲模型分析

線性迴歸模型疊加的噪聲是假設均值爲0方差爲的高斯分佈,下面是筆者分析這一假設的原因。

假設噪聲是高斯分佈的原因:高斯分佈是實際生活中最常見的高斯分佈,採用高斯分佈的模型更貼近實際情況。

假設噪聲是均值爲0的原因:這個比較好理解,就是爲了方便計算,偏置參數w0包含了噪聲均值。

 

                                                            偏差和方差


最小二乘法和最大似然法構建的模型是一樣的,本文的線性迴歸表達式的複雜度用模型參數的個數來表示,模型參數個數越多,則模型複雜度越大;反之模型複雜度越小(只針對無正則化的線性迴歸方程)。本節討論模型複雜度與偏差和方差的關係。

高偏差

若模型參數個數比較少,即模型複雜度很低,模型處於高偏差狀態。

如下圖用直線去擬合正弦曲線。

                                                       

高方差

若模型參數個數較大,即複雜度較高,則模型處於高方差(過擬合)狀態。

如下圖M=9擬合正弦曲線,模型訓練誤差爲0。

                                                   

                                                                    總結


本文介紹了最小二乘法和最大似然法來求線性迴歸的最優參數,分析了算法中容易忽視的某些細節,由於本文的線性迴歸表達式沒有正則化項,因此模型的複雜度等同於模型參數的個數,參數個數過多模型容易產生高方差(過擬合),參數個數過低模型容易產生高偏差,下節將要介紹貝葉斯線性迴歸算法,該算法很好的解決了複雜度的問題。

 

參考:

Christopher M.Bishop <<Pattern Reconition and Machine Learning>>

                                                                                      推薦閱讀文章

線性迴歸:不能忽視的三個問題

淺談頻率學派和貝葉斯學派

淺談先驗分佈和後驗分佈

                                                                 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章