機器學習入門與實戰 — 基於 scikit-learn 和 Keras

張海濤 , 李建東

買這商品的人也買了...

相關主題

商品描述

本書以scikit-learn和Keras框架作為實戰平臺,講解了傳統機器學習的主流技術和最新深度學習的研究成果。其中,"第一篇 傳統機器學習”包括第1~10章,介紹了機器學習概念、監督學習算法(回歸分析、Logistic回歸、k近鄰、決策樹、樸素貝葉斯、支持向量機)、無監督學習算法(神經網絡、聚類、降維);"第二篇 深度學習”包括第11~15章,介紹了深度學習的概念、捲積神經網絡、循環神經網絡、生成對抗網絡和強化學習等。 本書的編寫旨在體現"做中學”理念,讀者在學習初期不必過多糾纏於算法理論,而是通過實際案例快速入門,進而激發興趣,自主完善理論學習,最終順利跨入人工智能的殿堂。本書可以作為高校數據科學與大數據技術、人工智能等專業的教材,也可以作為致力於開展人工智能研究的讀者快速入門的參考資料。

作者簡介

張海濤,博士,教授。
1992年9月―1996年7月,遼寧工程技術大學電子與信息工程系,學習;1996年9月―2002年7月,遼寧工程技術大學電子與信息工程系,教師;2002年9月―2016年7 月,遼寧工程技術大學軟件學院,團委書記、黨委副書記、副院長;2016年7月―2018年9月,遼寧工程技術大學葫蘆島校區教務處,副處長;2018年9月―至今遼寧工程技術大學軟件學院(騰訊雲人工智能學院),常務副院長。

目錄大綱

第一篇傳統機器學習
第1章機器學習概述2
1.1機器學習概念2
1.1.1什麼是機器學習2
1.1.2機器學習有什麼用2
1.1.3機器學習的分類3
1.2機器學習理論基礎9
1.2.1過擬合和欠擬合9
1.2.2損失函數9
1.2.3模型性能度量方法11
1.2.4學習曲線14
1. 2.5算法模型性能優化17
1.3 scikit-learn簡介21
1.3.1關於scikit-learn 21
1.3.2安裝scikit-learn 21
1.3.3 scikit-learn數據集21
習題27
參考文獻30

第2章回歸分析31
2.1一元線性回歸31
2.1.1一元線性回歸的實現31
2.1.2解一元線性回歸的最小二乘法34
2.1.3模型評估35
2. 2多元線性回歸36
2.3多項式回歸36
習題41
參考文獻42

第3章Logistic回歸43
3.1分類問題概述43
3.2 Logistic回歸分類44
3.2.1 Logistic回歸算法的原理44
3.2.2 Logistic回歸算法實例48
3.3 Softmax回歸――多元分類
問題55
習題58
參考文獻59

第4章k近鄰60
4.1 k近鄰算法原理60
4.1.1 KNN算法三要素60
4.1.2 KNN算法之蠻力實現原理61
4.1.3 KNN算法之KD樹實現原理62
4.1.4 KNN算法之球樹實現原理64
4.1.5 KNN算法的擴展66
4.1.6 KNN算法小結66
4.2用scikit-learn實現KNN算法67
習題72
參考文獻72

第5章決策樹73
5. 1決策樹分類原理74
5.2決策樹的學習過程74
5.3 ID3算法的數學原理75
5.3.1什麼是信息增益75
5.3.2 ID3樹中最優劃分屬性計算舉例76
5 .4 scikit-learn決策樹算法實現78
5.5決策樹可視化80
習題83
參考文獻84

第6章樸素貝葉斯85
6.1基本原理85
6.1.1貝葉斯定理85
6.1.2樸素貝葉斯分類器86
6.2樸素貝葉斯三種基本模型88
6.3樸素貝葉斯的應用及特點90
6.3.1樸素貝葉斯常見的四種應用90
6.3.2樸素貝葉斯的優缺點90
6.3.3提升樸素貝葉斯性能的
技巧91
習題93
參考文獻94

第7章支持向量機95
7.1支持向量機原理95
7.1.1支持向量機定義95
7.1.2線性可分性95
7.1.3損失函數96
7.1.4經驗風險與結構風險97
7.2標準算法99
7.2.1線性SVM 99
7.2.2非線性SVM 100
7.3 scikit-learn SVM分類算法實現101
7. 3.1算法簡單實現101
7.3.2算法的優化102
習題106
參考文獻107

第8章神經網絡108
8.1神經網絡概述108
8.1.1神經元模型108
8.1.2感知機109
8.1.3神經網絡110
8.1.4梯度下降法與反向傳播112
8.2 scikit-learn神經網絡分類算法
實現118
習題122
參考文獻123

第9章聚類124
9.1聚類概述124
9.1.1 K-Means聚類算法124
9.1.2均值漂移聚類127
9.1.3基於密度的聚類方法(DBSCAN) 130
9.1. 4基於高斯混合模型(GMM)的期望最大化(EM)聚類132
9.1.5凝聚層次聚類133
9.2 scikit-learn聚類算法的實現136
習題142
參考文獻144

第10章降維145
10.1降維方法概述145
10.1.1主成分分析(PCA) 145
10.1.2線性判別分析(LDA) 148
10.1.3局部線性嵌入(LLE) 150
10.1.4拉普拉斯特徵映射?(LE) 151
10.2 scikit-learn降維算法實現152
習題157
參考文獻158

第二篇深度學習
第11章深度學習概述161
11.1深度學習的概念161
11.2深度學習的分類及特點163
11.2.1深度學習的分類163
11.2.2深度學習的特點164
11.3深度學習的歷史及發展164
11.4深度學習的應用165
11.5 Keras簡介166
11.5.1 Keras深度學習庫166
11.5.2 Keras安裝168
11.5.3 Keras舉例168
習題169
參考文獻170

第12章卷積神經網絡171
12.1卷積與池化操作172
12.1.1卷積層172
12.1.2池化層174
12.2典型的CNN架構175
12.2.1 LeNet -5 176
12.2.2 AlexNet 176
12.2.3 GoogLeNet 178
12.2.4 ResNet 180
12.3使用Keras搭建卷積神經
網絡182
習題185
參考文獻185

第13章循環神經網絡186
13.1 RNN 186
13.2 LSTM 190
13.3循環神經網絡案例191
習題195
參考文獻195

第14章生成對抗網絡196
14.1生成對抗網絡結構196
14.1.1生成對抗網絡模型原理197
14.1.2生成對抗網絡優化原理198
14.1.3模型訓練199
14.1.4對抗網絡的改進模型200
14.2生成對抗網絡的構建201
14.2.1生成模型的構建202
14.2.2判別模型的構建202
14. 2.3條件生成對抗網絡的構建204
14.3生成對抗網絡案例205
14.3.1生成模型205
14.3.2判別模型205
14.3.3模型訓練206
習題207
參考文獻208

第15章強化學習209
15.1問題概述209
15.2價值函數211
15.3動態規划算法212
15.3.1策略迭代算法212
15.3.2價值迭代算法213
15.4蒙特卡洛算法213
15. 4.1狀態價值函數估計214
15.4.2動作價值函數估計214
15.4.3蒙特卡洛控制215
15.5時序差分算法215
15.5.1 Sarsa算法216
15.5.2 Q學習216
15.6深度強化學習216
15.6.1 DQN算法216
15. 6.2策略梯度算法217
15.7代碼案例219
習題223
參考文獻224