1. 程式人生 > >機器學習從零開始系列連載(2)——線性迴歸

機器學習從零開始系列連載(2)——線性迴歸

作者:張磊

編輯:趙一帆

本週剩餘內容:

2. 建模方法回顧

    2.0 偏差與方差

    2.1 線性迴歸-Linear Regression

        2.1.1 模型原理

        2.1.2 損失函式

    2.2 支援向量機-Support Vector Machine

        2.2.1 模型原理

        2.2.2 損失函式

        2.2.3 核方法

    2.3 邏輯迴歸-Logistic Regression

        2.3.1 模型原理

        2.3.2 損失函式

    2.4 Bagging and Boosting框架

        2.4.1 Bagging框架

        2.4.2 Boosting框架

    2.5 Additive Tree 模型

        2.5.1 Random Forests

        2.5.2 AdaBoost with trees

        2.5.3 Gradient Boosting Decision Tree

        2.5.4 簡單的例子

    2.6 人工神經網路-Neural Network

        2.6.1 神經元

        2.6.2 神經網路的常用結構

        2.6.3 一個簡單的神經網路例子

以通用的監督學習為例,基本包含4個部分:

640?wx_fmt=png&wxfrom=5&wx_lazy=1

01

偏差與方差

● 在機器學習演算法中,偏差是由先驗假設的不合理帶來的模型誤差,高偏差會導致欠擬合: 所謂欠擬合是指對特徵和標註之間的因果關係學習不到位,導致模型本身沒有較好的學到歷史經驗的現象;

● 方差表徵的是模型誤差對樣本發生一定變化時的敏感度,高方差會導致過擬合:模型對訓練樣本中的隨機噪聲也做了擬合學習,導致在未知樣本上應用時出現效果較差的現象;

● 機器學習模型的核心之一在於其推廣能力,即在未知樣本上的表現。

對方差和偏差的一種直觀解釋

0?wx_fmt=png

一個例子,假如我們有預測模型:

0?wx_fmt=png

我們希望用f^e(x)估計f(x),如果使用基於square loss 的線性迴歸,則誤差分析如下:

0?wx_fmt=png0?wx_fmt=png

所以大家可以清楚的看到模型學習過程其實就是對偏差和方差的折中過程。

02

模型原理

標準線性迴歸通過對自變數的線性組合來預測因變數,組合自變數的權重通過最小化訓練集中所有樣本的預測平方誤差和來得到,原理如下。

● 預測函式 

0?wx_fmt=png

● 引數學習-採用最小二乘法 

0?wx_fmt=png

所有機器學習模型的成立都會有一定的先驗假設,線性迴歸也不例外,它對資料做了以下強假設:

● 自變數相互獨立,無多重共線性

● 因變數是自變數的線性加權組合:

0?wx_fmt=png

● 所有樣本獨立同分布(iid),且誤差項服從以下分佈:

0?wx_fmt=png

最小二乘法與以上假設的關係推導如下:

0?wx_fmt=png

使用MLE(極大似然法)估計引數如下:

0?wx_fmt=png

線性迴歸有兩個重要變體:

● Lasso Regression:採用L1正則並使用MAP做引數估計

● Ridge Regression:採用L2正則並使用MAP做引數估計

關於正則化及最優化後續會做介紹。

03

損失函式

0?wx_fmt=png

進一步閱讀可參考:Least Squares

https://en.wikipedia.org/wiki/Least_squares