作者 | Giant
來源 | 火星情報局
編輯 | 極市平臺
最近知乎上有讀者提問,被導(dǎo)師散養(yǎng),想要自己入門深度學(xué)習(xí)該如何分配任務(wù)?
看到這個問題我看見了3年前的自己。我的導(dǎo)師是浙大最年輕的博導(dǎo)、副教授,學(xué)術(shù)大牛。不過工作太忙,平日神龍見首不見尾,我的學(xué)習(xí)主要靠自驅(qū)。
經(jīng)歷了研一到研三的學(xué)習(xí),我對自己的深度學(xué)習(xí)路線做過系統(tǒng)性總結(jié)。在校招薪資逐年倒掛的背景下,希望可以幫到更多對AI真正感興趣的同學(xué)。
下面我從大廠面試官考察一個同學(xué)的角度,來「倒推」深度學(xué)習(xí)應(yīng)該怎么學(xué)。
理論學(xué)習(xí)俗話說基礎(chǔ)不牢,地動山搖。無論從事NLP,CV,ASR還是廣告推薦搜索,理論部分的學(xué)習(xí)是同學(xué)們需要邁過的第一道坎。
由于深度學(xué)習(xí)是機器學(xué)習(xí)的重要分支,建議大家上手深度學(xué)習(xí)前,先了解一下傳統(tǒng)的統(tǒng)計機器學(xué)習(xí)算法。
網(wǎng)上關(guān)于ML/DL有很多權(quán)威的學(xué)習(xí)資料,這里分享一些我實際學(xué)習(xí)過的靠譜資料(網(wǎng)課視頻都可以在b站上搜索到):
1 吳恩達(dá)機器學(xué)習(xí)入門課程
2 李宏毅機器學(xué)習(xí)入門課程(2021春)3 跟李沐學(xué)AI亞馬遜首席科學(xué)家沐神在b站開課啦!
在“跟李沐學(xué)AI”專欄,沐神用中文解讀了斯坦福2021秋季的實用機器學(xué)習(xí)課程,最近還新出了“讀論文”系列,像Transformer、BERT、GAN等經(jīng)典paper,都能聽到細(xì)致通俗的解讀!
4 Kaggle 30天機器學(xué)習(xí)0基礎(chǔ)入門**強烈推薦的理論結(jié)合coding的機器學(xué)習(xí)入門資料,雖然報名通道已經(jīng)關(guān)閉了,你仍然可以訪問下面的鏈接進(jìn)入學(xué)習(xí)。
Kaggle是一個非常棒的ML/DL學(xué)習(xí)平臺,有非常成熟的開源生態(tài),初學(xué)者一定要記住這個網(wǎng)站哈!
Kaggle還為用戶提供了免費的GPU計算資源,16G的Tesla V100 每周免費用40小時。詳細(xì)教程可以參考之前的推文:實驗室一塊GPU都沒有怎么做深度學(xué)習(xí)?
除了AI理論,一些計算機相關(guān)的基礎(chǔ)知識也十分重要。
5 陳越姥姥-數(shù)據(jù)結(jié)構(gòu)專題很多考研CS碩士的同學(xué)都經(jīng)歷過計算機408統(tǒng)考,這4門課程中建議首先掌握“數(shù)據(jù)結(jié)構(gòu)”,因為它和算法工程師的日常工作最緊密關(guān)聯(lián),也是面試中提升coding的必備內(nèi)容。時間充裕的同學(xué),建議你看看浙大陳越姥姥的數(shù)據(jù)結(jié)構(gòu)專題課,內(nèi)容很全面。如果時間緊,建議趁早開始刷leetcode和劍指offer,邊做題邊鞏固常用的數(shù)據(jù)結(jié)構(gòu)。
操作系統(tǒng)、計組、計算機網(wǎng)絡(luò)這幾門課當(dāng)然也很重要,但是從算法學(xué)習(xí)角度看,優(yōu)先級低于數(shù)據(jù)結(jié)構(gòu);可以在整個碩士期間穿插著學(xué)習(xí)。
算法比賽除了學(xué)理論、做項目,算法比賽也是非常適合新同學(xué)入門的選擇。當(dāng)然比賽有難易之分,如果你剛接觸深度學(xué)習(xí),建議從最基礎(chǔ)的任務(wù)做起。
比如對于機器學(xué)習(xí)而言,Kaggle平臺的Titanic生存率預(yù)測就是非常經(jīng)典的競賽項目。把這個比賽完整做一遍,你能學(xué)到數(shù)據(jù)準(zhǔn)備、數(shù)據(jù)分析、構(gòu)建模型、預(yù)測輸出整個鏈路的內(nèi)容。
如果從事NLP研究,建議從文本分類、匹配、NER等底層任務(wù)開始練習(xí)。參賽過程中,主動學(xué)習(xí)其他優(yōu)秀選手的baseline和top方案,也是讓自己進(jìn)步的高效選擇。
除了Kaggle,主流的算法比賽平臺還有阿里天池、DataFountain、Biendata、DC競賽、華為云競賽、訊飛開放平臺、FlyAI等。
如果你覺得一個人做比賽很難堅持,還可以加入我們的交流群,和志同道合的同學(xué)一起抱團(tuán),比單人solo進(jìn)步更快哦。
還沒進(jìn)群的朋友,歡迎加我微信cs-yechen
科研學(xué)術(shù)開展科研工作是深入掌握AI算法的一條“捷徑”,如果經(jīng)過思考和實踐,提出創(chuàng)新性的idea,通過coding實現(xiàn)并撰寫成文,深度學(xué)習(xí)功力一定會更上一層。
這里參考清華大學(xué)黃民烈老師的PPT,以QA的方式和大家分享一下“如何做出好的科研”。
科研是什么?創(chuàng)新是科研工作的核心,發(fā)表論文是因為這種創(chuàng)新對別人有啟發(fā),值得分享與交流;是為了好奇心而進(jìn)行科研探索:探索未知,發(fā)現(xiàn)不同。
如果單純?yōu)榱税l(fā)paper或者升職、出國而做科研,很容易本末倒置。
為什么要做科研?1)理論和實踐需要密切結(jié)合
2)確定自己喜歡什么
3)鍛煉和提高自己的能力
4)為將來的讀研和讀博做好準(zhǔn)備
科研的“正確”姿勢假如導(dǎo)師或?qū)W長給了一個題目或方向,在跑模型前,同學(xué)應(yīng)該先深入理解任務(wù)、問題、數(shù)據(jù),讀論文。
導(dǎo)師:結(jié)果怎么樣?學(xué)生:不好 — 詳細(xì)的數(shù)據(jù)統(tǒng)計、分析、報告;理解問題、數(shù)據(jù)導(dǎo)師:為什么不好?學(xué)生:不知道 — 深入理解模型原理,與問題、數(shù)據(jù)的匹配性導(dǎo)師:哪里好?學(xué)生:不知道 — 理解模型的輸出結(jié)果、行為表現(xiàn)導(dǎo)師:哪里不好?學(xué)生:不知道 — 問題診斷、錯誤分析、讀論文
參與科研的幾種方式1)跟著師兄、師姐從baseline開始做起
2)老師給題目、技術(shù)路徑,自己主要做實現(xiàn)
3)自己想idea,讓老師評估
如何投入足夠時間?1)同一物理時間,只能做一件事;
2)你做的事情,定義了你是什么樣的人;尤其當(dāng)你做選擇時:A還是B?
3)成為一個專家需要10000小時(3年全時PhD學(xué)習(xí)),365*10*3;
4)做出一個solid的工作:最聰明的學(xué)生也需要3個月以上的時間,大部分同學(xué)需要6-12個月。
客觀地說,科研學(xué)術(shù)只是一條小眾路線,并不適合所有人。因為它和做項目不同,做科研付出的成本和收獲很可能不對等。
比如一個一心搞research的同學(xué),跟了一個放養(yǎng)型導(dǎo)師,埋頭苦干了3年結(jié)果沒發(fā)出一篇A/B類頂會,那碩士期間的產(chǎn)出幾乎等于 nothing。
在正式開始科研前,請先認(rèn)真思考自己的興趣愛好、性格特質(zhì)是什么;coding,英文閱讀寫作能否cover;是一時熱血還是真心喜歡research?
想明白了這些,方向就不容易跑偏,剩下的只需要努力+堅持就可以了!
如果真能在碩博期間在科研上有所建樹,畢業(yè)時也具備了沖擊更高offer的實力(阿里星、騰訊大咖等),甚至可以考慮進(jìn)入高校繼續(xù)從事科研工作了。