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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

2.10 m 个样本的梯度下降-深度学习-Stanford吴恩达教授

發(fā)布時間:2025/4/5 pytorch 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2.10 m 个样本的梯度下降-深度学习-Stanford吴恩达教授 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

←上一篇↓↑下一篇→
2.9 Logistic 回歸的梯度下降法回到目錄2.11 向量化

mmm 個樣本的梯度下降 (Gradient Descent on mmm example)

在之前的視頻中,你已經(jīng)看到如何計算導(dǎo)數(shù),以及應(yīng)用梯度下降在邏輯回歸的一個訓(xùn)練樣本上。現(xiàn)在我們想要把它應(yīng)用在 mmm 個訓(xùn)練樣本上。

首先,讓我們時刻記住有關(guān)于損失函數(shù) J(w,b)J(w,b)J(w,b) 的定義。

J(w,b)=1m∑i=1mL(a(i),y(i))J(w,b)=\frac 1m \sum_{i=1}^m L(a^{(i)},y^{(i)})J(w,b)=m1?i=1m?L(a(i),y(i))

當(dāng)你的算法輸出關(guān)于樣本 yyya(i)a^{(i)}a(i)a(i)a^{(i)}a(i) 是訓(xùn)練樣本的預(yù)測值,即: σ(z(i))=σ(wTx(i)+b)\sigma(z^{(i)})=\sigma(w^Tx^{(i)}+b)σ(z(i))=σ(wTx(i)+b) 。 所以我們在前面的幻燈中展示的是對于任意單個訓(xùn)練樣本,如何計算微分當(dāng)你只有一個訓(xùn)練樣本。因此, dw1,dw2dw_1,\ dw_2dw1?,?dw2?dbdbdb 添上上標(biāo) iii 表示你求得的相應(yīng)的值。如果你面對的是我們在之前的幻燈中演示的那種情況,但只使用了一個訓(xùn)練樣本 (x(i),y(i))(x^{(i)},y^{(i)})(x(i),y(i)) 。 現(xiàn)在你知道帶有求和的全局代價函數(shù),實際上是1到 mmm 項各個損失的平均。 所以它表明全局代價函數(shù)對 w1w_1w1? 的微分,對 w1w_1w1? 的微分也同樣是各項損失對 w1w_1w1? 微分的平均。

但之前我們已經(jīng)演示了如何計算這項,即之前幻燈中演示的如何對單個訓(xùn)練樣本進(jìn)行計算。所以你真正需要做的是計算這些微分,如我們在之前的訓(xùn)練樣本上做的。并且求平均,這會給你全局梯度值,你能夠把它直接應(yīng)用到梯度下降算法中。

所以這里有很多細(xì)節(jié),但讓我們把這些裝進(jìn)一個具體的算法。同時你需要一起應(yīng)用的就是邏輯回歸和梯度下降。

我們初始化

J=0,dw1=0,dw2=0,db=0J=0,dw_1=0,dw_2=0,db=0J=0,dw1?=0,dw2?=0,db=0

代碼流程:

J=0;dw1=0;dw2=0;db=0; for i = 1 to mz(i) = wx(i)+b;a(i) = sigmoid(z(i));J += -[y(i)log(a(i))+(1-y(i))log(1-a(i));dz(i) = a(i)-y(i);dw1 += x1(i)dz(i);dw2 += x2(i)dz(i);db += dz(i); J/= m; dw1/= m; dw2/= m; db/= m; w=w-alpha*dw b=b-alpha*db

幻燈片上只應(yīng)用了一步梯度下降。因此你需要重復(fù)以上內(nèi)容很多次,以應(yīng)用多次梯度下降。看起來這些細(xì)節(jié)似乎很復(fù)雜,但目前不要擔(dān)心太多。希望你明白,當(dāng)你繼續(xù)嘗試并應(yīng)用這些在編程作業(yè)里,所有這些會變的更加清楚。

但這種計算中有兩個缺點,也就是說應(yīng)用此方法在邏輯回歸上你需要編寫兩個for循環(huán)。第一個for循環(huán)是一個小循環(huán)遍歷 mmm 個訓(xùn)練樣本,第二個for循環(huán)是一個遍歷所有特征的for循環(huán)。這個例子中我們只有2個特征,所以 nnn 等于2并且 nxn_xnx? 等于2。 但如果你有更多特征,你開始編寫你的因此 dw1dw_1dw1?dw2dw_2dw2? ,你有相似的計算從 dw3dw_3dw3? 一直下去到 dwndw_ndwn? 。所以看來你需要一個for循環(huán)遍歷所有 nnn 個特征。

當(dāng)你應(yīng)用深度學(xué)習(xí)算法,你會發(fā)現(xiàn)在代碼中顯式地使用for循環(huán)使你的算法很低效,同時在深度學(xué)習(xí)領(lǐng)域會有越來越大的數(shù)據(jù)集。所以能夠應(yīng)用你的算法且沒有顯式的for循環(huán)會是重要的,并且會幫助你適用于更大的數(shù)據(jù)集。所以這里有一些叫做向量化技術(shù),它可以允許你的代碼擺脫這些顯式的for循環(huán)。

我想在先于深度學(xué)習(xí)的時代,也就是深度學(xué)習(xí)興起之前,向量化是很棒的。可以使你有時候加速你的運算,但有時候也未必能夠。但是在深度學(xué)習(xí)時代向量化,擺脫for循環(huán)已經(jīng)變得相當(dāng)重要。因為我們越來越多地訓(xùn)練非常大的數(shù)據(jù)集,因此你真的需要你的代碼變得非常高效。所以在接下來的幾個視頻中,我們會談到向量化,以及如何應(yīng)用向量化而連一個for循環(huán)都不使用。所以學(xué)習(xí)了這些,我希望你有關(guān)于如何應(yīng)用邏輯回歸,或是用于邏輯回歸的梯度下降,事情會變得更加清晰。當(dāng)你進(jìn)行編程練習(xí),但在真正做編程練習(xí)之前讓我們先談?wù)勏蛄炕H缓竽憧梢詰?yīng)用全部這些東西,應(yīng)用一個梯度下降的迭代而不使用任何for循環(huán)。

課程PPT




←上一篇↓↑下一篇→
2.9 Logistic 回歸的梯度下降法回到目錄2.11 向量化

總結(jié)

以上是生活随笔為你收集整理的2.10 m 个样本的梯度下降-深度学习-Stanford吴恩达教授的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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