这是在调整深度学习和机器学习算法(如递归神经网络、多层感知器或 SVM 等)时经常出现的一般问题。
当我们调整深度学习模型的超参数时,超参数的每个可能组合都会产生不同的模型。我们根据损失曲线选择最佳组合。超参数的最佳组合究竟是什么?
我的问题正是这样:超参数的组合可能有无数种。我们知道有许多可能的超参数配置可能会产生类似的泛化错误。模型选择决策应该基于什么? 我怎么知道我已经触底并且没有其他超参数组合会给我更好的结果?
这是在调整深度学习和机器学习算法(如递归神经网络、多层感知器或 SVM 等)时经常出现的一般问题。
当我们调整深度学习模型的超参数时,超参数的每个可能组合都会产生不同的模型。我们根据损失曲线选择最佳组合。超参数的最佳组合究竟是什么?
我的问题正是这样:超参数的组合可能有无数种。我们知道有许多可能的超参数配置可能会产生类似的泛化错误。模型选择决策应该基于什么? 我怎么知道我已经触底并且没有其他超参数组合会给我更好的结果?
“究竟什么是超参数的最佳组合?” 对模型架构的未见数据产生尽可能低的误差的超参数组合。
“模型选择决策应该基于什么?” 据我所知,估计未见数据误差的最佳方法是 k 折交叉验证。我检查了 k 折中误差的均值和标准差;在大多数情况下,我会在平均误差最好的模型中选择标准差最小的模型。
“我怎么知道我已经触底,没有其他超参数组合能给我带来更好的结果?” 据我所知,人们永远无法知道哪种超参数组合会在看不见的数据上产生尽可能低的误差。以我的经验,一个好的搜索策略会让你足够接近最佳组合,因此进一步的搜索是不值得的。
这归结为“我们如何确定我们已经找到了全球最小值,如果它只有几步之遥怎么办”。
直到我们去那里,它是未知的。但是,有一个聪明的方法可以确保我们找到了一个全局最小值。我太缺乏经验而无法理解它,但它就是(张量方法:训练概率模型和特征学习的新范式,Anima Anandkumar) https://www.youtube.com/watch?v=B4YvhcGaafw
我记得,他们“不弯曲搜索空间”,所以它确实暴露了全局最小值,然后选择它......呃:s
如果有人可以评论我对视频的理解,我将不胜感激