<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 智能計算 > 設計應用 > 【E課堂】一文讀懂深度學(xué)習

【E課堂】一文讀懂深度學(xué)習

作者: 時(shí)間:2017-09-25 來(lái)源:網(wǎng)絡(luò ) 收藏

  近日,在領(lǐng)域出現了一場(chǎng)熱烈的爭論。這一切都要從Jeff Leek在Simply Stats上發(fā)表了一篇題為 《數據量不夠大,別玩》 (Don't use deep learning your data isn't that big)的博文開(kāi)始。作者Jeff Leek在這篇博文中指出,當樣本數據集很小時(shí)(這種情況在生物信息領(lǐng)域很常見(jiàn)),即使有一些層和隱藏單元,具有較少參數的線(xiàn)性模型的表現是優(yōu)于深度網(wǎng)絡(luò )的。為了證明自己的論點(diǎn),Leek舉了一個(gè)基于MNIST數據庫進(jìn)行圖像識別的例子,分辨0或者1。他還表示,當在一個(gè)使用僅僅80個(gè)樣本的MNIST數據集中進(jìn)行0和1的分類(lèi)時(shí),一個(gè)簡(jiǎn)單的線(xiàn)性預測器(邏輯回歸)要比深度神經(jīng)網(wǎng)絡(luò )的預測準確度更高。

本文引用地址:http://dyxdggzs.com/article/201709/364740.htm

  這篇博文的發(fā)表引起了領(lǐng)域內的爭論,哈佛大學(xué)藥學(xué)院的生物醫藥信息學(xué)專(zhuān)業(yè)博士后Andrew Beam寫(xiě)了篇文章來(lái)反駁: 《就算數據不夠大,也能玩》 (You can probably use deep learning even if your data isn't that big)。Andrew Beam指出,即使數據集很小,一個(gè)適當訓練的深度網(wǎng)絡(luò )也能擊敗簡(jiǎn)單的線(xiàn)性模型。如今,越來(lái)越多的生物信息學(xué)研究人員正在使用深度學(xué)習來(lái)解決各種各樣的問(wèn)題,這樣的爭論愈演愈烈。這種炒作是真的嗎?還是說(shuō)線(xiàn)性模型就足夠滿(mǎn)足我們的所有需求呢?結論一如既往——要視情況而定。在這篇文章中,作者探索了一些機器學(xué)習的使用實(shí)例,在這些實(shí)例中使用深度學(xué)習并不明智。并且解釋了一些對深度學(xué)習的誤解,作者認為正是這些錯誤的認識導致深度學(xué)習沒(méi)有得到有效地使用,這種情況對于新手來(lái)說(shuō)尤其容易出現。

  打破深度學(xué)習偏見(jiàn)

  首先,我們來(lái)看看許多外行者容易產(chǎn)生的偏見(jiàn),其實(shí)是一些半真半假的片面認識。主要有兩點(diǎn),其中的一點(diǎn)更具技術(shù)性,我將詳細解釋。

  深度學(xué)習在小樣本集上也可以取得很好的效果

  深度學(xué)習是在大數據的背景下火起來(lái)的(第一個(gè)谷歌大腦項目向深度神經(jīng)網(wǎng)絡(luò )提供了大量的Youtube視頻),自從那以后,絕大部分的深度學(xué)習內容都是基于大數據量中的復雜算法。

  然而,這種大數據+深度學(xué)習的配對不知為何被人誤解為:深度學(xué)習不能應用于小樣本。如果只有幾個(gè)樣例,將其輸入具有高參數樣本比例的神經(jīng)網(wǎng)絡(luò )似乎一定會(huì )走上過(guò)擬合的道路。然而,僅僅考慮給定問(wèn)題的樣本容量和維度,無(wú)論有監督還是無(wú)監督,幾乎都是在真空中對數據進(jìn)行建模,沒(méi)有任何的上下文??赡艿臄祿闆r是:你擁有與問(wèn)題相關(guān)的數據源,或者該領(lǐng)域的專(zhuān)家可以提供的強大的先驗知識,或者數據可以以非常特殊的方式進(jìn)行構建(例如,以圖形或圖像編碼的形式)。所有的這些情況中,深度學(xué)習有機會(huì )成為一種可供選擇的方法——例如,你可以編碼較大的相關(guān)數據集的有效表示,并將該表示應用到你的問(wèn)題中。這種典型的示例常見(jiàn)于自然語(yǔ)言處理,你可以學(xué)習大型語(yǔ)料庫中的詞語(yǔ)嵌入,例如維基百科,然后將他們作為一個(gè)較小的、較窄的語(yǔ)料庫嵌入到一個(gè)有監督任務(wù)中。極端情況下,你可以用一套神經(jīng)網(wǎng)絡(luò )進(jìn)行聯(lián)合學(xué)習特征表示,這是在小樣本集中重用該表示的一種有效方式。這種方法被稱(chēng)作“一次性學(xué)習”(one-shot learning),并且已經(jīng)成功應用到包括 計算機視覺(jué) 和 藥物研發(fā) 在內的具有高維數據的領(lǐng)域。

    

 

  藥物研發(fā)中的一次性學(xué)習網(wǎng)絡(luò ),摘自 Altae-Tran et al. ACS Cent. Sci. 2017

  深度學(xué)習不是一切的答案

  我聽(tīng)過(guò)最多的第二個(gè)偏見(jiàn)就是過(guò)度宣傳。許多尚未入門(mén)該領(lǐng)域的人,僅僅因為深度神經(jīng)網(wǎng)絡(luò )在其它領(lǐng)域的出色表現,就期待它也能為他們帶來(lái)神話(huà)般的表現提升。其他人則從深度學(xué)習在圖像、音樂(lè )和語(yǔ)言(與人類(lèi)關(guān)系密切的三種數據類(lèi)型)處理領(lǐng)域的令人印象深刻的表現中受到啟發(fā),于是就頭腦發(fā)熱地鉆入該領(lǐng)域,迫不及待地嘗試訓練最新的GAN結構。當然,這種大肆吹捧在很多方面是真實(shí)存在的。深度學(xué)習在機器學(xué)習中的地位不可小覷,也是數據建模方法庫的重要工具。它的普及帶動(dòng)了諸如tensorflow和pytorch等許多重要框架的發(fā)展,它們即使是在深度學(xué)習之外也是十分有用的。失敗者崛起成為超級巨星的故事激勵了許多研究員重新審視以前的模糊算法,如進(jìn)化算法和增強學(xué)習。但任何情況下也不能認為深度學(xué)習是萬(wàn)能良藥。除了“天下沒(méi)有免費的午餐”這點(diǎn)之外,深度學(xué)習模型是非常微妙的,并且需要仔細甚至非常耗時(shí)耗力的超參數搜索、調整,以及測試(文章后續有更多講解)。除此之外,在很多情況下,從實(shí)踐的角度來(lái)看,使用深度學(xué)習是沒(méi)有意義的,更簡(jiǎn)單的模型反而能獲得更好的效果。

  深度學(xué)習不僅僅是

  深度學(xué)習模型從機器學(xué)習的其他領(lǐng)域傳來(lái)時(shí),我認為還有另外一個(gè)方面經(jīng)常被忽略。大多數深度學(xué)習的教程和介紹材料都將模型描述為通過(guò)層次方式進(jìn)行連接的節點(diǎn)層組成,其中第一層是輸入,最后一層是輸出,并且你可以用某種形式的隨機梯度下降(SGD)方法來(lái)訓練網(wǎng)絡(luò )。有些材料會(huì )簡(jiǎn)單介紹隨機梯度下降是如何工作的,以及什么是反向傳播,但大部分介紹主要關(guān)注的是豐富的神經(jīng)網(wǎng)絡(luò )類(lèi)型(卷積神經(jīng)網(wǎng)絡(luò ),循環(huán)神經(jīng)網(wǎng)絡(luò )等等)。而優(yōu)化方法本身卻很少受到關(guān)注,這是很不幸的,因為深度學(xué)習為什么能夠起到很大的作用,絕大部分原因就是這些特殊的優(yōu)化方法(具體論述可以參考Ferenc Huszár的 博客 以及博客中引用的 論文 )。了解如何優(yōu)化參數,以及如何劃分數據,從而更有效地使用它們以便在合理時(shí)間內使網(wǎng)絡(luò )獲得良好的收斂,是至關(guān)重要的。不過(guò),為什么隨機梯度下降如此關(guān)鍵還是未知的,但是現在線(xiàn)索也正零星出現。我傾向于將該方法看成是貝葉斯推理的一部分。實(shí)質(zhì)上,在你進(jìn)行某種形式的數值優(yōu)化時(shí),你都會(huì )用特定的假設和先驗來(lái)執行一些貝葉斯推理。其實(shí)有一個(gè)被稱(chēng)做 概率數值計算 (probabilistic numerics)的完整研究領(lǐng)域,就是從這個(gè)觀(guān)點(diǎn)開(kāi)始的。隨機梯度下降也是如此, 最新的研究成果 表明,該過(guò)程實(shí)際上是一個(gè)馬爾科夫鏈,在特定假設下,可以看作是后向變分近似的穩態(tài)分布。所以當你停止隨機梯度下降,并采用最終的參數時(shí),基本上是從這個(gè)近似分布中抽樣得到的。我認為這個(gè)想法很有啟發(fā)性,因為這樣一來(lái),優(yōu)化器的參數(這里是指學(xué)習率)就更有意義了。例如,當你增加隨機梯度下降的學(xué)習參數時(shí),馬爾可夫鏈就會(huì )變得不穩定,直到它找到大面積采樣的局部最小值,這樣一來(lái),就增加了程序的方差。另一方面,如果減少學(xué)習參數,馬爾科夫鏈可以慢慢的近似到狹義極小值,直到它收斂,這樣就增加了某個(gè)特定區域的偏置。而另一個(gè)參數,隨機梯度下降的批次大小,也可以控制算法收斂的區域是什么類(lèi)型,小的批次收斂到較大區域,大的批次收斂到較小區域。

    

 

  隨機梯度下降根據學(xué)習速率或批尺寸來(lái)選擇較大或狹義最小值

  這樣的復雜性意味著(zhù)深度網(wǎng)絡(luò )的優(yōu)化器非常重要:它們是模型的核心部分,與層架構一樣重要。這一點(diǎn)在機器學(xué)習的許多其他模型中并不常見(jiàn)。線(xiàn)性模型(甚至是正則化的,像LASSO算法)以及支持向量機(SVM) 都是凸優(yōu)化問(wèn)題,沒(méi)有太多細微差別,并且只有一個(gè)最優(yōu)解。這也就是為什么來(lái)自其它領(lǐng)域的研究人員在使用諸如scikit-learn這樣的工具時(shí)會(huì )感到困惑,因為他們發(fā)現找不到簡(jiǎn)單地提供.fit()函數的API(盡管現在有些工具,例如skflow,試圖將簡(jiǎn)單的網(wǎng)絡(luò )置入.fit()中,我認為這有點(diǎn)誤導,因為深度學(xué)習的全部重點(diǎn)就是其靈活性)。

  什么時(shí)候不需要深度學(xué)習

  在什么情況下深度學(xué)習不是最理想的呢?在我看來(lái),以下情況中,深度學(xué)習更多是一種阻礙,而不是福音。

  低預算或低投資問(wèn)題

  深度網(wǎng)絡(luò )是十分靈活的模型,有多種多樣的結構和節點(diǎn)模型、優(yōu)化器以及正則化方法。根據應用場(chǎng)景,你的模型或許要有卷積層(層尺寸多寬?有沒(méi)有池化操作?),或者循環(huán)結構(有沒(méi)有門(mén)控單元?);網(wǎng)絡(luò )可能真的很深(hourglass,siamese,或其他結構?)還是只是具有很少的幾個(gè)隱藏層(有多少單元?);它可能使用整流線(xiàn)性單元或其他激活函數;它可能會(huì )或可能不會(huì )有隨機丟棄(在哪一層中?用什么比例?),并且權重應該是正則化的(L1、L2,或者是某些更奇怪的正則化方法?)。這只是一部分列表,還有很多其他類(lèi)型的節點(diǎn)、連接,甚至損失函數可以去嘗試。即便只是訓練大型網(wǎng)絡(luò )的一個(gè)實(shí)例,調整許多超參數以及探索框架的過(guò)程也是非常耗時(shí)的。谷歌最近宣稱(chēng)自己的AutoML方法可以自動(dòng)找到最好的架構,令人印象深刻,但仍然需要超過(guò)800個(gè)GPU全天候運行數周,這對于任何人來(lái)說(shuō)幾乎都是遙不可及的。關(guān)鍵在于訓練深度網(wǎng)絡(luò )時(shí),在計算和調試部分都會(huì )花費巨大的代價(jià)。這種消耗對于許多日常預測問(wèn)題并沒(méi)有意義,并且調整深度網(wǎng)絡(luò )的投資回報率太低,即使是調整小型網(wǎng)絡(luò )。即使有足夠的預算和投資,也沒(méi)有理由不嘗試替代方法,哪怕作為基準測試。你可能會(huì )驚喜地發(fā)現,線(xiàn)性SVM就夠用了。

  解釋和傳達模型參數或特征對一般受眾的重要性

  深度網(wǎng)絡(luò )也是很有名的黑匣子,它具有高預測能力但可解釋性不足。盡管最近有很多工具,諸如顯著(zhù)圖(saliency maps)和 激活差異 (activation difference),它們對某些領(lǐng)域而言是非常有用的,但它們不會(huì )完全被應用到所有的應用中。主要是,當你想要確保網(wǎng)絡(luò )不會(huì )通過(guò)記住數據集或專(zhuān)注于特定的虛假特征來(lái)欺騙你時(shí),這些工具就能很好地工作,但仍然難以從每個(gè)特征的重要性解讀出深度網(wǎng)絡(luò )的整體決策。在這個(gè)領(lǐng)域,沒(méi)有什么能夠真正地打敗線(xiàn)性模型,因為學(xué)習得到的系數與響應有著(zhù)直接的關(guān)系。當將這些解釋傳達給一般受眾,并且他們需要基于此做出決策時(shí),這就顯得尤為重要。例如,醫生需要結合各種不同的數據來(lái)確認診斷結果。變量和結果之間的關(guān)系越簡(jiǎn)單、越直接,醫生就能更好地利用,而不是低估或高估實(shí)際值。此外,有些情況下,模型(尤其是深度網(wǎng)絡(luò ))的精度并不像可解釋性那樣重要。例如,政策制定者可能想知道一些人口統計變量對于死亡率的影響,并且相較于預測的準確性來(lái)說(shuō),可能對這種關(guān)系的直接近似更有興趣。在這兩種情況下,與更簡(jiǎn)單、更易滲透的方法相比,深度學(xué)習處于不利地位。

  建立因果機制

  模型可解釋性的極端情況是當我們試圖建立一個(gè)機械模型,即實(shí)際捕捉數據背后現象的模型。一個(gè)好的例子包括試圖猜測兩個(gè)分子(例如藥物、蛋白質(zhì)、核酸等)是否在特定的細胞環(huán)境中相互產(chǎn)生影響,或者假設特定的營(yíng)銷(xiāo)策略是否對銷(xiāo)售產(chǎn)生實(shí)際的影響。在這個(gè)領(lǐng)域,根據專(zhuān)家意見(jiàn),沒(méi)有什么可以擊敗老式的貝葉斯方法,它們是我們表示并推斷因果關(guān)系的最好方式。Vicarious有一些很好的 最新研究成果 ,說(shuō)明為什么這個(gè)更有原則性的方法在視頻游戲任務(wù)中比深度學(xué)習表現得更好。

  學(xué)習“非結構化”特征

  這可能是具有爭議性的。我發(fā)現深度學(xué)習擅長(cháng)的一個(gè)領(lǐng)域是為特定任務(wù)找到有用的數據表示。一個(gè)很好的例子就是上述的詞語(yǔ)嵌入。自然語(yǔ)言具有豐富而復雜的結構,與“上下文感知”(context-aware)網(wǎng)絡(luò )相近似:每個(gè)單詞都可以通過(guò)向量來(lái)表示,而這個(gè)向量可以編碼其經(jīng)常出現的文本。在NLP任務(wù)中使用在大型語(yǔ)料庫中學(xué)習的單詞嵌入,有時(shí)可以在另一個(gè)語(yǔ)料庫的特定任務(wù)中提升效果。然而,如果所討論的語(yǔ)料庫是完全非結構化的,它可能不會(huì )起到任何作用。例如,假設你正在通過(guò)查看關(guān)鍵字的非結構化列表來(lái)對對象進(jìn)行分類(lèi),由于關(guān)鍵字不是在任何特定結構中都會(huì )使用的(比如在一個(gè)句子中),所以單詞嵌入不會(huì )對這些情況有太大幫助。在這種情況下,數據是一個(gè)真正的“詞袋”(bag of words),這種表示很有可能足以滿(mǎn)足任務(wù)所需。與此相反的是,如果你使用預訓練的話(huà),單詞嵌入并不是那么耗費時(shí)力,而且可以更好地捕獲關(guān)鍵字的相似度。不過(guò),我還是寧愿從“詞袋”表示開(kāi)始,看看能否得到很好的預測結果。畢竟,這個(gè)“詞袋”的每個(gè)維度都比對應的詞嵌入槽更容易解讀。

  深度學(xué)習是未來(lái)

  深度學(xué)習目前非?;鸨?,資金充足,并且發(fā)展異常迅速。當你還在閱讀會(huì )議上發(fā)表的論文時(shí),有可能已經(jīng)有兩、三種新版本可以超越它了。這給我上述列出的幾點(diǎn)提出了很大的挑戰:深度學(xué)習在不久的將來(lái)可能在這些情景中是非常有用的。用于解釋圖像和離散序列的深度學(xué)習模型的工具越來(lái)越好。最近推出的軟件,如 Edward 將貝葉斯建模和深度網(wǎng)絡(luò )框架結合,能夠量化神經(jīng)網(wǎng)絡(luò )參數的不確定性,以及通過(guò)概率編程和自動(dòng)變分推理進(jìn)行簡(jiǎn)易貝葉斯推理。從長(cháng)遠來(lái)看,可能會(huì )有一個(gè)簡(jiǎn)化的建模庫,能夠給出深度網(wǎng)絡(luò )具有的顯著(zhù)屬性,從而減少需要嘗試的參數空間。所以要不斷更新你的arXiv閱讀內容,這篇博文的內容或許一兩個(gè)月內也會(huì )過(guò)時(shí)。

    

 

  Edward通過(guò)將概率規劃與tensorflow結合,將深度學(xué)習和貝葉斯的模型考慮在內。摘自Tran et al. ICLR 2017



關(guān)鍵詞: 深度學(xué)習

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>