本書介紹了實用機器學習的工作流程,主要從實用角度進行了描述,沒有數(shù)學公式和推導。本書涵蓋了數(shù)據(jù)收集與處理、模型構(gòu)建、評價和優(yōu)化、特征的識別、提取和選擇技術(shù)、高級特征工程、數(shù)據(jù)可視化技術(shù)以及模型的部署和安裝,結(jié)合3個真實案例全面、詳細地介紹了整個機器學習流程。后,還介紹了機器學習流程的擴展和大數(shù)據(jù)應用。
本書可以作為程序員、數(shù)據(jù)分析師、統(tǒng)計學家、數(shù)據(jù)科學家解決實際問題的參考書,也可以作為機器學習愛好者學習和應用的參考書,還可以作為非專業(yè)學生的機器學習入門參考書,以及專業(yè)學生的實踐參考書。
隨著阿爾法狗在圍棋領(lǐng)域高奏凱歌,人工智能領(lǐng)域已成為當前引人注目的風口,而機器學習又是這風口中的風頭勁的熱點。本書從實戰(zhàn)角度剖析了機器學習的知識原理,讀者無需擔心遇到難懂的數(shù)學公式和推導,就能夠?qū)C器學習的知識應用在自己熟悉的領(lǐng)域!秾嵱脵C器學習》還包含了三個機器學習真是應用的綜合案例,本書所有代碼資源都可以通過網(wǎng)絡下載,讀者還可以登錄GITHUB與全球的機器學習愛好者共同交流本書的學習體驗。
《實用機器學習》的讀者對象是針對想要把機器學習應用于實際問題的人。它詳細闡述了機器學習的主要組成部分:工作流程、算法和工具。關(guān)注點是著名算法的實際應用,而不是創(chuàng)建一個算法。構(gòu)建和使用機器學習模型的每個步驟都有詳細描述,并有從簡單到中等復雜的實例與之對應。
主要內(nèi)容
第1部分,“機器學習工作流程”介紹基本的機器學習工作流程,并分章節(jié)對每個步驟加以介紹。
第1章,“什么是機器學習”介紹機器學習的應用領(lǐng)域和用途。
第2章,“實用數(shù)據(jù)處理”,詳細介紹機器學習流程中的數(shù)據(jù)處理和準備工作。
第3章,“建模和預測”,介紹構(gòu)建簡單的機器學習模型,并利用應用廣泛的算法和庫進行預測。
第4章,“模型評估和優(yōu)化”,深入研究機器學習模型,并對其進行評估和性能優(yōu)化。
第5章,“基礎(chǔ)特征工程”,介紹利用領(lǐng)域知識對原始數(shù)據(jù)進行提高的常用方法。
第2部分,“實際應用”,介紹模型規(guī);蛷奈谋、圖片和時間序列數(shù)據(jù)中提取特征的技術(shù),來提高絕大多數(shù)現(xiàn)代機器學習的性能。本部分包括3個有完整實例的章節(jié)。
第6章,“實例:NYC出租車數(shù)據(jù)”,這是第一個完整實例章節(jié),會預測乘客的傾向性行為。
第7章,“高級特征工程”,包含高級特征工程過程,介紹從自然語言的文本、圖片和時序序列數(shù)據(jù)中提取有價值的數(shù)據(jù)。
第8章,“NLP高級案例:電影評論情感預測”,運用高級特征工程知識預測在線電影評論的情感。
第9章,“擴展機器學習流程”,介紹擴大機器學習系統(tǒng)的數(shù)據(jù)規(guī)模、預測吞吐量和降低預測間隔的技術(shù)。
第10章,“案例:數(shù)字顯示廣告”,構(gòu)建大型數(shù)據(jù)的模型,預測數(shù)字廣告點擊行為。
如何使用本書
如果你是機器學習新手,第1~5章將引導你學習研究和準備數(shù)據(jù)、特征工程、建模和模型評估過程。Python實例采用流行的數(shù)據(jù)處理、pandas和Scikit-Learn機器學習庫。第6~10章,包括3個實際機器學習案例、高級特征工程和優(yōu)化的話題。由于學習庫封裝了大部分的復雜性,因此代碼示例可以很容易地應用到你自己的機器學習系統(tǒng)中。
目標讀者
本書可以使程序員、數(shù)據(jù)分析師、統(tǒng)計學家、數(shù)據(jù)科學家和其他專業(yè)人士將機器學習應用于實際問題,或者簡單地理解它。他們將獲得實用數(shù)據(jù)建模、優(yōu)化和開發(fā)機器學習系統(tǒng)的經(jīng)驗,而沒必要了解特定算法的理論推導。機器學習的數(shù)學基礎(chǔ)是針對感興趣的人的,某些算法在較高的層次上進行解釋,本書提供給那些想深入學習的人,我們的焦點是獲得實際結(jié)果以解決手頭的問題。
代碼約定,下載和軟件需求
本書包含許多示例源代碼,或者以編號的清單出現(xiàn),或者嵌入在正文中,但無論哪種情況,都以固定寬度的這種字體顯示,以區(qū)別于正常的文本。
源代碼使用Python,pandas和Scikit-Learn編寫。與章節(jié)相應的iPython筆記文件可在GitHub上下載,地址為https://githubcom/brinkar/real-world-machine-learning,也可以通過關(guān)注機械工業(yè)出版社計算機分社官方微信訂閱號“IT有得聊”,輸入5位數(shù)號“56922”后獲得資源下載鏈接,還可以登錄golden-book.com搜索本書并進行下載。
筆記文件(擴展名為ipynb)與章節(jié)相對應。樣本數(shù)據(jù)包含在data文件夾中,只要必需的庫隨iPython一起安裝,那么所有的筆記文件都能執(zhí)行。圖形由matplotlib和Seaborn的pyplot模塊生成。
在有些情況下,由iPython產(chǎn)生的圖形被提取出來作為本書的插圖(為了適應打印質(zhì)量和電子書顯示,有些已經(jīng)做了修改)。
HenrikBrink(亨里克·布林克)是一名數(shù)據(jù)科學家,對應用機器學習進行工業(yè)和學術(shù)應用開發(fā)有著豐富的經(jīng)驗。
JosephRichards(約瑟夫W理查茲)也是一位數(shù)據(jù)科學家,具有應用統(tǒng)計和預測分析方面的專業(yè)知識。Henrik和Joseph是Wise.io的聯(lián)合創(chuàng)立者,Wise.io是一家提供工業(yè)機器學習解決方案的開發(fā)商。
MarkFetherolf(馬克·弗特羅夫)是數(shù)據(jù)管理和預測分析公司NuminaryDataScience的創(chuàng)始人和總裁。他曾在社會科學研究、化學工程、信息系統(tǒng)性能、容量規(guī)劃、有線電視和在線廣告應用等方面擔任統(tǒng)計師和分析數(shù)據(jù)庫開發(fā)人員。
目錄
推薦序
作者序
致謝
譯者序
關(guān)于本書
作者簡介
關(guān)于封面插圖
第1部分機器學習工作流程
第1章什么是機器學習
1.1理解機器學習
1.2使用數(shù)據(jù)進行決策
1.2.1傳統(tǒng)方法
1.2.2機器學習方法
1.2.3機器學習的五大優(yōu)勢
1.2.4面臨的挑戰(zhàn)
1.3跟蹤機器學習流程:從數(shù)據(jù)到部署
1.3.1數(shù)據(jù)集合和預處理
1.3.2數(shù)據(jù)構(gòu)建模型
1.3.3模型性能評估
1.3.4模型性能優(yōu)化
1.4提高模型性能的高級技巧
1.4.1數(shù)據(jù)預處理和特征工程
1.4.2用在線算法持續(xù)改進模型
1.4.3具有數(shù)據(jù)量和速度的規(guī);P
1.5總結(jié)
1.6本章術(shù)語
第2章實用數(shù)據(jù)處理
2.1起步:數(shù)據(jù)收集
2.1.1應包含哪些特征
2.1.2如何獲得目標變量的真實值
2.1.3需要多少訓練數(shù)據(jù)
2.1.4訓練集是否有足夠的代表性
2.2數(shù)據(jù)預處理
2.2.1分類特征
2.2.2缺失數(shù)據(jù)處理
2.2.3簡單特征工程
2.2.4數(shù)據(jù)規(guī)范化
2.3數(shù)據(jù)可視化
2.3.1馬賽克圖
2.3.2盒圖
2.3.3密度圖
2.3.4散點圖
2.4總結(jié)
2.5本章術(shù)語
第3章建模和預測
3.1基礎(chǔ)機器學習建模
3.1.1尋找輸入和目標間的關(guān)系
3.1.2尋求好模型的目的
3.1.3建模方法類型
3.1.4有監(jiān)督和無監(jiān)督學習
3.2分類:把數(shù)據(jù)預測到桶中
3.2.1構(gòu)建分類器并預測
3.2.2非線性數(shù)據(jù)與復雜分類
3.2.3多類別分類
3.3回歸:預測數(shù)值型數(shù)據(jù)
3.3.1構(gòu)建回歸器并預測
3.3.2對復雜的非線性數(shù)據(jù)進行回歸
3.4總結(jié)
3.5本章術(shù)語
第4章模型評估與優(yōu)化
4.1模型泛化:評估新數(shù)據(jù)的預測準確性
4.1.1問題:過度擬合與樂觀模型
4.1.2解決方案:交叉驗證
4.1.3交叉驗證的注意事項
4.2分類模型評估
4.2.1分類精度和混淆矩陣
4.2.2準確度權(quán)衡與ROC曲線
4.2.3多類別分類
4.3回歸模型評估
4.3.1使用簡單回歸性能指標
4.3.2檢驗殘差
4.4參數(shù)調(diào)整優(yōu)化模型
4.4.1機器學習算法和它們的調(diào)整參數(shù)
4.4.2網(wǎng)格搜索
4.5總結(jié)
4.6本章術(shù)語
第5章基礎(chǔ)特征工程
5.1動機:為什么特征工程很有用
5.1.1什么是特征工程
5.1.2使用特征工程的5個原因
5.1.3特征工程與領(lǐng)域?qū)I(yè)知識
5.2基本特征工程過程
5.2.1實例:事件推薦
5.2.2處理日期和時間特征
5.2.3處理簡單文本特征
5.3特征選擇
5.3.1前向選擇和反向消除
5.3.2數(shù)據(jù)探索的特征選擇
5.3.3實用特征選擇實例
5.4總結(jié)
5.5本章術(shù)語
第2部分實 際 應 用
第6章案例:NYC出租車數(shù)據(jù)
6.1數(shù)據(jù):NYC出租車旅程和收費信息
6.1.1數(shù)據(jù)可視化
6.1.2定義問題并準備數(shù)據(jù)
6.2建模
6.2.1基本線性模型
6.2.2非線性分類器
6.2.3包含分類特征
6.2.4包含日期-時間特征
6.2.5模型的啟示
6.3總結(jié)
6.4本章術(shù)語
第7章高級特征工程
7.1高級文本特征
7.1.1詞袋模型
7.1.2主題建模
7.1.3內(nèi)容拓展
7.2圖像特征
7.2.1簡單圖像特征
7.2.2提取物體和形狀
7.3時間序列特征
7.3.1時間序列數(shù)據(jù)的類型
7.3.2時間序列數(shù)據(jù)的預測
7.3.3經(jīng)典時間序列特征
7.3.4事件流的特征工程
7.4總結(jié)
7.5本章術(shù)語
第8章NLP高級案例:電影評論情感預測
8.1研究數(shù)據(jù)和應用場景
8.1.1數(shù)據(jù)集初探
8.1.2檢查數(shù)據(jù)
8.1.3應用場景有哪些
8.2提取基本NLP特征并構(gòu)建初始模型
8.2.1詞袋特征
8.2.2用樸素貝葉斯算法構(gòu)建模型
8.2.3tf-idf算法規(guī)范詞袋特征
8.2.4優(yōu)化模型參數(shù)
8.3高級算法和模型部署的考慮
8.3.1word2vec特征
8.3.2隨機森林模型
8.4總結(jié)
8.5本章術(shù)語
第9章擴展機器學習流程
9.1擴展前需考慮的問題
9.1.1識別關(guān)鍵點
9.1.2選取訓練數(shù)據(jù)子樣本代替擴展性
9.1.3可擴展的數(shù)據(jù)管理系統(tǒng)
9.2機器學習建模流程擴展
9.3預測擴展
9.3.1預測容量擴展
9.3.2預測速度擴展
9.4總結(jié)
9.5本章術(shù)語
第10章案例:數(shù)字顯示廣告
10.1顯示廣告
10.2數(shù)字廣告數(shù)據(jù)
10.3特征工程和建模策略
10.4數(shù)據(jù)大小和形狀
10.5奇異值分解
10.6資源估計和優(yōu)化
10.7建模
10.8K近鄰算法
10.9隨機森林算法
10.10其他實用考慮
10.11總結(jié)
10.12本章術(shù)語
10.13摘要和結(jié)論
附錄常用機器學習算法
名詞術(shù)語中英文對照