第五章BP算法及優(yōu)化方法_第1頁
第五章BP算法及優(yōu)化方法_第2頁
第五章BP算法及優(yōu)化方法_第3頁
第五章BP算法及優(yōu)化方法_第4頁
第五章BP算法及優(yōu)化方法_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第五章:

BP算法及優(yōu)化方法主講人:學(xué)習(xí)目標(biāo)1.優(yōu)化的原理;2.基于梯度的優(yōu)化算法;3.梯度遞減的方法;4.反向傳播算法;5.基于梯度遞減線性回歸算法。優(yōu)化的原理PART5.15.1.1

為何需要優(yōu)化函數(shù)“于汝諸人分上著一點(diǎn)不得。何故。如人上山,各自努力?!?/p>

讓損失函數(shù)趨向極小值的同時(shí),令這個(gè)過程越短越好,是優(yōu)化算法的目標(biāo)。5.1.2

優(yōu)化流程優(yōu)化流程三步走(1)損失是否足夠???若是,則退出;若不是,計(jì)算損失函數(shù)的梯度。(2)按梯度的反方向走一小步,以減小損失。(3)循環(huán)到(1)?;谔荻鹊膬?yōu)化算法PART5.25.2基于梯度的優(yōu)化算法5.2基于梯度的優(yōu)化算法?importnumpyasnpimportmatplotlib.pyplotaspltfrommpl_toolkits.mplot3dimportAxes3D#定義函數(shù)deffun(x,y):return-(np.power(x,2)+np.power(y,2))#創(chuàng)建3D圖形對(duì)象fig=plt.figure()ax=Axes3D(fig)#生成數(shù)據(jù)X0=np.arange(-3,3,0.25)X1=np.arange(-3,3,0.25)X0,X1=np.meshgrid(X0,X1)Z=fun(X0,X1)#繪制曲面圖,并使用cmap著色ax.plot_surface(X0,X1,Z,cmap=plt.cm.winter)ax.set_xlabel('X0',color='r')ax.set_ylabel('X1',color='g')ax.set_zlabel('f(x)',color='b')#給三個(gè)坐標(biāo)軸注明坐標(biāo)名稱plt.show()5.2基于梯度的優(yōu)化算法運(yùn)行結(jié)果5.2基于梯度的優(yōu)化算法?importtensorflowastfdeffunc(x):returnx**2+2*x-1#1元函數(shù)defgradient_test():x=tf.constant(value=2.0)withtf.GradientTape()astape:tape.watch(x)y=func(x)#一階導(dǎo)數(shù)order_1=tape.gradient(target=y,sources=x)print("函數(shù)x**2+2*x-1在x=2處的梯度為:",order_1.numpy())if__name__=="__main__":gradient_test()5.2基于梯度的優(yōu)化算法?importtensorflowastfx=tf.Variable(2.0,trainable=True)withtf.GradientTape()astape1:withtf.GradientTape()astape2:y=x**2+2*x-1order_1=tape2.gradient(y,x)order_2=tape1.gradient(order_1,x)print("在x=2處的一階梯度為:",order_1.numpy())print("在x=2處的二階梯度為:",order_2.numpy())5.2基于梯度的優(yōu)化算法?importtensorflowastfdeffunc(x):#注意:此處x為一個(gè)多元張量returnx[0]**2+3*x[0]*x[1]+x[1]**2+x[2]**3defgradient_test():#求n(=3)元函數(shù)的梯度x=tf.constant(value=[1.0,2.0,3.0])withtf.GradientTape()astape:tape.watch(x)y=func(x)#一階導(dǎo)數(shù)order_1=tape.gradient(target=y,sources=x)print("多元函數(shù)x=[1.0,2.0,3.0]處的梯度為:",order_1.numpy())if__name__=="__main__":gradient_test()5.2基于梯度的優(yōu)化算法利用梯度遞減更新網(wǎng)絡(luò)權(quán)值5.2基于梯度的優(yōu)化算法正負(fù)梯度示意

負(fù)梯度的每一項(xiàng)告訴我們以下兩件事。正負(fù)號(hào):輸入向量的每一項(xiàng)是增大的還是減小的。值大?。焊嬖V我們哪個(gè)值影響最大,即改變哪些參數(shù)性價(jià)比會(huì)更高。梯度遞減的方法PART5.35.3梯度遞減的方法我們總是希望能夠有一組權(quán)重會(huì)使得我們的損失函數(shù)最小。這樣的權(quán)重就是我們想要的最優(yōu)權(quán)重。5.3梯度遞減的方法5.3梯度遞減的方法批量梯度遞減法與隨機(jī)梯度遞減法的

權(quán)值調(diào)整路線對(duì)比神經(jīng)網(wǎng)絡(luò)的訓(xùn)練PART5.45.4.1神經(jīng)網(wǎng)絡(luò)的訓(xùn)練流程初始化參數(shù)。常用的初始化方法有常數(shù)初始化、正態(tài)分布類初始化、均勻分布類初始化等。切分batch數(shù)據(jù)。神經(jīng)網(wǎng)絡(luò)每一輪訓(xùn)練不是用全部數(shù)據(jù),而是選取一定量的數(shù)據(jù)樣本作為輸入,這部分?jǐn)?shù)據(jù)樣本稱為一個(gè)batch。前向傳播建立損失函數(shù)反向傳播是否達(dá)到迭代次數(shù),如果達(dá)到,則結(jié)束本輪訓(xùn)練,如果未達(dá)到,則繼續(xù)重復(fù)前面的步驟進(jìn)行新一輪迭代。5.4.2前向傳播算法前向傳播(ForwardPropagation)算法是指神經(jīng)網(wǎng)絡(luò)向前計(jì)算的過程。前向傳播算法需要神經(jīng)網(wǎng)絡(luò)的輸入,神經(jīng)網(wǎng)絡(luò)的連接結(jié)構(gòu)以及每個(gè)神經(jīng)元中的參數(shù)。介紹一個(gè)全連接神經(jīng)網(wǎng)絡(luò)前向傳播例子:兩層神經(jīng)網(wǎng)絡(luò)前向傳播示意圖5.4.3損失函數(shù)

5.4.4基于梯度下降算法的預(yù)備知識(shí)

5.4.4基于梯度下降算法的預(yù)備知識(shí)5.4.5批量梯度下降算法小批量梯度下降(Mini-BatchGradientDescent,MBGD)批量梯度下降算法就是把整個(gè)樣本切分為若干份,每一份稱為一個(gè)小批量(Mini-batch),然后在每一份樣本上實(shí)施梯度下降算法進(jìn)行參數(shù)更新隨機(jī)梯度下降算法(StochasticGradientDescent,SGD)隨機(jī)梯度下降算法是指每個(gè)批量只有一個(gè)樣本,并且只在這一個(gè)樣本上實(shí)施梯度下降算法進(jìn)行參數(shù)更新。訓(xùn)練更靈活,但很難收斂,效率低。MBGD與SGD下降過程會(huì)產(chǎn)生震蕩,SGD震蕩嚴(yán)重批量數(shù)(BatchSize)的選擇依實(shí)際情況而定5.4.6批量梯度下降算法的改進(jìn)動(dòng)量梯度下降(GradientDescentwithMomentum)算法均方根加速(RootMeanSquareProp,RMSProp)算法5.4.6批量梯度下降算法的改進(jìn)自適應(yīng)矩估計(jì)(AdaptiveMomentEstimation,Adam)算法Adam算法的優(yōu)點(diǎn):在同等數(shù)據(jù)量的情況下,占用內(nèi)存更少,超參數(shù)相對(duì)固定,適用于大規(guī)模訓(xùn)練數(shù)據(jù)的場(chǎng)景,對(duì)梯度稀疏和梯度噪聲有很大的容忍性。5.4.7反向傳播算法

5.4.7反向傳播算法反向傳播算法示例(接上頁):前向傳播損失函數(shù)反向傳播計(jì)算總誤差隱含層→輸出層的權(quán)值更新:輸入層→隱含層的權(quán)值更新:①正向傳播輸入信息,實(shí)現(xiàn)分類功能;②反向傳播誤差,調(diào)整網(wǎng)絡(luò)權(quán)值?;谔荻冗f減的線性回歸算法PART5.55.5基于梯度遞減的線性回歸算法擬合得到的模型近似為:y≈10.073746681213379x+4.170716762542725p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論