日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率...

發(fā)布時(shí)間:2023/12/15 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

(手機(jī)的顏色,大小,用戶體驗(yàn)來加權(quán)統(tǒng)計(jì)總體的值)極大似然估計(jì)MLE

1.Logistic回歸

Logistic regression (邏輯回歸),是一種分類方法,用于二分類問題(即輸出只有兩種)。如用于廣告預(yù)測(cè),也就是根據(jù)某廣告被用戶點(diǎn)擊的可能性,把最可能被用戶點(diǎn)擊的廣告擺在用戶能看到的地方,結(jié)果是用戶要么點(diǎn)擊要么不點(diǎn)擊。

通常兩類使用類別標(biāo)號(hào)0和1表示,0表示不發(fā)生,1表示發(fā)生。

問題引入

例如:有100個(gè)手機(jī),其中有30個(gè)是你喜歡的,70個(gè)是不喜歡的。現(xiàn)預(yù)測(cè)你對(duì)第101個(gè)手機(jī)的喜好。這是一個(gè)兩類問題,喜歡與不喜歡。

顯然這是一個(gè)二分類問題,我們對(duì)第101個(gè)手機(jī)進(jìn)行預(yù)測(cè)分類,分為喜歡和不喜歡兩個(gè)類別。

我們需要對(duì)手機(jī)取特征(屬性),比如價(jià)格,外觀,用戶體驗(yàn)。簡(jiǎn)單處理,只考慮3個(gè)方面(即3個(gè)特征)。綜合考慮這些因素,并且把這些值進(jìn)行數(shù)字化的表示。數(shù)字越大說明越喜歡,越小越不喜歡。

怎么數(shù)字化表示這些量呢?

對(duì)每部手機(jī)對(duì)應(yīng)價(jià)格,外觀,用戶體驗(yàn)都可以給出一個(gè)具體的數(shù)值。

我們回憶一下貝葉斯分類:

?

2. Sigmoid 函數(shù)

?

3.Sigmoid函數(shù)性質(zhì)

分類性質(zhì)

回顧我們的后驗(yàn)概率如何分類的,每個(gè)可以觀測(cè)的樣本都有屬于某類的概率。分類時(shí)候選取后驗(yàn)概率大的值進(jìn)行分類。這里是兩分類問題每個(gè)樣本均可帶入P(y=1|x)和P(y=0|x)誰的概率值大,我們就將樣本歸入某類。

現(xiàn)在分類模型為下邊公式,但含有未知量 ,只要求出 就可以對(duì)樣本,就可以帶入樣本就行計(jì)算,對(duì)樣本進(jìn)行分類。

如何求未知參數(shù) ?我們有m個(gè)樣本,思路是建立一個(gè)目標(biāo)函數(shù),求目標(biāo)函數(shù)極值。極值處的 值,就是我們最優(yōu)未知參數(shù)值。

參數(shù)估計(jì)

假設(shè)分類的概率

上面的概率可以寫到一起 (類似二項(xiàng)分布)

m個(gè)樣本的似然函數(shù)為

對(duì)數(shù)似然函數(shù)

使得似然函數(shù)值最大?梯度下降(上升)法。

似然函數(shù)求導(dǎo)

常規(guī)方法時(shí)效。故用梯度下降法

Logistic回歸中是未知參數(shù) ,目標(biāo)是求出 。通過構(gòu)建似然函數(shù),目標(biāo)使似然函數(shù)最大。

回顧我們梯度下降法。

? (J是上邊的L函數(shù),手誤)問題解決

4.梯度上升法

目標(biāo)使似然函數(shù)最大,我們可以使用梯度上升法進(jìn)行迭代。

梯度下降法根據(jù)樣本使用的不同,一次使用所有樣本更新參數(shù)為批處理梯度下降法。一次只隨機(jī)使用一個(gè)樣本來更新參數(shù)隨機(jī)梯度下降法。

同樣我們的Logistic回歸可以使用批處理梯度上升法和隨機(jī)梯度上升法。梯度上升法和梯度下降法都是尋找函數(shù)的極值,只是搜索方向的不同而已。根據(jù)具體函數(shù)的性質(zhì),進(jìn)行選擇,兩者沒有本質(zhì)的不同。

我們?nèi)菀淄ㄟ^把函數(shù)轉(zhuǎn)換成,把極大化問題轉(zhuǎn)換成極小化問題。函數(shù)加負(fù)號(hào)即可。

5.批處理梯度下降法

6.隨機(jī)梯度下降法

7.代碼實(shí)現(xiàn)

?

準(zhǔn)備數(shù)據(jù),樣例數(shù)據(jù)如下,前兩列分別為x1和x2值,第3列為數(shù)據(jù)的類別,這樣的數(shù)據(jù)有100條。

批處理梯度下降(上升)算法計(jì)算最佳回歸系數(shù)

矩陣為什么要轉(zhuǎn)置?

運(yùn)行測(cè)試

if __name__ == "__main__":

dataMat,classLabels=loadDataSet()

weights=gradAscent(dataMat, classLabels)

plotBestFit(weights.getA())

8.隨機(jī)梯度下降(上升)法SGD (stochastic gradient descent)

運(yùn)行測(cè)試

if __name__ == "__main__":

dataAttr, labelMat = loadDataSet()

weights = stocGradAscent0(array(dataAttr), labelMat)

plotBestFit(weights)

9.改進(jìn)的隨機(jī)梯度下降

運(yùn)行測(cè)試

if __name__ == "__main__":

dataAttr, labelMat = loadDataSet()

weights = stocGradAscent1(array(dataAttr), labelMat)

plotBestFit(weights)

運(yùn)行結(jié)果對(duì)比

比較原始的隨機(jī)梯度下降和改進(jìn)后的梯度下降,可以看到兩點(diǎn)不同:

1)系數(shù)不再出現(xiàn)周期性波動(dòng)。

2)系數(shù)可以很快的穩(wěn)定下來,也就是快速收斂。這里只迭代了20次就收斂了。而上面的隨機(jī)梯度下降需要迭代200次才能穩(wěn)定。

(a)梯度下降算法迭代500次。

(b)隨機(jī)梯度下降算法迭代200次。

(c)改進(jìn)的隨機(jī)梯度下降算法迭代20次。

(d)改進(jìn)的隨機(jī)梯度下降算法迭代200次。

10.示例:從疝氣病癥預(yù)測(cè)病馬是否存活

一、處理數(shù)據(jù)中的缺失值

二、用Logistic回歸進(jìn)行分類

運(yùn)行測(cè)試

if __name__ == "__main__":

multiTest()

11.總結(jié)

轉(zhuǎn)載于:https://www.cnblogs.com/chaoren399/p/4850427.html

總結(jié)

以上是生活随笔為你收集整理的Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。