描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302532347
本书理论推导与证明详细、深入,结构清晰,详细地讲述主要算法的原理与细节,让读者不仅知其然,还知其所以然,真正理解算法、学会使用算法。对于计算机、人工智能及相关专业的本科生和研究生,这是一本适合入门与系统学习的教材;对于从事人工智能和机器学习产品研发的工程技术人员,本书也具有很强的参考价值。
第1章机器学习简介3
1.1机器学习是什么3
1.1.1一个简单的例子3
1.1.2为什么需要机器学习5
1.2典型应用7
1.2.1语音识别7
1.2.2人脸检测8
1.2.3人机对弈9
1.2.4机器翻译10
1.2.5自动驾驶11
1.3发展历程11
1.3.1历史成就11
1.3.2当前进展12
1.4关于本书13
参考文献13
第2章数学知识15
2.1微积分和线性代数15
2.1.1导数15
2.1.2向量与矩阵17
2.1.3偏导数与梯度19
2.1.4雅可比矩阵20
2.1.5Hessian矩阵21
2.1.6泰勒展开22
2.1.7行列式22
2.1.8特征值与特征向量23
2.1.9奇异值分解24
2.1.10二次型24
2.1.11向量与矩阵求导24
2.2最优化方法25
〖1〗
〖2〗机器学习——原理、算法与应用
〖1〗
目录
2.2.1梯度下降法25
2.2.2牛顿法26
2.2.3坐标下降法27
2.2.4拉格朗日乘数法28
2.2.5凸优化28
2.2.6拉格朗日对偶32
2.2.7KKT条件34
2.2.8拟牛顿法35
2.2.9面临的问题36
2.3概率论37
2.3.1随机事件与概率37
2.3.2条件概率37
2.3.3随机变量38
2.3.4数学期望与方差39
2.3.5随机向量39
2.3.6最大似然估计40
参考文献41
第3章基本概念42
3.1算法分类42
3.1.1监督信号42
3.1.2分类问题与回归问题43
3.1.3判别模型与生成模型45
3.1.4强化学习45
3.2模型评价指标46
3.2.1精度与召回率46
3.2.2ROC曲线46
3.2.3混淆矩阵48
3.2.4交叉验证48
3.3模型选择48
3.3.1过拟合与欠拟合48
3.3.2偏差与方差分解49
3.3.3正则化50
参考文献52
第二部分主要的机器学习算法与理论
第4章贝叶斯分类器55
4.1贝叶斯决策55
4.2朴素贝叶斯分类器56
4.2.1离散型特征56
4.2.2连续型特征57
4.3正态贝叶斯分类器57
4.3.1训练算法57
4.3.2预测算法58
4.4实验程序59
4.5应用61
参考文献61
第5章决策树62
5.1树形决策过程62
5.2分类与回归树63
5.3训练算法64
5.3.1递归分裂过程64
5.3.2寻找最佳分裂64
5.3.3叶子节点值的设定67
5.3.4属性缺失问题67
5.3.5剪枝算法68
5.3.6训练算法的流程69
5.3.7计算变量的重要性70
5.4实验程序70
5.5应用71
参考文献71
第6章k近邻算法72
6.1基本概念72
6.2预测算法72
6.3距离定义73
6.3.1常用距离定义74
6.3.2距离度量学习74
6.4实验程序75
6.5应用76
参考文献76
第7章数据降维78
7.1主成分分析78
7.1.1数据降维问题78
7.1.2计算投影矩阵78
7.1.3向量降维81
7.1.4向量重构81
7.2流形学习81
7.2.1局部线性嵌入82
7.2.2拉普拉斯特征映射83
7.2.3局部保持投影86
7.2.4等距映射87
7.2.5随机近邻嵌入88
7.2.6t分布随机近邻嵌入89
7.3实验程序90
7.4应用91
参考文献91
第8章线性判别分析92
8.1用投影进行分类92
8.2投影矩阵92
8.2.1一维的情况92
8.2.2推广到高维94
8.3实验程序96
8.4应用96
参考文献97
第9章人工神经网络98
9.1多层前馈型神经网络98
9.1.1神经元98
9.1.2网络结构99
9.1.3正向传播算法100
9.2反向传播算法101
9.2.1一个简单的例子101
9.2.2完整的算法105
9.3实验程序109
9.4理论解释110
9.4.1数学性质110
9.4.2与神经系统的关系111
9.5面临的问题111
9.5.1梯度消失111
9.5.2退化111
9.5.3局部极小值111
9.5.4鞍点111
9.6实现细节问题112
9.6.1输入值与输出值112
9.6.2网络规模112
9.6.3激活函数112
9.6.4损失函数113
9.6.5权重初始化113
9.6.6正则化113
9.6.7学习率的设定114
9.6.8动量项114
9.7应用114
参考文献115
第10章支持向量机118
10.1线性分类器118
10.1.1线性分类器概述118
10.1.2分类间隔118
10.2线性可分的问题119
10.2.1原问题119
10.2.2对偶问题120
10.3线性不可分的问题123
10.3.1原问题123
10.3.2对偶问题123
10.4核映射与核函数126
10.5SMO算法129
10.5.1求解子问题129
10.5.2优化变量的选择132
10.6多分类问题133
10.7实验程序134
10.8libsvm简介136
10.8.1求解算法137
10.8.2库的使用140
10.9应用142
参考文献143
第11章线性模型145
11.1logistic回归145
11.1.1第一种表述145
11.1.2第二种表述147
11.1.3L2正则化原问题148
11.1.4L2正则化对偶问题151
11.1.5L1正则化原问题152
11.1.6实验程序154
11.2线性支持向量机156
11.2.1L2正则化L1loss SVC原问题156
11.2.2L2正则化L2loss SVC原问题156
11.2.3L2正则化SVC对偶问题157
11.2.4L1正则化L2loss SVC原问题158
11.2.5多类线性支持向量机158
11.2.6实验程序160
11.3liblinear简介160
11.3.1求解的问题161
11.3.2库的使用161
11.4softmax回归162
11.5应用164
参考文献165
第12章随机森林166
12.1集成学习166
12.1.1随机抽样166
12.1.2Bagging算法167
12.2随机森林概述167
12.3训练算法167
12.4变量的重要性168
12.5实验程序169
12.6应用169
参考文献169
第13章Boosting算法171
13.1AdaBoost算法171
13.1.1强分类器与弱分类器171
13.1.2训练算法172
13.1.3训练误差分析174
13.2广义加法模型176
13.3各种AdaBoost算法177
13.3.1离散型AdaBoost177
13.3.2实数型AdaBoost179
13.3.3LogitBoost180
13.3.4Gentle型AdaBoost181
13.4实现细节问题182
13.4.1弱分类器182
13.4.2弱分类器的数量182
13.4.3样本权重削减183
13.5实验程序183
13.6梯度提升算法183
13.6.1梯度提升框架184
13.6.2回归问题185
13.6.3分类问题185
13.6.4XGBoost187
13.7应用——目标检测189
13.7.1VJ框架的原理190
13.7.2模型训练192
参考文献193
第14章深度学习概论195
14.1机器学习面临的挑战195
14.1.1人工特征196
14.1.2机器学习算法197
14.2深度学习技术197
14.3进展与典型应用199
14.3.1计算机视觉200
14.3.2语音识别202
14.3.3自然语言处理202
14.3.4计算机图形学203
14.3.5推荐系统203
14.3.6深度强化学习204
14.4自动编码器204
14.4.1自动编码器简介204
14.4.2去噪自动编码器205
14.4.3稀疏自动编码器205
14.4.4收缩自动编码器206
14.4.5多层编码器206
14.5受限玻尔兹曼机206
14.5.1玻尔兹曼分布206
14.5.2受限玻尔兹曼机结构207
14.5.3训练算法209
14.5.4深度玻尔兹曼机210
14.5.5深度置信网210
参考文献210
第15章卷积神经网络218
15.1网络结构218
15.1.1卷积层219
15.1.2池化层222
15.1.3全连接层222
15.2训练算法223
15.2.1卷积层223
15.2.2池化层226
15.2.3随机梯度下降法227
15.2.4迁移学习228
15.3典型网络228
15.3.1LeNet5网络228
15.3.2AlexNet网络229
15.3.3VGG网络230
15.3.4GoogLeNet网络231
15.4理论分析232
15.4.1反卷积运算232
15.4.2卷积层可视化233
15.4.3理论解释235
15.5挑战与改进措施236
15.5.1卷积层236
15.5.2池化层236
15.5.3激活函数237
15.5.4损失函数237
15.5.5网络结构237
15.5.6批量归一化241
15.6实现细节242
15.6.1卷积层242
15.6.2激活函数244
15.6.3内积层244
15.6.4损失层245
15.6.5求解器248
15.7应用——计算机视觉251
15.7.1人脸检测251
15.7.2通用目标检测254
15.7.3人脸关键点定位262
15.7.4人脸识别263
15.7.5图像分割265
参考文献266
第16章循环神经网络270
16.1网络结构270
16.1.1循环层270
16.1.2输出层271
16.1.3一个简单的例子272
16.1.4深层网络272
16.2网络的训练273
16.2.1一个简单的例子273
16.2.2完整的算法275
16.3挑战与改进措施277
16.3.1梯度消失277
16.3.2长短期记忆模型278
16.3.3门控循环单元279
16.3.4双向网络279
16.4序列预测问题280
16.4.1序列标注问题280
16.4.2连接主义时序分类281
16.4.3序列到序列学习285
16.5应用——语音识别287
16.5.1语音识别问题287
16.5.2GMMHMM框架288
16.5.3深度模型288
16.6应用——自然语言处理291
16.6.1中文分词292
16.6.2词性标注293
16.6.3命名实体识别293
16.6.4文本分类294
16.6.5自动摘要296
16.6.6机器翻译296
参考文献298
第17章生成对抗网络302
17.1随机数据生成302
17.2生成对抗网络结构303
17.2.1生成模型303
17.2.2判别模型304
17.3模型的训练304
17.3.1目标函数304
17.3.2训练算法305
17.3.3理论分析306
17.4应用与改进307
17.4.1改进方案308
17.4.2典型应用311
参考文献313
第18章聚类算法314
18.1问题定义314
18.2层次聚类315
18.3基于质心的算法315
18.4基于概率分布的算法316
18.4.1高斯混合模型316
18.4.2EM算法317
18.5基于密度的算法322
18.5.1DBSCAN算法322
18.5.2OPTICS算法324
18.5.3Mean Shift算法326
18.6基于图的算法328
18.7算法评价指标331
18.7.1内部指标331
18.7.2外部指标331
18.8实验程序332
18.9应用332
参考文献332
第19章半监督学习334
19.1问题假设334
19.1.1连续性假设334
19.1.2聚类假设334
19.1.3流形假设334
19.1.4低密度分割假设334
19.2启发式算法335
19.2.1自训练335
19.2.2协同训练335
19.3生成模型335
19.4低密度分割336
19.5基于图的算法336
19.6半监督深度学习337
参考文献338
第20章隐马尔可夫模型340
20.1马尔可夫模型340
20.2隐马尔可夫模型简介343
20.2.1模型结构343
20.2.2中文分词345
20.3估值问题345
20.4解码问题347
20.5训练算法349
20.6应用352
参考文献352
第21章条件随机场353
21.1马尔可夫随机场353
21.1.1概率图模型353
21.1.2马尔可夫随机场354
21.2条件随机场概述355
21.2.1条件随机场简介355
21.2.2线性链条件随机场355
21.3推断算法357
21.4训练算法359
21.5应用360
参考文献360
第22章强化学习361
22.1强化学习简介361
22.1.1问题定义361
22.1.2马尔可夫决策过程362
22.2基于动态规划的算法366
22.2.1策略迭代算法366
22.2.2价值迭代算法368
22.3蒙特卡洛算法369
22.3.1算法简介369
22.3.2状态价值函数估计370
22.3.3动作价值函数估计371
22.3.4蒙特卡洛控制371
22.4时序差分学习372
22.4.1Sarsa算法372
22.4.2Q学习373
22.5深度强化学习374
22.5.1深度Q网络375
22.5.2策略梯度算法378
22.6应用381
参考文献381
第三部分工程实践问题
第23章工程实践问题概述385
23.1实现细节问题385
23.1.1训练样本385
23.1.2特征预处理386
23.1.3模型选择386
23.1.4过拟合问题386
23.2安全性问题387
23.2.1对抗样本387
23.2.2形成原因分析389
23.3实现成本问题390
23.3.1训练样本量390
23.3.2计算与存储成本390
23.4深度模型优化391
23.4.1剪枝与编码391
23.4.2二值化网络392
23.4.3卷积核分离396
参考文献397
近年来,随着IBM沃森、谷歌DeepMind AlphaGo等新型人机系统的横空出世,人工智能日益受到全社会的关注,媒体报道热度空前。事实上,伴随大数据、深度学习、智能芯片等技术的成熟、政府的扶持以及资本的持续投入,一方面在前端催生了刷脸支付、智能音箱、以图搜图、智能翻译等新的商业场景和产品;另一方面,人工智能在后端也正深刻地改变着既有的技术模式和流程。例如,在端对端的深度神经网络中,一些传统的特征工程模块被弱化乃至取代;原本基于单步预测的个性化推荐引擎被强化学习技术改造。
放眼世界,人工智能正成为国际竞争的新焦点。英国、美国、新加坡等国家也各自提出了推动人工智能相关技术与产业发展的纲要与规划。美国国防部高级研究计划局则于2018年9月宣布将投入20亿美元开展一项名为 AI Next 的计划,其旨在加速人工智能研究。MIT则计划斥资10亿美元,建设新的计算机学院,致力于将人工智能技术用于该校的所有研究领域。在国内,国务院于2017年7月发布了《国务院关于印发新一代人工智能发展规划的通知》。清华大学、上海交通大学、南京大学等国内顶级高校,也陆续成立了自己的人工智能研究院。在工业界,商汤、旷视、依图等人工智能独角兽企业,也带动了人工智能技术在国内的落地与发展。
从学术角度来看,以1956年达特茅斯会议作为人工智能学科公认的起点,60多年的沉浮史见证了多次起伏,诞生了多个思想学派。近30年的人工智能发展,在作者看来,机器学习(包括深度学习)成为这期间的主流思想和技术。支持向量机、随机森林、决策树、卷积神经网络、循环神经网络、生成对抗网络和强化学习等方法层出不穷,构成了当代人工智能的华丽篇章。与此同时,大量机器学习开源框架和成型工具对用户日益“友好”。初学者往往不需要太多的数学基础和编程能力,简单调用接口即可完成一些人工智能任务。这些条件往往可以快速给予初学者信心,鼓励更多人才进入人工智能相关领域,推动了人工智能的应用。同时,一些从业者对开源软件或者框架的过度依赖,乃至抱着一种不求甚解的态度,不去理解和掌握主要算法和模型背后的原理和数学基础。如此一来,个体的技术发展潜力受限,而整个行业的持续发展也将缺乏高层次人才基础。事实上,尽管人工智能算法工具日益傻瓜化,甚至出现了AutoML这样的自动化机器学习技术,然而深刻理解算法背后的机理,可对具体问题选择合适模型、训练算法和超参数的能力,充分体现机器学习从业者的创新能力和解决问题的能力。
本人全面阅读了雷明老师的作品,在语言精确性和条理性、内容全面性和完整性、理论深度以及工程实践指导方面,不啻为集专业性与通俗性为一体的上乘之作。特别是在公式步步推导的细节方面,有非常仔细的表述,给人一种踏实的感觉。我相信通过本书,读者将可以高效、细致、全面地掌握机器学习的主流知识点和整体脉络。在碰到具体问题时,本书的专业内容也方便读者进行快速查阅和巩固。
人工智能的车轮滚滚向前,从业人员都力图赶上趋势的发展。开卷有益,希望本书能够帮助读者打好机器学习的内功基础,缓解部分从业者内心的焦虑。相信翻看此书时的获得感和充实感,会为读者留下一段美好的回忆。
上海交通大学特别研究员严骏驰
2018年11月于广州白云国际会议中心
前言
自2012年以来,得益于深度学习技术的迅猛进步,人工智能在学术界与产业界都迎来了蓬勃发展。深度学习现阶段较好地解决了图像识别、声音识别等感知类问题。与之相对应的是优秀教材的缺乏,由于技术的快速进步,此前的经典书籍面临内容老化问题。本书旨在帮助人工智能相关方向的在校学生与工程技术人员更好地理解和掌握机器学习技术,本书的前身为2019年1月出版的《机器学习与应用》,笔者对该书做了大量优化,删除了开源库代码分析,增加了若干重要算法的讲解,将C 版的示例程序改为Python版。
全书从原理与应用两个角度进行讲述。系统而深入地讲解了目前主要的机器学习与深学习算法,包括有监督学习、无监督学习、半监督学习、强化学习4种类型。对于主要的算法,分为理论、实验程序、实际应用3部分进行讲解。对于核心的推导和证明,笔者都详细地给出。
学习本书需要读者具有数学(包括微积分、线性代数、概率论等本科数学知识,以及最优化方法)与程序设计(至少掌握一门编程语言)的基础知识。
本书对深度学习算法与理论做了重点与深入的讲解。对于卷积神经网络、循环神经网络等应用最为广泛的方法,详细地介绍了它们的原理与实现,并分析了截至2017年的主要学术论文,保证了本书内容能够反映学术界与工程界的新成果。
机器学习是范围极广、内容庞杂的一门学科,技术发展日新月异,由于笔者的水平与经验有限,书中难免有错误与理解不到位的地方,敬请读者指正!
雷明
2019年6月
评论
还没有评论。