书籍详情
机器学习基础与实战
作者:陈鑫
出版社:电子工业出版社
出版时间:2023-05-01
ISBN:9787121447945
定价:¥59.80
购买这本书可以去
内容简介
全书共 10 章,第 1 章介绍了机器学习算法的基本概念、分类及本书开发环境的搭建。第 2 章介绍了机器学习算法中经常用到的 NumPy 相关知识及绘图工具包 Matplotlib。从第 3 章开始介绍机器学习算法,第 3 章介绍了简单也是常用的线性回归算法。第 4 章介绍了搜索算法,包括梯度下降算法、随机梯度下降算法、小批量梯度下降算法、牛顿迭代算法及坐标下降算法。第 5 章介绍了二分类的 Logistic回归算法和多元回归算法 SoftMax,以及评价分类结果优劣的各种指标。第 6 章介绍了支持向量机算法及支持向量机的核函数方法。第 7 章介绍了朴素贝叶斯算法。第 8 章介绍了决策树优化算法及由多棵决策树构成的随机森林算法等集成学习算法。第 9 章介绍了聚类算法,包括 K 均值算法、合并聚类算法、DBSCAN 算法等。第 10 章介绍了降维算法,主要包括主成分分析法和主成分分析的核方法。每章都包含大量的实战案例,既有自行实现的算法,也有直接调用 Sklearn 工具库实现的算法。本书配备思考与练习,全书所有的示例程序都提供完整的源代码,读者可登录华信教育资源网或GitHub 网站免费下载。本书适合作为人工智能、大数据等专业的学生教材,对于人工智能相关培训机构、人工智能爱好者,也有一定的参考价值。
作者简介
陈鑫,博士,毕业于中山大学,广东机电职业技术学院计算机与设计学院专职教师。中国计算机学会会员,著作方向为人工智能,曾出版《C++ 程序设计实践案例教程》。主持基于深度学习的人脸识别考勤系统的设计与研究项目,参与国家重点基础研究发展计划(973 计划)项目课题、广东省自然科学基金重大基础研究培育项目、中山大学高校基本科研业务费2017 年度重大项目和前沿新兴交叉学科培育资助计划等重大项目。
目录
第 1 章 机器学习算法概述 ………………………………………………………………… 1
1.1 机器学习 …………………………………………………………………………… 1
1.2 机器学习分类 ……………………………………………………………………… 2
1.2.1 监督学习 …………………………………………………………………… 2
1.2.2 无监督学习 ………………………………………………………………… 2
1.2.3 强化学习 …………………………………………………………………… 3
1.3 机器学习中的基本概念 …………………………………………………………… 3
1.4 机器学习环境搭建 ………………………………………………………………… 4
1.4.1 Python 安装 ………………………………………………………………… 4
1.4.2 PyCharm 及相关包的下载安装 …………………………………………… 6
1.4.3 JupyterLab …………………………………………………………………… 9
1.5 本章小结 ……………………………………………………………………………12
思考与练习…………………………………………………………………………………12
第 2 章? NumPy 和 Matplotlib 入门 ……………………………………………………… 13
2.1 NumPy 数组基础 ……………………………………………………………………13
2.1.1 创建 NumPy 数组……………………………………………………………14
2.1.2 NumPy 数组的索引与切片 …………………………………………………16
2.1.3 NumPy 数组的变形 …………………………………………………………18
2.1.4 NumPy 合并与分割 …………………………………………………………20
2.1.5 NumPy 的通用函数 …………………………………………………………25
2.1.6 NumPy 数组的聚合运算 ……………………………………………………27
2.1.7 NumPy 数组的广播 …………………………………………………………28
2.1.8 NumPy 数组比较、掩码和布尔逻辑 ………………………………………30
2.1.9 NumPy 花哨的索引 …………………………………………………………30
2.1.10 NumPy 的矩阵运算 ………………………………………………………32
2.2 Matplotlib 数据可视化 ………………………………………………………………36
2.2.1 线形图 ………………………………………………………………………36
2.2.2 散点图 ………………………………………………………………………39
2.2.3 直方图和柱状图 ……………………………………………………………41
2.2.4 等高线图 ……………………………………………………………………43
2.2.5 多子图 ………………………………………………………………………46
2.2.6 三维图像 ……………………………………………………………………50
2.3 本章小结 ……………………………………………………………………………53
思考与练习…………………………………………………………………………………53
第 3 章? 线性回归算法 …………………………………………………………………… 54
3.1 简单线性回归 ………………………………………………………………………54
3.2 正规方程算法(小二乘法)………………………………………………………55
3.3 多项式回归 …………………………………………………………………………61
3.4 线性回归的正则化算法 ……………………………………………………………64
3.5 Sklearn 的线性回归 …………………………………………………………………66
3.6 本章小结 ……………………………………………………………………………69
思考与练习…………………………………………………………………………………69
第 4 章? 机器学习中的搜索算法 ………………………………………………………… 70
4.1 梯度下降算法 ………………………………………………………………………70
4.1.1 梯度下降算法概述 …………………………………………………………70
4.1.2 模拟实现梯度下降算法 ……………………………………………………71
4.1.3 线性回归中的梯度下降算法 ………………………………………………73
4.2 随机梯度下降算法 …………………………………………………………………75
4.2.1 回归问题中的随机梯度下降算法 …………………………………………76
4.2.2 梯度下降算法与随机梯度下降算法的效果对比 …………………………78
4.3 小批量梯度下降算法 ………………………………………………………………81
4.4 牛顿迭代算法 ………………………………………………………………………85
4.4.1 模拟实现牛顿迭代算法 ……………………………………………………85
4.4.2 线性回归问题中的牛顿迭代算法 …………………………………………87
4.5 坐标下降算法 ………………………………………………………………………88
4.6 Sklearn 的随机梯度下降算法 ………………………………………………………90
4.7 本章小结 ……………………………………………………………………………96
思考与练习…………………………………………………………………………………96
第 5 章? Logistic 回归算法 ………………………………………………………………… 97
5.1 Logistic 回归的基本概念 ……………………………………………………………97
5.1.1 Sigmoid() 函数 ………………………………………………………………97
5.1.2 Logistic 模型 …………………………………………………………………98
5.2 Logistic 回归算法的应用 ……………………………………………………………99
5.3 评价分类结果 …………………………………………………………………… 103
5.3.1 准确率(Accuracy)……………………………………………………… 103
5.3.2 精确率 (Precision) 和召回率 (Recall) …………………………………… 104
5.3.3 ROC 曲线和 AUC 度量 ………………………………………………… 115
5.4 多元回归算法 SoftMax…………………………………………………………… 118
5.4.1 SoftMax 回归基本概念 ………………………………………………… 119
5.4.2 SoftMax 回归优化算法 ………………………………………………… 120
5.5 Sklearn 的 Logistic 回归算法 …………………………………………………… 126
5.6 本章小结 ………………………………………………………………………… 130
思考与练习……………………………………………………………………………… 130
第 6 章? 支持向量机算法 ………………………………………………………………… 132
6.1 支持向量机的基本概念 ………………………………………………………… 132
6.1.1 感知机 …………………………………………………………………… 132
6.1.2 支持向量机 ……………………………………………………………… 137
6.1.3 支持向量机的对偶 ……………………………………………………… 138
6.2 支持向量机优化算法 …………………………………………………………… 139
6.3 核方法 …………………………………………………………………………… 144
6.4 软间隔支持向量机 ……………………………………………………………… 153
6.4.1 软间隔支持向量机的概念 ……………………………………………… 153
6.4.2 Hinge 损失函数与软间隔支持向量机…………………………………… 156
6.5 Sklearn 的 SVM 库 ……………………………………………………………… 159
6.5.1 Sklearn SVM 算法库使用概述…………………………………………… 159
6.5.2 SVM 核函数概述 ………………………………………………………… 159
6.5.3 SVM 分类算法的使用 …………………………………………………… 160
6.5.4 SVM 算法的调参要点 …………………………………………………… 162
6.6 本章小结 ………………………………………………………………………… 174
思考与练习……………………………………………………………………………… 174
第 7 章? 朴素贝叶斯算法 ………………………………………………………………… 175
7.1 朴素贝叶斯 ……………………………………………………………………… 175
7.1.1 数学基础 ………………………………………………………………… 175
7.1.2 朴素贝叶斯的种类 ……………………………………………………… 176
7.2 朴素贝叶斯算法分类 …………………………………………………………… 177
7.2.1 基于极大似然估计的朴素贝叶斯算法 ………………………………… 178
7.2.2 基于贝叶斯估计的朴素贝叶斯算法 …………………………………… 180
7.3 Sklearn 的朴素贝叶斯算法 ……………………………………………………… 183
7.3.1 Sklearn 的高斯朴素贝叶斯实现 ………………………………………… 183
7.3.2 Sklearn 的多项式朴素贝叶斯实现 ……………………………………… 184
7.3.3 Sklearn 的伯努利朴素贝叶斯实现 ……………………………………… 186
7.4 本章小结 ………………………………………………………………………… 188
思考与练习……………………………………………………………………………… 188
第 8 章? 决策树算法 ……………………………………………………………………… 189
8
1.1 机器学习 …………………………………………………………………………… 1
1.2 机器学习分类 ……………………………………………………………………… 2
1.2.1 监督学习 …………………………………………………………………… 2
1.2.2 无监督学习 ………………………………………………………………… 2
1.2.3 强化学习 …………………………………………………………………… 3
1.3 机器学习中的基本概念 …………………………………………………………… 3
1.4 机器学习环境搭建 ………………………………………………………………… 4
1.4.1 Python 安装 ………………………………………………………………… 4
1.4.2 PyCharm 及相关包的下载安装 …………………………………………… 6
1.4.3 JupyterLab …………………………………………………………………… 9
1.5 本章小结 ……………………………………………………………………………12
思考与练习…………………………………………………………………………………12
第 2 章? NumPy 和 Matplotlib 入门 ……………………………………………………… 13
2.1 NumPy 数组基础 ……………………………………………………………………13
2.1.1 创建 NumPy 数组……………………………………………………………14
2.1.2 NumPy 数组的索引与切片 …………………………………………………16
2.1.3 NumPy 数组的变形 …………………………………………………………18
2.1.4 NumPy 合并与分割 …………………………………………………………20
2.1.5 NumPy 的通用函数 …………………………………………………………25
2.1.6 NumPy 数组的聚合运算 ……………………………………………………27
2.1.7 NumPy 数组的广播 …………………………………………………………28
2.1.8 NumPy 数组比较、掩码和布尔逻辑 ………………………………………30
2.1.9 NumPy 花哨的索引 …………………………………………………………30
2.1.10 NumPy 的矩阵运算 ………………………………………………………32
2.2 Matplotlib 数据可视化 ………………………………………………………………36
2.2.1 线形图 ………………………………………………………………………36
2.2.2 散点图 ………………………………………………………………………39
2.2.3 直方图和柱状图 ……………………………………………………………41
2.2.4 等高线图 ……………………………………………………………………43
2.2.5 多子图 ………………………………………………………………………46
2.2.6 三维图像 ……………………………………………………………………50
2.3 本章小结 ……………………………………………………………………………53
思考与练习…………………………………………………………………………………53
第 3 章? 线性回归算法 …………………………………………………………………… 54
3.1 简单线性回归 ………………………………………………………………………54
3.2 正规方程算法(小二乘法)………………………………………………………55
3.3 多项式回归 …………………………………………………………………………61
3.4 线性回归的正则化算法 ……………………………………………………………64
3.5 Sklearn 的线性回归 …………………………………………………………………66
3.6 本章小结 ……………………………………………………………………………69
思考与练习…………………………………………………………………………………69
第 4 章? 机器学习中的搜索算法 ………………………………………………………… 70
4.1 梯度下降算法 ………………………………………………………………………70
4.1.1 梯度下降算法概述 …………………………………………………………70
4.1.2 模拟实现梯度下降算法 ……………………………………………………71
4.1.3 线性回归中的梯度下降算法 ………………………………………………73
4.2 随机梯度下降算法 …………………………………………………………………75
4.2.1 回归问题中的随机梯度下降算法 …………………………………………76
4.2.2 梯度下降算法与随机梯度下降算法的效果对比 …………………………78
4.3 小批量梯度下降算法 ………………………………………………………………81
4.4 牛顿迭代算法 ………………………………………………………………………85
4.4.1 模拟实现牛顿迭代算法 ……………………………………………………85
4.4.2 线性回归问题中的牛顿迭代算法 …………………………………………87
4.5 坐标下降算法 ………………………………………………………………………88
4.6 Sklearn 的随机梯度下降算法 ………………………………………………………90
4.7 本章小结 ……………………………………………………………………………96
思考与练习…………………………………………………………………………………96
第 5 章? Logistic 回归算法 ………………………………………………………………… 97
5.1 Logistic 回归的基本概念 ……………………………………………………………97
5.1.1 Sigmoid() 函数 ………………………………………………………………97
5.1.2 Logistic 模型 …………………………………………………………………98
5.2 Logistic 回归算法的应用 ……………………………………………………………99
5.3 评价分类结果 …………………………………………………………………… 103
5.3.1 准确率(Accuracy)……………………………………………………… 103
5.3.2 精确率 (Precision) 和召回率 (Recall) …………………………………… 104
5.3.3 ROC 曲线和 AUC 度量 ………………………………………………… 115
5.4 多元回归算法 SoftMax…………………………………………………………… 118
5.4.1 SoftMax 回归基本概念 ………………………………………………… 119
5.4.2 SoftMax 回归优化算法 ………………………………………………… 120
5.5 Sklearn 的 Logistic 回归算法 …………………………………………………… 126
5.6 本章小结 ………………………………………………………………………… 130
思考与练习……………………………………………………………………………… 130
第 6 章? 支持向量机算法 ………………………………………………………………… 132
6.1 支持向量机的基本概念 ………………………………………………………… 132
6.1.1 感知机 …………………………………………………………………… 132
6.1.2 支持向量机 ……………………………………………………………… 137
6.1.3 支持向量机的对偶 ……………………………………………………… 138
6.2 支持向量机优化算法 …………………………………………………………… 139
6.3 核方法 …………………………………………………………………………… 144
6.4 软间隔支持向量机 ……………………………………………………………… 153
6.4.1 软间隔支持向量机的概念 ……………………………………………… 153
6.4.2 Hinge 损失函数与软间隔支持向量机…………………………………… 156
6.5 Sklearn 的 SVM 库 ……………………………………………………………… 159
6.5.1 Sklearn SVM 算法库使用概述…………………………………………… 159
6.5.2 SVM 核函数概述 ………………………………………………………… 159
6.5.3 SVM 分类算法的使用 …………………………………………………… 160
6.5.4 SVM 算法的调参要点 …………………………………………………… 162
6.6 本章小结 ………………………………………………………………………… 174
思考与练习……………………………………………………………………………… 174
第 7 章? 朴素贝叶斯算法 ………………………………………………………………… 175
7.1 朴素贝叶斯 ……………………………………………………………………… 175
7.1.1 数学基础 ………………………………………………………………… 175
7.1.2 朴素贝叶斯的种类 ……………………………………………………… 176
7.2 朴素贝叶斯算法分类 …………………………………………………………… 177
7.2.1 基于极大似然估计的朴素贝叶斯算法 ………………………………… 178
7.2.2 基于贝叶斯估计的朴素贝叶斯算法 …………………………………… 180
7.3 Sklearn 的朴素贝叶斯算法 ……………………………………………………… 183
7.3.1 Sklearn 的高斯朴素贝叶斯实现 ………………………………………… 183
7.3.2 Sklearn 的多项式朴素贝叶斯实现 ……………………………………… 184
7.3.3 Sklearn 的伯努利朴素贝叶斯实现 ……………………………………… 186
7.4 本章小结 ………………………………………………………………………… 188
思考与练习……………………………………………………………………………… 188
第 8 章? 决策树算法 ……………………………………………………………………… 189
8
猜您喜欢