卷積神經(jīng)網(wǎng)絡注意事項
1)數(shù)據(jù)集的大小和分塊
數(shù)據(jù)驅(qū)動的模型一般依賴于數(shù)據(jù)集的大小,CNN和其他經(jīng)驗模型一樣,能夠適用于任意大小的數(shù)據(jù)集,但用于訓練的數(shù)據(jù)集應該足夠大, 能夠覆蓋問題域中所有已知可能出現(xiàn)的問題,
設計CNN的時候,數(shù)據(jù)集應該包含三個子集:訓練集、測試集、驗證集
訓練集:包含問題域中的所有數(shù)據(jù),并在訓練階段用來調(diào)整網(wǎng)絡的權(quán)重
測試集:在訓練的過程中用于測試網(wǎng)絡對訓練集中未出現(xiàn)的數(shù)據(jù)的分類性能,根據(jù)網(wǎng)絡在測試集上的性能情況,網(wǎng)絡的結(jié)構(gòu)可能需要作出調(diào)整,或者增加訓練循環(huán)次數(shù)。
驗證集:驗證集中的數(shù)據(jù)統(tǒng)一應該包含在測試集和訓練集中沒有出現(xiàn)過的數(shù)據(jù),用于在網(wǎng)絡確定之后能夠更好的測試和衡量網(wǎng)絡的性能
Looney等人建議,數(shù)據(jù)集中65%的用于訓練,25%的用于測試,10%用于驗證
2)數(shù)據(jù)預處理
為了加速訓練算法的收斂速度,一般都會采用一些數(shù)據(jù)預處理技術(shù),其中包括:去除噪聲、輸入數(shù)據(jù)降維、刪除無關(guān)數(shù)據(jù)等。
數(shù)據(jù)的平衡化在分類問題中異常重要,一般認為訓練集中的數(shù)據(jù)應該相對于標簽類別近似于平均分布,也就是每一個類別標簽所對應的數(shù)據(jù)集在訓練集中是基本相等的,以避免網(wǎng)絡過于傾向于表現(xiàn)某些分類的特點。
為了平衡數(shù)據(jù)集,應該移除一些過度富余的分類中的數(shù)據(jù),并相應補充一些相對樣例稀少的分類中的數(shù)據(jù)。
還有一個方法就是復制一部分這些樣例稀少分類中的數(shù)據(jù),并在這些數(shù)據(jù)中加入隨機噪聲。
3)數(shù)據(jù)規(guī)則化
將數(shù)據(jù)規(guī)則化到統(tǒng)一的區(qū)間(如[0,1])中具有很重要的優(yōu)點:防止數(shù)據(jù)中存在較大數(shù)值的數(shù)據(jù)造成數(shù)值較小的數(shù)據(jù)對于訓練效果減弱甚至無效化,一個常用的方法是將輸入和輸出數(shù)據(jù)按比例調(diào)整到一個和激活函數(shù)相對應的區(qū)間。
4)網(wǎng)絡權(quán)值初始化
CNN的初始化主要是初始化卷積層和輸出層的卷積核(權(quán)值)和偏置
網(wǎng)絡權(quán)值初始化就是將網(wǎng)絡中的所有連接權(quán)重賦予一個初始值,如果初始權(quán)重向量處在誤差曲面的一個相對平緩的區(qū)域的時候,網(wǎng)絡訓練的收斂速度可能會很緩慢,一般情況下網(wǎng)絡的連接權(quán)重和閾值被初始化在一個具有0均值的相對小的區(qū)間內(nèi)均勻分布。
5)BP算法的學習速率
如果學習速率選取的較大,則會在訓練過程中較大幅度的調(diào)整權(quán)值w,從而加快網(wǎng)絡的訓練速度,但是這和造成網(wǎng)絡在誤差曲面上搜索過程中頻繁抖動,且有可能使得訓練過程不能收斂。
如果學習速率選取的較小,能夠穩(wěn)定的使得網(wǎng)絡逼近于全局最優(yōu)點,但也可能陷入一些局部最優(yōu),并且參數(shù)更新速度較慢。
自適應學習率設定有較好的效果。
6)收斂條件
有幾個條件可以作為停止訓練的判定條件,訓練誤差、誤差梯度、交叉驗證等。一般來說,訓練集的誤差會隨著網(wǎng)絡訓練的進行而逐步降低。
7)訓練方式
訓練樣例可以有兩種基本的方式提供給網(wǎng)絡訓練使用,也可以是兩者的結(jié)合:逐個樣例訓練(EET)、批量樣例訓練(BT)。
在EET中,先將第一個樣例提供給網(wǎng)絡,然后開始應用BP算法訓練網(wǎng)絡,直到訓練誤差降低到一個可以接受的范圍,或者進行了指定步驟的訓練次數(shù)。然后再將第二個樣例提供給網(wǎng)絡訓練。
EET的優(yōu)點是相對于BT只需要很少的存儲空間,并且有更好的隨機搜索能力,防止訓練過程陷入局部最小區(qū)域。
EET的缺點是如果網(wǎng)絡接收到的第一個樣例就是劣質(zhì)(有可能是噪音數(shù)據(jù)或者特征不明顯)的數(shù)據(jù),可能使得網(wǎng)絡訓練過程朝著全局誤差最小化的反方向進行搜索。
相對的,BT方法是在所有訓練樣例都經(jīng)過網(wǎng)絡傳播后才更新一次權(quán)值,因此每一次學習周期就包含了所有的訓練樣例數(shù)據(jù)。
BT方法的缺點也很明顯,需要大量的存儲空間,而且相比EET更容易陷入局部最小區(qū)域。
而隨機訓練(ST)則是相對于EET和BT一種折衷的方法,ST和EET一樣也是一次只接受一個訓練樣例,但只進行一次BP算法并更新權(quán)值,然后接受下一個樣例重復同樣的步驟計算并更新權(quán)值,并且在接受訓練集最后一個樣例后,重新回到第一個樣例進行計算。
ST和EET相比,保留了隨機搜索的能力,同時又避免了訓練樣例中最開始幾個樣例如果出現(xiàn)劣質(zhì)數(shù)據(jù)對訓練過程的過度不良影響。
-
神經(jīng)網(wǎng)絡
+關(guān)注
關(guān)注
42文章
4814瀏覽量
103609 -
算法
+關(guān)注
關(guān)注
23文章
4710瀏覽量
95382 -
卷積
+關(guān)注
關(guān)注
0文章
95瀏覽量
18759
發(fā)布評論請先 登錄

卷積神經(jīng)網(wǎng)絡如何監(jiān)測皮帶堵料情況 #人工智能
BP神經(jīng)網(wǎng)絡與卷積神經(jīng)網(wǎng)絡的比較
BP神經(jīng)網(wǎng)絡與深度學習的關(guān)系
人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構(gòu)方法

評論