在这个智能为王数据是金的时代,越来越多的数据,包括物联网设备采集的客观世界数据,被用来指导人类的实践活动。机器学习是处理与分析这些数据的一类常用方法。本书力求从原理的角度,从无到有,讲清楚机器学习中的一些常见方法,并从实践的角度,循序渐进,引领读者独立编程实现这些机器学习方法,从而帮助读者迅速掌握机器学习方法,为读者进一步学习理解深度学习方法奠定坚实的原理与实践基础。 本书适合计算机科学与技术、人工智能、物联网工程、数据科学与大数据、通信工程、电子信息、机器人、自动化、智能制造等相关专业高年级本科生及研究生教学或自学使用,也适合机器学习等领域的从业者及爱好者自学或参考。
1.本书力求以通俗简明的语言,从原理的角度,从无到有,讲清楚机器学习中的一些常见方法。
2.本书同时从实践的角度,循序渐进,引领读者独立编程实现这些机器学习方法。
3.本书在实验中使用了一系列与物联网相关的数据集,便于读者理解机器学习在物联网领域的应用。
4.本书的内容涵盖机器学习的三大范式:监督学习、无监督学习、强化学习。
5.本书有丰富的配套资源包括源代码和视频,扫码即可观看。
自从通用数字计算机诞生以来,在过去的七十余年,计算机已经深度融入人们的生产生活之中。如果没有计算机,很难想象世界将会怎样。近年来,正如计算机一样,机器学习(包括深度学习)正从多方面融入人们的生产生活。
机器学习(包括深度学习)的一个显著特点是,实践先于理论、易学难精。机器学习被称为黑盒子(black box)黑魔法(black magic)炼丹术(alchemy),很大程度上是因为缺少系统的原理上的分析与解释。
同时,作为机器学习等课程的授课教师,也深感缺少一本适合高年级本科生与研究生初学者的用于理论教学与实践教学的教材,尽管市面上已有一些机器学习方面的书籍。
因此,只好为讲授机器学习这门课程而自写讲义。之后将讲义扩展为《机器学习原理与实践(微课版)》这本书。为了交出一份尽可能满意的答卷,在全力写作本书的3个季度里,作者深居简出,数易书稿。
一本好书是一条捷径。本书力求以通俗简明的语言,从原理的角度,从无到有,讲清楚机器学习中的一些常见方法,并从实践的角度,循序渐进,引领读者独立编程实现这些机器学习方法,从而帮助读者迅速实现从小白到大神的飞跃,为读者进一步学习理解深度学习方法奠定坚实的原理与实践基础。
本书按照不同的学习范式将机器学习领域的一些常见方法分成3章进行讲解,并假设读者已经学习过高等数学线性代数概率论与数理统计等数学类课程,使用过Python语言进行编程。
第1章简要介绍机器学习的历史、概念、应用以及实现方式。
第2章重点讲解监督学习,包括线性回归、逻辑回归、支持向量机、k近邻、朴素贝叶斯以及神经网络等方法。
第3章讲解无监督学习,包括k均值、主成分分析以及自编码器。
第4章讲解强化学习,主要包括马尔可夫决策过程与Q学习。
本书适合计算机科学与技术、人工智能、物联网工程、数据科学与大数据、通信工程、电子信息、机器人、自动化、智能制造等相关专业高年级本科生及研究生教学或自学使用,也适合机器学习等领域的从业者及爱好者自学或参考。
受精力、学识、表达所限,本书难免存在不足之处,恳请读者指正。作者的QQ为20786560。
感谢我的家人为支持本书写作所付出的一切,谨以此书献给我的女儿美希。感谢所有支持过本书写作与帮助过本书出版的人们!
Now, lets get started. Just play. Have fun!
陈喆于沈阳于洪2021年10月
陈喆 男,美国田纳西理工大学(Tennessee Tech University)博士。2003年硕士毕业后在UT斯达康、意法半导体等企业工作多年。2011年博士毕业后在东北大学物联网工程专业任副教授、硕士研究生导师。曾任东北大学物联网工程研究所副所长、无锡(滨湖)国家传感信息中心副主任(挂职),曾在美国北卡罗来纳州立大学(North Carolina State University)访学。主要研究方向包括物联网无线通信、机器学习、认知无线电等。讲授物联网技术、物联网通信技术、无线传感网络概论、无线传感网络实验、机器学习、创业基础、创新创业活动、High-Performance Embedded System Design等课程。曾多次被学生评选为我喜爱的老师,所负责的课程多次被学生评选为我喜爱的专业课程。作为独立作者编著的教材《物联网无线通信原理与实践》已出版(清华大学出版社)。
第1章引言1
1.1机器学习简史2
1.2什么是机器学习2
1.3机器学习的应用3
1.4机器学习方法的实现4
1.4.1机器学习与Python4
1.4.2NumPy库5
1.4.3Matplotlib库6
1.5本章实验分析8
1.6本章小结9
1.7思考与练习10
第2章监督学习11
2.1线性回归12
2.1.1线性回归的数学模型12
2.1.2线性回归的训练过程16
2.1.3梯度下降法21
2.1.4线性回归的实现与性能评估26
2.1.5线性回归实践28
2.1.6特征缩放31
2.1.7多输出线性回归34
2.2逻辑回归38
2.2.1二分类与逻辑回归39
2.2.2逻辑回归的训练问题43
2.2.3逻辑回归的代价函数46
2.2.4分类任务的性能指标51
2.2.5逻辑回归实践55
2.3支持向量机55
2.3.1支持向量机及其训练问题56
2.3.2支持向量机训练问题初步求解58
2.3.3核技巧59
2.3.4软间隔支持向量机62
2.3.5支持向量机实践63
2.3.6过拟合与欠拟合64
2.4k近邻68
2.4.1k近邻分类69
2.4.2多分类任务的性能指标71
2.5朴素贝叶斯73
2.5.1朴素贝叶斯分类器74
2.5.2朴素贝叶斯分类器进阶76
2.5.3朴素贝叶斯实践78
2.6神经网络79
2.6.1多分类逻辑回归79
2.6.2多分类逻辑回归的训练82
2.6.3二分类神经网络85
2.6.4二分类神经网络的分类90
2.6.5二分类神经网络的训练93
2.6.6多分类神经网络98
2.6.7多分类神经网络的训练100
2.7本章实验分析103
2.8本章小结111
2.9思考与练习112
〖3〗机器学习原理与实践(微课版)目录〖3〗第3章无监督学习114
3.1k均值114
3.1.1k均值聚类114
3.1.2k值与轮廓系数117
3.1.3k均值实践118
3.2主成分分析119
3.2.1主成分分析降维120
3.2.2主成分分析实践124
3.3自编码器125
3.3.1什么是自编码器126
3.3.2自编码器的训练与降维127
3.3.3自编码器实践131
3.4本章实验分析133
3.5本章小结136
3.6思考与练习137
第4章强化学习139
4.1多老虎机问题140
4.1.1多老虎机问题及初步实践140
4.1.2ε贪婪方法143
4.1.3强化学习的要素143
4.2马尔可夫决策过程145
4.2.1什么是马尔可夫决策过程146
4.2.2收益与策略148
4.2.3贝尔曼性方程150
4.2.4求解贝尔曼性方程154
4.2.5马尔可夫决策过程实践156
4.3Q学习160
4.3.1什么是Q学习160
4.3.2Q学习实践164
4.4本章实验分析165
4.5本章小结168
4.6思考与练习168
参考文献170
附录A实验参考程序及注释171