版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
總結(jié)深度學(xué)習(xí)技巧第1篇總結(jié)深度學(xué)習(xí)技巧第1篇我們知道模型精度隨深度而增加,但速度又如何呢?更多的層意味著更多的參數(shù),更多的參數(shù)意味著更多的計算,更多的內(nèi)存消耗和更慢的速度。理想情況下,我們希望在提高速度的同時保持高精度。我們可以通過剪枝來做到這一點。
深度神經(jīng)網(wǎng)絡(luò)剪枝策略
這個想法是,網(wǎng)絡(luò)中的許多參數(shù)是多余的,對輸出沒有太大貢獻。如果可以根據(jù)貢獻值對網(wǎng)絡(luò)中的神經(jīng)元進行排名,那么就可以從網(wǎng)絡(luò)中移除低排名的神經(jīng)元,從而形成更小更快的網(wǎng)絡(luò)。可以根據(jù)神經(jīng)元權(quán)重的L1/L2均值(平均激活)、一些驗證集上神經(jīng)元不為零的次數(shù)以及其他方法來進行排序。獲得更快/更小的網(wǎng)絡(luò)對于在移動設(shè)備上運行深度學(xué)習(xí)網(wǎng)絡(luò)非常重要。
修剪網(wǎng)絡(luò)的最基本的方法是簡單地放棄某些卷積濾波器。最近文章表明,這樣做是相當成功的。這項工作中的神經(jīng)元排名相當簡單:每個濾波器的權(quán)重按照L1規(guī)范排名。在每個修剪迭代中,對所有的過濾器進行排序,在所有層中修剪m個排名最低的過濾器,重新訓(xùn)練和重復(fù)!
總結(jié)深度學(xué)習(xí)技巧第2篇我們現(xiàn)在說過幾次:更多的數(shù)據(jù)=更好的表現(xiàn)。除了遷移學(xué)習(xí)之外,另一種快速而簡單的方法來提高模型的性能,即數(shù)據(jù)增強。數(shù)據(jù)增強涉及通過在使用原始類別標簽的同時通過改變數(shù)據(jù)集中的一些原始圖像來生成合成訓(xùn)練示例。例如,圖像數(shù)據(jù)增強的常見方式包括:·水平和垂直旋轉(zhuǎn)或翻轉(zhuǎn)圖像·改變圖像的亮度和顏色·隨機模糊圖像·隨機從圖像裁剪補丁基本上,你可以進行任何改變,改變圖像的外觀,但不是整體的內(nèi)容,即你可以制作一個藍色的狗的照片,但你仍然應(yīng)該能夠清楚地看到,照片上是一個狗。
數(shù)據(jù)裂變!
總結(jié)深度學(xué)習(xí)技巧第3篇多年來,已經(jīng)開發(fā)了許多梯度下降優(yōu)化算法,他們各有其優(yōu)缺點。一些最流行的方法如下:
·StochasticGradientDescent(SGD)withmomentum
·Adam
·RMSprop
·Adadelta
RMSprop,Adadelta和Adam被認為是自適應(yīng)優(yōu)化算法,因為它們會自動更新學(xué)習(xí)率。使用SGD時,您必須手動選擇學(xué)習(xí)率和動量參數(shù),通常會隨著時間的推移而降低學(xué)習(xí)率。
在實踐中,自適應(yīng)優(yōu)化器傾向于比SGD更快地收斂,然而,他們的最終表現(xiàn)通常稍差。SGD通常會達到更好的minimum,從而獲得更好的最終準確性。但這可能需要比某些優(yōu)化程序長得多的時間。它的性能也更依賴于強大的初始化和學(xué)習(xí)率衰減時間表,這在實踐中可能非常困難。
因此,如果你需要一個優(yōu)化器來快速得到結(jié)果,或者測試一個新的技術(shù)。我發(fā)現(xiàn)Adam
很實用,因為它對學(xué)習(xí)率并不是很敏感。如果您想要獲得絕對最佳的表現(xiàn),請使用SGD+Momentum,并調(diào)整學(xué)習(xí)率,衰減和動量值來使性能最優(yōu)化。
總結(jié)深度學(xué)習(xí)技巧第4篇正如我們在第一個提示中所看到的,深層網(wǎng)絡(luò)需要大量的數(shù)據(jù)。不幸的是,對于許多新的應(yīng)用程序來說,這些數(shù)據(jù)可能很難并且花費很高。如果我們希望我們的模型表現(xiàn)良好,我們可能需要數(shù)十或數(shù)十萬個新的訓(xùn)練樣例進行訓(xùn)練。如果數(shù)據(jù)集不易獲取,則必須全部收集并手動標記。這就是遷移學(xué)習(xí)的起點。通過遷移學(xué)習(xí),我們不需要太多的數(shù)據(jù)!這個想法是從一個以前在數(shù)百萬圖像上訓(xùn)練過的網(wǎng)絡(luò)開始的,比如在ImageNet上預(yù)訓(xùn)練的ResNet。然后,我們將通過僅重新訓(xùn)練最后幾個層并使其他層獨立來微調(diào)ResNet模型。那樣的話,我們正在將ResNet從數(shù)百萬圖像中學(xué)到的信息(圖像特征)進行微調(diào),以便我們可以將它應(yīng)用于不同的任務(wù)。這是可能的,因為跨域的圖像的特征信息通常非常相似,但是這些特征的分析可以根據(jù)應(yīng)用而不同。
一個基本的遷移學(xué)習(xí)通道
總結(jié)深度學(xué)習(xí)技巧第5篇“欠擬合”常常在模型學(xué)習(xí)能力較弱,而數(shù)據(jù)復(fù)雜度較高的情況出現(xiàn),此時模型由于學(xué)習(xí)能力不足,無法學(xué)習(xí)到數(shù)據(jù)集中的“一般規(guī)律”,因而導(dǎo)致泛化能力弱。與之相反,“過擬合”常常出現(xiàn)在模型學(xué)習(xí)
能力過強的情況,此時的模型學(xué)習(xí)能力太強,以至于將訓(xùn)練集單個樣本自身的特點都能捕捉到,并將其認為是“一般規(guī)律”,同樣這種情況也會導(dǎo)致模型泛化能力下降。過擬合與欠擬合的區(qū)別在于,欠擬合在訓(xùn)練集和測試集上的性能都較差,而過擬合往往能完美學(xué)習(xí)訓(xùn)練集數(shù)據(jù)的性質(zhì),而在測試集上的性能較差。
下圖(a)與圖(b)分別展示了對二維數(shù)據(jù)進行擬合時過擬合與欠擬合的情況。其中藍色虛線代表數(shù)據(jù)的真實分布,橙色圓點為訓(xùn)練數(shù)據(jù),黑色實線代表模型的擬合結(jié)果。圖(a)使用簡單的線性模型擬合,由于模型過于簡單,沒有能力捕捉模型的真實分布,產(chǎn)生了欠擬合。圖(b)使用了高次多項式模型進行擬合,由于模型過于復(fù)雜,因此對每個測試數(shù)據(jù)都能精確預(yù)測,但模型擬合的結(jié)果沒有抓住數(shù)據(jù)分布的本質(zhì)特征,出現(xiàn)了過擬合。
總結(jié)深度學(xué)習(xí)技巧第6篇前面已經(jīng)說過:更多的數(shù)據(jù)=更好的表現(xiàn)。除了遷移學(xué)習(xí)之外,另一種快速而簡單提高模型的性能的方法是數(shù)據(jù)增強。數(shù)據(jù)增強是使用原始類別標簽的同時,改變數(shù)據(jù)集的原始圖像以合成一些新的訓(xùn)練示例。例如,用于圖像數(shù)據(jù)增強的常見方式包括:
·水平和/或垂直旋轉(zhuǎn)翻轉(zhuǎn)圖像
·改變圖像的亮度和顏色
·隨機模糊圖像
·隨機從圖像裁剪塊
基本上,你可以進行任何改變,改變圖像的外觀但不改變整體內(nèi)容。
10.通過集成提升模型!
在機器學(xué)習(xí)中,集成訓(xùn)練多個模型,然后將它們組合在一起以獲得更高的性能。這個想法是在相同的數(shù)據(jù)集上對同一任務(wù)訓(xùn)練多個深度網(wǎng)絡(luò)模型。然后,模型的結(jié)果可以通過投票進行組合,即具有最高票數(shù)的類勝出。
為了確保所有模型不同,可以使用隨機權(quán)重初始化和隨機數(shù)據(jù)增強。眾所周知,由于使用了多個模型,因此集成通常比單個模型更精確,從而從不同角度完成任務(wù)。在實際應(yīng)用中,尤其是競賽中,幾乎所有頂級模型都使用集合方式。
集成模型
總結(jié)深度學(xué)習(xí)技巧第7篇了解模型的外觀通常是很重要的。如果使用的是Keras工具,搭建出來的模型會很抽象,并且不允許深入分析模型的各個部分。幸運的是,下面的代碼可以直接用Python直觀地看到構(gòu)建的模型(代碼太長,見原文):
以下代碼將繪制模型的圖形并將其保存為png文件:
plot有兩個參數(shù)可供選擇:
以上即為個人的全部建模經(jīng)驗,讀者如果有不同意見或有其它優(yōu)方法的話可以留言探討。
以上為譯文,由阿里云云棲社區(qū)組織翻譯。
譯文鏈接文章原標題《DeepLearningTipsandTricks》
譯者:海棠,審校:Uncle_LLD。文章為簡譯,更為詳細的內(nèi)容,請查看原文。
更多技術(shù)干貨敬請關(guān)注云棲社區(qū)知乎機構(gòu)號:阿里云云棲社區(qū)-知乎
總結(jié)深度學(xué)習(xí)技巧第8篇這不是什么大秘密,深度學(xué)習(xí)機需要大量的“燃料”,那“燃料”就是數(shù)據(jù)。擁有的標簽數(shù)據(jù)越多,模型的表現(xiàn)就越好。更多數(shù)據(jù)產(chǎn)生能更好性能的想法,已經(jīng)由谷歌的大規(guī)模數(shù)據(jù)集(有3億圖像)證明!為了感受數(shù)據(jù)帶給深度學(xué)習(xí)模型的性能提升,在部署DeepLearning模型時,你應(yīng)該不斷地為其提供更多的數(shù)據(jù)和微調(diào)以繼續(xù)提高其性能。Feedthebeast:如果你想提高你的模型的性能,就要提供更多的數(shù)據(jù)!
上圖顯示數(shù)據(jù)量的增加會得到更好的性能
總結(jié)深度學(xué)習(xí)技巧第9篇在機器學(xué)習(xí)中,集合訓(xùn)練多個模型,然后將它們組合在一起以獲得更高的性能。因此,這個想法是在相同的數(shù)據(jù)集上訓(xùn)練同一個任務(wù)上的多個深度網(wǎng)絡(luò)模型。模型的結(jié)果然后可以通過投票方案來進行組合,即具有最高票數(shù)的勝出。為了確保所有模型不同,可以使用隨機權(quán)重初始化和隨機數(shù)據(jù)增強。眾所周知,由于使用了多個模型,因此集合通常比單個模型精確得多,因此從不同角度接近任務(wù)。在現(xiàn)實世界的應(yīng)用中,尤其是挑戰(zhàn)或競爭中,幾乎所有頂級模型都使用合奏。
合奏模型
總結(jié)深度學(xué)習(xí)技巧第10篇正如我們所看到的,深層網(wǎng)絡(luò)需要大量的數(shù)據(jù)。遺憾的是,對于許多新的應(yīng)用程序來說,這些數(shù)據(jù)可能很難得到并且開銷很大。如果我們希望模型表現(xiàn)良好,可能需要數(shù)萬或數(shù)十萬個新的訓(xùn)練樣例來進行訓(xùn)練。如果數(shù)據(jù)集不易獲取,則必須全部手動收集并標記。
這就是遷移學(xué)習(xí)的起點。通過遷移學(xué)習(xí),我們不需要太多的數(shù)據(jù)!這個想法是從一個在數(shù)百萬圖像上訓(xùn)練過的網(wǎng)絡(luò)開始的,比如在ImageNet上預(yù)訓(xùn)練的ResNet。然后,我們將“重新調(diào)整ResNet模型,只重新訓(xùn)練最后幾層。
我們將ResNet從數(shù)百萬圖像中學(xué)到的信息(圖像特征)進行微調(diào),以便將其應(yīng)用于不同的任務(wù)。因為跨域的圖像的特征信息經(jīng)常是非常相似的所以這個方法是可行的,但是這些特征的分析根據(jù)應(yīng)用而不同。
一個基本的遷移學(xué)習(xí)示例
總結(jié)深度學(xué)習(xí)技巧第11篇多年來,已經(jīng)開發(fā)了許多梯度下降優(yōu)化算法,各有其優(yōu)缺點。一些最流行的包括:·隨機梯度下降(SGD)+動量方法·Adam·RMSprop·AdadeltaRMSprop,Adadelta和Adam被認為是自適應(yīng)優(yōu)化算法,因為它們會自動更新學(xué)習(xí)速率。使用SGD時,您必須手動選擇學(xué)習(xí)率和動量參數(shù),通常會隨著時間的推移而降低學(xué)習(xí)率。在實踐中,自適應(yīng)優(yōu)化器傾向于比SGD更快地收斂,然而,他們的最終表現(xiàn)通常稍差。SGD通常會達到更好的最小值,從而獲得更好的最終準確性,但這可能需要比某些優(yōu)化程序長得多的時間。它也更依賴于強大的初始化和學(xué)習(xí)速率衰減時間表,這在實踐中可能非常困難。因此,如果你需要一些快速的結(jié)果,或者只是想測試一個新的技術(shù),選擇自適應(yīng)優(yōu)化器。我發(fā)現(xiàn)Adam很容易使用,因為它對你選擇完美的學(xué)習(xí)率并不是很敏感。如果您想獲得絕對最佳的最終表現(xiàn),請使用SGD+Momentum,并使用學(xué)習(xí)率,衰減和動量值來最大化表現(xiàn)。兩全其美的方法有木有!它最近的研究顯示,你可以做到兩全其美:高速訓(xùn)練頂尖的性能通過切換從Adam到SGD!這個想法是,訓(xùn)練的早期階段實際上是SGD對參數(shù)調(diào)整和初始化非常敏感的時候。因此,我們可以通過使用Adam來啟動我們的訓(xùn)練,這將使您節(jié)省相當長的時間,而不必擔心初始化和參數(shù)調(diào)整。那么,一旦Adam運轉(zhuǎn)起來,我們可以切換到SGD+動量優(yōu)化,以達到最佳性能!
AdamvsSGD表現(xiàn)。由于魯棒性和自適應(yīng)學(xué)習(xí)速度,Adam在一開始表現(xiàn)更好,而SGD最終達到更好的全局最小值。
總結(jié)深度學(xué)習(xí)技巧第12篇在很多情況下,都要處理不平衡的數(shù)據(jù),特別是實際應(yīng)用程序中。一個簡單而實際的例子如下:訓(xùn)練您的深度網(wǎng)絡(luò)以預(yù)測視頻流中是否有人持有致命武器。但是在你的訓(xùn)練數(shù)據(jù)中,你只有50個拿著武器的人的視頻和1000個沒有武器的人的視頻!如果你只是用這些數(shù)據(jù)來訓(xùn)練你的網(wǎng)絡(luò),那么你的模型肯定會非常偏向于預(yù)測沒有人有武器!
你可以做用以下的方法來解決它:
·在損失函數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年互聯(lián)網(wǎng)金融服務(wù)質(zhì)押反擔保合同3篇
- 2024中小學(xué)學(xué)生安全保險及意外傷害處理合同3篇
- 2024年度貸款抵押房屋買賣合同糾紛處理指南3篇
- 2024年度留學(xué)咨詢中介買賣合同3篇
- 2024年度高科技專利權(quán)交叉許可使用合同范本正規(guī)范本3篇
- 2024年度消防設(shè)備質(zhì)量檢測與保證服務(wù)協(xié)議3篇
- 2024年度家具招投標買賣合同標準范本3篇
- 新疆師范大學(xué)《數(shù)據(jù)庫原理課程設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 乳房整形病因介紹
- 小學(xué)教育跨國并購失敗案例分析
- 煤炭物流園區(qū)總體規(guī)劃(2016-2030)參考范本
- 一級部門職責(zé)及組織架構(gòu)-總裁辦教學(xué)
- 精品新技術(shù)、新產(chǎn)品、新工藝、新材料的應(yīng)用
- 豎井涌水量方程判定方法
- T∕ACSC 01-2022 輔助生殖醫(yī)學(xué)中心建設(shè)標準(高清最新版)
- 6.2Kendall 相關(guān)性檢驗
- 國家開放大學(xué)《理工英語1》邊學(xué)邊練參考答案
- 國家開放大學(xué)電大??啤豆芾頃嫛菲谀┰囶}及答案
- 內(nèi)蒙古師范大學(xué)論文封面
- (整理)《運籌學(xué)》期末考試試題與參考答案
- (完整版)《金匱要略》方劑總匯(完整版)
評論
0/150
提交評論