看完這個,貌似知道了一些深層網絡訓練問題:體重、腰粗、難推倒

深度學習是很強大,幾乎可以通過足夠的數據訓練出各種各樣復雜函數。但缺點是,難以訓練出滿意的結果。

與許多游戲中的強力角色一樣,雖然成長值高,練級卻困難。花好半天,練個半死,才見經驗條緩緩爬到頭。然而,此時電腦突然一黑,罷工了,又忘了存檔。在怒砸鍵盤,對天大喊三聲 “搞Billy!”,悔恨的淚水流了一嘴后,你放棄作為一名合格玩家的尊嚴,默默掏出了修改器。

這種設定,是游戲制作者為了游戲平衡性而設置的,給你一個強大的角色,但同時也讓他難于成長。于是,我估計我們這個世界的游戲制作者也是這樣想的。所謂天將降大任于斯人也,先多給你些磨煉,現在是天將降大任與斯網了。

于是這篇便稍稍提提深度學習訓練的問題,最后再小結一下。

深度學習的問題是訓練起來比較難。這里的難,主要可以從兩方面來說。

一個是優化起來難,也就是說難找到比較好的解,獲得滿意的訓練好的神經網絡,這種問題叫做欠擬合 (Underfitting); 還有一個是由于深層網絡結構復雜,對當前數據學習過好,但當出現新的沒見過的數據時,表現卻很差,稱作過擬合(Overfitting)

說如何解決深度學習中這兩方面問題前,便于理解,先來提提什么是欠擬合和過擬合吧。

欠擬合 (學不夠) 與過擬合 (學過頭)

欠擬合和過擬合,以及它們涉及的Variance和Bias,可以說是機器學習訓練中最重要的概念了。

因為所有機器學習工程師訓練模型的最終目的就是,不要讓模型欠擬合 (能力過弱),也不要讓它過擬合 (能力過強),而要讓模型剛剛好。所以說機器學習訓練中也得遵循中庸之道,缺不好,過也不好,剛剛好最好。

打個比方的話,小明要考試了,他有一套來自無數勇者前輩們,冒著生命危險從考場帶出的往年考題集。之后出現兩種情況。

第一種情況,小明這家伙非常不爭氣,守著一座金山卻不當一回事。考試前幾天,還天天窩在寢室和一群小伙伴打游戲,早就忘了還有考試這事。等回過神,考題集也沒怎么看。于是,結果可想而知,考的一塌糊涂。這個可以叫做欠擬合吧。

另外一種情況,平行世界中小明是一位非常勤奮的同學,但腦瓜比較笨,不怎么轉得過彎來。拿了考題集,從開學起就每天做一遍,等到考試前,已經可以倒寫如流。你翻開一頁,他可以把答案轉個一百八十度寫出來,還工工整整,像剛從打印機打出來。

但到了考試那天,題目一出來,傻眼了。居然換了出卷老師,考的題型和之前不一樣,亦或是題目改了些條件,小明不會了。于是小明做完幾道基礎題,就憤憤然離開了考場。這個算是叫做過擬合吧。

這里面,把小明當做是我們的神經網絡。那么,來自前輩的考題集就是訓練數據集了。最后,考試題目就是測試數據集,來測試我們的神經網絡性能。

小明在考題集上做練習,可以看做是神經網絡在訓練數據集上進行訓練。

于是類比而來,給神經網絡一個訓練數據集,如果連這個數據集都學不好的話,那就更別提那些測試數據、新數據了,這就欠擬合了;而如果把這個訓練數據集學得太好,記得分毫不差,以至于當出現新的數據時,都反應不過來,那就過擬合了。

深度學習中的欠擬合

在當前各種充足的計算硬件條件下,深度學習的欠擬合問題,往往并不是訓練時間不夠導致,可能更主要的是一些內部問題比如梯度消失問題,或是飽和單元阻止梯度的傳播導致。

在之前訓練一篇有說到,反向傳播主要傳播的是梯度,而梯度是用來更新神經網絡,讓神經網絡變得更符合我們期望的。而這上述兩個問題,一個是梯度消失了,而另一個是梯度被飽和單元擋住,傳播不過去。也就是說,兩種情況網絡都無法獲得想要的梯度來更新自己,那么自然而然也就會導致學習不足,導致欠擬合。

其實欠擬合的解決方法比較簡單,無非就是訓練不夠嘛。

那就用更好的訓練優化方法,來解決上面提到的兩個問題,比如說梯度消失問題的話,可以用比如殘差網絡 (Residual Network) 或是 定時反向傳播 (BPTT) 算法等等更好的算法、框架。

再如神經單元飽和,主要是因為sigmoid或tanh這兩個激活函數特性導致的,可以換成ReLu激活函數,或是利用適當的正規化 (Normalization)避免飽和情況的發生。

除了更好的訓練優化方法,還可以加上GPU這樣的大殺器,加速訓練,在短時間內對網絡進行更多訓練。

深度學習中的過擬合

而深度學習的過擬合問題,因為深層網絡結構復雜,可以模擬出來的函數非常復雜,容易對當前數據訓練過度。我們需要提高我們模型的泛化性。

怎么解決呢?理論上能提高泛化性的技巧都可以,這里提兩個。

第一個方法,使用預訓練 (Pre-training) 網絡。還記得之前提到,人腦的視覺系統可以提取出各種視覺低級特征、中級特征、還有高級特征嗎。那么我們何不利用,在大量圖片上已學習到具有普遍性特征的網絡,來進行當前任務的學習。

于是就可以用之前在很大的數據集上面,比如說有名的ImageNet,訓練過的網絡。然后直接把我們當前的網絡,底層捕捉特征的部分,換成已經訓練過的網絡,之后再進行訓練。

拿小明考試的例子來打比方的話,既然光看考題不行,那該怎么辦。我們首先想到的當然會是,為什么不看書呢。于是,道理也是一樣。假如小明在做考題前,有把教科書還有老師發的資料都好好看了一遍,心里有個底,那么就可以把此時的小明當做預訓練過的網絡。之后,小明再練習完往年考題集的話,即使在考試中出現了往年考題以外的題,他也一定程度上能從容應對了。

第二個方法,就是用隨機漏失 (Dropout) 技巧,指的是在網路某些層內,傳遞參數時,隨機丟失一些參數來訓練。這樣訓練出來的好處是,網絡不會偷懶只看重幾個重要的特征而忽視影響較小的特征。重要特征的丟失,逼得網絡不得不想辦法利用其他次要特征。網絡就會有很強的穩健性,遇到新的沒見過的數據,也能夠很好處理。

如果再拿小明考試來打比較的話,既然真考試的時候,有些題目會變參數變條件。那何不自己在練習題集的時候,先改改條件,變變參數呢。這樣到了考試的時候,也能隨機應變。

關于訓練的補充

當然,這里說到的這幾個技巧,也只是很多技巧中的一些。現在,對這個方面的研究,深度學習社群也都還在如火如荼地進行著,說不定之后會有更好更有效的方法呢。

有某位中二大牛把機器學習訓練比作修真煉丹,需要謹慎選擇各種各樣的條件,材料、時間、火候... 稍有不慎就是一爐廢丹。

但我更樂意比作魔法師吧。里面一大堆有著各種各樣名字的技巧,像咒語一樣,看你怎么組合使用它們取得最好效果。

這些小技巧包括有,正則化 (Regularization)、正規化 (Normalization)、初始化 (Initialization)、模型選擇 (包括網格搜索和隨機搜索來選各種參數)、什么時候停止訓練 (停止法 Early Stopping)、 動量 (Momentum)、各種優化器(Adagrad, RMSProp, Adam)等等等等。

雖然這么多,但以上方法的目的,無非兩個,第一,使得訓練出來的網絡處理新數據時有更好的準確率,高泛化性(很好地處理新數據),解決過擬合;第二,讓訓練速度更加快,解決欠擬合。

小結

到這里,差不多關于神經網絡還有深度學習的一些大體概念也就講完了。

可能看到這里,大部分人還是云里霧里,本來我自己也就是小菜鳥一只。這里寫的大多也是拾各位大牛的牙慧,加上一些自己理解。

雖然是這樣說,但是至少至少還是希望大家對這個話題有了些熟悉感,某天遇到,也會會心一笑,這個我知道,貌似在某個號主天天更新亂七八糟東西的公眾號上看到過。

吳教授說了,深度學習之于現在的我們,就相當于二十世紀初電力之于當時的人們。誕生之后,對各行各業產生巨大沖擊,帶來巨大變革

那之后就來看看現在有哪些行業正在受到沖擊,進行變革吧。還有在這些變革中,哪些公司或者人在領導著這些。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,578評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,701評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,691評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,974評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,694評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,026評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,015評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,193評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,719評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,442評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,668評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,151評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,846評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,255評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,592評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,394評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容

  • 有時覺得你像小孩子一樣任性,有時又覺得你很man,讓人迷戀。偷偷的看著你,還是會心動。晚安,攀攀。
    榛子那個女孩閱讀 157評論 0 0
  • 配置Hibernate: 1、導入Hibernatejar包,MySQL的JDBC的jar包,Junit-4的ja...
    年輕人Moriarty閱讀 221評論 0 0
  • 前天孩兒爸上班去了,阿姨又還沒有來,我一個人坐在客廳的沙發上給二寶喂奶,突然感覺很是寂寥,于是為了...
    葉之萱揚閱讀 780評論 2 1
  • 問題描述 ANSYS結構分析的計算完成后,往往需要繪制內力圖 實現步驟 繪制斜拉橋模型 選擇主梁單元,繪制主梁彎矩...
    馬騁閱讀 1,397評論 0 3