Validation 如何使用验证数据调整超参数

Validation 如何使用验证数据调整超参数,validation,machine-learning,artificial-intelligence,Validation,Machine Learning,Artificial Intelligence,我正在训练一个神经网络机器学习模型,对如何调整超参数有点困惑 我认为培训过程如下: 使用一些超参数(例如隐藏层中的神经元数量)构建神经网络 使用训练数据更新参数 使用验证数据评估模型是否过度拟合,是否正在改进 使用测试数据来评估性能 我被告知,验证数据也用于调整超参数。我不知道该怎么做,因为在构建模型并对其进行训练之后,您使用了验证数据。我无法更改超参数,因为模型已生成 假设我有4个超参数,它们指定了神经网络的结构。我是否应该为每个超参数组合(4^4组合)完成整个培训和验证过程 谢谢基本上是

我正在训练一个神经网络机器学习模型,对如何调整超参数有点困惑

我认为培训过程如下:

  • 使用一些超参数(例如隐藏层中的神经元数量)构建神经网络
  • 使用训练数据更新参数
  • 使用验证数据评估模型是否过度拟合,是否正在改进
  • 使用测试数据来评估性能
我被告知,验证数据也用于调整超参数。我不知道该怎么做,因为在构建模型并对其进行训练之后,您使用了验证数据。我无法更改超参数,因为模型已生成

假设我有4个超参数,它们指定了神经网络的结构。我是否应该为每个超参数组合(4^4组合)完成整个培训和验证过程


谢谢

基本上是的,你必须经历整个过程。通过这种方式进行交叉验证和模型/参数选择,您可以进行多次培训(不同的参数),评估结果模型(通过成本、损失、精度或适当的度量),并选择能够提供最佳结果的参数


例如,如果您在哪里训练回归模型,您可以训练10个不同的多项式模型,并使用验证数据选择更好的模型,在您的情况下也是如此,但您使用的是不同的网络体系结构。

除了调整,您可以使用验证集在训练阶段提前停止,就像在每次迭代中一样,不仅计算训练损失,还计算验证损失。然后选择产生最佳验证损失的参数设置作为测试的最终模型。