卷積神經(jīng)網(wǎng)絡(CNN) 具有局部互聯(lián)、權值共享、下采樣(池化)和使用多個卷積層的特點。
局部互聯(lián) 是指每個神經(jīng)元只感受局部的圖像區(qū)域,也就是卷積操作。
權值共享 是指當前層所有特征圖共用一個卷積核,每個卷積核提取一種特征,參數(shù)量明顯下降;使用多個卷積核可以提取多種特征。
下采樣 每次對輸入的特征圖錯開一行或一列,能夠壓縮特征圖大小,特征降維,提取主要特征,將語義相似的特征融合,對平移形變不敏感,提高模型泛化能力。
使用多個卷積層 能夠提取更深層次的特征,組合特征實現(xiàn)從低級到高級、局部到整體的特征提取。
卷積層 任務是檢測前一層的局部特征,即用來進行特征提取,用不同的卷積核卷積得到不同的特征,通過多層卷積實現(xiàn)特征的組合,完成從低級到高級、局部與整體的特征提取。例如,圖像先提取邊緣特征,組合成形狀特征,再得到更高級的特征;語音和文本具有相似特征,從聲音到語音,再到音素、音節(jié)、單詞、句子。
下采樣(池化)層 對輸入的特征圖錯開行或列,壓縮特征圖大小,降低參數(shù)量和計算復雜度,也對特征進行了壓縮,提取主要特征,將語義相似的特征融合起來,對微小的平移和形變不敏感。包括平均池化和最大池化和隨機池化,平均池化領域內方差小,更多的保留圖像的背景信息,最大池化領域內均值偏移大,更多的保留圖像的紋理信息,隨機池化(Stochastic Pooling)則介于兩者之間。
全連接層 將二維空間轉化成一維向量,將全連接層的輸出送入分類器或回歸器來做分類和回歸。
在卷積神經(jīng)網(wǎng)絡中,前面的卷積層的參數(shù)少但計算量大,后面的全連接層則相反,因此加速優(yōu)化重心放在前面的卷積層,參數(shù)調優(yōu)的重心放在后面的全連接層。
全卷積網(wǎng)絡 將一般的卷積神經(jīng)網(wǎng)絡的全連接層替換成1x1的卷積層,使得網(wǎng)絡可以接受任意大小的輸入圖像,網(wǎng)絡輸出的是一張?zhí)卣鲌D,特征圖上的每個點對應其輸入圖像上的感受野區(qū)域。
多個3x3卷積比7x7卷積的優(yōu)點在于,參數(shù)量減少并且非線性表達能力增強;1x1卷積的作用在于,可以用于特征降維與升維,各通道特征融合,以及全卷積網(wǎng)絡(支持任意輸入圖像大?。?/p>
深度神經(jīng)網(wǎng)絡具有從低級到高級、局部到整體的特征表達和學習能力,相比于淺層網(wǎng)絡能更簡潔緊湊的提取特征,但訓練時容易發(fā)生過擬合、梯度彌散和局部極值的問題。
過擬合(Overfitting) 一般發(fā)生在數(shù)據(jù)量較少而模型參數(shù)較多時,其表現(xiàn)是模型在訓練時變現(xiàn)的很好(error和loss很低)、但在測試時較差(error和loss較大),使得模型的泛化能力不行。歸根結底是數(shù)據(jù)量不夠多不夠好,最好的辦法是通過增加數(shù)據(jù)量(更多更全的數(shù)據(jù)、數(shù)據(jù)增廣、數(shù)據(jù)清洗),還可以通過使用dropout、BN、正則化等來防止過擬合,訓練時的trick是適當增加訓練時的batchsize、適當降低學習率。
梯度彌散(Gradient Vanish) 是指在靠近輸出層的隱層訓練的好,但在靠近輸入層的隱層幾乎無法訓練,是多層使用sigmoid激活函數(shù)所致(sigmoid函數(shù)在接近1的部分梯度下降的太快),用ReLu激活函數(shù)可以緩解這個問題。
局部極值 是指在訓練深度網(wǎng)絡時求解一個高度非凸的優(yōu)化問題如最小化訓練誤差loss可能會得到壞的局部極值而非全局極值。采用梯度下降法也可能存在這種問題。
Dropout 是在訓練時隨機拋棄隱層中的部分神經(jīng)元,在某次訓練時不更新權值,防止過擬合(過擬合發(fā)生在模型參數(shù)遠大于數(shù)據(jù)量時,而dropout變相的減少了模型參數(shù)),提高泛化能力,在全連接層使用。感覺是模仿了生物神經(jīng)系統(tǒng)。Dropout使得隨機拋棄的神經(jīng)元既不參加前向計算,也不需要反向傳播。
歸一化(Normalization) 用于加速收斂,提高模型精度,包括LRN(Local Response Normalization)、BN(Batch Normalization)等,有助于模型泛化。
BN(Batch Normalization) 希望激活函數(shù)的輸出盡量滿足高斯分布,可以在全連接層后、激活層前加上BN,本質目的是促進模型收斂,降低初始值對模型訓練的影響,提高模型精度和泛化能力。使用了BN,就不需要使用LRN(AlexNet中用到的局部響應歸一化),也不需要過多的考慮權重初始值、Dropout和權重懲罰項的參數(shù)設置問題。
正則化(Regularization)包括L1、L2范數(shù)正則化,加入正則化懲罰項,能夠防止過擬合,提高模型泛化能力。
梯度下降 包括批量梯度下降、隨機梯度下降。可以比作下山問題,下山方向永遠是梯度下降最快的方向,學習率即下山的步長。
批量梯度下降 每次迭代使用全部訓練樣本來計算損失函數(shù)和梯度,來更新模型參數(shù)。每次迭代都朝著正確的方向進行,保證收斂于極值點(也可能是局部極值點。.),但迭代太慢,計算冗余,消耗大量內存。
隨機梯度下降 實際上是小批量梯度下降,每次迭代隨機使用小批量例如k個訓練樣本計算損失函數(shù)和梯度,來更新模型參數(shù)。每次迭代不一定會朝著正確方向進行,可能會有波動,但也會收斂于極值點,即保證收斂性又保證收斂速度。
激活函數(shù) 主要有ReLu激活函數(shù)、Sigmoid激活函數(shù)、Tanh激活函數(shù)。它們都是非線性激活函數(shù)(ReLu是規(guī)整化線性函數(shù)),比線性激活函數(shù)具有更強的特征表達能力。Sigmoid函數(shù)的x越大,導數(shù)越接近0,反向傳播到遠離輸出層時容易出現(xiàn)梯度彌散,現(xiàn)在一般用ReLu用作激活函數(shù)來防止梯度彌散。
數(shù)據(jù)預處理 數(shù)據(jù)歸一化(去均值歸一化)、PCA主成分分析、ZCA白化。數(shù)據(jù)歸一化的好處在于使得訓練數(shù)據(jù)和測試數(shù)據(jù)具有一致的數(shù)據(jù)分布,增強模型的泛化能力。
PCA主分量分析 用于數(shù)據(jù)降維和降低特征間相關度,需要特征均值接近0且各特征的方差接近,因此需要先做去均值,一般情況下都不需要做方差歸一化。
ZCA白化 用于降低特征冗余度(不降維),需要特征間相關度較低且特征具有相同的方差,因此ZCA白化一般是在PCA白化的基礎上做的,可以看做是各個特征的幅度歸一化。
圖像處理與數(shù)據(jù)增廣 顏色轉換、對比度拉伸、直方圖均衡、局部直方圖均衡、加隨機噪聲、平移、縮放、旋轉、鏡像、投影變換、隨機裁剪等。
1.通過數(shù)據(jù)
更多的數(shù)據(jù)樣本
數(shù)據(jù)的代表性、全面性
數(shù)據(jù)預處理
圖像處理與數(shù)據(jù)增廣
數(shù)據(jù)清洗
難例
2.通過算法
選擇合適的網(wǎng)絡模型(包括網(wǎng)絡結構和網(wǎng)絡參數(shù))
在已有模型上進行fine-tune
dropout、normalization、正則化
合理調節(jié)訓練參數(shù)(學習率、batchsize等)
根據(jù)具體應用場景還可能需要修改損失函數(shù)
-
卷積
+關注
關注
0文章
95瀏覽量
18760 -
深度學習
+關注
關注
73文章
5561瀏覽量
122797
發(fā)布評論請先 登錄
BP神經(jīng)網(wǎng)絡與深度學習的關系
了解虛擬電廠的基本概念

自然語言處理與機器學習的關系 自然語言處理的基本概念及步驟
NPU在深度學習中的應用
Linux應用編程的基本概念
AI大模型與深度學習的關系
X電容和Y電容的基本概念
集電極開路的基本概念與原理

DDR4的基本概念和特性
伺服系統(tǒng)基本概念和與變頻的關系
socket的基本概念和原理
AI入門之深度學習:基本概念篇

評論