訓練神經網絡的五大算法_第1頁
訓練神經網絡的五大算法_第2頁
訓練神經網絡的五大算法_第3頁
訓練神經網絡的五大算法_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

訓練神經網絡的五大算法

神經網絡模型的每一類學習過程通常被歸納為一種訓練算法。訓練的算法有很多,它們的特點和性能各不相同。

問題的抽象

人們把神經網絡的學習過程轉化為求損失函數f的最小值問題。一般來說,損失函數包括誤差項和正則項兩部分。誤差項衡量神經網絡模型在訓練數據集上的擬合程度,而正則項則是控制模型的復雜程度,防止出現過擬合現象。損失函數的函數值由模型的參數(權重值和偏置值)所決定。我們可以把兩部分參數合并為一個n維的權重向量,記為w。下圖是損失函數f(w)的圖示。

如上圖所示,w*是損失函數的最小值。在空間內任意選擇一個點A,我們都能計算得到損失函數的一階、二階導數。一階導數可以表示為一個向量:?if(w)=df/dwi(i=1,…,n)同樣的,損失函數的二階導數可以表示為海森矩陣(HessianMatrix):Hi,jf(w)=d2f/dwi·dwj(i,j=1,…,n)多變量的連續(xù)可微分函數的求解問題一直被人們廣泛地研究。許多的傳統(tǒng)方法都能被直接用于神經網絡模型的求解。一維優(yōu)化方法

盡管損失函數的值需要由多個參數決定,但是一維優(yōu)化方法在這里也非常重要。這些方法常常用于訓練神經網絡模型。許多訓練算法首先計算得到一個訓練的方向d,以及速率η來表示損失值在此方向上的變化,f(η)。下圖片展示了這種一維函數。

f和η*在η1和η2所在的區(qū)間之內。由此可見,一維優(yōu)化方法就是尋找到某個給定的一維函數的最小值。黃金分段法和Brent方法就是其中兩種廣泛應用的算法。這兩種算法不斷地縮減最小值的范圍,直到η1和η2兩點之間的距離小于設定的閾值。多維優(yōu)化方法

我們把神經網絡的學習問題抽象為尋找參數向量w*的問題,使得損失函數f在此點取到最小值。假設我們找到了損失函數的最小值點,那么就認為神經網絡函數在此處的梯度等于零。通常情況下,損失函數屬于非線性函數,我們很難用訓練算法準確地求得最優(yōu)解。因此,我們嘗試在參數空間內逐步搜索,來尋找最優(yōu)解。每搜索一步,重新計算神經網絡模型的參數,損失值則相應地減小。我們先隨機初始化一組模型參數。接著,每次迭代更新這組參數,損失函數值也隨之減小。當某個特定條件或是終止條件得到滿足時,整個訓練過程即結束?,F在我們就來介紹幾種神經網絡的最重要訓練算法。

1.梯度下降法(Gradientdescent)梯度下降方法是最簡單的訓練算法。它僅需要用到梯度向量的信息,因此屬于一階算法。我們定義f(wi)=fiand?f(wi)=gi。算法起始于W0點,然后在第i步沿著di=-gi方向從wi移到wi+1,反復迭代直到滿足終止條件。梯度下降算法的迭代公式為:wi+1=wi-di·ηi,i=0,1,…參數η是學習率。這個參數既可以設置為固定值,也可以用一維優(yōu)化方法沿著訓練的方向逐步更新計算。人們一般傾向于逐步更新計算學習率,但很多軟件和工具仍舊使用固定的學習率。下圖是梯度下降訓練方法的流程圖。如圖所示,參數的更新分為兩步:第一步計算梯度下降的方向,第二步計算合適的學習率。

梯度下降方法有一個嚴重的弊端,若函數的梯度變化如圖所示呈現出細長的結構時,該方法需要進行很多次迭代運算。而且,盡管梯度下降的方向就是損失函數值減小最快的方向,但是這并不一定是收斂最快的路徑。下圖描述了此問題。

當神

溫馨提示

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

評論

0/150

提交評論