机器学习:项目流程
Posted volcao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习:项目流程相关的知识,希望对你有一定的参考价值。
原文出处:机器学习项目流程
原文作者:wxquare
1. 理解实际问题,抽象为机器学习能处理的数学问题
理解实际业务场景问题是机器学习的第一步,机器学习中特征工程和模型训练都是非常费时的,深入理解要处理的问题,能避免走很多弯路。
- 明确可以获得的数据,机器学习的目标是分类、回归还是聚类。如果都不是的话,考虑将它们转变为机器学习问题。参考机器学习分类能帮助从问题提炼出一个合适的机器学习方法。
2. 获取数据
- 获取数据包括获取原始数据以及从原始数据中经过特征工程从原始数据中提取训练、测试数据。
- 机器学习比赛中原始数据都是直接提供的,但是实际问题需要自己获得原始数据。
- “ 数据决定机器学习结果的上限,而算法只是尽可能的逼近这个上限”。
- 数据要有具有“代表性”,对于分类问题,数据偏斜不能过于严重,不同类别的数据数量不要有数个数量级的差距。
- 评估数据的量级:样本数量、特征数量,估算训练模型对内存的消耗。如果数据量太大可以考虑减少训练样本、降维或者使用分布式机器学习系统。
3. 特征工程
- 特征工程是非常能体现一个机器学习者的功底的。深入理解实际业务场景下的问题,丰富的机器学习经验能帮助我们更好的处理特征工程。特征工程做的好能发挥原始数据的最大效力,往往能够使得算法的效果和性能得到显著的提升,有时能使简单的模型的效果比复杂的模型效果好。数据挖掘的大部分时间就花在特征工程上面,是机器学习非常基础而又必备的步骤。
- 从原始数据中特征构建、特征提取、特征选择。
- 数据预处理、数据清洗、筛选显著特征、摒弃非显著特征等。
4. 模型训练、诊断、调优
- 真正考验水平的根据是对算法的理解调节参数,使模型达到最优。
- 模型诊断中至关重要的是判断过拟合、欠拟合,常见的方法是绘制学习曲线,交叉验证。
- 通过增加训练的数据量、降低模型复杂度来降低过拟合的风险;
- 提高特征的数量和质量、增加模型复杂来防止欠拟合。
- 诊断后的模型需要进行进一步调优;
- 调优后的新模型需要重新诊断,这样反复迭代不断逼近的过程,需要不断的尝试,进而达到最优的状态。
5. 模型验证、误差分析
- 通过测试数据,验证模型的有效性;
- 观察误差样本,分析误差产生的原因。
- 误差分析主要是分析出误差来源与数据、特征、算法。
6 . 模型融合(模型集成)
- 提升算法准确度的主要方法是模型的前端(特征工程、清洗、预处理、采样)和后端的模型融合。
- 一人一票的统一融合、线性融合、堆融合。
以上是关于机器学习:项目流程的主要内容,如果未能解决你的问题,请参考以下文章