定义问题
主要是在导入机器学习项目中所需要的类库和数据集,以便完成机器学习的项目。包括导入Ptyhon的类库,类和方法,以及导入数据。同时这也是所有的配置参数的配置模块。当数据集过大时,可以在这里对数据集进行瘦身处理,理想状态是可以在一分钟内,甚至是在30秒内完成模型的建立或可视化数据集。
导入类库
导入数据集
===============
理解数据
这是加强对数据理解的步骤,包括通过描述性统计来分析数据和通过可视化来观察数据。这一步需要花费时间多问几个问题,设定假设条件并调查分析,这对模型的建立有很大的帮助。
描述性统计
数据可视化
===============
数据准备
数据准备主要是预处理数据,以便让数据可以更好的展示问题,以及熟悉输入与输出的关系。包括:
- 通过删除重复数据,标记错误数值,甚至标记错误的输入数据来清洗数据
- 特征选择,包括移除多余的特征属性和增加新的特征属性
- 数据转化,对数据尺度进行调整,或者调整数据分布,以便更好地展示问题
不断的重复这个步骤和下一个步骤,直到找到足够准确的算法生成模型
数据清洗
数据选择
数据转换
===============
评估算法
评估算法主要是为了寻找最佳的算法子集,包括:
- 分离出评估数据集,以便验证模型
- 定义模型评估标准,用来评估算法模型
- 抽样审查线性算法和非线性算法
- 比较算法的准确度
找到3~5种准确度足够的算法为止
分离数据集
定义模型评估标准
算法审查
算法比较
===============
优化模型
当得到一个准确度足够的算法之后,从中找出最合适的算法,两种方法提高算法的准确度:
- 对每种算法进行调参,得到最佳结果
- 使用集合算法来提高算法模型的准确度
算法调参
集成算法
===============
结果部署
一旦认为模型的准确度足够高,就可将这个模型序列化,以便有新数据时使用该模型来预测数据。
- 通过验证数据集来验证被优化的模型
- 通过整个数据集来生成模型
- 将模型序列化,以便预测新数据