線性回歸
線性回歸是一個回歸問題,即用一條線去擬合訓練數據
線性回歸的模型: 通過訓練數據學習一個特征的線性組合,以此作為預測函數。
訓練目標:根據訓練數據學習參數(w1,w2, ... , wn,b)
學習策略:
要確定參數(w1,w2, ... , wn,b),即關鍵在於如何衡量 預測函數f(x)與訓練數據y之間的差別。
如果要使得預測函數f(x)盡可能准確,那么即要求f(x)-y盡可能小,而f(x)-y便是一個樣本(x,y)的損失函數。
對於整個訓練數據的損失函數,用均方誤差損失函數(1/2是為了求導方便)
即當均方誤差損失函數J最小時的參數(w1,w2, ... , wn,b),便是最終線性模型中的參數。
所以目標就是求:
求解這個損失函數的方法主要有兩個: 最小二乘法,梯度下降法
使用梯度下降法求解 (梯度下降,批量梯度下降,隨機梯度下降)
我們知道曲面上沿着梯度的方向是函數值變化(增大)最快的方向,因此要得到J(w)最小值,應該沿着梯度的反方向。
使用沿着梯度的反方向進行權重的更新,可以有效的找到全局的最優解。
更新過程如下:
說明:
1. 上述是對參數向量W的分量wj進行更新的表達式。由更新表達式可知,每次更新使用所有的訓練數據(m個樣本)。
2. 在對參數wj更新時,使用到了樣本xi(樣本xi是個向量)的第j個分量。
3. 使用類似上面的表達式同時更新參數向量W的每一個分量,即更新參數向量W。
4. 更新參數時為什么使用 參數當前值 - 步長和導數的乘積?
更新參數時應該是 參數當前值 + 步長和導數的乘積,但是由於曲面上沿着梯度的方向是函數值變化(增大)最快的方向,而我們求函數值減小最快的方向,因此應該給梯度方向取反
因此更新表達式為 參數當前值 - 步長和導數的乘積。
5. 未寫出b的更新表達式,實質上可將參數W拓展,將b包含進W之中,更新過程是相同的。
參數拓展:w=(w1, w2, ... , wn, b) ,x=(x1, x2, ... , xn, 1)
梯度下降,批量梯度下降,隨機梯度下降
-
梯度下降:W的每一次更新,使用所有的樣本。計算得到的是一個標准梯度。更新一次的幅度較大,樣本不大的情況,收斂速度可以接受;但是若樣本太大,收斂會很慢。
-
隨機梯度下降:隨機 --- 每次使用訓練數據中的一個樣本更新,因而隨機梯度下降是會帶來一定的問題,因為計算得到的並不是准確的一個梯度,容易陷入到局部最優解中。
-
批量梯度下降:批量的梯度下降就是一種折中的方法,他用了一些小樣本來近似全部的樣本。即:每次更新w使用一批樣本。
- 步長的選擇:
- 步長太小,收斂速度太慢
- 步長太大,會在最佳收斂點附近徘徊
感知機
感知機是一個二分類問題
感知機模型:
說明:
1. 上式中的w和x,都表示向量。w=(w1, w2, ... , wn) ,x=(x1, x2, ... , xn)
2. 感知機的(wx+b)可以理解為線性回歸,即感知機將線性回歸的輸出 作為使用單位階躍函數的輸入,最終的分類結果是階躍函數的輸出。
訓練目標:根據訓練數據學習參數(w1,w2, ... , wn,b)
學習策略:誤分類點到分類超平面的總距離
對於超平面wx+b=0,w是垂直於超平面的法向量,因此
點到超平面的距離:
誤分類點到超平面的距離:(誤分類說明預測的分類 (wx+b)和實際分類不一致,因此乘積為-1,而距離是絕對值,所以應該是 -y(wx+b))
損失函數:誤分類點到超平面(wx+b=0)的總距離(未考慮前面的參數1/|w|)
即當損失函數L(w,b)最小時的參數(w1,w2, ... , wn,b),便是最終模型中的參數。
所以目標就是求:
可以使用梯度下降法,更新參數w,b。類似於線性回歸中的方法,可以拓展參數向量w=(w,b)
梯度:
更新過程:
說明:
1. 上述M是誤分類點的集合,每次使用一批樣本更新參數
2. wj表示參數向量w的第j個分量
3. 使用樣本xi的第j個分量 更新參數wj
邏輯回歸
邏輯回歸是一個二分類問題
邏輯回歸模型:
說明:本質是將線性回歸的輸出作為sigmoid函數的輸入,最終的輸出便是分類的結果。
模型解釋:對於給定的x,輸出y=1的概率
訓練目標:根據訓練數據學習參數
學習策略:條件概率p(y|x),表示x是輸入,y是正確的輸出的概率。學習策略即為求所有訓練樣本的條件概率之積的最大值。即要求概率之積盡可能大,這樣模型的預測效果就會越准確。
損失函數:對數似然損失函數
對於y=1 以及y=0有下列概率:
因此,綜合以上兩種情況:
損失函數原始形式:
(L表示所有訓練樣本的條件概率之積)
取對數得到損失函數:
目標是求得損失函數的最大值,即:最大似然估計。要得到損失函數的最大值,可轉化為求其最小值
其最小值是:
即:
使用梯度下降法,求J的最小值。
由於:
因此:
更新過程:
如有錯誤之處,請評論中指正。