本書深入淺出地介紹了機器學(xué)習(xí)的基本原理與主要方法,以及必要的數(shù)學(xué)知識與程序設(shè)計方法。全書共有7章,分別講解了機器學(xué)習(xí)的概念及應(yīng)用、數(shù)學(xué)基礎(chǔ)(導(dǎo)數(shù)與極值、向量與矩陣、概率統(tǒng)計、凸優(yōu)化)、Python程序設(shè)計、線性回歸及其程序?qū)崿F(xiàn)、邏輯回歸及多分類、分類與聚類、基于神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)。 本書可作為高等院校機器學(xué)習(xí)課程的教材,也可作為機器學(xué)習(xí)愛好者及從事相關(guān)工作的工程技術(shù)人員的參考書。
姚普選,理學(xué)碩士,高級工程師。1978年3月參加工作。1995年從西安交通大學(xué)理學(xué)院調(diào)入該校電信學(xué)院,從事計算機基礎(chǔ)課教學(xué)工作。1996年8月退休。主講過計算機程序設(shè)計(C++、Delphi、Visual BASIC、C#、Python等)、軟件開發(fā)技術(shù)基礎(chǔ)、大學(xué)計算機基礎(chǔ)、微機原理及接口技術(shù)、數(shù)據(jù)庫(dBASE、Access、SQL Server等)、數(shù)據(jù)結(jié)構(gòu)等多門計算機課程,其中前4門都是國家級精品課程。
目 錄
第1章 機器學(xué)習(xí)的概念及應(yīng)用 1
1.1 機器學(xué)習(xí)的發(fā)展與應(yīng)用 1
1.1.1 機器學(xué)習(xí)的發(fā)展歷程 1
1.1.2 機器學(xué)習(xí)的應(yīng)用 3
1.2 機器學(xué)習(xí)的概念 4
1.2.1 機器學(xué)習(xí)的特點 5
1.2.2 機器學(xué)習(xí)的要素 6
1.2.3 機器學(xué)習(xí)系統(tǒng)的結(jié)構(gòu) 8
1.3 機器學(xué)習(xí)分類 10
1.3.1 映射函數(shù)與樣本 10
1.3.2 監(jiān)督學(xué)習(xí) 11
1.3.3 無監(jiān)督學(xué)習(xí) 13
1.3.4 強化學(xué)習(xí) 15
1.4 深度學(xué)習(xí) 16
1.4.1 機器學(xué)習(xí)的困境 16
1.4.2 深度學(xué)習(xí)機制 17
習(xí)題1 20
第2章 數(shù)學(xué)基礎(chǔ) 21
2.1 導(dǎo)數(shù)與極值 21
2.1.1 導(dǎo)數(shù)及求導(dǎo)法則 21
2.1.2 函數(shù)的單調(diào)性、凹凸性與極值 22
2.1.3 偏導(dǎo)數(shù)與梯度 24
2.1.4 多元函數(shù)的極值 25
2.2 向量與矩陣 27
2.2.1 矩陣及其性質(zhì) 27
2.2.2 矩陣的基本運算 29
2.2.3 向量組與線性相關(guān)性 31
2.2.4 正交向量與相似矩陣 34
2.3 概率統(tǒng)計 36
2.3.1 隨機事件與概率 36
2.3.2 條件概率與貝葉斯公式 37
2.3.3 隨機變量的概率分布 39
2.3.4 隨機變量的數(shù)字特征 43
2.3.5 中心極限定理 45
2.3.6 極大似然估計 46
2.4 凸優(yōu)化 48
習(xí)題2 52
第3章 Python程序設(shè)計 56
3.1 Python程序的編輯與運行 56
3.2 數(shù)據(jù)與表達式 60
3.2.1 常量 60
3.2.2 變量 62
3.2.3 數(shù)據(jù)的輸入輸出 63
3.2.4 常用函數(shù) 65
3.2.5 運算符與表達式 67
3.3 序列和字典 69
3.3.1 字符串 69
3.3.2 列表 72
3.3.3 元組 73
3.3.4 字典 74
3.4 程序的控制結(jié)構(gòu) 76
3.4.1 分支語句 76
3.4.2 while語句 77
3.4.3 for語句 78
3.4.4 用戶自定義函數(shù) 80
3.4.5 模塊 81
3.5 類和對象 83
3.5.1 類的定義和使用 83
3.5.2 面向?qū)ο蟪绦蛟O(shè)計方式 86
3.5.3 類的繼承性 87
3.5.4 異常處理 89
習(xí)題3 91
第4章 線性回歸及其程序?qū)崿F(xiàn) 96
4.1 線性回歸的概念 96
4.1.1 線性回歸的源流 96
4.1.2 監(jiān)督學(xué)習(xí)與線性回歸 97
4.2 線性回歸模型 99
4.2.1 一元線性回歸模型 99
4.2.2 多元線性回歸模型 103
4.2.3 模型的泛化與優(yōu)劣 106
4.3 數(shù)據(jù)擬合與可視化操作 108
4.3.1 NumPy多維數(shù)組操作 108
4.3.2 Matplotlib數(shù)據(jù)可視化操作 110
4.3.3 SciPy數(shù)據(jù)擬合操作 114
4.4 最小二乘法線性回歸程序 118
4.4.1 最小二乘法與一元線性回歸 118
4.4.2 一元線性回歸程序 120
4.5 梯度下降法及其程序 122
習(xí)題4 125
第5章 邏輯回歸及多分類 127
5.1 邏輯回歸的概念與模型 127
5.1.1 Logistic函數(shù) 127
5.1.2 線性分類問題 129
5.1.3 邏輯回歸模型 131
5.2 邏輯回歸計算 134
5.2.1 邏輯回歸模型的預(yù)測函數(shù) 134
5.2.2 邏輯回歸模型的極大似然估計 135
5.2.3 邏輯回歸模型的參數(shù)求解 136
5.3 邏輯回歸與樸素貝葉斯分類 139
5.4 多分類策略 143
5.5 Softmax回歸 145
5.5.1 廣義線性模型 145
5.5.2 Softmax回歸模型 148
習(xí)題5 150
第6章 分類與聚類 152
6.1 決策樹 152
6.1.1 決策樹與決策過程 152
6.1.2 信息熵與信息增益 154
6.1.3 決策樹的構(gòu)造 157
6.1.4 尋找最佳分裂 162
6.1.5 決策樹訓(xùn)練的主要問題及流程 165
6.2 支持向量機 167
6.2.1 支持向量機基本原理 167
6.2.2 支持向量機實現(xiàn)鳶尾花分類 171
6.3 聚類算法 173
6.3.1 距離計算與聚類評價 173
6.3.2 K-均值聚類算法 175
習(xí)題6 177
第7章 基于神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí) 179
7.1 神經(jīng)網(wǎng)絡(luò)與人工神經(jīng)網(wǎng)絡(luò) 179
7.2 感知機 182
7.2.1 人工神經(jīng)元與感知機 182
7.2.2 感知機訓(xùn)練算法 185
7.2.3 感知機訓(xùn)練實例 187
7.2.4 感知機訓(xùn)練與預(yù)測程序 189
7.2.5 線性可分性與多層感知機 190
7.3 BP算法 193
7.3.1 多層神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu) 193
7.3.2 多層神經(jīng)網(wǎng)絡(luò)的參數(shù)調(diào)整 194
7.3.3 BP算法及評價 196
7.4 卷積的概念及運算 198
7.4.1 卷積的概念 199
7.4.2 二維互相關(guān)運算 201
7.4.3 二維卷積運算程序 204
7.5 卷積神經(jīng)網(wǎng)絡(luò) 205
7.5.1 卷積神經(jīng)網(wǎng)絡(luò)的特點 206
7.5.2 多通道卷積及常用卷積核 209
7.5.3 卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu) 213
7.6 卷積神經(jīng)網(wǎng)絡(luò)實例 215
習(xí)題7 218
附錄A 機器學(xué)習(xí)名詞中英文對照 220
參考文獻 230