Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率...
(手機的顏色,大小,用戶體驗來加權統計總體的值)極大似然估計MLE
1.Logistic回歸
Logistic regression (邏輯回歸),是一種分類方法,用于二分類問題(即輸出只有兩種)。如用于廣告預測,也就是根據某廣告被用戶點擊的可能性,把最可能被用戶點擊的廣告擺在用戶能看到的地方,結果是用戶要么點擊要么不點擊。
通常兩類使用類別標號0和1表示,0表示不發生,1表示發生。
問題引入
例如:有100個手機,其中有30個是你喜歡的,70個是不喜歡的。現預測你對第101個手機的喜好。這是一個兩類問題,喜歡與不喜歡。
顯然這是一個二分類問題,我們對第101個手機進行預測分類,分為喜歡和不喜歡兩個類別。
我們需要對手機取特征(屬性),比如價格,外觀,用戶體驗。簡單處理,只考慮3個方面(即3個特征)。綜合考慮這些因素,并且把這些值進行數字化的表示。數字越大說明越喜歡,越小越不喜歡。
怎么數字化表示這些量呢?
對每部手機對應價格,外觀,用戶體驗都可以給出一個具體的數值。
我們回憶一下貝葉斯分類:
?
2. Sigmoid 函數
?
3.Sigmoid函數性質
分類性質
回顧我們的后驗概率如何分類的,每個可以觀測的樣本都有屬于某類的概率。分類時候選取后驗概率大的值進行分類。這里是兩分類問題每個樣本均可帶入P(y=1|x)和P(y=0|x)誰的概率值大,我們就將樣本歸入某類。
現在分類模型為下邊公式,但含有未知量 ,只要求出 就可以對樣本,就可以帶入樣本就行計算,對樣本進行分類。
如何求未知參數 ?我們有m個樣本,思路是建立一個目標函數,求目標函數極值。極值處的 值,就是我們最優未知參數值。
參數估計
假設分類的概率
上面的概率可以寫到一起 (類似二項分布)
m個樣本的似然函數為
對數似然函數
使得似然函數值最大?梯度下降(上升)法。
似然函數求導
常規方法時效。故用梯度下降法
Logistic回歸中是未知參數 ,目標是求出 。通過構建似然函數,目標使似然函數最大。
回顧我們梯度下降法。
? (J是上邊的L函數,手誤)問題解決
4.梯度上升法
目標使似然函數最大,我們可以使用梯度上升法進行迭代。
梯度下降法根據樣本使用的不同,一次使用所有樣本更新參數為批處理梯度下降法。一次只隨機使用一個樣本來更新參數隨機梯度下降法。
同樣我們的Logistic回歸可以使用批處理梯度上升法和隨機梯度上升法。梯度上升法和梯度下降法都是尋找函數的極值,只是搜索方向的不同而已。根據具體函數的性質,進行選擇,兩者沒有本質的不同。
我們容易通過把函數轉換成,把極大化問題轉換成極小化問題。函數加負號即可。
5.批處理梯度下降法
6.隨機梯度下降法
7.代碼實現
?
準備數據,樣例數據如下,前兩列分別為x1和x2值,第3列為數據的類別,這樣的數據有100條。
批處理梯度下降(上升)算法計算最佳回歸系數
矩陣為什么要轉置?
運行測試
if __name__ == "__main__":
dataMat,classLabels=loadDataSet()
weights=gradAscent(dataMat, classLabels)
plotBestFit(weights.getA())
8.隨機梯度下降(上升)法SGD (stochastic gradient descent)
運行測試
if __name__ == "__main__":
dataAttr, labelMat = loadDataSet()
weights = stocGradAscent0(array(dataAttr), labelMat)
plotBestFit(weights)
9.改進的隨機梯度下降
運行測試
if __name__ == "__main__":
dataAttr, labelMat = loadDataSet()
weights = stocGradAscent1(array(dataAttr), labelMat)
plotBestFit(weights)
運行結果對比
比較原始的隨機梯度下降和改進后的梯度下降,可以看到兩點不同:
1)系數不再出現周期性波動。
2)系數可以很快的穩定下來,也就是快速收斂。這里只迭代了20次就收斂了。而上面的隨機梯度下降需要迭代200次才能穩定。
(a)梯度下降算法迭代500次。
(b)隨機梯度下降算法迭代200次。
(c)改進的隨機梯度下降算法迭代20次。
(d)改進的隨機梯度下降算法迭代200次。
10.示例:從疝氣病癥預測病馬是否存活
一、處理數據中的缺失值
二、用Logistic回歸進行分類
運行測試
if __name__ == "__main__":
multiTest()
11.總結
轉載于:https://www.cnblogs.com/chaoren399/p/4850427.html
總結
以上是生活随笔為你收集整理的Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 退押金无望:ofo 小黄车已彻底无法登录
- 下一篇: 应用服务器性能优化