>我目前正在为我的神经网络进行超参数优化。
我有提供给我的训练、开发和测试文件。对于我的超参数优化,我正在使用训练集和开发集运行完整的训练。最后,我在给定参数组合的训练测试集上进行评估。
我正在选择使测试集分数最大化的参数。我的问题是我觉得这是错误的,因为我有点泄漏测试集。
这个程序不好吗?我是否应该使用 optunity 来最大限度地提高开发集的准确性,并最终报告测试集的分数?
通常,验证 (dev( 集用于比较具有各种超参数的模型。选择并训练首选模型后,在测试集上运行它以测量其性能。
你的直觉是正确的;使用测试集来选择模型参数在某种意义上是使用该数据来帮助训练过程,这是不可取的。
训练/验证/测试集的划分和使用在这篇文章和Andrew Ng的这段视频中进行了更详细的讨论。