導(dǎo)讀
本文總結(jié)了來(lái)自于知乎問(wèn)題:“為什么感覺(jué)深度學(xué)習(xí)越學(xué)越懵?”下的精華回答,優(yōu)秀的作者們對(duì)學(xué)習(xí)的方式,書(shū)籍的選擇以及該問(wèn)題本質(zhì)下透露的目前領(lǐng)域的發(fā)展困境都提出了自己的看法。
問(wèn)題背景:近日,有一位開(kāi)發(fā)者在知乎進(jìn)行提問(wèn),說(shuō)自己目前國(guó)內(nèi)top2研一在讀,方向是AI和NLP。本科沒(méi)有怎么接觸過(guò)科研,這學(xué)期剛剛開(kāi)始在實(shí)驗(yàn)室搬磚。他在閱讀了DL相關(guān)書(shū)籍和資料,如李航老師的《統(tǒng)計(jì)學(xué)習(xí)方法》后,對(duì)深度學(xué)習(xí)方面的理論知識(shí)理解感到困難,花書(shū)也不太讀的懂。那么對(duì)于如題主這樣的初次接觸科研的學(xué)生來(lái)說(shuō),為什么會(huì)產(chǎn)生深度學(xué)習(xí)越學(xué)越懵的感覺(jué)?是不是對(duì)知識(shí)結(jié)構(gòu)的掌握不夠,亦或是學(xué)習(xí)的方法上存在問(wèn)題?
01
作者:薛天凡
題主你所經(jīng)歷的困惑其實(shí)是很多ML研究員多會(huì)經(jīng)歷的。你正處于知其然但不知其所以然的這一階段,所以感到困惑。你知道每個(gè)算法是如何實(shí)現(xiàn)的,但可能還沒(méi)完全理解這個(gè)算法如何發(fā)展而來(lái),根本上要解決一個(gè)什么問(wèn)題。當(dāng)知道這個(gè),這些算法就會(huì)自然而然在你腦子中串成一張網(wǎng)。 就以你提到vae,cvae,生成模型來(lái)說(shuō)。這些最初的基礎(chǔ)是ae(auto encoder)算法,就是用一個(gè)encoder把一個(gè)原始高維向量(圖片,文字,語(yǔ)音)投影到一個(gè)低維的向量(隱變量),再用一個(gè)decoder將原始向量從隱變量中恢復(fù)出來(lái)。從此引出 1)能夠通過(guò)sample隱變量來(lái)生成新的圖像/文字/語(yǔ)音。這就有了vae,就是在ae的基礎(chǔ)上加上kl divergence loss使得隱向量可以被sample。 2)進(jìn)一步,如果想sample特定種類的圖片/文字/語(yǔ)音,例如只生成男人的圖像,或者小孩子的聲音。這就引出了conditional sample,也就是cvae。 3)再進(jìn)一步,vae大部分使用l2 loss,而l2 loss通常會(huì)使生成的圖片變得模糊。為了解決這個(gè)問(wèn)題,就需要一種更靠近我們感知的loss,也就引出了GAN模型中的learned loss function。 舉這個(gè)例子就是想說(shuō)當(dāng)你明白了每個(gè)算法到底在解決一個(gè)什么問(wèn)題是,就很容易串起來(lái)。另外,對(duì)于算法的理解每個(gè)人也并不相同,所以也不必局限于一本書(shū)中所說(shuō)的知識(shí)架構(gòu)。能夠建立起自己的知識(shí)架構(gòu),才是真正懂這個(gè)領(lǐng)域。 要想做到這一點(diǎn),就是要多看,多想,多討論。多看,就是要讀更多書(shū),有時(shí)也不如直接去看一下原始的論文,書(shū)畢竟是加工后的信息。多想,就是不要書(shū)或論文怎么說(shuō)就怎么信,而是自己想想其中的邏輯。一個(gè)很好的思維訓(xùn)練就是,可以在看到一篇論文提出的解決方案之前,先自己想想如果是你會(huì)怎么解決,再看論文中的方法是否合理。多討論就是把你的想法和同行說(shuō)說(shuō),看看其他人怎么理解的。題主其實(shí)已經(jīng)在正確的道路上,看了不少書(shū)籍,多想想多與人討論討論,慢慢就會(huì)越學(xué)越清晰。 去完全理解一個(gè)算法的發(fā)展,真正理解這個(gè)領(lǐng)域,需要去建立起自己的知識(shí)架構(gòu)。要到達(dá)這個(gè)境界就需要大量的閱讀和思考,下面兩位答主就介紹到該如何通過(guò)有效的閱讀書(shū)籍以及閱讀論文的方式去加深對(duì)深度學(xué)習(xí)的理解。
02
作者:棒棒糖
盡管你是top2研一,但是你還是會(huì)發(fā)現(xiàn)周圍的全是調(diào)參俠和啟發(fā)式帶師。
如果真想做下去,而不是研究生畢業(yè)去找工作,看完一遍花書(shū)(第九章之前),然后就可以把花書(shū)當(dāng)工具去查了。(花書(shū),即goodfellow寫(xiě)的deep learning一書(shū),中文名是深度學(xué)習(xí))
花書(shū)的問(wèn)題是它有些機(jī)器學(xué)習(xí)的基礎(chǔ)(被絕大部分頂會(huì)論文所忽略的東西)略過(guò)不談,但是在描述深度學(xué)習(xí)的時(shí)候又不由自主的用了這些東西,所以初學(xué)者讀起來(lái)云里霧里的。
而這些基礎(chǔ),從西瓜書(shū)里可以看到,從統(tǒng)計(jì)學(xué)習(xí)方法里可以看到,但你不會(huì)去注意,因?yàn)槟悴⒉徽J(rèn)為它關(guān)鍵,一掠而過(guò)。這是現(xiàn)在很多深度學(xué)習(xí)者所面臨的致命問(wèn)題。
我的方法是興趣廣泛的讀論文,讀那些試圖去解釋神經(jīng)網(wǎng)絡(luò)的論文,包括NTK這些企圖用線性代數(shù)和動(dòng)力學(xué)的,用特征和矩陣分解的,用優(yōu)化理論的,用編碼的,等等。然后去做實(shí)驗(yàn),思考你該怎么在不斷波動(dòng)的測(cè)試結(jié)果中選擇填進(jìn)論文里的數(shù)據(jù),你很快就會(huì)意識(shí)到偏差,方差,過(guò)擬合,欠擬合,early stop等等詞語(yǔ)和你最開(kāi)始理解的東西完全不一樣。思考那些看似合理的曲線在各種各樣的理論里扮演著怎么樣的角色,深度學(xué)習(xí)背后的幽靈會(huì)在那些曲線里露出馬腳。
格物而致知。
這世界上的科學(xué)莫過(guò)于此。
03
作者:zibuyu9
建議選一本為主進(jìn)行學(xué)習(xí),如李航老師《統(tǒng)計(jì)學(xué)習(xí)方法》,其他參照即可,因?yàn)榇蟛糠纸滩牡暮诵膬?nèi)容都大同小異。以我對(duì)李航老師教材內(nèi)容的了解,在掌握微積分、線性代數(shù)、概率論、編程等基礎(chǔ)知識(shí)后,還比較容易讀。如果經(jīng)???,建議從這些基礎(chǔ)知識(shí)補(bǔ)起。
另外結(jié)合高贊回答(剛發(fā)現(xiàn)該回答已刪除,不是現(xiàn)在的高贊回答)說(shuō)幾句,現(xiàn)在AI是很火,吸引很多學(xué)生,論文成倍增加,也出現(xiàn)很多質(zhì)量參差不齊的工作。我覺(jué)得主要原因是,行之已久的基于“信任”的學(xué)術(shù)會(huì)議同行評(píng)審機(jī)制,無(wú)法應(yīng)對(duì)背后功利暗涌的海量投稿。從論文價(jià)值上講,只要一份工作實(shí)驗(yàn)結(jié)果和結(jié)論是真實(shí)的,無(wú)論作用大小,對(duì)整個(gè)領(lǐng)域總是正面的,而且這些科研過(guò)程訓(xùn)練學(xué)生解決開(kāi)放能力也是非常有意義的;而從最底線上講,以我參與的相關(guān)學(xué)術(shù)會(huì)議服務(wù)的經(jīng)歷,很多學(xué)術(shù)會(huì)議已經(jīng)開(kāi)始利用數(shù)據(jù)挖掘算法檢測(cè)和打擊互bid論文行為,開(kāi)始探討如何解決當(dāng)下的可復(fù)現(xiàn)性(reproducibility)問(wèn)題。
當(dāng)然這也是因?yàn)楝F(xiàn)在國(guó)內(nèi)還處在數(shù)頂會(huì)論文的階段。等后面大家都有頂會(huì)論文了,相信又會(huì)有人開(kāi)始刷引用刷其他影響力。只要有一個(gè)評(píng)價(jià)標(biāo)準(zhǔn),就總會(huì)有人走捷徑,除非這個(gè)領(lǐng)域不火了。但無(wú)論怎樣,有人也許能通過(guò)不合適的手段獲益,也不應(yīng)當(dāng)成為你這么做的理由。學(xué)術(shù)研究應(yīng)當(dāng)做的是不斷追求卓越,而不是反復(fù)試探底線。
為什么會(huì)對(duì)書(shū)本的知識(shí)無(wú)法理解?問(wèn)題或許在于數(shù)學(xué)能力較弱。下文中,答主日月講述到了題主問(wèn)題的關(guān)鍵所在并給出了簡(jiǎn)略的解決方法。在基礎(chǔ)打牢后,需要?jiǎng)邮秩?shū)寫(xiě),馬克思也說(shuō)過(guò),實(shí)踐出真知。在理論知識(shí)豐富的基礎(chǔ)上,必須要踏出實(shí)操的一步,才能將知識(shí)理解的更為透徹。
04
作者:日月
你說(shuō)的這幾本書(shū)理論太差了,我不知道你計(jì)算機(jī)基礎(chǔ)如何。如果編程基本的算法能力和系統(tǒng)掌握的不錯(cuò)的話,清北ai的研究生應(yīng)該具備這個(gè)能力才對(duì)。你讀的這幾本書(shū)基本都是調(diào)api的,人家都給你封裝玩了,你光調(diào)用一下怎么可能深入理解?
那么,問(wèn)題就在于你的數(shù)學(xué)太差了,你疑惑的哪些問(wèn)題全是數(shù)學(xué)問(wèn)題,但是這個(gè)時(shí)間點(diǎn),你應(yīng)該還在學(xué)習(xí)基礎(chǔ)課,其實(shí)機(jī)器學(xué)習(xí)是比較高深的課程,學(xué)這個(gè)之前,數(shù)值計(jì)算,各種計(jì)算機(jī)系統(tǒng)課程,優(yōu)化,統(tǒng)計(jì)概率應(yīng)該先學(xué)完再來(lái)學(xué)機(jī)器學(xué)習(xí),這時(shí)候才能很好的理解那些概念,再實(shí)戰(zhàn)強(qiáng)化。但是現(xiàn)在很多整ai的,直接跳過(guò)了這個(gè)過(guò)程,我經(jīng)常碰到做深度學(xué)習(xí)計(jì)算機(jī)視覺(jué)的,問(wèn)數(shù)學(xué)優(yōu)化算法不會(huì),跟系統(tǒng)相關(guān)的東西你讓他改點(diǎn)東西不會(huì)。太浮躁了。
建議抓緊補(bǔ)數(shù)學(xué)基礎(chǔ),你數(shù)學(xué)越硬,后面做研究才能做的更扎實(shí),而不是一個(gè)大神整出來(lái)什么算法然后喊666在拷貝過(guò)來(lái)改吧改吧用。
補(bǔ)完數(shù)學(xué)基礎(chǔ),有空一些寫(xiě)一些機(jī)器學(xué)習(xí)算法,光李航那本書(shū),如果你想用cpp從底層一路打上去實(shí)現(xiàn)也要用到很多基礎(chǔ)計(jì)算機(jī)算法和系統(tǒng)知識(shí)的。別光用python調(diào)包,你都不知道他怎么實(shí)現(xiàn)的,你說(shuō)你理解的有多深刻,自己都不信的。用c++寫(xiě),不用所有算法都寫(xiě),但是要寫(xiě)一些,然后改并行分布式。練兩個(gè)之后再去看一些算法實(shí)現(xiàn)的源碼,這時(shí)候你入門(mén)了。再去跑數(shù)據(jù)集,然后就會(huì)有很多idea,你才逐步進(jìn)入科研。
在對(duì)學(xué)習(xí)的方法了解后,下面這位答主對(duì)問(wèn)題的本質(zhì)進(jìn)行了探討,為什么會(huì)產(chǎn)生越學(xué)越困惑,似懂非懂的感覺(jué)呢,或許有這樣感受的不止題主一人。作者分析了目前深度學(xué)習(xí)幾個(gè)大發(fā)展方向,之所以會(huì)讓很多人產(chǎn)生困惑的原因,事實(shí)上就是黑盒,而且?guī)缀鯖](méi)什么辦法打開(kāi)盒子看,因?yàn)榇蜷_(kāi)了就是上億個(gè)參數(shù)。雖然可能現(xiàn)在深度學(xué)習(xí)方面存在大量的灌水,或許某天也能夠突然的起飛。
05
作者:匿名用戶
本來(lái)就是煉丹,你這么覺(jué)得完全沒(méi)錯(cuò)。
深度學(xué)習(xí)搞了這么久,還是個(gè)黑盒子,最多就是隱層截幾張圖片出來(lái)搞個(gè)“可視化”,搞了一堆沒(méi)什么用的“萬(wàn)能”逼近理論,結(jié)果理論中的結(jié)果和現(xiàn)實(shí)中的樣本量、參數(shù)量根本不在一個(gè)數(shù)量級(jí)上。最核心的問(wèn)題,也就是樣本空間的數(shù)學(xué)結(jié)構(gòu),因?yàn)樘^(guò)復(fù)雜根本沒(méi)人能講清楚,也沒(méi)人想到要去研究。譬如說(shuō),手寫(xiě)數(shù)字MNIST數(shù)據(jù)集服從什么分布?
應(yīng)用上除了CV和NLP也沒(méi)搞出什么東西。
CV搞出的東西被對(duì)抗樣本克得死死的。對(duì)抗的手段要多少有多少,一個(gè)一個(gè)去堵是堵不完的?,F(xiàn)在已經(jīng)只要在標(biāo)識(shí)牌上貼個(gè)便簽條就能把自動(dòng)駕駛算法給忽悠了,或者戴個(gè)紙糊的眼鏡就能把基于深度學(xué)習(xí)的人臉識(shí)別算法給騙了,相關(guān)的論文你都可以自己去找。
NLP搞出的東西的可解釋性就是差,也沒(méi)有很緊密地和邏輯體系、知識(shí)體系相融合,一融合就是貝葉斯,實(shí)際上只不過(guò)是用貝葉斯公式強(qiáng)行解釋神經(jīng)網(wǎng)絡(luò)罷了,至于融合上沒(méi)有不知道。
我讀過(guò)的每篇論文里都會(huì)用貝葉斯公式,仿佛深度學(xué)習(xí)能和數(shù)理統(tǒng)計(jì)掛上鉤似的。如果真能掛上鉤,那么神經(jīng)網(wǎng)絡(luò)對(duì)應(yīng)的概率論模型是什么?樣本服從什么分布?為什么服從這樣的分布?能不能用假設(shè)檢驗(yàn)來(lái)驗(yàn)證這一模型是合理的?等到哪天學(xué)術(shù)界能夠不玩文字游戲地解釋清楚這些問(wèn)題,深度學(xué)習(xí)才能被解釋清楚。如果總是說(shuō)什么隱變量(隱層神經(jīng)元)、嵌入(見(jiàn)VAE等)等服從高維正態(tài)分布,那也太含混不清了。
VAE那篇開(kāi)山作品,將MNIST嵌入到二維流形上,生成了一張圖片,上面按照不同的嵌入表示不同的數(shù)字。依我看來(lái)基本邏輯都說(shuō)不通。應(yīng)該是每個(gè)數(shù)字和字母處在一個(gè)低維的流形,例如二維或者三維,1就是1,2就是2,每個(gè)類所處的流形之間應(yīng)該存在一個(gè)比較清晰的邊界。將所有的數(shù)字混到一個(gè)流形上去是要干什么,而且這個(gè)流形居然還是一個(gè)二維的正方形,意義不明啊,合著1就是7,3就是5,兩兩之間傻傻分不清啊。我個(gè)人在這個(gè)問(wèn)題上還做過(guò)一點(diǎn)科研,用簡(jiǎn)單的LadderNetwork將MNIST嵌入到二維空間上并且使每個(gè)類聚在一起,類與類之間有一定間距。效果一般般,只能說(shuō)確實(shí)能把MNIST嵌入到二維流形上。訓(xùn)練集每個(gè)類都聚得很好,測(cè)試集就烏七八糟了,過(guò)擬合極為明顯。
還有什么卷積神經(jīng)網(wǎng)絡(luò)的平移不變性、縮放不變性什么的,如果你找一張圖片往上邊補(bǔ)個(gè)黑邊,左右平移平移10%、20%、30%,縮放1.1倍、1.2倍、1.3倍,找個(gè)state of art的網(wǎng)絡(luò)喂進(jìn)去,分類結(jié)果絕對(duì)精彩。
我看還是搞搞強(qiáng)化學(xué)習(xí)運(yùn)用到機(jī)器人控制上比較靠譜,畢竟任務(wù)簡(jiǎn)單些。參數(shù)超過(guò)一萬(wàn)個(gè)的網(wǎng)絡(luò)我是覺(jué)得都信不過(guò)。機(jī)械臂、機(jī)械狗的動(dòng)作軌跡都有比較簡(jiǎn)單的模型,參數(shù)不多,這些模型應(yīng)該是能做好的,實(shí)際上我們也看到包括波士頓動(dòng)力等一些公司造出了實(shí)際的產(chǎn)品。
或者多搞搞對(duì)抗樣本惡心一下學(xué)術(shù)界和工業(yè)界也不錯(cuò)。
實(shí)在不行也可以將深度學(xué)習(xí)運(yùn)用到藝術(shù)創(chuàng)作上。生成游戲場(chǎng)景貼圖、創(chuàng)作音樂(lè)、創(chuàng)作抽象藝術(shù),反正是在虛擬的世界里,不會(huì)有什么實(shí)質(zhì)的危害,最多也就是惡搞惡搞特朗普罷了?;蛘哂脕?lái)生成語(yǔ)音,不過(guò)這方面科大訊飛已經(jīng)有比較成熟的產(chǎn)品了。
工業(yè)化的應(yīng)用,例如自動(dòng)車,我看還是別搞的好,特斯拉已經(jīng)霍霍死不少人了,不需要再多一家。
事實(shí)上工業(yè)界里機(jī)器學(xué)習(xí)是很吃香的,應(yīng)用極為廣泛,只不過(guò)那些都是模型的內(nèi)涵被分析得非常清楚的傳統(tǒng)的機(jī)器學(xué)習(xí)。
如果沒(méi)有理想的話,深度學(xué)習(xí)灌水是很簡(jiǎn)單的。東拼西湊就能整一篇,但有什么用呢?
順帶說(shuō)一句,Goodfellow那本Deep Learning的英文版我看過(guò),也就是那樣的東西,別搞得跟圣經(jīng)似的。
責(zé)任編輯:lq
-
AI
+關(guān)注
關(guān)注
87文章
31294瀏覽量
269647 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5510瀏覽量
121345 -
nlp
+關(guān)注
關(guān)注
1文章
489瀏覽量
22064
原文標(biāo)題:國(guó)內(nèi) Top2 高校研一在讀,為什么感覺(jué)深度學(xué)習(xí)越學(xué)越懵?
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論