神經網路設計原則

2021-10-05 01:18:00 字數 1511 閱讀 7590

神經網路訓練完,會出現網路訓練不穩定、網路不收斂、梯度消失或**、網路過擬合、不准或準確率低,可考慮以下方面:

資料增強(隨機取樣、資料翻轉,隨機改變資料亮度、飽和度、對比度等)

神經網路結構一般由輸入層、隱層、輸出層構成。輸入層的神經元個數是特徵維度,隱層是提取輸入特徵中隱藏的規律,輸出層的神經元個數是分類類別數。一般,給定訓練樣本後,輸入層和輸出層的神經元個數是已知的,我們只需要考慮的是隱層的個數及隱層神經元個數。如果隱層神經元個數太少,學習效果差,不易找出輸入特徵規律,如果隱層神經元個數太多,網路擬合能力太強,把雜訊資料都學會,導致泛化能力低。

如:resnet網路

如:inception網路

如:一階段目標檢測(yolo、ssd)、二階段目標檢測網路(fast-cnn、faster-cnn)等。

常見的啟用函式,有sigmoid、tanh、relu等函式。

特徵:

能夠把連續實值轉換成0到1之間,即能夠保證每層的輸出值比較穩定。當x非常小,y接近0;x非常大,y接近1。

缺點:

輸出平均值不是0(非0均值),導致梯度不容易收斂,均為正;計算機執行指數運算速度慢;飽和性問題和梯度消失(以平方損失函式為例,在對w和b進行梯度運算時都含有y**值的導數,使得神經元輸出接近1時,梯度趨於0)現象。

特徵:連續實值轉換成-1到1之間,輸出0均值,中心對稱點是0。

缺點:當x非常大或非常小時,y輸出平滑,梯度很小,不利於權值更新。

特徵:

relu=max(0,x)。當x大於0時保持梯度不衰減,緩解梯度消失問題,但仍未解決。

缺點:

當學習率很大,反向傳播後引數可能為負數,導致下一輪正向傳播輸入為負數,relu無法被啟用,就死掉了。

有很多改進版,如leaky relu(在負數範圍,a有個較小的斜率,常值,避免relu死掉)、prelu=max(ax,x)(斜率a可調整)、elu等。

平方損失函式(適合回歸問題)、交叉熵損失函式(適合分類問題)等。

如:調整超參學習率(可通過學習率調參器)、迭代次數、batchsize、優化器等。

可以通過dropout(訓練時暫時修改神經網路,隨機刪除部分隱層結點,計算時無視這些連線)、batch normalization、提前停止、權重正則化(在損失函式中加入相關引數w的限制,效果為了讓w接近0,即網路權重接近0,減小網路複雜度。如 l1正則化–新增sign符號函式影響梯度、l2正則化–防止某些區間導數非常,過分扭曲)、資料增強、bagging整合方法(訓練不同模型共同決策,資料集從原始資料集中重複取樣,資料集大小與原始資料集一致)解決。

關於擬合的備註:

擬合分為:欠擬合(訓練的特徵少,擬合函式無法滿足訓練集,誤差大)、過擬合(訓練的特徵多,擬合函式完美接近訓練集,對新資料**能力不足,泛化能力差)、合適擬合。

可以通過更換啟用函式、resnetblock、batchnormalization,權重截斷、權重剪下,預訓練+微調來實現。

神經網路引數確定原則

網路引數確定原則 網路節點 網路輸入層神經元節點數就是系統的特徵因子 自變數 個數,輸出層神經元節點數就是系統目標個數。隱層節點擊按經驗選取,一般設為輸入層節點數的75 如果輸入層有7個節點,輸出層1個節點,那麼隱含層可暫設為5個節點,即構成乙個7 5 1 bp神經網路模型。在系統訓練時,實際還要對...

神經網路設計 摘要

判定邊界 判定邊界由那些使淨輸入為0的輸入向量確定 n wp b 0,乙個雙輸入感知器網路,如果取權值為 1,1 則有p1 p2 b 0,其中p p1 p2 這是p1,p2平面上的一條直線.該直線和權值向量w 1,1 垂直.感知器學習規則 p42 1.如果t 1,a 0 則w new w old p...

神經網路設計過程

1.背景 輸出 y 中,1.01 代表 0 類鳶尾得分,2.01 代表 1 類鳶尾得分,0.66 代表 2 類鳶尾得分。通過輸出 y 可以看出數值最大 可能性最高 的是 1 類鳶尾,而不是標籤 0 類鳶尾。這是由於 最初的引數 w 和b 是隨機產生的,現在輸出的結 果是蒙的 為了修正這一結果,我們用...