免費(fèi)的機(jī)器學(xué)習(xí)入門(mén)書(shū)籍和Python庫(kù)

因B站專欄目前只支持內(nèi)部鏈接,文中外鏈均被消掉,詳細(xì)原文請(qǐng)移步:
- 知乎專欄:https://zhuanlan.zhihu.com/p/642019175
-?博客:https://facaiy.com/misc/2017/06/04/ml-library-of-python.html
在工作生活中,會(huì)有同事朋友初入門(mén)機(jī)器學(xué)習(xí),希望推薦下這方面的信息。為了一勞永逸,打算梳理下比較好的書(shū)籍,及Python生態(tài)圈常用的庫(kù),以供參考。
A. 書(shū)籍
入門(mén)書(shū)籍強(qiáng)烈推薦An Introduction to Statistical Learning with Application in R,官網(wǎng)提供了英文原版下載,非常良心。概覽目前常用的機(jī)器學(xué)習(xí)算法,一本足矣。唯一的遺憾是這本書(shū)都是R代碼,建議最好給合Python機(jī)器學(xué)習(xí)庫(kù)scikit-learn: User Guide,邊學(xué)邊試。
如果不滿足,它有本姊妹版The Elements of Statistical Learning: Data Mining, Inference, and Prediction,同樣官網(wǎng)有英文版下載。這本書(shū)注重?cái)?shù)理,難度很高,適合喜歡挑戰(zhàn)的朋友。
如果是深度學(xué)習(xí),入門(mén)可以看斯坦福2017季CS231n深度視覺(jué)識(shí)別課程視頻,講得很好,清晰明了。書(shū)籍建議讀Deep Learning,深入淺出,容易讀懂,官方提供了html版本,民間基于此制作了PDF版本,熱心網(wǎng)友開(kāi)源翻譯了中文版deeplearningbook-chinese(下載PDF閱讀)。
B. 必備工具
Anaconda發(fā)行版:專注于數(shù)據(jù)科學(xué)的Python發(fā)行版。即使Linux/Mac原生自帶Python,也請(qǐng)安裝使用它。原因是有二:
提供的
conda
包管理器,可以簡(jiǎn)單又正確地裝好后續(xù)推薦的庫(kù)。詳見(jiàn)Managing packages。支持建立不同的環(huán)境,并自由切換。詳見(jiàn)Managing Python。
Jupyter Notebook:這是交互式環(huán)境,邊寫(xiě)邊改邊看結(jié)果,非常便利。因?yàn)锳naconda發(fā)行版自帶此包,無(wú)需安裝。輸入如下命令即啟動(dòng):
jupyter notebook
C. 常用庫(kù)
0.1 數(shù)據(jù)處理
Pandas:非常好用的數(shù)學(xué)分析庫(kù)。它的文檔詳盡又豐富,強(qiáng)烈建議認(rèn)真看一遍。官方入門(mén)文檔:10 Minutes to pandas。
conda install pandas
Seaborn:數(shù)據(jù)可視化。制圖很美觀,有利于提升逼格。官方文檔也很棒。
conda install seaborn
0.2 機(jī)器學(xué)習(xí)
scikit-learn:流行的機(jī)器學(xué)習(xí)庫(kù),單機(jī)版。文檔詳盡,生態(tài)豐富,入手門(mén)檻較低。
conda install scikit-learn
PySpark:流行的工業(yè)用機(jī)器學(xué)習(xí)庫(kù),分布式版。官方文檔有限,入手門(mén)檻較高。python版本易學(xué)易用,scala/python版本建議學(xué)有余力也好好試試。安裝見(jiàn)官方說(shuō)明。
TensorFlow:大熱的深度學(xué)習(xí)庫(kù)。1.x版本抽象比較低級(jí),文檔散,入手門(mén)檻高;2.x版本默認(rèn)eager模式后易學(xué)易用。安裝詳細(xì)見(jiàn)官方文檔。
conda install -c conda-forge tensorflow
D. 擴(kuò)展
0.1 數(shù)學(xué)運(yùn)算
Numpy:數(shù)值計(jì)算庫(kù),偏底層。
Scipy:科學(xué)計(jì)算庫(kù),偏底層。
0.2 文字處理
Jieba:中文分詞庫(kù)。
0.3 圖像處理
OpenCV:流行的圖像處理庫(kù)。