1?前言
前幾天惧浴,StrongerTang分享了《動手學(xué)深度學(xué)習(xí)》(點擊即可閱讀)腿堤,受到了不少朋友的肯定袭蝗。有朋友留言要求分享一下以Python 為基礎(chǔ)的機器學(xué)習(xí)實戰(zhàn)編程書籍:《Machine Learning In Action》徙赢,也就是中文版廣為流傳的《機器學(xué)習(xí)實戰(zhàn)》赂弓,小湯本著一直堅持的“好資源大家一起分享,共同學(xué)習(xí)懈贺,共同進步”的初衷经窖,于是便去找了資料坡垫,而且還是中英文兩個版本都有梭灿,分享給有需要的小伙伴,也希望有更多的朋友能在StrongerTang相遇冰悠。
《機器學(xué)習(xí)實戰(zhàn)》通過精心編排的實例堡妒,切入日常工作任務(wù),摒棄學(xué)術(shù)化語言溉卓,利用高效的可復(fù)用Python代碼來闡釋如何處理統(tǒng)計數(shù)據(jù)皮迟,進行數(shù)據(jù)分析及可視化搬泥。通過各種實例,讀者可從中學(xué)會機器學(xué)習(xí)的核心算法伏尼,并能將其運用于一些策略性任務(wù)中忿檩,如分類、預(yù)測爆阶、推薦燥透。另外,還可用它們來實現(xiàn)一些更高級的功能辨图,如匯總和簡化等班套。
《機器學(xué)習(xí)實戰(zhàn)》主要有?以下4 個優(yōu)點:
不調(diào)包,從0寫起實現(xiàn)主流機器學(xué)習(xí)算法故河;
所有代碼基于Python 3吱韭;
實例詳細分解,逐步指導(dǎo)使用算法跑出模型鱼的;
實戰(zhàn)與理論交叉理盆,通過實戰(zhàn)加深理論知識;
資料免費獲取
1.搜索?公凑阶,熏挎。-眾z,./號:?StrongerTang
2.回復(fù)關(guān)鍵詞:機器學(xué)習(xí)實戰(zhàn)
聲明:此資料免費分享,僅作知識分享晌砾,勿用于任何商業(yè)用途坎拐。贈人玫瑰,手有余香养匈!
2?簡介
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ·?·?·?·?·?·作者簡介??·?·?·?·?·?·
Peter Harrington
擁有電氣工程學(xué)士和碩士學(xué)位哼勇,他曾經(jīng)在美國加州和中國的英特爾公司工作7年。Peter擁有5項美國專利呕乎,在三種學(xué)術(shù)期刊上發(fā)表過文章积担。他現(xiàn)在是Zillabyte公司的首席科學(xué)家,在加入該公司之前猬仁,他曾擔(dān)任2年的機器學(xué)習(xí)軟件顧問帝璧。Peter在業(yè)余時間還參加編程競賽和建造3D打印機。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?·?·?·?·?·?·內(nèi)容簡介??·?·?·?·?·?·
《機器學(xué)習(xí)實戰(zhàn)》第一部分主要介紹機器學(xué)習(xí)基礎(chǔ)湿刽,以及如何利用算法進行分類的烁,并逐步介紹了多種經(jīng)典的監(jiān)督學(xué)習(xí)算法,如k近鄰算法诈闺、樸素貝葉斯算法渴庆、Logistic回歸算法、支持向量機、AdaBoost集成方法襟雷、基于樹的回歸算法和分類回歸樹(CART)算法等刃滓。第三部分則重點介紹無監(jiān)督學(xué)習(xí)及其一些主要算法:k均值聚類算法、Apriori算法耸弄、FP-Growth算法咧虎。第四部分介紹了機器學(xué)習(xí)算法的一些附屬工具。
主要面向希望了解深度學(xué)習(xí)计呈,特別是對實際使用深度學(xué)習(xí)感興趣的大學(xué)生老客、工程師和研究人員。閱讀本書不要求讀者有任何深度學(xué)習(xí)或者機器學(xué)習(xí)的背景知識震叮,讀者只需具備基本的數(shù)學(xué)和編程知識胧砰,如基礎(chǔ)的線性代數(shù)、微分苇瓣、概率及Python編程知識尉间。附錄中提供了書中涉及的主要數(shù)學(xué)知識,供讀者參考击罪。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ·?·?·?·?·?·目錄??·?·?·?·?·?·
第一部分 分類
第1章 機器學(xué)習(xí)基礎(chǔ)
1.1 何謂機器學(xué)習(xí)
1.2 關(guān)鍵術(shù)語
1.3 機器學(xué)習(xí)的主要任務(wù)
1.4 如何選擇合適的算法
1.5 開發(fā)機器學(xué)習(xí)應(yīng)用程序的步驟
1.6? ? Python語言的優(yōu)勢
1.7? ? NumPy函數(shù)庫基礎(chǔ)
1.8 本章小結(jié)
第2章 k-近鄰算法?
2.1? ? ?k-近鄰算法概述
2.2 示例:使用k-近鄰算法改進約會網(wǎng)站的配對效果
2.3 示例:手寫識別系統(tǒng)
2.4 本章小結(jié)
第3章 決策樹
3.1 決策樹的構(gòu)造
3.2 在Python中使用Matplotlib注解繪制樹形圖
3.3 測試和存儲分類器
3.4 示例:使用決策樹預(yù)測隱形眼鏡類型
3.5 本章小結(jié)
第4章 基于概率論的分類方法:樸素貝葉斯
4.1 基于貝葉斯決策理論的分類方法
4.2 條件概率
4.3 使用條件概率來分類
4.4 使用樸素貝葉斯進行文檔分類
4.5 使用Python進行文本分類
4.6 示例:使用樸素貝葉斯過濾垃圾郵件
4.7 示例:使用樸素貝葉斯分類器從個人廣告中獲取區(qū)域傾向
4.8 本章小結(jié)
第5章 Logistic回歸?
5.1 基于Logistic回歸和Sigmoid函數(shù)的分類
5.2 基于最優(yōu)化方法的最佳回歸系數(shù)確定
5.3 示例:從疝氣病癥預(yù)測病馬的死亡率
5.4 本章小結(jié)
第6章 支持向量機
6.1 基于最大間隔分隔數(shù)據(jù)
6.2 尋找最大間隔
6.3? ??SMO高效優(yōu)化算法
6.4 利用完整Platt SMO算法加速優(yōu)化
6.5 在復(fù)雜數(shù)據(jù)上應(yīng)用核函數(shù)
6.6 示例:手寫識別問題回顧
6.7 本章小結(jié)
第7章 利用AdaBoost元算法提高分類性能
7.1 基于數(shù)據(jù)集多重抽樣的分類器
7.2 訓(xùn)練算法:基于錯誤提升分類器的性能
7.3 基于單層決策樹構(gòu)建弱分類器
7.4 完整AdaBoost算法的實現(xiàn)
7.5 測試算法:基于AdaBoost的分類
7.6 示例:在一個難數(shù)據(jù)集上應(yīng)用AdaBoost
7.7 非均衡分類問題
7.8 本章小結(jié)
第二部分 利用回歸預(yù)測數(shù)值型數(shù)據(jù)
第8章 預(yù)測數(shù)值型數(shù)據(jù):回歸
8.1 用線性回歸找到最佳擬合直線
8.2 局部加權(quán)線性回歸
8.3 示例:預(yù)測鮑魚的年齡
8.4 縮減系數(shù)來“理解”數(shù)據(jù)
8.5 權(quán)衡偏差與方差
8.6 示例:預(yù)測樂高玩具套裝的價格
8.7 本章小結(jié)
第9章 樹回歸
9.1 復(fù)雜數(shù)據(jù)的局部性建模
9.2 連續(xù)和離散型特征的樹的構(gòu)建
9.3 將CART算法用于回歸
9.4 樹剪枝
9.5 模型樹
9.6 示例:樹回歸與標準回歸的比較
9.7 使用Python的Tkinter庫創(chuàng)建GUI
9.8 本章小結(jié)
第三部分 無監(jiān)督學(xué)習(xí)
第10章 利用K-均值聚類算法對未標注數(shù)據(jù)分組
10.1? ? ?K-均值聚類算法
10.2 使用后處理來提高聚類性能
10.3 二分K-均值算法
10.4 示例:對地圖上的點進行聚類
10.5 本章小結(jié)
第11章 使用Apriori算法進行關(guān)聯(lián)分析
11.1 關(guān)聯(lián)分析
11.2? ? Apriori原理
11.3 使用Apriori算法來發(fā)現(xiàn)頻繁集
11.4 從頻繁項集中挖掘關(guān)聯(lián)規(guī)則
11.5 示例:發(fā)現(xiàn)國會投票中的模式
11.6 示例:發(fā)現(xiàn)毒蘑菇的相似特征
11.7 本章小結(jié)
第12章 使用FP-growth算法來高效發(fā)現(xiàn)頻繁項集
12.1 ?? FP樹:用于編碼數(shù)據(jù)集的有效方式
12.2 構(gòu)建FP樹
12.3 從一棵FP樹中挖掘頻繁項集
12.4 示例:在Twitter源中發(fā)現(xiàn)一些共現(xiàn)詞
12.5 示例:從新聞網(wǎng)站點擊流中挖掘
12.6 本章小結(jié)
第四部分 其他工具
第13章 利用PCA來簡化數(shù)據(jù)
13.1 降維技術(shù)
13.2 ?? PCA13.3 示例:利用PCA對半導(dǎo)體制造數(shù)據(jù)降維
13.4 本章小結(jié)
第14章 利用SVD簡化數(shù)據(jù)
14.1? ? SVD的應(yīng)用
14.2 矩陣分解
14.3 利用Python實現(xiàn)SVD
14.4 基于協(xié)同過濾的推薦引擎
14.5 示例:餐館菜肴推薦引擎
14.6 基于SVD的圖像壓縮
14.7 本章小結(jié)
第15章 大數(shù)據(jù)與MapReduce
15.1 ?? ?MapReduce:分布式計算的框架
15.2? ??Hadoop流
15.3 在Amazon網(wǎng)絡(luò)服務(wù)上運行Hadoop程序
15.4? ? MapReduce上的機器學(xué)習(xí)
15.5 在Python中使用mrjob來自動化MapReduce
15.6 示例:分布式SVM的Pegasos算法
15.7 你真的需要MapReduce嗎哲嘲?
15.8 本章小結(jié)
附錄A? Python入門
附錄B? 線性代數(shù)
附錄C? 概率論復(fù)習(xí)
附錄D? 資源
小湯本著交流學(xué)習(xí)的角度,在文末分享了該書的電子版媳禁,需要的小伙伴可以免費下載獲取眠副。但請勿用于任何商業(yè)用途,僅供自身學(xué)習(xí)參考使用竣稽。
當(dāng)然囱怕,StrongerTang強烈支持該書版權(quán)所屬,對于喜歡紙質(zhì)實體書閱讀的朋友毫别,建議購買正版書籍閱讀娃弓。
4 源碼分享
原書配套的代碼是基于 Python2 實現(xiàn)的,而且部分代碼存在bug岛宦,西安電子科技大學(xué)的一名研二在讀學(xué)生wzy6642對書中的 Python 2 代碼重新做了整理台丛,全部代碼可在 Python3 環(huán)境下運行。所有的源程序中砾肺,文件夾名稱的命名規(guī)則為:算法名稱+對應(yīng)書中的第幾個案例挽霉,因為數(shù)據(jù)量比較大,所以少數(shù)幾個案例采用壓縮包上傳的方式变汪。
Python 3 代碼實現(xiàn)相應(yīng)的 GitHub 地址如下:
https://github.com/wzy6642/Machine-Learning-in-Action-Python3
除此之外侠坎,還有一位機器學(xué)習(xí)愛好者按照書中章節(jié)順序,使用 jupyter notebook疫衩,非常好地實現(xiàn)了基于 Python3 的源代碼(包括 .ipynb 文件)硅蹦。目前在 GitHub 上已經(jīng)超過 2000 star 了。地址如下:
https://github.com/pbharrin/machinelearninginaction