各个阶段的作用是什么?我理解在NLP的神经网络中,训练阶段会找到词嵌入的最佳参数。但评估步骤的目的是什么?它应该做什么?它与预测阶段有何不同?
回答:
训练、评估和预测是训练模型的三个主要步骤(基本上适用于任何机器学习框架),并用于将模型从研究/开发阶段推向生产环境。
训练:
根据需要解决的问题选择合适的机器学习架构。进行超参数优化以微调模型。然后在数据上训练模型,进行一定数量的轮次。监控损失、准确率、均方误差等指标。
评估:
我们需要将模型推向生产环境。生产阶段的模型只会进行推理,因此我们需要尽可能好的模型。因此,为了根据一些预定义的水平评估或测试模型,需要进行评估阶段。
评估通常在原始数据集的一个子集上进行。在预处理数据时,会进行训练和评估的分割。计算指标以检查模型在评估数据集上的表现。
评估数据是模型从未见过的,因为它没有在这些数据上进行训练。因此,这里期望模型展示最佳性能。
预测:
在对模型进行测试后,我们可以将其推向生产环境。在生产阶段,模型只对给定的数据进行推理(预测)。这里不进行训练。
即使经过彻底的检查,模型仍倾向于出现错误预测。因此,在生产阶段,我们可以从用户那里接收关于模型性能的交互式反馈。
现在,
但评估步骤的目的是什么?它应该做什么?它与预测阶段有何不同?
评估是为了使模型在大多数情况下表现得更好。预测则是为了检查与性能无关的其他问题。