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

評論