【數據科學系統學習】機器學習算法 # 西瓜書學習記錄 [1] 線性迴歸和 Logistic 迴歸

最近開始學習西瓜書《機器學習》,一本暢銷的機器學習書籍,同時將結合李航的《統計學習方法》《機器學習實戰》這兩本書,致力於輸出更完善的內容,儘量的用容易理解的方式輸出。html

在學習過程當中,博主沒有根據目錄進行學習,所以在每篇文章開頭都註明了所述內容。文中內容爲根據博主的理解而進行梳理,若是有理解誤差的地方,一塊兒討論。git


本篇內容爲西瓜書第 3 章線性模型 3.13.23.3 節內容:算法

  • 3.1 基本形式
  • 3.2 線性迴歸
  • 3.3 對數概率迴歸

基本形式

線性組合:
clipboard.pngsegmentfault

通常用向量形式寫爲:
clipboard.png機器學習

其中,clipboard.png表示給定的d個屬性,線性模型試圖學得一個經過屬性的線性組合來進行預測的函數。clipboard.png是係數,它直觀表達了各屬性在預測中的重要性,所以線性模型有很好的可解釋性。當wb學得以後,模型就得以肯定。svg

線性迴歸

給定一個數據集:
clipboard.png函數

線性迴歸試圖學得一個線性模型以儘量準確地預測實值輸出標記。學習

一元線性迴歸

一元線性迴歸的基本形式優化


先考慮只有一個屬性的狀況,即只包括一個自變量和一個因變量。線性迴歸試圖學得:
clipboard.pngspa

使得:
clipboard.png

對離散屬性,若屬性值間存在「序」關係,可經過連續化將其轉化爲連續值。如屬性「身高」的取值高、中、低可轉化爲{1.0, 0.5, 0.0};若屬性值間不存在序關係,假定有 k 個屬性值,一般轉化爲 k 維向量,如「瓜類」的取值「西瓜」、「南瓜」、「黃瓜」可轉化爲(0, 0, 1)(0, 1, 0)(1, 0, 0)


求解一元線性迴歸參數


接下來,就是肯定wb了。

學習的任務就是要基於均方偏差最小化來對模型的參數wb進行求解,咱們用均方偏差最小化來衡量f(x)y之間的差異。

clipboard.png

arg(argument of the maximum / minimum):f(x)取最小值時, x的取值。即便目標函數取最小值時的變量值。

以上,基於均方偏差最小化來進行模型求解的方法稱爲最小二乘法


均方偏差的幾何意義對應着歐氏距離。所以,在線性迴歸中,最小二乘法就是試圖找到一條直線,使全部樣本到直線上的歐氏距離之和最小。即求解wb使得下列式子最小化:
clipboard.png

這個過程稱爲線性迴歸模型的最小二乘「參數估計」

求解過程以下,將clipboard.png分別對wb求導:
clipboard.png

令上式分別爲 0,便可獲得wb最優解的解析解
clipboard.png
clipboard.png

其中,clipboard.pngclipboard.png的均值。

clipboard.png


多元線性迴歸


多元線性迴歸基本形式


如今,咱們考慮多個屬性的情形,即開頭給出的數據集D,樣本有d個屬性描述。此時線性迴歸試圖學得:
clipboard.png

使得:
clipboard.png


多元線性迴歸的損失函數


咱們仍用均方偏差最小化來衡量f(x)y之間的差異,損失函數形式以下:

clipboard.png

將截距b合併到w,使得新的權重向量新增長了一維。即

clipboard.png

相應地,每一個樣本clipboard.png也增長了一維。即

clipboard.png

此時,

clipboard.png

再把標記也寫成向量形式:

clipboard.png

則損失函數可改寫爲:

clipboard.png


最小二乘法求多元線性迴歸的參數


咱們要求解多元線性迴歸模型,就是要求解使均方偏差最小化時所對應的參數,相似於

clipboard.png

clipboard.png

求得對應模型的解,即便得均方偏差函數最小化時的權重向量。


同上,咱們能夠用最小二乘法對模型的參數進行估計,具體作法是:損失函數對須要求解的參數進行求導,而且令其導數爲 0,求得相應的參數。

損失函數對參數求導最後獲得:

clipboard.png

令上式爲 0 可得:

clipboard.png

其中,clipboard.png需知足條件爲滿秩矩陣或正定矩陣。

clipboard.png,最終學得的多元線性迴歸模型爲:

clipboard.png


廣義線性模型


將線性迴歸模型簡寫爲:
clipboard.png

在線性迴歸中,所對應的輸出標記是在線性尺度(直線)上變化的,咱們想把它映射到別的尺度上,來令模型預測值逼近y的衍生物。如指數尺度上,就能夠將輸出標記的對數做爲線性模型逼近的目標,這裏是在用clipboard.png去逼近y。即

clipboard.png

稱爲對數線性迴歸

上式在形式上還是線性迴歸,但實質上已是在求取輸入空間到輸出空間的非線性函數映射。示意圖以下:

clipboard.png


更通常地,考慮單調可微函數g(·),令

clipboard.png

這樣獲得的模型稱爲廣義線性模型。其中,函數g(·)稱爲聯繫函數

顯然,對數線性迴歸是廣義線性模型在g(·)=ln(·)時的特例。

對數概率迴歸

上面咱們介紹的是使用線性模型進行迴歸學習,接下來要介紹的是作分類任務。如何進行這一分類任務呢?對於廣義線性模型來講,找一個單調可微函數將分類任務的真實標記y與線性迴歸模型的預測值聯繫起來便可。


對數概率函數


咱們考慮二分類任務。

線性迴歸模型產生的預測值是實值:
clipboard.png

二分類任務的輸出標記爲:
clipboard.png

咱們須要將實值z轉換爲 0/1 值。可經過單位階躍函數轉換:

clipboard.png

即若預測值z大於 0 就判爲正例,小於 0 判爲反例,預測值爲臨界值 0 則可任意判別。以下圖所示:

clipboard.png

能夠看出,單位階躍函數(紅色部分)不連續,故不知足函數g(·)單調可微的條件,所以咱們但願找到能在必定程度上近似它的替代函數,這個函數就是對數概率函數 (logistic function),簡稱對率函數,它是一種 Sigmoid 函數

對數概率函數:
clipboard.png

Sigmoid 函數:
即形似 S 的函數,對率函數是 Sigmoid 函數最重要的表明。

對數概率迴歸模型


對率函數將z值轉化爲一個接近 0 或 1 的y值,而且在輸出值z=0附近變化很陡。將它做爲clipboard.png代入廣義線性模型,獲得模型:

clipboard.png

將上式變化爲如下形式:

clipboard.png

若將y視爲樣本x做爲正例的可能性,則1-y是其反例可能性,二者的比值

clipboard.png

稱爲概率,反映了x做爲正例的相對可能性,對其取對數獲得對數概率

clipboard.png

由以上推導可知,該模型其實是在用線性迴歸模型的預測結果clipboard.png去逼近真實標記的對數概率clipboard.png。稱它爲對數概率迴歸 (logistic regression 亦稱 logit regression),是一種分類學習方法

logistic regression:
在周志華的《機器學習》裏譯爲 對數概率迴歸,在李航的《統計學習方法》裏譯爲 邏輯斯諦迴歸。本文中不區分兩種譯法,都是指 logistic regression,特此說明。

二項邏輯斯諦迴歸模型


在下式中
clipboard.png

咱們但願肯定式中的wb。若將y視爲後驗機率估計p(y=1 | x),則式

clipboard.png

可重寫爲

clipboard.png

顯然有

clipboard.png

上式即爲二項邏輯斯諦迴歸模型的條件機率分佈。邏輯斯諦迴歸比較兩個條件機率值的大小,將實例x分到機率值較大的那一類。

由以上二式可得:

clipboard.png
這就是說,在邏輯斯諦迴歸模型中,輸出y=1的對數概率是輸入x的線性函數,或者說,輸出y=1的對數概率是由輸入x的線性函數表示的模型,即邏輯斯諦迴歸模型。

換個角度看,是經過邏輯斯諦迴歸模型將線性函數轉換爲了機率,也就是說線性函數的值越接近正無窮,機率值就越接近 1;線性函數的值越接近負無窮,機率值就越接近 0。


極大似然法估計參數


下面經過極大似然法來估計wb

首先作一個符號說明,令:
clipboard.png

給定數據集:
clipboard.png

對率迴歸模型最大化「對數似然」:
clipboard.png

這個式子的意思是,對於每個樣原本說,找到參數使其屬於真實標記的機率最大。 即令每一個樣本屬於其真實標記的機率越大越好。

上式中的似然項可重寫爲:
clipboard.png

代回式中獲得對數似然函數,化解爲:
clipboard.png

獲得最大化目標函數,等價於最小化下式:
clipboard.png

這是關於clipboard.png的高階可到連續凸函數,這樣問題就變成了以對數似然函數爲目標函數的最優化問題。經典的數值優化算法如梯度降低法牛頓法等均可求得最優解。

以牛頓法爲例,其第t+1輪迭代解的更新公式爲
clipboard.png

其一二階導數分別爲:
clipboard.png

假設clipboard.png的極大似然估計值是clipboard.png,則學到的邏輯斯諦迴歸模型爲
clipboard.png


參考連接:
線性模型(1) —— 多元線性迴歸
西瓜書《機器學習》閱讀筆記6——Chapter3_公式(3.27)的推導過程
邏輯斯蒂迴歸(Logistic Regression)

不足之處,歡迎指正。

相關文章
相關標籤/搜索