目录
第1章机器学习概述1
1.1机器学习的定义与发展历史1
1.2机器学习技术存在的必要性2
1.3机器学习系统的分类3
1.4机器学习的主要流程4
1.5机器学习面临的挑战5
1.6小结5
练习题6
第2章数据分析与可视化7
2.1NumPy7
2.1.1创建数组8
2.1.2算术运算与线性代数9
2.1.3通用函数11
2.1.4索引、切片和迭代13
2.1.5形状变换15
2.1.6堆叠与分割16
2.1.7广播17
2.2Pandas17
2.2.1Series18
2.2.2DataFrame20
2.3Matplotlib23
2.3.1绘制折线图25
2.3.2中文字体支持28
2.3.3文本标注与说明29
2.3.4创建与绘制子图31
2.3.5饼图、散点图和直方图32
2.4小结35
练习题35
第3章常用数据集38
3.1小型数据集38
3.1.1糖尿病数据集39
3.1.2手写数字数据集40
3.1.3乳腺癌数据集41
3.1.4鸢尾花数据集42
3.1.5葡萄酒数据集43
3.1.6体能训练数据集44
3.2大型数据集45
3.2.1Olivetti人脸数据集45
3.2.220新闻组数据集46
3.2.3带标签的人脸数据集48
3.2.4路透社英文新闻文本49
3.2.5加州住房价格数据集50
3.2.6MNIST手写数字数据集52
3.3生成数据集53
3.3.1make_regression数据集生成函数53
3.3.2make_blobs数据集生成函数54
3.3.3make_classification数据集生成函数56
3.3.4make_gaussian_quantiles数据集生成函数57
3.3.5make_circles与make_moons数据集生成函数58
3.3.6瑞士卷数据集60
3.4小结61
练习题61
第4章文本分类63
4.1文本分类系统及其应用63
4.2文本预处理流程64
4.3应用举例66
4.3.1英文文本分类实验66
4.3.2中文文本分类69
4.4朴素贝叶斯 71
4.5性能评价指标73
4.5.1混淆矩阵73
4.5.2准确率74
4.5.3精确率、召回率与F1值75
4.5.4ROC曲线与AUC面积76
4.5.5分类报告78
4.6小结79
练习题80
第5章决策树82
5.1分类问题82
5.2回归问题86
5.3CART算法简介88
5.4熵89
5.5小结90
练习题90
第6章支持向量机92
6.1支持向量机简介92
6.2间隔93
6.3支持向量机分类模型SVC、NuSVC与LinearSVC94
6.3.1SVC类与NuSVC类94
6.3.2LinearSVC类97
6.4线性支持向量分类98
6.5线性支持向量回归100
6.6非线性分类问题102
6.6.1多项式核103
6.6.2相似特征与RBF核104
6.7非线性支持向量回归105
6.8小结107
练习题107
第7章文本聚类109
7.1距离计算109
7.2聚类算法概述112
7.2.1K均值算法及其变体113
7.2.2其他常见聚类算法简介114
7.3应用举例: 使用KMeans进行中文文本聚类117
7.4聚类性能评价指标118
7.5小结120
练习题121
第8章特征工程 122
8.1特征缩放122
8.1.1特征归一化123
8.1.2特征标准化124
8.1.3特征鲁棒化125
8.1.4特征规范化126
8.2特征编码127
8.2.1独热编码127
8.2.2其他非数值数据编码128
8.3特征提取129
8.4小结132
练习题132
第9章神经网络134
9.1感知机134
9.1.1感知机实现基本逻辑电路134
9.1.2感知机的局限性137
9.2多层感知机138
9.3从感知机到神经网络140
9.3.1激活函数140
9.3.2神经网络的内积144
9.4损失函数的设计与优化147
9.4.1均方误差147
9.4.2交叉熵损失函数147
9.5导数149
9.6梯度150
9.7小结153
练习题153
第10章完整机器学习案例: 基于MNIST的多模型对比分析155
10.1数据集介绍与系统流程图155
10.2数据加载与预处理156
10.3数据集划分157
10.4特征标准化(Zscore标准化)158
10.5PCA特征降维159
10.6模型训练160
10.6.1模型构建160
10.6.2模型训练161
10.7模型评估163
10.7.1准确率163
10.7.2混淆矩阵163
10.8可视化分析164
10.8.1准确率对比图164
10.8.2混淆矩阵可视化165
10.8.3分类报告打印167
10.9小结167
练习题168
参考文献169
