圖像卷積原理及運(yùn)算方法 卷積神經(jīng)網(wǎng)絡(luò)有哪些重要的技巧細(xì)節(jié)?
卷積神經(jīng)網(wǎng)絡(luò)有哪些重要的技巧細(xì)節(jié)?除了帶你手把手學(xué)習(xí)深度學(xué)習(xí),李牧神還帶你深入挖掘卷積神經(jīng)網(wǎng)絡(luò)的各種實(shí)用技巧。最近,AWS研究人員研究了一系列訓(xùn)練過程和模型架構(gòu)改進(jìn)方法。他們在多個(gè)神經(jīng)網(wǎng)絡(luò)架構(gòu)和數(shù)據(jù)集
卷積神經(jīng)網(wǎng)絡(luò)有哪些重要的技巧細(xì)節(jié)?
除了帶你手把手學(xué)習(xí)深度學(xué)習(xí),李牧神還帶你深入挖掘卷積神經(jīng)網(wǎng)絡(luò)的各種實(shí)用技巧。最近,AWS研究人員研究了一系列訓(xùn)練過程和模型架構(gòu)改進(jìn)方法。他們在多個(gè)神經(jīng)網(wǎng)絡(luò)架構(gòu)和數(shù)據(jù)集上對它們進(jìn)行了評估,并研究了它們對最終模型準(zhǔn)確性的影響。
自2012年AlexNet顯示出巨大的威力以來,研究人員提出了各種卷積架構(gòu),包括VVG、NiN、Inception、ResNet、DenseNet和NASNet,我們會(huì)發(fā)現(xiàn)模型的精度在穩(wěn)步提高。
但現(xiàn)在這些改進(jìn)不僅僅來自于架構(gòu)的修訂,還來自于訓(xùn)練過程的改進(jìn),包括損失函數(shù)的優(yōu)化、數(shù)據(jù)預(yù)處理方法的細(xì)化和優(yōu)化方法的改進(jìn)。在過去的幾年中,卷積網(wǎng)絡(luò)和圖像分割有了大量的改進(jìn),但大多數(shù)只是在文獻(xiàn)中作為實(shí)現(xiàn)細(xì)節(jié)簡要提及,而其他技能只能在源代碼中找到。
在本文中,李牧和其他研究人員研究了一系列訓(xùn)練過程和方法來改進(jìn)模型結(jié)構(gòu)。這些方法可以提高模型的精度,并且?guī)缀醪辉黾尤魏斡?jì)算復(fù)雜度。他們中的大多數(shù)是次要的技能與技巧,如修改卷積步長或調(diào)整學(xué)習(xí)率策略。一般來說,采用這些技術(shù)會(huì)有很大的不同。因此,研究人員希望在多個(gè)神經(jīng)網(wǎng)絡(luò)架構(gòu)和數(shù)據(jù)集上對它們進(jìn)行評估,并研究它們對最終模型準(zhǔn)確性的影響。
研究員 實(shí)驗(yàn)表明,某些技術(shù)可以顯著提高精度,將它們結(jié)合起來可以進(jìn)一步提高模型的精度。研究人員還比較了基線ResNet,ResNet與各種技術(shù),以及其他相關(guān)的神經(jīng)網(wǎng)絡(luò)。下面的表1顯示了所有的精度比較。這些技術(shù)將ResNet50的Top-1驗(yàn)證準(zhǔn)確率從75.3%提高到79.29%,優(yōu)于其他更新和改進(jìn)的網(wǎng)絡(luò)架構(gòu)。此外,研究人員還表示,這些技術(shù)中的許多可以轉(zhuǎn)移到其他領(lǐng)域和數(shù)據(jù)集,如對象檢測和語義分割。
論文:用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行圖像分類的技巧包
紙張地址:
摘要:圖像分類研究的最新進(jìn)展可歸因于訓(xùn)練過程的調(diào)整,如數(shù)據(jù)增強(qiáng)和優(yōu)化方法的改變。然而,在這些文檔中,大多數(shù)微調(diào)方法要么是簡單的實(shí)現(xiàn)細(xì)節(jié),要么只能在源代碼中看到。在本文中,我們將測試一系列微調(diào)方法,并通過控制變量來評估它們對最終精度的影響。我們將表明,通過結(jié)合不同的微調(diào)方法,我們可以顯著改善各種CNN模型。比如我們會(huì)在ImageNet上訓(xùn)練R。esNet-50的top-1驗(yàn)證準(zhǔn)確率從75.3%提高到79.29。這項(xiàng)研究還表明,圖像分類精度的提高可以在其他應(yīng)用領(lǐng)域?qū)崿F(xiàn)更好的遷移學(xué)習(xí)性能,如對象檢測和語義分割。
2培訓(xùn)流程
目前我們基本都是用小批量的SGD或者它的變種來訓(xùn)練神經(jīng)網(wǎng)絡(luò)。算法1展示了SGD的模板流程(有興趣的讀者可以參考原文)。使用廣泛使用的ResNet實(shí)現(xiàn)作為我們的基線,培訓(xùn)過程主要分為以下六個(gè)步驟:
隨機(jī)采樣一張圖片,解碼成32位原始像素浮點(diǎn)值,每個(gè)像素值的取值范圍為[0,255]。
以[3/4,4/3]為長寬比,以[8%,100%]為比例,隨機(jī)切割矩形區(qū)域,然后縮放成224*224的正方形圖。
以0.5的概率隨機(jī)水平翻轉(zhuǎn)圖像。
系數(shù)從均勻分布[0.6,1.4]中提取,并用于縮放色調(diào)和亮度。
從正態(tài)分布N (0,0.1)中采樣一個(gè)系數(shù),以添加PCA噪聲。
分別減去(123.68,116.779,103.939)和除以(58.393,57.12,57.375)得到歸一化的RGB三個(gè)通道。
經(jīng)過六個(gè)步驟,就可以訓(xùn)練驗(yàn)證了。下面顯示了基線模型的準(zhǔn)確性:
表2:在文獻(xiàn)和我們的基線模型中達(dá)到的驗(yàn)證精度。注意,Inception V3的輸入圖像尺寸是299*299。
3高效培訓(xùn)
隨著GPU等硬件的普及,很多與性能相關(guān)的取舍或最優(yōu)選擇都發(fā)生了變化。在這一章中,我們研究了多種可以利用低精度和大規(guī)模訓(xùn)練的技術(shù),它們都不會(huì)損害模型的精度,甚至有些技術(shù)可以同時(shí)提高精度和訓(xùn)練速度。
3.1大規(guī)模培訓(xùn)
對于凸優(yōu)化問題,隨著批量的增加,收斂速度會(huì)下降。人們已經(jīng)知道神經(jīng)網(wǎng)絡(luò)會(huì)有類似的實(shí)證結(jié)果[25]。換句話說,對于相同的歷元數(shù),大批量訓(xùn)練的模型的驗(yàn)證精度會(huì)低于小批量訓(xùn)練的模型。因此,有許多方法和技術(shù)旨在解決這個(gè)問題:
線性擴(kuò)展學(xué)習(xí)率:較大的批量會(huì)降低梯度的噪聲,可以提高學(xué)習(xí)率加快收斂。
學(xué)習(xí)率預(yù)熱:在預(yù)熱的啟發(fā)式方法中,我們一開始使用較小的學(xué)習(xí)率,當(dāng)訓(xùn)練過程趨于穩(wěn)定后,再切換回初始的學(xué)習(xí)率。
零γ:注意,ResNet塊的最后一層可以是批處理規(guī)范化層(BN)。在零γ啟發(fā)式方法中,我們在所有剩余塊的末尾為BN層初始化γ0。因此,在一些殘差塊只返回輸入值,這意味著網(wǎng)絡(luò)的層數(shù)更少,在初始階段更容易訓(xùn)練。
無偏衰減:無偏衰減啟發(fā)式方法只對卷積層和全連通層應(yīng)用權(quán)重衰減,其他如BN中的γ和β不衰減。
表4:每個(gè)有效的訓(xùn)練啟發(fā)式算法對4:ResNet-50的準(zhǔn)確性影響。
3.2低精度訓(xùn)練
但是,新的硬件可能為較低精度的數(shù)據(jù)類型增強(qiáng)了算術(shù)邏輯單元。雖然具有性能優(yōu)勢,但精度降低的范圍較窄,因此可能會(huì)超出范圍,干擾訓(xùn)練進(jìn)度。
表3:基線(BS 256和FP32)和更高效的硬件設(shè)置(BS 1024和FP16)之間3:ResNet-50的訓(xùn)練時(shí)間和驗(yàn)證精度比較。
4種型號變體
我們將簡要介紹ResNet架構(gòu),尤其是與模型變化調(diào)整相關(guān)的模塊。ResNet網(wǎng)絡(luò)由一個(gè)輸入主干、四個(gè)后續(xù)級和一個(gè)最終輸出層組成,如圖1所示。輸入干線具有7×7卷積,并且有64個(gè)步長為2的輸出通道,其后是步長為2的3 ×3最大池層。輸入柄將輸入寬度和高度減少了4倍,并將其通道大小增加到64。
從階段2開始,每個(gè)階段從下采樣塊開始,后面是幾個(gè)殘差塊。在下采樣塊中,有路徑A和B..路徑A有三個(gè)卷積,卷積核分別是1×1、3×3和1×1。第一個(gè)卷積的步幅為2,以將輸入長度和寬度減半,最后一個(gè)卷積的輸出通道是前兩個(gè)的4倍,稱為瓶頸結(jié)構(gòu)。路徑B使用步長為2的1×1卷積將輸入形狀轉(zhuǎn)換為路徑A的輸出形狀,因此我們可以對兩條路徑的輸出求和,以獲得下采樣模塊的輸出。殘差塊類似于下采樣塊,除了僅使用步長為1的卷積。
我們可以改變每一級的殘差塊個(gè)數(shù),得到不同的ResNet模型,比如ResNet-50和ResNet-152,其中的數(shù)字代表網(wǎng)絡(luò)中卷積層數(shù)。
圖1:1:ResNet-50的架構(gòu)。圖中顯示了卷積層的卷積核大小、輸出通道大小和步幅大小(默認(rèn)值為1),池層也類似。
圖2:三種ResNet變體。ResNet-B修改了ResNet的下采樣模塊。ResNet-C進(jìn)一步修改了輸入主干。在此基礎(chǔ)上,ResNet-D再次修改了降采樣塊。
表5:ResNet-50與三個(gè)模型變量在模型大小(參數(shù)數(shù)量)、FLOPs和ImageNet驗(yàn)證精度(top-1、top-5)方面的比較。比較一下。
5改進(jìn)培訓(xùn)方法
5.1余弦學(xué)習(xí)率衰減
Loshchilov等人[18]提出了余弦退火策略,其簡化版本根據(jù)余弦函數(shù)將學(xué)習(xí)率從初始值降低到零。假設(shè)總批次數(shù)為t(忽略預(yù)熱階段),那么在批次t中,學(xué)習(xí)率η_t計(jì)算如下:
其中η是初始學(xué)習(xí)速率,我們稱這種方案為余弦衰減。
圖3:用預(yù)熱方案可視化學(xué)習(xí)率的變化。上圖:批量為1024的余弦衰減和迭代衰減方案。下圖:兩種方案的前1名驗(yàn)證精度曲線。
5.2標(biāo)簽平滑
標(biāo)簽平滑的想法最初是為了訓(xùn)練Inception-v2而提出的[26]。它將真實(shí)概率的結(jié)構(gòu)改為:
其中ε是小常數(shù),k是標(biāo)簽總數(shù)。
圖4:4:ImageNet上標(biāo)簽平滑效果的可視化。Top:當(dāng)ε增大時(shí),目標(biāo)品類與其他品類的理論差距減小。下圖:最大預(yù)測值與其他類別平均值差距的經(jīng)驗(yàn)分布。顯然,通過標(biāo)簽平滑,配送中心處于理論值,極值較少。
5.3知識(shí)升華
在知識(shí)提煉[10]中,我們使用教師模型來幫助訓(xùn)練當(dāng)前模型(稱為學(xué)生模型)。教師模型通常是精度更高的預(yù)訓(xùn)練模型,所以通過模仿,學(xué)生模型可以在保持模型復(fù)雜度不變的情況下,提高自身的精度。一個(gè)例子是使用ResNet-152作為教師模型來幫助訓(xùn)練ResNet-50。
5.4混合培訓(xùn)
在mixup中,我們一次隨機(jī)采樣兩個(gè)樣本(x_i,y_i)和(x_j,y_j)。然后,我們通過這兩個(gè)樣本的加權(quán)線性插值來構(gòu)造新的樣本:
其中λ∈[0,1]是從β(α,α)分布中提取的隨機(jī)數(shù)。在混合訓(xùn)練中,我們只使用新樣本(x帽,y帽)。
5.5實(shí)驗(yàn)結(jié)果
表ImageNet驗(yàn)證的精度是通過改進(jìn)棧訓(xùn)練方法得到的。第3節(jié)描述了基線模型。
6遷移學(xué)習(xí)
6.1目標(biāo)檢測
表8:在Pascal VOC上評估各種預(yù)訓(xùn)練基本網(wǎng)絡(luò)的fast-RCNN性能。
6.2語義分割
表9:評估ADE20K上各種基本網(wǎng)絡(luò)的FCN性能。
岡薩雷斯的《數(shù)字圖像處理》過時(shí)了嗎?
岡薩雷斯 《數(shù)字圖像處理》過時(shí)了嗎?數(shù)字圖像處理一點(diǎn)都沒有過時(shí)。不僅沒有過時(shí),還以其經(jīng)典的作用成為很多高校的必修課?!稊?shù)字圖像處理》的岡薩雷斯,作為第一本書的數(shù)字圖像處理,易于理解和說明。,概念清晰,通俗易懂,已成為許多高校相關(guān)專業(yè)教學(xué)和科技工作者的首選書籍。許多與數(shù)字圖像處理相關(guān)的書籍都或多或少地借鑒了這本書,而《Gonzal《數(shù)字圖像處理》》對同領(lǐng)域的其他教材影響很大。
這本書于1977年首次出版。它是作者在大四學(xué)生和研究生講義的基礎(chǔ)上編寫的。當(dāng)時(shí)出版的書雖然只有七章,但很受學(xué)生和老師的歡迎。此后,這本書與時(shí)俱進(jìn),分別于1988年、1992年和2002年再版。每次出版時(shí),都不斷修改,增加了許多內(nèi)容。最新的中文譯本于2011年在《數(shù)字圖像處理(第三版)》出版。
一本好的工科書,一定是理論清晰,能應(yīng)用于實(shí)際生產(chǎn)的。岡薩雷斯的《數(shù)字圖像處理》也是如此。這本書由12章組成。除了第一章的介紹,第二章到第十二章分別介紹了數(shù)字圖像基礎(chǔ)、灰度變換與空間濾波、頻域?yàn)V波、圖像恢復(fù)與重建、彩像處理、小波與多分辨率處理、圖像壓縮、形態(tài)學(xué)圖像處理、圖像分割、表示與描述、目標(biāo)識(shí)別。可以說,這本書全面系統(tǒng)地講述了關(guān)于數(shù)碼影像的各方面知識(shí)。
這本書側(cè)重于基礎(chǔ)認(rèn)知還是工程實(shí)踐?應(yīng)該說數(shù)字圖像處理這門學(xué)科是一門理論與實(shí)踐緊密結(jié)合的學(xué)科。一切理論都是以實(shí)際情況為研究對象,其理論脫胎于實(shí)際,作用于實(shí)際生產(chǎn)。而且因?yàn)閿?shù)字圖像處理是借助數(shù)字計(jì)算機(jī)發(fā)展起來的,所以對實(shí)際操作的要求不是很高。不像理論物理領(lǐng)域的研究,大部分理論研究都是推測,建一個(gè)粒子對撞機(jī)做一個(gè)實(shí)驗(yàn)就要幾百億美元。數(shù)字圖像處理可以通過數(shù)字計(jì)算機(jī)方便地應(yīng)用于工程實(shí)踐。所以數(shù)字圖像處理的理論與工程實(shí)踐結(jié)合緊密,相對操作也很簡單,不需要真正區(qū)分理論與工程實(shí)踐。
這本書里的方法在數(shù)字圖像處理的實(shí)際工程應(yīng)用中占多少比重?書中介紹的內(nèi)容都是基于工程實(shí)踐,而不是架空的理論研究。簡而言之,書中介紹的方法和研究的內(nèi)容都是過去工程師使用的方法,研究的內(nèi)容也是實(shí)際生產(chǎn)中遇到的問題。因此它的所有理論都被廣泛應(yīng)用于工程實(shí)踐中。
作為一個(gè)經(jīng)典,岡薩雷斯 《數(shù)字圖像處理》基本上沒有缺點(diǎn)。如果非要挑毛病的話,中譯本《《數(shù)字圖像處理(第三版)》》中一些小細(xì)節(jié)的翻譯可能不盡如人意,但總的來說,還是不錯(cuò)的。
如果在數(shù)字圖像處理領(lǐng)域有更好的書推薦,有什么推薦?如果只是在數(shù)字圖像處理領(lǐng)域,那么這本書就是經(jīng)典。如果你對岡薩雷斯感興趣 《數(shù)字圖像處理》的所有內(nèi)容,所以沒有必要再去讀其他關(guān)于數(shù)字圖像處理的書。然而,現(xiàn)在數(shù)字圖像處理的發(fā)展非常迅速,一些新的方法和理論不斷涌現(xiàn)。比如現(xiàn)在流行的卷積神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)。然而,卷積神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)并不是要取代傳統(tǒng)的數(shù)字圖像處理,它們之間的關(guān)系不是競爭關(guān)系,而是擴(kuò)展了 "戰(zhàn)友 "整個(gè)數(shù)字圖像處理領(lǐng)域中的關(guān)系。應(yīng)該說是相輔相成,合作才能取得更好的效果。