線性迴歸

  1. 什麼是線性迴歸ide

    不一樣於分類問題的待預測變量爲離散變量,迴歸問題中待預測變量即因變量爲連續變量。人們在測量事物的時候由於客觀條件所限,求得的都是測量值,而不是事物真實的值,爲了可以獲得真實值,無限次的進行測量,最後經過這些測量數據計算迴歸到真實值,這就是迴歸的由來。函數

    線性迴歸假設自變量與因變量之間存在的是一次函數關係,即線性關係。spa

    設全部樣本的特徵爲\(X\in \mathbb{R}^{n*m}\),輸出爲\(Y\in \mathbb{R}^{n*1}\),其中n爲樣本數,m爲特徵數。線性迴歸假設存在權重項\(W\in \mathbb{R}^{m*1}\)和偏置項\(b\in \mathbb{R}\),使得\(\widehat Y=XW+b\),其中\(\widehat Y\)爲對Y的預測值。爲了簡化表達,給X添加一列1,將偏置項併入權重項,則\(\widehat Y=XW\) ,其中\(X\in \mathbb{R}^{n*(m+1)}\)\(W\in \mathbb{R}^{(m+1)*1}\)設計

  2. 線性迴歸求解blog

    線性迴歸以均方偏差爲損失函數,該方法稱爲方法稱爲最小二乘法。get

    爲了方面後面的計算,增長了\(\frac{1}{2n}\)做爲因子,即損失函數爲:ast

    \[J=\frac{1}{2n}(XW-Y)^T(XW-Y)=\frac{1}{2n}(W^TX^TXW-W^TX^TY-Y^TXW+Y^TY) \]

    損失函數對權重求導:class

    \[\frac{\partial J}{\partial W}=\frac{1}{n}X^T(XW-Y) \]

    令導數等於0,得:效率

    \[W^*=(X^TX)^{-1}X^TY \]

    \(X^TX\)滿秩或者正定的時候,能夠直接由上式求得閉式解。當不知足時,可使用梯度降低法求解。基礎

  3. 使用均方偏差解釋線性迴歸

    對於第i個樣本\((x_i,y_i)\),假設\(y_i=W^Tx_i+\epsilon_i\),其中\(\epsilon_i\)爲偏差項。因爲影響偏差的因素有不少,而這些因素都是獨立且隨機分佈的,根據中心極限定理——許多獨立隨機變量的和趨向於正態分佈,所以能夠假設:

    \[\epsilon_i\sim N(0,\sigma^2) \]

    \(\epsilon_i\)是獨立同分布的隨機變量。則當給定了參數W和輸入\(x_i\)\(\epsilon_i\)的機率密度爲:

    \[P(\epsilon_i|x_i;W)=\frac{1}{\sqrt{2\pi}\sigma}e^{\frac{\epsilon_i^2}{2\sigma^2}} \]

    因爲\(\epsilon_i=y_i-W^Tx_i\),有:

    \[P(y_i|x_i;W)=\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(y_i-W^Tx_i)^2}{2\sigma^2}} \]

    \(y_i\)也服從正態分佈,則似然函數爲:

    \[l(W)=\prod_{i=1}^n\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(y_i-W^Tx_i)^2}{2\sigma^2}} \]

    對數似然函數爲:

    \[L(W)=-n\ln \sqrt{2\pi}\sigma-\sum_{i=1}^n\frac{(y_i-W^Tx_i)^2}{2\sigma^2} \]

    最大化似然函數:

    \[\arg\max_W L(W)=\arg\max_W -n\ln \sqrt{2\pi}\sigma-\sum_{i=1}^n\frac{(y_i-W^Tx_i)^2}{2\sigma^2} \\ =\arg\min_W \sum_{i=1}^n(y_i-W^Tx_i)^2 \\ =\arg\min_W \frac{1}{2n}(XW-Y)^T(XW-Y) \]

    即最大化似然函數等價於最小化均方偏差,即最小二乘法其實是在假設偏差項知足高斯分佈且獨立同分布狀況下,使似然性最大化。

  4. 正則化方法

    正則化方法是指在原損失函數的基礎上加上一個正則化項,用來控制參數幅度或者是限制參數搜索空間,從而下降過擬合。線性迴歸經常使用的正則化方法有L1正則化(Lasso迴歸)、L2正則化(嶺迴歸)、ElasticNet迴歸。

    • L1正則化(Lasso迴歸)

      L1正則化至關於在原有損失函數的基礎上加上加權的參數L1範數做爲正則化項,即:

      \[J'=J+\lambda\sum|w| \]

      下圖爲其在二維時的參數空間:

      yErN5V.png

      圖中彩色部分爲原損失函數的等高線,紫色部分爲其最小值附近;黑色菱形爲L1正則化項等高線,易知最優解一定在兩組等高線的切點處,而這個交點很容易出如今座標軸上,使得部分參數取值爲0。這說明L1正則化容易獲得稀疏解。

      此時因爲絕對值函數在w=0處不可導,故不能直接採用梯度降低法,此時能夠採用此梯度降低法或者座標降低法,具體可參考:https://zhuanlan.zhihu.com/p/76055830

    • L2正則化(嶺迴歸)

      L2正則化至關於在原有損失函數的基礎上加上加權的參數L2範數做爲正則化項,即:

      \[J'=J+\lambda\sum|w|^2 \]

      下圖爲其在二維時的參數空間:

      yErGbn.png

      圖中彩色部分爲原損失函數的等高線,紫色部分爲其最小值附近;黑色圓形爲L2正則化項等高線,易知最優解一定在兩組等高線的切點處,而這個交點很難出如今座標軸上,這說明L2正則化不容易獲得稀疏解。

    • 從貝葉斯角度看L1和L2正則化

      L1 正則化能夠當作是:經過假設權重參數W的先驗分佈爲拉普拉斯分佈,由最大後驗機率估計導出。

      L2 正則化能夠當作是:經過假設權重參數W的先驗分佈爲正態分佈,由最大後驗機率估計導出。

      具體能夠參考https://zhuanlan.zhihu.com/p/56185913

    • ElasticNet迴歸

      ElasticNet綜合了L1正則化項和L2正則化項,如下是它的公式:

      \[J'=J+\lambda_1\sum|w|+\lambda_2\sum|w|^2 \]

    • 正則化方法的選擇

      只要數據線性相關,但用線性迴歸擬合的不是很好時就能夠選擇添加正則化項。若是輸入特徵的維度很高,並且是稀疏線性關係的話能夠嘗試L1正則化,不然能夠嘗試使用L2正則化。

      在咱們發現用L1正則化太過(太多特徵被稀疏爲0),而L2正則化也正則化的不夠(迴歸係數衰減太慢)的時候,能夠考慮使用ElasticNet迴歸來綜合,獲得比較好的結果。

  5. 局部加權線性迴歸

    局部加權線性迴歸是普通線性迴歸的一個改進,普通的線性迴歸努力尋找一個使得全局代價函數最小的模型。這個模型對於總體來講是最好的,但對於局部點來講,可能不是最好的。

    局部加權線性迴歸的基本思想:設計代價函數時,待預測點附近的點擁有更高的權重,權重隨着距離的增大而縮減——這也就是名字中「局部」和「加權」的由來。

    局部加權線性迴歸的損失函數爲:

    \[J=\sum_{i=1}^n\theta_i(y_i-W^Tx_i)^2 \\ \theta_i=e^{-\frac{(x-x_i)^2}{2\sigma^2}} \]

    其中\(w_i\)爲訓練集中第i個樣本的權重,其圖像相似於正態分佈。\(\sigma\)越小圖像越「瘦」,即權重衰減的越快,與x相距越遠的樣本權重越小。

    求導可得局部加權線性迴歸的閉式解爲:

    \[W^*=(X^T\theta X)^{-1}X^T\theta Y \]

    其中\(\theta=diag(\theta_1,\theta_2,...,\theta_n)\)

    局部加權迴歸的優勢:

    • 須要預測的數據僅與到訓練數據的距離有關,距離越近,關係越大,反之越小;
    • 能夠有效避免欠擬合,減少了較遠數據的干擾,僅與較近的數據有關。

    局部加權迴歸的缺點:

    • 計算效率低;
    • 容易過擬合。
相關文章
相關標籤/搜索