機器學習入門指南(2021版)

↑↑↑點擊上方藍字,回覆資料,10個G的驚喜

大家好,我是老胡。

這是爲朋友社羣準備的一篇機器學習入門指南,分享了我機器學習之路看過的一些書、教程、視頻,還有學習經驗和建議,希望能對大家的學習有所幫助。

pdf版思維導圖,後臺回覆:指南

Python——書

之前跟出版社合作,書櫃裏積攢了很多Python相關的書,這裏推薦三本最有價值的吧:

  • 《流暢的Python》,很厚,比較全面,可以作爲工具書常常翻看。
  • 《 Python編程從入門到實踐(第2版)》 非常全面,對新手還算友好,裏面有很多的練習項目非常不錯。
  • 《利用Python進行數據分析·第2版》 數據分析入門必讀書,主要介紹了python 3個庫numpy(數組),pandas(數據分析)和matplotlib(繪圖)的學習。有開源版,就不用買了,下載鏈接及代碼如下:

https://github.com/iamseancheney/python_for_data_analysis_2nd_chinese_version

Python——教程

學習Python最好的入門線上教程,首推Python官方文檔
https://docs.python.org/zh-cn/3/tutorial/index.html

官方文檔足夠詳細和系統,但是內容太龐大,學習來會有點喫力,我建議只看tutorial即可,就是上面的鏈接。

直接啃官方文檔的教材,不如老師講給你聽來的效率高。廖雪峯的Python新手教程也是個不錯的選擇,每一節都有練習題,學習來更順暢,對新手很友好。
https://www.liaoxuefeng.com/wiki/1016959663602400

機器學習最常用的庫少不了Numpy 、Pandas 、Matplotlib這些庫我覺得看官方文檔就好了,不過英文不好的同學可能就不滿意了,這裏分別列一下這些庫的官方文檔和我覺得很不錯的中文教程,提醒一下哈,官方文檔只需要看我列出的鏈接即可。

Numpy
官方文檔:https://numpy.org/doc/stable/user/quickstart.html
中文教程:https://www.numpy.org.cn/user/quickstart.html
Pandas
官方文檔:https://pandas.pydata.org/docs/user_guide/10min.html
中文教程:https://www.pypandas.cn/docs/getting_started/10min.html
Matplotlib
官方文檔:https://matplotlib.org/stable/tutorials/introductory/usage.html
中文教程:https://www.matplotlib.org.cn/tutorials/

Python——視頻

實話實話,我沒有完整的看過任何Python視頻。歸根結底,Python入門很簡單,看視頻效率太低。傳言B站的[小甲魚]零基礎入門學習Python不錯,簡單看了一眼,確實0基礎。我們用Python是用來學機器學習的,喜歡看視頻學習的同學可以看看,建議只看P1-P53即可。

《零基礎入門學習Python》:https://www.bilibili.com/video/av27789609

機器學習——書

市面上凡推薦機器學習的書,都少不了李航的《統計學習方法》和周志華的《機器學習》,我當初也是看了大佬推薦,在這兩本書上耗費了極多的時間。但這兩本我覺得都不太適合入門,尤其是統計學習方法,簡直就是上等武功祕籍,太過精煉,啃起來太喫力。對比起來周老師的《機器學習》相對好點,其中有些公式推導有點跳,Datawhale 出了一本開源的《機器學習公式詳解》是個很好的補充(https://datawhalechina.github.io/pumpkin-book)。周世華的《機器學習》是必不可少的工具書,值得反覆閱讀,不過建議在看過視頻教程之後。


偏應用的書,只推薦一本,其他的都不要看!!!:《機器學習實戰:基於Scikit-Learn、Keras和TensorFlow(原書第2版)》,入門可以先看前 9 章。

市面上很少有書能夠把機器學習在業務層面的應用介紹清楚,比如模型解釋、模型上線,模型監控等等,沒有看到特別詳細的,有一本還算滿意,就是知名度比較低:《機器學習:軟件工程方法與實現》。

現在無論是競賽還是工業界,boost模型都應用十分廣泛,分類、迴歸、排序,XGBoost都能搞。 最後再介紹一本我認爲的必讀: 《深入理解XGBoost: 高效機器學習算法與進階》,作者是XGBoost開源社區貢獻者何龍。 這本書以機器學習基礎知識做鋪墊,深入剖析了XGBoost的原理、分佈式實現、模型優化、深度應用等。

機器學習——教程

教程沒有看到太好的,除了sklearn的文檔,只推薦吳恩達、李宏毅、林軒田三位老師的視頻課件。課件這裏不單獨列出來了,下載鏈接我放到思維導圖裏了。

Sklearn
官方文檔:https://scikit-learn.org/stable/user_guide.html
中文教程:https://sklearn.apachecn.org/

機器學習——視頻

與Python不同,機器學習基礎我覺得最好還是跟着視頻學,因爲初學機器學習算法,涉及很多公式推導,非常難理解,跟着視頻學起來會輕鬆不少。

視頻首推吳恩達的公開課,這是學習機器學習基礎知識的最好的課程。英語不好的同學也不要擔心,視頻是有中文字幕的。
https://www.bilibili.com/video/BV164411b7dx

作爲補充,時間充裕的同學可以看看臺大李宏毅的機器學習公開課,特點是中文授課,比較輕鬆愉快。

https://www.bilibili.com/video/BV1pE411g7Wi

時間更充裕的也可以看看林軒田的視頻課,只看基石部分即可。
https://www.bilibili.com/video/BV1Ft41197Dy

機器學習——數學基礎

數學基礎這一塊是個無底洞,不太建議大家耗費過多時間,用到了再補也不遲。

也不建議大家看書,基礎確實特別薄弱的同學,只推薦一本:《機器學習的數學》,這本書特別全面的介紹了微積分、線性代數、概率統計、信息論、隨機過程、圖論等內容。再強調一遍,此書僅適於基礎特別薄弱的同學,但凡有點基礎就別看書


我感覺機器學習中用到最多的應該是線代,喜歡看視頻的可以看看李宏毅的機器學習中的線性代數:
https://www.bilibili.com/video/BV1G7411f7BE/

或者3blue1brown:線性代數的本質
https://www.bilibili.com/video/BV1Ys411k7yQ

其他數學基礎相關的電子書,我也放到思維導圖中了。

一些經驗和建議

1、我敢肯定很多初學者都是資料收集愛好者,越攢越多反而不知道從何開始。我強烈建議把資料都扔掉,以我的這一套爲準,一以貫之的學下去。

2、就像前面我提到的,很多東西先不要深究,不要在某些地方卡太久(比如數學部分,比如編程基礎),先學下去,學完。瞭解大的框架之後,以後用到哪裏,再回過來補也不遲。

3、機器學習的各種算法沒必要樣樣精通,前期,常用的比如LR、樹模型、RF、XGBoost等等掌握好就不錯了。

4、我身邊一些優秀的程序員、分析師、工程師都非常推崇“做中學,學中做”,無論是書本還是視頻,看到一些好的方法和技巧,要立即自己實現一遍。看起來非常簡單的東西,真真動手的時候纔會發現自己的不足。快速學完上述內容就儘快開始實踐吧,可以先復現天池或kaggle上優秀的notebook,然後就參與一些入門競賽。

5、如果你已有工作,最好的還是在業務中尋找機器學習應用場景,然後嘗試去開發一個適用的模型。不懂就搜索,學習。這是我所知最好的,最有價值的學習方法。

6、輸出也是特別好的學習方式,輸出就是把新學到的知識用某種方式講給別人聽,做到讓他們也能理解、學會。我比較喜歡寫筆記(我常用的是微軟的OneNote),然後把筆記整理成文章發到博客上。這樣不僅使對自己知識掌握程度的一種檢驗,發現薄弱點,也可以讓大家共同監督,相互學習,教學相長。

OK,以上就是所有內容。大家也可以加一下老胡的微信(領取可編輯版思維導圖),相互交流,圍觀朋友圈~~~


    
    
    
 
    
    
    


推薦閱讀

(點擊標題可跳轉閱讀)

論機器學習領域的內卷

機器學習博士自救指南

機器學習必知必會的 6 種神經網絡類型

你見過的最全面的Python重點知識彙總

100天搞定機器學習:寫YAML配置文件

100天搞定機器學習:模型訓練好了,然後呢?

老鐵,三連支持一下,好嗎?↓↓↓


本文分享自微信公衆號 - 機器學習算法與Python實戰(tjxj666)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章