使用机器学习技术的产品或服务在我们的生活中不断普及,被应用于大数据分析、智能驾驶、计算机视觉等领域,并迅速改变着我们的生活。本书以掌握一定的Python基础为前提,从具体的10个精简仿真项目切入,由浅入深、循序渐进地介绍机器学习技术在不同业务领域中的应用,在内容上注重实用性和可操作性,具体涵盖了数据分析与挖掘流程、监督学习、无监督学习、深度学习、大模型与人工智能应用等需要学生掌握的基本知识和相应技能。
陈清华,女,博士,教授、高级工程师,从事计算机研发及教学工作15余年,主要从事方向为数据挖掘、人工智能和群智感知,是"大数据技术”国家级职业教育创新教学团队核心成员,温州市"特支计划”科技创新青年拔尖人才、高层次D类人才,金砖国家职业技能大赛区块链技术赛项全国优秀专家。
项目1 用餐数据异常分析 1
任务1 用餐数据集成与处理 5
1.1.1 数据集成 9
1.1.2 数据映射 9
1.1.3 数据类型转换 10
任务2 用餐数据重复值检测与处理 10
1.2.1 检测重复值duplicated() 12
1.2.2 删除重复值drop_duplicates() 12
任务3 用餐数据缺失值检测与处理 12
1.3.1 检测缺失值isna() 15
1.3.2 处理缺失值fillna() 15
任务4 用餐数据异常值检测与处理 15
1.4.1 检测异常值 20
1.4.2 绘制散点图scatter() 21
1.4.3 绘制直方图hist() 22
1.4.4 绘制箱形图boxplot() 23
1.4.5 处理异常值 24
拓展实训:电影数据加工与处理 25
项目考核 26
项目2 碳排放数据分析 30
任务1 对碳排放数据进行分组分析 34
2.1.1 读取Excel文件数据 38
2.1.2 分组分析基本概念 39
2.1.3 描述性统计分析指标 40
任务2 对碳排放数据进行分布分析 40
2.2.1 分布分析基本概念 44
2.2.2 数据分箱cut() 44
2.2.3 可视化包Seaborn 45
任务3 对碳排放数据进行交叉分析 45
2.3.1 交叉分析基本概念 47
2.3.2 数据透视表pivot_table() 48
2.3.3 交叉表crosstab() 48
2.3.4 热力图heatmap() 48
任务4 对碳排放数据进行结构分析 49
2.4.1 结构分析基本概念 53
2.4.2 绘制饼图plot() 53
任务5 对碳排放数据进行相关分析 53
2.5.1 相关分析基本概念 56
2.5.2 相关分析corr() 56
拓展实训:数据分析方法应用 57
应用拓展(1):电影数据复杂分析 57
应用拓展(2):用餐数据复杂分析 58
项目考核 59
项目3 电影数据回归分析 61
任务1 使用一元线性回归分析方法对日均票房进行预测 66
3.1.1 一元线性回归 66
3.1.2 异常值的发现与处理 69
3.1.3 归一化处理 69
3.1.4 数据集的切分 73
任务2 使用多项式回归分析方法对日均票房进行预测 76
3.2.1 多项式回归 76
3.2.2 degree参数的设置 79
任务3 使用多元线性回归分析方法对电影评分进行预测 81
3.3.1 多元线性回归 81
3.3.2 标签映射 84
拓展实训:回归分析应用 85
应用拓展:薪资数据相关性分析 85
进阶拓展:电影数据回归分析 87
项目考核 87
项目4 性别与肥胖程度分类分析 92
任务1 使用逻辑回归实现性别判定 97
4.1.1 逻辑回归 101
4.1.2 Sklearn中的LogisticRegression() 102
4.1.3 数组与向量的操作 102
任务2 使用朴素贝叶斯实现性别判定 103
4.2.1 朴素贝叶斯的原理 105
4.2.2 Sklearn中朴素贝叶斯的实现 106
4.2.3 Sklearn中的GaussianNB() 107
4.2.4 Sklearn中的MultinomialNB() 107
任务3 使用决策树实现性别判定 107
4.3.1 决策树的原理 110
4.3.2 Sklearn中的DecisionTreeClassifier()分类器 111
4.3.3 分类模型常用评估指标 111
4.3.4 Sklearn中的模型评估方法 112
4.3.5 欠拟合与过拟合 112
任务4 使用支持向量机实现性别判定 113
4.4.1 支持向量机的原理 116
4.4.2 Sklearn中支持向量机的实现 116
4.4.3 Sklearn中的SVC()分类器 116
任务5 使用支持向量机实现肥胖程度分类 117
4.5.1 核函数的基本概念 120
4.5.2 多项式核函数的使用 121
拓展实训:肥胖程度分类分析 122
应用拓展(1):利用身高、体重、性别数据实现肥胖程度判定 122
应用拓展(2):利用BMI实现肥胖程度分类 123
项目考核 123
项目5 鸢尾花分类分析 126
任务1 使用k近邻实现鸢尾花的分类 130
5.1.1 k近邻的基本原理 134
5.1.2 Sklearn中的KNeighborsClassifier()分类器 134
任务2 使用随机森林实现鸢尾花的分类 134
5.2.1 集成学习方法 136
5.2.2 随机森林 136
5.2.3 Sklearn中的RandomForestClassifier()分类器 137
任务3 使用Tensorflow设计神经网络实现鸢尾花的分类 137
5.3.1 人工神经网络 141
5.3.2 认识TensorFlow 142
5.3.3 神经网络参数优化 143
任务4 使用多层感知机实现鸢尾花的分类 144
5.4.1 神经网络的基本原理 146
5.4.2 多层感知机 146
5.4.3 Sklearn中的MLPClassifier()分类器 146
拓展实训:回归与分类应用 147
应用拓展(1):设计神经网络预测花瓣宽度 148
应用拓展(2):利用身高、体重、性别数据实现肥胖程度分类 149
项目考核 150
项目6 观影用户聚类分析 154
任务1 使用DBSCAN确定聚类的质心个数 158
6.1.1 DBSCAN的优缺点 162
6.1.2 Sklearn中的DBSCAN() 163
任务2 使用k-Means对观影用户进行聚类 164
6.2.1 k-Means的基本概念 167
6.2.2 k-Means的特点 168
6.2.3 Sklearn中的KMeans() 168
拓展实训:根据身高、体重和性别对用户进行聚类 169
项目考核 170
项目7 超市零售数据关联规则挖掘 173
任务1 对超市零售数据做预处理 177
任务2 使用Apriori算法实现超市零售数据关联规则挖掘 178
7.2.1 购物篮分析 182
7.2.2 频繁项集 182
7.2.3 关联规则 183
7.2.4 Apriori算法 184
7.2.5 强关联规则 185
任务3 调用apyori库实现超市零售数据关联规则挖掘 187
7.3.1 apyori库 188
7.3.2 Apriori算法的优缺点 189
拓展实训:论文作者关联规则挖掘 189
项目考核 191
项目8 人体行为识别应用 195
任务1 使用卷积神经网络识别人体行为 202
8.1.1 Keras环境准备 206
8.1.2 行为数据的获取与解析 206
8.1.3 行为数据的特征分析 207
8.1.4 Keras中的Conv1D()卷积层 208
8.1.5 Keras中的AveragePooling1D()池化层 209
任务2 使用循环神经网络识别人体行为 209
8.2.1 长短期记忆网络 212
8.2.2 Keras中的LSTM()层 212
拓展实训:电影评论数据分析应用 213
项目考核 215
项目9 生成式人工智能应用 216
任务1 使用文心一言自动生成文本内容 220
9.1.1 自然语言处理 224
9.1.2 大语言模型 224
9.1.3 ChatGPT 225
9.1.4 变换器 226
9.1.5 文心一言 227
任务2 使用AI创意工坊自动生成图像 228
9.2.1 AI绘画及其应用 231
9.2.2 AI绘画平台 231
9.2.3 扩散模型 232
9.2.4 生成对抗网络 233
任务3 使用GitHub Copilot进行编程 234
9.3.1 代码智能 238
9.3.2 OpenAI Codex 239
9.3.3 代码智能的发展前景 239
拓展实训:调用大模型实现聊天机器应用 240
项目考核 244
项目10 智能产线应用 247
任务1 数据采集环境搭建 251
10.1.1 工业相机重要参数 254
10.1.2 工业互联网云端控制系统的安装与测试 255
任务2 工件图像数据采集与增强 260
10.2.1 智能制造行业数据采集 264
10.2.2 智能产线基本概念 265
10.2.3 机器视觉基本概念 265
10.2.4 计算机视觉基本概念 266
10.2.5 图像增广技术 270
任务3 工件图像智能分类分析 270
任务4 误差自动补偿数据分析 274
10.4.1 误差补偿技术 277
10.4.2 均方误差损失函数 277
任务5 联调与自动化生产验证 278
拓展实训:复杂工件分拣与调参应用 280
项目考核 281
附录A 本书使用的工具包 283
参考文献 284