《機器學習實戰》第五章----Logistic迴歸
阿新 • • 發佈:2018-12-06
Logistic迴歸
所謂迴歸,就是給一組資料,構建一個多項式對整個資料進行擬合.建立多項式 .
sigmod函式
sigmod函式也是一種階躍函式,為什麼經常能看見這個函式在分類問題中經常見到,包括神經網路的啟用函式,這是由於S函式在的值域在
之間,當
時,
,很容易理解的一點是,我們可以從概率的角度來說明這個問題,當屬於A類的S函式的值大於0.5,則可判斷該樣本屬於A類,則可認為.Sigmod函式的表示式如下:
影象如下所示:
COST FUNCTION
代價函式的存在是為了訓練過程中調整引數的.一般的代價函式用平方誤差來表示,並且對於迴歸問題,這樣的代價函式通常是很有用的.假設函式
,定義代價函式如下:
其中:
這裡使用 函式也是為了後面梯度演算法求導的方便.在一個二分類問題中,我們可以將 和 作為係數,寫成一個統一的代價函式表示式:
這樣得到最終的代價函式 為:
梯度上升演算法
無論是梯度上升還是梯度下降演算法,其原理都是一樣的,都是求引數的偏導數,只是一個求最大值,一個求最小值而已.如下圖所示:
梯度演算法就是以最快的速度進行最值的尋找,還記得高中時候求函式最值的方法嗎,求其偏導數,令偏導數為0,批量梯度下降也是這個原理,但我們這裡不做具體介紹.梯度上升演算法最大的缺點就是隻能找到區域性最小值,因為從不同的初值進行梯度上升或下降的時候,其結果是不同的,如下圖所示:
解決這個問題就可以參照貪心演算法,我們在程式碼中用的也是隨機梯度上升演算法,程式碼如下:
#隨機梯度上升演算法