本科生如何自學機器學習?
作者:Frank Tian
https://www.zhihu.com/question/332726203/answer/737596538
入門
首先,你要知道什么是機器學習。
這里我推薦Andrew Ng的機器學習教程,比較適合新手和來自工業(yè)界對數學要求不是很高的同學。
這門課適合剛上大學的萌新們。
https://www.bilibili.com/video/av50747658
它有19個小時,我看完它用了將近兩個月,我建議你也不要看的太急。
當看完這些教程之后,你就對機器學習有了清晰的認知。
https://www.bilibili.com/video/av49445369
這門課同樣不難,不需要高深的數學知識,同樣是為新手們準備的。
深度學習的內容稍多,Andrew帶你粗略的了解了AI的一些方面,一共25個小時,我看完它花了三個月。
在期間我去實踐了他提到的各種優(yōu)化方法和技巧,閱讀了CV和NLP領域他提到的論文,并且找到輪子跑了跑。
我認為,深度學習的學習更重要的是實踐。
進階
接下來,你可以嘗試讀一些有公式推導的專業(yè)書籍了。
前提是你已經了解了線性代數,微積分和概率論的知識,當然,作為計算機系的同學,你一定掌握了離散數學。
我推薦《統(tǒng)計學習方法》,它適合接受能力正常的同學。
https://book.douban.com/subject/10590856/
因為我是接觸機器學習很久后才接觸到這本書的,因此我讀的很快,沒有印象到底讀了多久??傊@本書比較平易近人。
https://book.douban.com/subject/26708119/
這本書的覆蓋范圍非常廣,適合打算進一步深入這個領域的同學。
這本書是我機器學習的入門書籍,又愛又恨。
看這本書的同時你可能會感到數學基礎不夠,十分歡迎你補課凸優(yōu)化。
https://book.douban.com/subject/21249088/
https://www.bilibili.com/video/av40868517
李宏毅老師非常幽默風趣,上他的課是十分快樂的事情。
https://www.bilibili.com/video/av10590361
https://www.bilibili.com/video/av9770302
我真得真得非常喜歡他講的課,同時我認為你看完這些課之后會對機器學習(主要是深度學習部分,對,他幾乎不怎么講統(tǒng)計學習)有更深的認識。
這三個視頻分別是31,40,11個小時,我看完花了相當長的時間,如果你已經有一些接觸但是擔心他哪里講的太好沒聽到可惜,那么可以先瀏覽他的slides,slides做的也非常棒!
因為這本書開源了,我直接給你pdf:https://urlify.cn/JZFBJv
這本書是強化學習領域非常非常經典的教材,但是這本書寫的太磨嘰了!
不過我也沒有其他備選項,如果有讀過其他強化學習教材,感覺不錯的,歡迎補充。
深入
接下來該深入了解機器學習了,到了這個階段,你也不是大家口中的小白了。
統(tǒng)計學習方面,我推薦Pattern Recognition and Machine Learning
https://book.douban.com/subject/2061116/
這本書詳細的介紹了頻率派和貝葉斯派的思想,讀這本書的時候你會有一種恍然大悟的感覺。
注意網上的版本可能會有錯誤,參考這本書的勘誤。https://urlify.cn/ER7zie
https://book.douban.com/subject/26883982/
https://book.douban.com/subject/4007200/
它和前面那本Reinforcement Learning: An introduction一樣,非常全面,但缺點是太啰嗦了,英文版1200+頁,我沒讀完。
https://book.douban.com/subject/3294335/
https://book.douban.com/subject/1789534/
https://book.douban.com/subject/10758624/
可以看到,這些書的側重點都不同,這也是為什么我打算都讀一遍它們。
當然,如何找到合適的論文,這類問題在知乎已經有非常詳細的回答了。同時,知乎也是一個學習機器學習的好地方,這里有很多知識淵博的答主,他們在我剛入門的時候給了我非常大的幫助。
https://www.zhihu.com/question/332726203/answer/734365629
2.數學基礎。有些人覺得現在搞深度學習不需要啥數學基礎,但那樣只會淪為低級的調包俠,不能成長為一名合格的煉丹術士。機器學習(包括深度學習)需要的數學基礎包括:微積分(熟練掌握),凸優(yōu)化(熟練掌握),矩陣論(熟練掌握其中矩陣運算,各種分解等,并理解其含義),泛函分析(理解,如果不做相關內容,看著不眼生即可),高等概率論(理解,常用概率公式和概率定理)。數學不要光看,要聯系機器學習當中的實際應用一起理解。
3.編程基礎。常用的有python,MATLAB,C/C++等,理論上C/C++學好了,其他語言掌握特性和擴展包即可。
4.如何深入。找個靠譜的老師!找個靠譜的老師!找個靠譜的老師!翻到你們學院老師主頁,如有文章發(fā)表在NIPS,ACL,CVPR,ICLR,ICML等會議上,說明學術水平非常不錯。然后打聽其人品,人品可以,就聯系跟著做。靠譜的老師會直接帶你走入到一個細分領域的最前沿,節(jié)省大量的搜索時間。
https://www.zhihu.com/question/332726203/answer/756804600
推薦個我們學校的課程:https://urlify.cn/JJVv6v
在syllabus那一欄下面有所有的課件。我覺得Kilian是個很好的教授,講得非常清楚。(雖然我不怎么去上課。。)他的課件也是循序漸進挺有條理的。我感覺機器學習的傳統(tǒng)方法其實都是統(tǒng)計的各種運用。。所以如果題主統(tǒng)計學得好的話其實看起來應該沒有什么問題。在知道各種傳統(tǒng)模型背后的原理之后其實就可以去調參娛樂了。推薦再學個python,現在感覺python已經占領了機器學習領域。。
如果題主追求分析模型的能力,比如說分析一個SVM的最大error margin是多少這種東西,就屬于master level的課程了。類似于machine learning theory這種課。我能力有限無法做出評價。
課程后半段會討論深度學習的概念,這個學起來的感覺和傳統(tǒng)模型差別很大,挺魔性的。我覺得作為本科生題主只要能在不同場景下知道運用什么魔性,大概怎么調參,就可以了。如果以后還對這個領域感興趣的話可以讀研讀博深造。如果你想要練手的項目之類的我也可以試著去翻翻以前的作業(yè)。。
https://www.zhihu.com/question/332726203/answer/110691656
https://www.zhihu.com/question/332726203/answer/760396018
準備
循序漸進
練手
https://www.zhihu.com/question/332726203/answer/737205846
-END-
猜你喜歡(點擊下劃線即可跳轉閱讀
我腦洞大開,讓機器人來給我剪頭發(fā) 有一個懂機械、懂焊接、懂電子的爹是什么概念。。。
C++ 基礎知識!初學者必看!
酷!GitHub開發(fā)者自研火星車,開發(fā)教程全面開源
?最 后?? ?若覺得文章不錯,轉發(fā)分享,也是我們繼續(xù)更新的動力。 5T資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,PCB、FPGA、DSP、labview、單片機、等等! 在公眾號內回復「 更多資源 」,即可免費獲取,期待你的關注~ 長按識別圖中二維碼關注
免責聲明:本文內容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯系我們,謝謝!





