機(jī)器學(xué)習(xí)與R語(yǔ)言(原書(shū)第2版)
定 價(jià):69 元
叢書(shū)名:數(shù)據(jù)科學(xué)與工程技術(shù)叢書(shū)
- 作者:(美)布雷特·蘭茨(Brett Lantz)
- 出版時(shí)間:2017/3/1
- ISBN:9787111553281
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP181
- 頁(yè)碼:278
- 紙張:膠版紙
- 版次:1
- 開(kāi)本:16開(kāi)
本書(shū)共12章:第1章介紹機(jī)器學(xué)習(xí)的基本概念和理論,并介紹用于機(jī)器學(xué)習(xí)的R軟件環(huán)境的準(zhǔn)備;第2章介紹如何應(yīng)用R來(lái)管理數(shù)據(jù),進(jìn)行數(shù)據(jù)的探索分析和數(shù)據(jù)可視化;第3~9章介紹典型的機(jī)器學(xué)習(xí)算法,包括k近鄰分類算法、樸素貝葉斯算法、決策樹(shù)和規(guī)則樹(shù)、回歸預(yù)測(cè)、黑盒算法——神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)、關(guān)聯(lián)分析、k均值聚類,并給出大量的實(shí)際案例和詳細(xì)的分析步驟,例如乳腺癌的判斷、垃圾短信的過(guò)濾、貸款違約的預(yù)測(cè)、毒蘑菇的判別、醫(yī)療費(fèi)用的預(yù)測(cè)、建筑用混凝土強(qiáng)度的預(yù)測(cè)、光學(xué)字符的識(shí)別、超市購(gòu)物籃關(guān)聯(lián)分析以及市場(chǎng)細(xì)分等;第10章介紹模型性能評(píng)價(jià)的原理和方法;第11章給出提高模型性能的幾種常用方法;第12章討論用R進(jìn)行機(jī)器學(xué)習(xí)時(shí)可能遇到的一些高級(jí)專題,如特殊形式的數(shù)據(jù)、大數(shù)據(jù)集的處理、并行計(jì)算和GPU計(jì)算等技術(shù)。
前 言機(jī)器學(xué)習(xí)的核心是將信息轉(zhuǎn)化為具有可行性的情報(bào)的算法。這一事實(shí)使得機(jī)器學(xué)習(xí)非常適用于當(dāng)今的大數(shù)據(jù)時(shí)代。如果沒(méi)有機(jī)器學(xué)習(xí),要跟上海量的信息數(shù)據(jù)流幾乎是不可能的。
鑒于R不斷增長(zhǎng)的地位(R是一個(gè)跨平臺(tái)的、零成本的統(tǒng)計(jì)編程環(huán)境),現(xiàn)在是開(kāi)始使用機(jī)器學(xué)習(xí)的最好時(shí)代。R提供了一套功能強(qiáng)大且易于學(xué)習(xí)的工具,這些工具可以幫助你發(fā)現(xiàn)數(shù)據(jù)背后隱藏的信息。
通過(guò)把實(shí)踐案例研究與基本理論(你需要理解這些理論在后臺(tái)是如何運(yùn)行的)相結(jié)合,本書(shū)提供了將機(jī)器學(xué)習(xí)應(yīng)用到項(xiàng)目中所需要的全部知識(shí)。
本書(shū)涵蓋的內(nèi)容第1章介紹了用來(lái)定義和區(qū)分機(jī)器學(xué)習(xí)算法的術(shù)語(yǔ)和概念,并給出了將學(xué)習(xí)任務(wù)與適當(dāng)算法相匹配的方法。
第2章提供了一個(gè)在R中自己實(shí)際動(dòng)手操作數(shù)據(jù)的機(jī)會(huì),并討論了基本的數(shù)據(jù)結(jié)構(gòu)以及用于載入、探索和理解數(shù)據(jù)的程序。
第3章教你如何將一個(gè)簡(jiǎn)單且功能強(qiáng)大的學(xué)習(xí)算法應(yīng)用于你的第一個(gè)學(xué)習(xí)任務(wù):識(shí)別癌癥的惡性樣本。
第4章揭示了用于先進(jìn)的垃圾郵件過(guò)濾系統(tǒng)的概率的基本概念,并且在建立你自己的垃圾郵件過(guò)濾器的過(guò)程中,你將學(xué)習(xí)文本挖掘的基本知識(shí)。
第5章探索兩種學(xué)習(xí)算法,它們的預(yù)測(cè)不僅精確而且容易解釋。我們將把這兩種算法應(yīng)用于對(duì)透明度要求很高的任務(wù)中。
第6章介紹了用于數(shù)值預(yù)測(cè)的機(jī)器學(xué)習(xí)算法。由于這些技術(shù)在很大程度上來(lái)源于統(tǒng)計(jì)領(lǐng)域,所以你還將通過(guò)學(xué)習(xí)必要的基本指標(biāo)來(lái)理解數(shù)值之間的關(guān)系。
第7章包括兩個(gè)極其復(fù)雜但功能強(qiáng)大的機(jī)器學(xué)習(xí)算法。盡管數(shù)學(xué)可能會(huì)讓人望而生畏,但是我們將以簡(jiǎn)單的術(shù)語(yǔ),結(jié)合實(shí)際例子來(lái)說(shuō)明它們內(nèi)部的運(yùn)作原理。
第8章揭示了許多零售商使用的推薦系統(tǒng)的算法。如果你想知道零售商是如何比你自己更了解你的購(gòu)物習(xí)慣的,本章將揭示他們的秘密。
第9章介紹k均值聚類。該算法用來(lái)查找相關(guān)個(gè)體的聚類。我們將使用該算法來(lái)確定一個(gè)網(wǎng)絡(luò)社區(qū)內(nèi)的分布。
第10章提供了度量機(jī)器學(xué)習(xí)項(xiàng)目是否成功的信息,并提供了機(jī)器學(xué)習(xí)算法在未來(lái)數(shù)據(jù)上性能的可靠估計(jì)。
第11章揭示了在機(jī)器學(xué)習(xí)競(jìng)賽中排名最靠前的團(tuán)隊(duì)所采用的方法。如果你具有競(jìng)爭(zhēng)意識(shí),或者僅僅想獲取數(shù)據(jù)中盡可能多的信息,那么需要學(xué)習(xí)這些技術(shù)。
第12章探討了機(jī)器學(xué)習(xí)的前沿主題。從使用大數(shù)據(jù)到使R的運(yùn)行速度更快,涉及的這些主題將幫助你拓展使用R進(jìn)行數(shù)據(jù)挖掘的界限。
學(xué)習(xí)本書(shū)的知識(shí)準(zhǔn)備本書(shū)中的例子是基于Microsoft Windows和Mac OS X系統(tǒng)的R 3.2.0進(jìn)行編寫(xiě)與測(cè)試的,當(dāng)然,對(duì)于任意最新的R版本,這些例子基本上都能運(yùn)行。
本書(shū)讀者對(duì)象本書(shū)適用于任何希望使用數(shù)據(jù)來(lái)采取行動(dòng)的人;蛟S你已經(jīng)對(duì)機(jī)器學(xué)習(xí)有些了解但從來(lái)沒(méi)有使用過(guò)R,或許你已經(jīng)對(duì)R有些了解但機(jī)器學(xué)習(xí)對(duì)于你來(lái)說(shuō)是全新的知識(shí),無(wú)論何種情況,本書(shū)將讓你快速上手。稍微熟悉一些基本的數(shù)學(xué)和編程概念將是有幫助的,但先前的經(jīng)驗(yàn)并不是必需的,你只需要有好奇心就行。
本書(shū)約定在本書(shū)中,你將發(fā)現(xiàn)一些用于區(qū)分不同類型信息的文本樣式。下面是這些樣式的一些例子,以及它們的含義解釋。
文本中的代碼字、數(shù)據(jù)庫(kù)表名、文件夾名、文件名、文件擴(kuò)展名、路徑名、虛擬URL、用戶輸入和Twitter句柄如下所示:“安裝一個(gè)添加包的最直接方式是通過(guò)install.packages()函數(shù)!
代碼段如下所示:
任何命令行輸入或輸出如下所示:
新的術(shù)語(yǔ)(new term)和重要詞匯(important word)以黑體顯示。你在屏幕上看到的單詞,例如,在菜單或?qū)υ捒蛑锌吹降膯卧~,像這樣出現(xiàn)在文本中:“CRAN頁(yè)面左邊的任務(wù)視圖鏈接提供添加包的長(zhǎng)列表!
警告或者重要注釋。
提示和技巧。
致謝沒(méi)有家人和朋友的支持,編寫(xiě)本書(shū)根本是不可能的。特別地,我要非常感謝我的妻子Jessica在過(guò)去的一年中對(duì)我的耐心與鼓勵(lì)。在我的兒子Will出生時(shí)第1版的寫(xiě)作正在進(jìn)行中,在我的寫(xiě)作中他分散了我較多的精力,在本書(shū)出版后他很快就要成長(zhǎng)為一名大男孩。不知道是相關(guān)還是因果,仿佛每次我打開(kāi)本書(shū),我的家人都會(huì)在我的眼前出現(xiàn)!我把本書(shū)獻(xiàn)給我的孩子們,希望有一天他們能從中受到啟發(fā),應(yīng)對(duì)重大的挑戰(zhàn),并跟隨他們的好奇心,無(wú)論他們的好奇心會(huì)通向哪里。
我還要感謝支持本書(shū)的很多人。本書(shū)的很多想法來(lái)源于我與密歇根大學(xué)、圣母大學(xué)以及中佛羅里達(dá)大學(xué)的教育工作者、同事以及合作者的互動(dòng)。此外,如果沒(méi)有各位研究人員以公開(kāi)出版物、課程和源代碼的形式分享他們的專業(yè)知識(shí),本書(shū)可能根本就不會(huì)存在。最后,我要感謝R團(tuán)隊(duì)和所有那些貢獻(xiàn)R添加包的人員的努力,是他們的努力最終為大家普及了機(jī)器學(xué)習(xí)。我真心希望我的研究是機(jī)器學(xué)習(xí)這塊馬賽克中有價(jià)值的一片圖案。
目 錄
推薦序
譯者序
前言
關(guān)于審稿人
第1章 機(jī)器學(xué)習(xí)簡(jiǎn)介1
1.1 機(jī)器學(xué)習(xí)的起源1
1.2 機(jī)器學(xué)習(xí)的使用與濫用3
1.2.1 機(jī)器學(xué)習(xí)的成功使用3
1.2.2 機(jī)器學(xué)習(xí)的限制4
1.2.3 機(jī)器學(xué)習(xí)的倫理方面5
1.3 機(jī)器如何學(xué)習(xí)6
1.3.1 數(shù)據(jù)存儲(chǔ)7
1.3.2 抽象化7
1.3.3 一般化9
1.3.4 評(píng)估10
1.4 實(shí)踐中的機(jī)器學(xué)習(xí)11
1.4.1 輸入數(shù)據(jù)的類型11
1.4.2 機(jī)器學(xué)習(xí)算法的類型12
1.4.3 為輸入數(shù)據(jù)匹配算法14
1.5 使用R進(jìn)行機(jī)器學(xué)習(xí)15
1.5.1 安裝R添加包15
1.5.2 載入和卸載R添加包16
1.6 總結(jié)16
第2章 數(shù)據(jù)的管理和理解18
2.1 R數(shù)據(jù)結(jié)構(gòu)18
2.1.1 向量18
2.1.2 因子20
2.1.3 列表21
2.1.4 數(shù)據(jù)框23
2.1.5 矩陣和數(shù)組25
2.2 用R管理數(shù)據(jù)27
2.2.1 保存、載入和移除R數(shù)據(jù)結(jié)構(gòu)27
2.2.2 用CSV文件導(dǎo)入和保存數(shù)據(jù)28
2.3 探索和理解數(shù)據(jù)29
2.3.1 探索數(shù)據(jù)的結(jié)構(gòu)29
2.3.2 探索數(shù)值變量30
2.3.3 探索分類變量38
2.3.4 探索變量之間的關(guān)系40
2.4 總結(jié)43
第3章 懶惰學(xué)習(xí)—使用近鄰分類44
3.1 理解近鄰分類44
3.1.1 kNN算法45
3.1.2 為什么kNN算法是懶惰的50
3.2 例子—用kNN算法診斷乳腺癌51
3.2.1 第1步—收集數(shù)據(jù)51
3.2.2 第2步—探索和準(zhǔn)備數(shù)據(jù)52
3.2.3 第3步—基于數(shù)據(jù)訓(xùn)練模型55
3.2.4 第4步—評(píng)估模型的性能56
3.2.5 第5步—提高模型的性能57
3.3 總結(jié)59
第4章 概率學(xué)習(xí)—樸素貝葉斯分類60
4.1 理解樸素貝葉斯60
4.1.1 貝葉斯方法的基本概念61
4.1.2 樸素貝葉斯算法65
4.2 例子—基于貝葉斯算法的手機(jī)垃圾短信過(guò)濾69
4.2.1 第1步—收集數(shù)據(jù)69
4.2.2 第2步—探索和準(zhǔn)備數(shù)據(jù)70
4.2.3 第3步—基于數(shù)據(jù)訓(xùn)練模型81
4.2.4 第4步—評(píng)估模型的性能82
4.2.5 第5步—提高模型的性能83
4.3 總結(jié)84
第5章 分而治之—應(yīng)用決策樹(shù)和規(guī)則進(jìn)行分類85
5.1 理解決策樹(shù)85
5.1.1 分而治之86
5.1.2 C5.0決策樹(shù)算法89
5.2 例子—使用C5.0決策樹(shù)識(shí)別高風(fēng)險(xiǎn)銀行貸款91
5.2.1 第1步—收集數(shù)據(jù)92
5.2.2 第2步—探索和準(zhǔn)備數(shù)據(jù)92
5.2.3 第3步—基于數(shù)據(jù)訓(xùn)練模型94
5.2.4 第4步—評(píng)估模型的性能97
5.2.5 第5步—提高模型的性能97
5.3 理解分類規(guī)則101
5.3.1 獨(dú)立而治之101
5.3.2 1R算法103
5.3.3 RIPPER算法104
5.3.4 來(lái)自決策樹(shù)的規(guī)則105
5.3.5 什么使決策樹(shù)和規(guī)則貪婪106
5.4 例子—應(yīng)用規(guī)則學(xué)習(xí)算法識(shí)別有毒的蘑菇108
5.4.1 第1步—收集數(shù)據(jù)108
5.4.2 第2步—探索和準(zhǔn)備數(shù)據(jù)108
5.4.3 第3步—基于數(shù)據(jù)訓(xùn)練模型109
5.4.4 第4步—評(píng)估模型的性能111
5.4.5 第5步—提高模型的性能112
5.5 總結(jié)114
第6章 預(yù)測(cè)數(shù)值型數(shù)據(jù)—回歸方法115
6.1 理解回歸115
6.1.1 簡(jiǎn)單線性回歸117
6.1.2 普通最小二乘估計(jì)119
6.1.3 相關(guān)性120
6.1.4 多元線性回歸121
6.2 例子—應(yīng)用線性回歸預(yù)測(cè)醫(yī)療費(fèi)用124
6.2.1 第1步—收集數(shù)據(jù)124
6.2.2 第2步—探索和準(zhǔn)備數(shù)據(jù)125
6.2.3 第3步—基于數(shù)據(jù)訓(xùn)練模型129
6.2.4 第4步—評(píng)估模型的性能131
6.2.5 第5步—提高模型的性能132
6.3 理解回歸樹(shù)和模型樹(shù)134
6.4 例子—用回歸樹(shù)和模型樹(shù)估計(jì)葡萄酒的質(zhì)量136
6.4.1 第1步—收集數(shù)據(jù)137
6.4.2 第2步—探索和準(zhǔn)備數(shù)據(jù)137
6.4.3 第3步—基于數(shù)據(jù)訓(xùn)練模型139
6.4.4 第4步—評(píng)估模型的性能142
6.4.5 第5步—提高模型的性能143
6.5 總結(jié)145
第7章 黑箱方法—神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)147
7.1理解神經(jīng)網(wǎng)絡(luò)147
7.1.1從生物神經(jīng)元到人工神經(jīng)元148
7.1.2激活函數(shù)149
7.1.3網(wǎng)絡(luò)拓?fù)?51
7.1.4用后向傳播訓(xùn)練神經(jīng)網(wǎng)絡(luò)154
7.2例子—用人工神經(jīng)網(wǎng)絡(luò)對(duì)混凝土的強(qiáng)度進(jìn)行建模155
7.2.1第1步—收集數(shù)據(jù)155
7.2.2第2步—探索和準(zhǔn)備數(shù)據(jù)156
7.2.3第3步—基于數(shù)據(jù)訓(xùn)練模型157
7.2.4第4步—評(píng)估模型的性能159
7.2.5第5步—提高模型的性能159
7.3理解支持向量機(jī)161
7.3.1用超平面分類161
7.3.2對(duì)非線性空間使用核函數(shù)164
7.4例子—用支持向量機(jī)進(jìn)行光學(xué)字符識(shí)別166
7.4.1第1步—收集數(shù)據(jù)166
7.4.2第2步—探索和準(zhǔn)備數(shù)據(jù)167
7.4.3第3步—基于數(shù)據(jù)訓(xùn)練模型168
7.4.4第4步—評(píng)估模型的性能170
7.4.5第5步—提高模型的性能171
7.5總結(jié)172
第8章 探尋模式—基于關(guān)聯(lián)規(guī)則的購(gòu)物籃分析173
8.1理解關(guān)聯(lián)規(guī)則173
8.1.1用于關(guān)聯(lián)規(guī)則學(xué)習(xí)的Apriori算法174
8.1.2度量規(guī)則興趣度—支持度和置信度175
8.1.3用Apriori原則建立規(guī)則176
8.2例子—用關(guān)聯(lián)規(guī)則確定經(jīng)常一起購(gòu)買的食品雜貨177
8.2.1第1步—收集數(shù)據(jù)177
8.2.2第2步—探索和準(zhǔn)備數(shù)據(jù)178
8.2.3第3步—基于數(shù)據(jù)訓(xùn)練模型183
8.2.4第4步—評(píng)估模型的性能185
8.2.5第5步—提高模型的性能187
8.3總結(jié)190
第9章 尋找數(shù)據(jù)的分組—k均值聚類191
9.1理解聚類191
9.1.1聚類—一種機(jī)器學(xué)習(xí)任務(wù)192
9.1.2k均值聚類算法193
9.2例子—用k均值聚類探尋青少年市場(chǎng)細(xì)分198
9.2.1第1步—收集數(shù)據(jù)199
9.2.2第2步—探索和準(zhǔn)備數(shù)據(jù)199
9.2.3第3步—基于數(shù)據(jù)訓(xùn)練模型203
9.2.4第4步—評(píng)估模型的性能205
9.2.5第5步—提高模型的性能207
9.3總結(jié)208