機器學習是人工智能的核心,而統(tǒng)計思維則是機器學習方法的核心:從隨機性中尋找規(guī)律性。例如,利用損失最小化思想制定學習策略,采用概率最大化思想估計模型參數,利用方差對不確定性的捕捉構造 k維樹,采用貝葉斯公式構建分類決策模型,等等。只有樹立正確的統(tǒng)計思維,才能準確高效地運用機器學習方法開展數據處理與分析。本書以統(tǒng)計思維的視角,揭示監(jiān)督學習中回歸和分類模型的核心思想,幫助讀者構建理論體系。具體模型包括線性回歸模型、K近鄰模型、貝葉斯推斷、邏輯回歸模型、最大熵模型、決策樹模型、感知機模型、支持向量機、EM算法和提升方法。
本書共 12章,緒論介紹貫穿本書的兩大思維模式,以及關于全書的閱讀指南;第 1章介紹一些基本術語,并給出監(jiān)督學習的流程;第 2章介紹關于回歸問題的機器學習方法;第 3~9章介紹關于分類問題的機器學習方法;第 10章介紹可應用于具有隱變量模型的參數學習算法EM算法;第 11章簡單介紹集成學習,并重點闡述其中的提升(Boosting)
方法。為滿足個性化學習需求的不同需求,本書從核心思想、方法流程及實際案例應用等不同角度,詳細描述各種方法的原理和實用價值,非常適合數據科學、機器學習專業(yè)的本科生和研究生學習,也可供相關從業(yè)者參考。
前言
2018年,一位計算機專業(yè)的朋友自學機器學習內容,期間遇到諸多困難,尤其是關于概率與統(tǒng)計學方面的內容,這一現象讓我開始關注統(tǒng)計學與機器學習這兩個領域。李航老師的《統(tǒng)計學習方法》可以說是一本與統(tǒng)計學接軌最多的書籍,也讓我萌生了與大家分享統(tǒng)計學與機器學習的想法。雖然機器學習的發(fā)展有其獨特的發(fā)展歷程,但是很多模型和算法的理論基礎仍然來自于統(tǒng)計學。因此,我們需要從統(tǒng)計學的角度來理解機器學習模型的本質。
在朋友們的鼓勵下,我決定以《統(tǒng)計學習方法》為藍本,制作知識型視頻。入駐 B站后,從最初寥寥的幾十名粉絲,到幾百名粉絲,再到現在的將近三萬名粉絲。這些人中有一部分是學生,如剛畢業(yè)的高中生、本科生、碩士生和博士生;還有一部分是從業(yè)者,如高校教師、企業(yè)或公司的在職人員。大家志同道合、匯聚于此。與各位的互動交流讓我加深了理解,開闊了視野,拓寬了思路。真誠地感謝各位小伙伴們長期以來的支持!是你們的支持讓我有勇氣繼續(xù)錄制視頻并貫徹始終。
自古以來,學者們便一直在探尋萬物本源,尋找真理。如今,人工智能已經成為科技領域的一大熱點,機器學習更是其中最為核心的研究方向之一。在機器學習領域,很多人關注算法的實現和結果,卻忽略了算法背后的理論基礎。而在這一領域,概率和統(tǒng)計學是不可或缺的。希望本書的出版為展示機器學習背后的統(tǒng)計學原理提供綿薄之力。
為滿足不同年齡和不同專業(yè)讀者的需求,我們?yōu)榇蠹屹N心地準備了主體書與小冊子。主體書以機器學習模型為主,每一章都清晰透徹地解析了模型原理,書中的每一頁都設計了留白,方便讀者批注;小冊子用于查閱碎片化的知識點,便于讀者隨時復習需要的數學概念。書中不僅有機器學習的理論知識,還有故事和案例,希望各位讀者在閱讀本書的過程中能夠感受到機器學習中統(tǒng)計思維的魅力,獲得科學思維方法的啟迪并具有獨立的創(chuàng)新思辨能力。
最后,我要感謝清華大學出版社的楊迪娜編輯,是她讓我有了寫書的想法,將我積累多年的機器學習中的統(tǒng)計思維知識分享給讀者,更感謝她為本書立項、編校與出版所付出的辛勤勞動,同時感謝清華大學出版社對本書的支持。感謝所有嗶哩嗶哩、機器學習中的統(tǒng)計思維 (Python實現)公眾號和知乎上的粉絲對我的關注、留言、提問與批評。感謝來自天津大學的馬曉慧幫助整理視頻講義。感謝家人帶給我的靈感、快樂與溫暖。限于本人水平,書中的缺點和不足之處在所難免,熱忱歡迎各位讀者批評指正。
董平
2023年 9月
目錄
緒論1
0.1本書講什么,初衷是什么 1
0.2貫穿本書的兩大思維模式 3
0.2.1提問的思維方式 3
0.2.2發(fā)散的思維方式 4
0.3這本書決定它還想要這樣 5
0.3.1第一性原理 . 5
0.3.2奧卡姆剃刀原理 7
0.4如何使用本書 8
第 1章步入監(jiān)督學習之旅 .11
1.1機器學習從數據開始 11
1.2監(jiān)督學習是什么 . 14
1.2.1基本術語 16
1.2.2學習過程如同一場科學推理 17
1.3如何評價模型的好壞 21
1.3.1評價模型的量化指標 21
1.3.2擬合能力 24
1.3.3泛化能力 24
1.4損失最小化思想 . 25
1.5怎樣理解模型的性能:方差-偏差折中思想 . 27
1.6如何選擇最優(yōu)模型 28
1.6.1正則化:對模型復雜程度加以懲罰 28
1.6.2交叉驗證:樣本的多次重復利用 . 30
1.7本章小結 . 31
1.8習題 31
第 2章線性回歸模型 33
2.1探尋線性回歸模型 33
2.1.1諾貝爾獎中的線性回歸模型 33
2.1.2回歸模型的誕生 34
2.1.3線性回歸模型結構 . 38
2.2最小二乘法 39
2.2.1回歸模型用哪種損失:平方損失 . 40
機器學習中的統(tǒng)計思維 (Python實現)
2.2.2如何估計模型參數:最小二乘法 . 41
2.3線性回歸模型的預測 44
2.3.1一元線性回歸模型的預測 . 44
2.3.2多元線性回歸模型的預測 . 48
2.4拓展部分:嶺回歸與套索回歸 . 49
2.4.1嶺回歸 50
2.4.2套索回歸 51
2.5案例分析共享單車數據集 . 53
2.6本章小結 . 56
2.7習題 57
第 3章 K近鄰模型 59
3.1鄰友思想 . 59
3.2 K近鄰算法. 60
3.2.1聚合思想 60
3.2.2 K近鄰模型的具體算法 61
3.2.3 K近鄰算法的三要素 . 63
3.2.4 K近鄰算法的可視化 . 67
3.3最近鄰分類器的誤差率 . 67
3.4 k維樹. 70
3.4.1 k維樹的構建 70
3.4.2 k維樹的搜索 73
3.5拓展部分:距離度量學習的 K近鄰分類器 76
3.6案例分析鶯尾花數據集 79
3.7本章小結 . 83
3.8習題 83
第 4章貝葉斯推斷 .85
4.1貝葉斯思想 85
4.1.1什么是概率 . 86
4.1.2從概率到條件概率 . 91
4.1.3貝葉斯定理 . 93
4.2貝葉斯分類器 97
4.2.1貝葉斯分類 . 97
4.2.2樸素貝葉斯分類 98
4.3如何訓練貝葉斯分類器 103
4.3.1極大似然估計:概率最大化思想 104
4.3.2貝葉斯估計:貝葉斯思想 111
4.4常用的樸素貝葉斯分類器.115
4.4.1離散屬性變量下的樸素貝葉斯分類器 .115
4.4.2連續(xù)特征變量下的樸素貝葉斯分類器 .115
4.5拓展部分 116
4.5.1半樸素貝葉斯.116
目錄
4.5.2貝葉斯網絡 119
4.6案例分析蘑菇數據集 .122
4.7本章小結 124
4.8習題.124
4.9閱讀時間:貝葉斯思想的起源 125
第 5章邏輯回歸模型 131
5.1一切始于邏輯函數.131
5.1.1邏輯函數 .131
5.1.2邏輯斯諦分布.133
5.1.3邏輯回歸 .134
5.2邏輯回歸模型的學習 .136
5.2.1加權最小二乘法 .136
5.2.2極大似然法 139
5.3邏輯回歸模型的學習算法.141
5.3.1梯度下降法 141
5.3.2牛頓法.143
5.4拓展部分 144
5.4.1拓展 1:多分類邏輯回歸模型 144
5.4.2拓展 2:非線性邏輯回歸模型 147
5.5案例分析離職數據集 .147
5.6本章小結 149
5.7習題.150
5.8閱讀時間:牛頓法是牛頓提出的嗎 .150
第 6章最大熵模型 . 153
6.1問世間熵為何物 153
6.1.1熱力學熵 .153
6.1.2信息熵.155
6.2最大熵思想.156
6.2.1離散隨機變量的分布.156
6.2.2連續(xù)隨機變量的分布.160
6.3最大熵模型的學習問題 163
6.3.1最大熵模型的定義 163
6.3.2最大熵模型的原始問題與對偶問題.167
6.3.3最大熵模型的學習 169
6.4模型學習的最優(yōu)化算法 173
6.4.1最速梯度下降法 .177
6.4.2擬牛頓法:DFP算法和 BFGS算法 178
6.4.3改進的迭代尺度法 179
6.5案例分析湯圓小例子 .183
6.6本章小結 185
6.7習題.186
機器學習中的統(tǒng)計思維 (Python實現)
6.8閱讀時間:奇妙的對數 187
第 7章決策樹模型 . 191
7.1決策樹中蘊含的基本思想.191
7.1.1什么是決策樹.191
7.1.2決策樹的基本思想 195
7.2決策樹的特征選擇.195
7.2.1錯分類誤差 195
7.2.2基于熵的信息增益和信息增益比 196
7.2.3基尼不純度 199
7.2.4比較錯分類誤差、信息熵和基尼不純度 201
7.3決策樹的生成算法.201
7.3.1 ID3算法202
7.3.2 C4.5算法 205
7.3.3 CART算法205
7.4決策樹的剪枝過程.211
7.4.1預剪枝.211
7.4.2后剪枝.213
7.5拓展部分:隨機森林 .223
7.6案例分析帕爾默企鵝數據集 .223
7.7本章小結 226
7.8習題.226
7.9閱讀時間:經濟學中的基尼指數.227
第 8章感知機模型 . 231
8.1感知機制從邏輯回歸到感知機 .231
8.2感知機的學習 .233
8.3感知機的優(yōu)化算法.234
8.3.1原始形式算法.235
8.3.2對偶形式算法.239
8.4案例分析鶯尾花數據集 .241
8.5本章小結 243
8.6習題.243
第 9章支持向量機 . 245
9.1從感知機到支持向量機 245
9.2線性可分支持向量機 .248
9.2.1線性可分支持向量機與最大間隔算法 .248
9.2.2對偶問題與硬間隔算法 .254
9.3線性支持向量機 258
9.3.1線性支持向量機的學習問題.259
9.3.2對偶問題與軟間隔算法 .260
9.3.3線性支持向量機之合頁損失.263
9.4非線性支持向量機.265
目錄
9.4.1核變換的根本核函數 266
9.4.2非線性可分支持向量機 .277
9.4.3非線性支持向量機 278
9.5 SMO優(yōu)化方法 .279
9.5.1失敗的坐標下降法 .279
9.5.2成功的SMO算法.280
9.6案例分析電離層數據集 .287
9.7本章小結 288
9.8習題.289
第 10章 EM算法 291
10.1極大似然法與 EM算法 .291
10.1.1具有缺失數據的豆花小例子291
10.1.2具有隱變量的硬幣盲盒例子295
10.2 EM算法的迭代過程298
10.2.1 EM算法中的兩部曲 298
10.2.2 EM算法的合理性 .302
10.3 EM算法的應用 305
10.3.1高斯混合模型305
10.3.2隱馬爾可夫模型 309
10.4本章小結 316
10.5習題 .317
第 11章提升方法. 319
11.1提升方法(Boosting)是一種集成學習方法.319
11.1.1什么是集成學習 319
11.1.2強可學習與弱可學習321
11.2起步于 AdaBoost算法 323
11.2.1兩大內核:前向回歸和可加模型 .323
11.2.2 AdaBoost的前向分步算法.324
11.2.3 AdaBoost分類算法 .326
11.2.4 AdaBoost分類算法的訓練誤差 333
11.3提升樹和 GBDT算法 .339
11.3.1回歸提升樹 .339
11.3.2 GDBT算法 342
11.4拓展部分:XGBoost算法344
11.5案例分析波士頓房價數據集 .346
11.6本章小結 347
11.7習題 .348
參考文獻 . 349