1.数据挖掘一般流程
1.1 业务需求分析
业务需求分析是机器学习算法工程的第一步,是整个项目的基础,也是整个流程当中最重要的环节,主要体现在以下几个方面:
- 业务是否适合用机器学习算法来解决。
- 业务目标是否明确,是否单一,是否有其他关联目标。
- 业务目标的主次关系,因果关系,流程关系。
- 业务承担对象。
1.2 获取数据
获取数据:获取业务相关数据,用于机器学习项目建模,训练,调参,优化等。
- 本地存储数据
- html页面数据
- 爬虫数据
- 数据库数据
- 集群数据
- 各类数据格式数据
1.3 数据预处理
数据预处理主要是针对数据本身,业务需求,以及算法需求对原始数据进行的一系
列操作。比如:
- 异常值
- 缺失值
- 标准化
- 方差缩放
- 特征二值化
1.4 特征工程
特征工程是指从原始数据转换为特征向量的过程。特征工程是机器学习中最重要的 起始步骤,会直接影响机器学习的效果,并通常需要大量的时间。典型的特征工程 包括数据清理、特征提取、特征选择等过程。
1.5 模型选择和训练
在此阶段,主要是选择和应用各种建模技术,同时对它们的参数进行校准以达到最 优值。通常对于同一个数据挖掘问题,会有多种数据建模技术。一些技术对数据格 式有特殊的要求。因此,常常需要返回到数据准备阶段。实际操作如下:
- 选择建模技术(Model):确定数据挖掘算法和参数,可能会利用多个算法;
- 评估方案设计(Cost Function):设计某种测试模型的质量和有效性的机制;
- 模型训练(Trainng):在准备好的数据集上进行数据挖掘算法训练,得到一个或多个模型;
- 模型调参和优化:根据评估方案,确定算法与预期效果的差距,并进行相应的优化。
1.6 模型评估
模型评估是机器学习工程当中比较核心的环节之一,在模型训练完成之后,模型的 质量如何,是否还需要继续迭代,是否已经满足业务需要,都依靠模型评估结果。 因此需要选择一个能反映预测能力的评估指标(evaluation metric)。
常用评估标准
1.7 模型部署
具体地包括:
- 实施计划:对在业务运作中部署模型作出计划;
- 监控和维护计划:如何监控模型在实际业务中的使用情况,如何维护该模型;
- 作出最终报告:项目总结,项目经验和项目结果;
- 项目回顾:回顾项目的实施过程,总结经验教训,对数据挖掘的运行效果做一个预测。