【问题标题】:Hyperopt set timeouts and modify space during executionHyperopt 在执行期间设置超时和修改空间
【发布时间】:2014-08-31 15:54:37
【问题描述】:
如果有人可以帮忙:
- 如何为每个单独的测试设置超时?整个实验超时?
- 如何设置一个渐进式策略,在实验的不同阶段(同时使用当前的优化算法)消除/修剪 % 的搜索空间最差得分分支? IE。在最大总实验的 30% 处,它可以删除 50% 的最差评分分类器及其所有超参数分支,以将其从即将进行的测试中删除。然后,60% 的相同过程...
非常感谢!
【问题讨论】:
标签:
optimization
machine-learning
scikit-learn
deep-learning
【解决方案1】:
关注我在 hyperopt 的 github 上的交流:
没有每次试验超时,但 hyperopt-sklearn 仅通过包装函数来实现自己的解决方案。请在https://github.com/hyperopt/hyperopt-sklearn/ 查找“fn_with_timeout”。
来自 issue 210:“优化器是无状态的,并且 fmin 将实验的所有状态存储在试验对象中。因此,如果您从试验对象中删除一些实验,就好像它们从未发生过一样。使用 fmin 的” max_evals”参数来中断搜索,只要您需要进行此类修改。如果您想要真正细粒度的控制,使用重复调用(例如 max_evals 每次增加 1)应该没问题。”