对Pytorch模型执行超参数优化的最佳方法是什么?实现例如随机搜索我自己?使用Skicit学习?还是还有什么我不知道的?Pytorch模型的超参数优化
5
A
回答
2
您可以使用Bayesian optimization(全面披露,本人对本软件包有所贡献)或Hyperband。这两种方法都试图使超参数调整阶段自动化。 Hyperband据说是这个领域的最先进的技术。除了随机搜索之外,Hyperband是我听说过的唯一没有参数的方法。如果您愿意,您还可以考虑使用强化学习来学习最佳超参数。
0
要执行超参数优化,您既不需要Skicit Learn也不需要随机搜索。你应该通过尝试不同的超参数和监视你的错误率来照顾学习过程。例如:尝试不同的学习速率,不同的优化算法(即ADAM,RMSprop,ADAGRAD)以及针对学习速率的不同调度等。此外,绘制学习曲线以检查学习过程总是有用的。
4
黑箱优化最简单的无参数方法是随机搜索,它将比网格搜索更快地探索高维空间。有关于此的论文,但是随机搜索博士您每次都会在每个维度上获得不同的值,而使用网格搜索则不会。
Bayesian optimisation有很好的理论保证(尽管有近似值),像Spearmint这样的实现可以包装任何脚本;有超参数,但用户在实践中看不到它们。 Hyperband由于显示出比朴素贝叶斯优化更快的收敛性而备受关注。它能够通过运行不同的网络来进行不同次数的迭代,而贝叶斯优化并不能够天真地支持。尽管可以考虑使用贝叶斯优化算法(如FABOLAS),但实际上超高频带非常简单,但您可能更好地使用它并观看它以间隔调整搜索空间。
相关问题
- 1. Pytorch负载模型
- 2. pytorch中的模型概要
- 3. Rails模型优化
- 4. Simulink中约束条件下模型参数的优化
- 5. Django的模型优化
- 6. 估计的优化模型
- 7. 将参数传递回模型以优化随机动作
- 8. 为什么不优化火车数据集上的超参数?
- 9. 优化word2vec模型比较
- 10. SQL模型优化问题
- 11. 优化Django代码模型
- 12. 正规化SAS参数化模型
- 13. Python中的参数优化
- 14. 具有多个输入的网络的超参数优化?
- 15. 优化的超参数进行深网络
- 16. 随机搜索超参数优化的改进
- 17. 超参数调整的受控贝叶斯优化
- 18. 何时在PyTorch中使用单独的优化器?
- 19. 模板化的枚举类型参数
- 20. 为单一大型模型优化Three.js
- 21. 参数化类型的类型参数
- 22. R优化多个参数
- 23. Pytorch,类型错误:对象()不带任何参数
- 24. 只读对象模型的SqlAlchemy优化
- 25. 函数模板上的C++编译器优化返回参数
- 26. 带模板布尔参数的函数:保证被优化?
- 27. 函数参数的编译器优化
- 28. 优化函数的参数输入
- 29. R中参数数量高的优化
- 30. 当模板参数相同时,C++优化类模板功能
-1是什么原因? – Alex