目 录 C o n t e n t s 项目1 走进机器学习的世界 ……………………………………………………………… 1 任务1-1 了解机器学习应用场景 ………………………………………………………… 2 任务1-2 机器学习算法的分类方式 ……………………………………………………… 3 任务1-3 软件库与框架 …………………………………………………………………… 5 任务1-4 配置机器学习开发环境 ………………………………………………………… 7 任务1-5 了解机器学习步骤 ……………………………………………………………… 9 项目小结 ………………………………………………………………………………… 11 练习题 …………………………………………………………………………………… 11 项目2 数据预处理 …………………………………………………………………………12 任务2-1 数据划分与归一化 ………………………………………………………………13 任务2-2 重复值、缺损值和异常值处理 …………………………………………………16 任务2-3 实现PCA 图像去噪 ……………………………………………………………24 项目小结 ………………………………………………………………………………… 28 练习题 …………………………………………………………………………………… 28 项目3 基于K-Means 算法的应用实践 ……………………………………………………30 任务3-1 使用K-Means 算法实现聚类手写图像 ………………………………………31 任务3-2 实现身高、体重聚类 ……………………………………………………………38 任务3-3 使用K-Means 算法实现图像压缩 ……………………………………………42 项目小结 ………………………………………………………………………………… 44 练习题 …………………………………………………………………………………… 45 IV 机器学习算法与应用(Python 版) 项目4 基于KNN 算法的应用实践 …………………………………………………………46 任务4-1 使用KNN 算法实现鸢尾花分类 ………………………………………………47 任务4-2 使用KNN 回归算法预测鞋码 …………………………………………………52 任务4-3 使用KNN 算法实现乳腺癌预测 ………………………………………………55 项目小结 ………………………………………………………………………………… 58 练习题 …………………………………………………………………………………… 58 项目5 基于线性回归算法的应用实践 ……………………………………………………60 任务5-1 使用一元线性回归算法实现直线拟合 …………………………………………61 任务5-2 使用多元线性回归算法实现波士顿房价预测 …………………………………64 任务5-3 使用多项式扩展实现曲线预测 …………………………………………………66 项目小结 ………………………………………………………………………………… 68 练习题 …………………………………………………………………………………… 68 项目6 基于逻辑回归算法的应用实践 ……………………………………………………70 任务6-1 使用逻辑回归算法检测信用卡欺诈 ……………………………………………71 任务6-2 使用逻辑回归算法解决数据不平衡问题 ………………………………………76 任务6-3 使用逻辑回归算法处理鸢尾花分类问题 ………………………………………80 项目小结 ………………………………………………………………………………… 82 练习题 …………………………………………………………………………………… 82 项目7 基于决策树算法的应用实践 ………………………………………………………83 任务7-1 使用决策树算法实现鸢尾花分类 ……………………………………………84 任务7-2 使用决策树回归算法实现曲线预测 ……………………………………………93 任务7-3 使用决策树算法预测波士顿房价 ………………………………………………95 项目小结 ………………………………………………………………………………… 96 练习题 …………………………………………………………………………………… 96 项目8 基于支持向量机算法的应用实践 …………………………………………………98 任务8-1 使用支持向量机算法处理二维数据分类问题 …………………………………99 任务8-2 使用支持向量机算法处理高维数据分类问题 ……………………………… 103 任务8-3 使用SVM 回归算法预测曲线预测和波士顿房价 ………………………… 107 V 目 录 项目小结 ……………………………………………………………………………… 110 练习题 ………………………………………………………………………………… 110 项目9 基于神经网络算法实现曲线拟合 ……………………………………………… 112 任务9-1 人工神经网络反向传播计算 ………………………………………………… 113 任务9-2 使用人工神经网络算法拟合函数 …………………………………………… 118 任务9-3 使用人工神经网络算法实现鸢尾花分类 …………………………………… 121 项目小结 ……………………………………………………………………………… 123 练习题 ………………………………………………………………………………… 123 项目10 基于AdaBoost 算法的应用实践 ……………………………………………… 125 任务10-1 使用AdaBoost 算法原理知识进行分类器计算 ………………………… 126 任务10-2 使用AdaBoost 算法实现鸢尾花分类问题 ……………………………… 129 任务10-3 使用AdaBoost 算法实现人脸识别 ……………………………………… 132 任务10-4 使用AdaBoost 算法实现曲线预测 ……………………………………… 135 项目小结 ……………………………………………………………………………… 137 练习题 ………………………………………………………………………………… 137 参考文献………………………………………………………………………… 139