机器学习的建模流程
流程为:
原始数据 --> 数据预处理 --> 特征工程 --> 建模 --> 验证。
原始数据收集
所有AI或机器学习的基础就是数据,没有数据就什么都做不了,在搭建一个系统之前首要考虑的就是有没有足够多的数据可以支撑这个AI系统。数据是最重要的,如何收集数据的策略也是最重要的,很多人说AI的策略就是数据的收集策略。很大程度上数据质量的高低决定了模型的稳定性或效果,所以收集数据这一步非常关键。
数据预处理
如果数据中包含了很多噪音,那可以通过预处理的方法降噪或剔除脏数据。如果有数据格式不一致,字段不对齐等问题,无法后续做统一处理,那也可以通过数据的预处理搞定,规范化数据以保证后续模型的准确性。
实际中,数据预处理是很繁琐的,是很多AI工程师不想触碰的工作,但实际这个工作极其重要,如果数据预处理做不好那数据质量就有问题,后面所有环节都会受到影响,导致机器学习效果差,通常会花大量精力做数据的预处理工作。
特征工程
指从数据或样本里提取出对预测结果有价值的信息,每个应用场景所涉及的特征是不一样的,整个提取有效特征的过程就叫特征工程(Feature Engineering)。
实际工作中我们会花大量精力在特征工程里,这一步非常非常重要,而且它直接影响整个系统的效果。甚至说模型的重要性未必高于特征工程的重要性,所以我们会花50%以上的时间在特征工程这个环节。
经过特征工程后的每一个数据都可以转换成向量或者矩阵或张量这种数值类型,然后这个数就可以直接作为模型的输入,进入建模阶段。
建模
建模阶段就是使用各种各样的模型去尝试,看哪个模型带来的效果是最好的,该环节主要做的事情有几点:1,做一些调参的工作,指我们不断的调整模型,使这个模型可以达到最优的效果。2,改造,当发现模型不太满足实际的需求了,可以对模型做一些改造,然后再调参。
验证
训练出来的模型到底怎么样,如果不好的话可能需要重新做一些前面做过的事情,这个环节非常重要。每个项目都需要一个明确的,独特的评估标准,如果评估通过(比如正确率到达某个标准)就可以上线。
建模的时候都会把给定的数据分成训练数据和测试数据, 主要是为了验证模型的好坏,只有通过测试数据才能看到模型训练得到底行不行。
网友评论