通用工作流程
之前的章节介绍的都是理论性的关于机器学习的基础知识和技术要点。从本节开始将根据机器学习的通用工作流程,逐步介绍Keras在每个工作流程中的使用以及一些配置细节。
机器学习的通用工作流程和要解决的问题已经总结在以下列表中。
- 定义问题,收集数据集。
- 首先需要确定输入哪些数据,需要预测什么内容。
- 其次需要确定面对什么样的问题,是二分类、多分类、标量回归、向量回归还是多分类多标签等。这有助于选择模型架构和损失函数。
- 选择衡量成功的目标。衡量成功的指标将指引损失函数的选择,应该直接与业务保持一致。
- 确定评估方法。评估方法用于确定如何衡量当前的进展。可以使用之前介绍的三种方法。
- 留出验证集。适用于数据量较大的情况。
- K折交叉验证。适用于留出验证的样本量较少,无法保证可靠性时使用。
- 重复的K折验证。使用与可用数据量很少,但又需要准确评估模型时使用。
- 准备数据。用于输入神经网络的数据需要提前完成格式化。
- 数据应该格式化为张量。
- 张量的取值应该缩放为较小的值,例如\([-1, 1]\)或者\([0, 1]\)。
- 如果不同的特征有不同的取值范围,应该先做数据标准化。
- 对于小数据可能需要做特征工程。
- 开发比基准更好的模型。使用小型模型来获取统计功效。
- 扩大模型规模,开发过拟合的模型。
- 模型正则化,调整超参数。