如何解决H2O AutoML排行榜
我刚刚开始学习使用H2O Auto ML,并且正在尝试使用二进制分类模型。
我试图了解为什么每次运行时模型的排名都会改变。
排名前5位的模型仍排在前5位,但模型会略微移至更高或更低的排名。
DRF一次排名第二,而另一次排名第三。
我可以推测出导致更改的几种原因。
- 种子每次都会更改算法
- 未分配排行榜框架
- RF将随机采样作为过程的一部分,导致每次生成不同的树
- 排行榜将不会更改,对数据/代码的其他更改将负责更改。
请帮助我更好地理解这一点。
解决方法
听起来您没有设置种子,所以应该从那里开始。为了使具有固有随机性的算法(例如XGBoost,GBM,随机森林)每次产生相同的答案,必须设置随机种子(至少)。在H2O AutoML中,只有一个seed
参数(将其传递给所有单独的算法),如果每次将其设置为相同的值,则 most 个模型将是重复运行相同。默认情况下,AutoML还将使用随机折叠进行交叉验证,因此这也保证了每次使用相同的折叠。
有几点警告-即使您设置了种子,H2O深度学习也无法重现(默认情况下),因此这些模型将始终更改。由于“所有模型”堆叠集成除了使用其他模型之外,还使用深度学习模型,因此最终的合奏也将不可重现。
最后,您应该使用max_models
而不是max_runtime_secs
来控制AutoML的运行时间-否则,您可能会在排行榜上(以及堆叠的所有模型中)获得不同数量的模型合奏)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。