机器学习入门系列,黄海广老师主讲。本站将持续更新,ppt、代码、课后习题见文末。
本系列的目录
01.引言
02.回归
08.决策树
12.聚类
13.降维
15.机器学习项目流程
本章目录
- 15.1 机器学习项目流程概述
- 15.2 数据清洗
- 15.3 特征工程
- 15.4 数据建模
15.1 机器学习项目流程概述
视频讲解
图文内容
15.2 数据清洗
视频讲解
图文内容
15.3 特征工程
视频讲解
图文内容
15.4 回归的评价指标
视频讲解
项目讲解
这是一个机器学习的完整流程,附代码非常全,几乎适合任何监督学习的分类问题,本文提供代码和数据下载。
作者:WillKoehrsen
翻译:DeqianBai(https://github.com/DeqianBai)
这是2018年夏天,一位美国数据科学家在申请工作时的“作业”,完整的英文版作业在:
https://github.com/WillKoehrsen/machine-learning-project-walkthrough/blob/master/hw_assignment.pdf
项目目标:
- 使用提供的建筑能源数据开发一个模型,该模型可以预测建筑物的能源之星得分,
- 然后解释结果以找到最能预测得分的变量。
项目介绍:
这是一个受监督的回归机器学习任务:给定一组包含目标(在本例中为分数)的数据,我们希望训练一个可以学习将特征(也称为解释变量)映射到目标的模型。
- 受监督问题:我们可以知道数据的特征和目标,我们的目标是训练可以学习两者之间映射关系的模型。
- 回归问题:Energy Star Score是一个连续变量。
在训练中,我们希望模型能够学习特征和分数之间的关系,因此我们给出了特征和答案。然后,为了测试模型的学习效果,我们在一个从未见过答案的测试集上进行评估
我们在拿到一个机器学习问题之后,要做的第一件事就是制作出我们的机器学习项目清单。下面给出了一个可供参考的机器学习项目清单,它应该适用于大多数机器学习项目,虽然确切的实现细节可能有所不同,但机器学习项目的一般结构保持相对稳定:
- 数据清理和格式化
- 探索性数据分析
- 特征工程和特征选择
- 基于性能指标比较几种机器学习模型
- 对最佳模型执行超参数调整
- 在测试集上评估最佳模型
- 解释模型结果
- 得出结论
提前设置机器学习管道结构让我们看到每一步是如何流入另一步的。但是,机器学习管道是一个迭代过程,因此我们并不总是以线性方式遵循这些步骤。我们可能会根据管道下游的结果重新审视上一步。例如,
- 虽然我们可以在构建任何模型之前执行特征选择,但我们可以使用建模结果返回并选择一组不同的特征。
- 或者,建模可能会出现意想不到的结果,这意味着我们希望从另一个角度探索我们的数据。
- 一般来说,你必须完成一步才能继续下一步,但不要觉得一旦你第一次完成一步,你就不能回头做出改进!你可以在任何时候返回前面的步骤并作出相应的修改。
代码部分
代码部分较长,仅贴代码的目录,完整代码在文末提供下载。
1. 数据清理和格式化
- 1.1 加载并检查数据
- 1.2 数据类型和缺失值
- 1.2.1 将数据转换为正确的类型
- 1.3 处理缺失值
2. 探索性数据分析
- 2.1 单变量图
- 2.2 去除异常值
- 2.3 寻找关系
- 2.4 特征与目标之间的相关性
- 2.5 双变量图(Two-Variable Plots)
- 2.5.1 Pairs Plot
3. 特征工程和特征选择
- 3.1 特征工程
- 3.2 特征选择(去除共线特征)
- 3.3 划分训练集和测试集
- 3.4 建立Baseline
- 小结
4. 基于性能指标比较几种机器学习模型
- 4.1 输入缺失值
- 4.2 特征缩放
- 4.3 需要评估的模型
5. 对最佳模型执行超参数调整
- 5.1 超参数
- 5.2 使用随机搜索和交叉验证进行超参数调整
6. 在测试集上评估最佳模型
7. 解释模型结果
- 7.1 特征重要性
- 7.2 使用特征重要性进行特征选择
- 7.3 本地可解释的与模型无关的解释
- 7.4 检查单个决策树
8. 得出结论
- 8.1 得出结论
- 记录发现
代码截图
机器学习交流qq群955171419