机器学习通用工作流程
1.1定义问题,收集数据集
- 输入数据是什么?要预测什么?要拥有可用的训练数据,才有了学习这个预测的最低资本。
- 所面对的问题类型是什么?二分类问题、多分类问题、标量回归问题、向量回归问题、多分类多标签问题等等等,确定问题类型有助于确定
模型架构
,损失函数
。 - 假设输出是可以根据输入预测的
- 假设可用数据包括
足够多
的数据,足以让模型学习到输入和输出之间的关系
1.2选择衡量成功的指标
- 模型通过学习以后,对于这个事件预测的结果究竟理不理想?需要我们给出学习成功的定义:精度?准确率?召回率?客户保留率?等等等等。根据成功的指标,选择
损失函数
,即模型需要优化什么,让最终的结果与你所定义的成功标志保持一致。
1.3确定评估方法
- 当模型在学习过程中,我们需要通过评估的方法,来了解模型的当前的状况。以下为常用的是那种评估方法:
- 1.简单留出验证集(validation_data):当训练数据很多的时候,可以用这个方法。
- 2.K折交叉验证:当数据较少时,无法保证简单留出验证集的可靠性,我们可以用K折交叉验证的方法来实现。
- 3.重复K折验证:如果数据很少很少,而且无法保证有足够多的验证集和训练集来训练模型和评估模型,那我们就需要使用重复K折验证。不过每次循环产生新的分类时,应该打乱数据。
1.4准备数据
- 1.将数据格式转换为张量
- 2.张量的取值通常应该保持在[-1,1]或者[0,1]
- 3.如果不同的特征之间差异非常大,如预测波士顿房价,那么就应该先数据标准化 -mean /std
- 4.可能需要做特征工程,尤其是对于小数据问题。