首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >H2O早期停止仅对ntree有限制吗?

H2O早期停止仅对ntree有限制吗?
EN

Stack Overflow用户
提问于 2018-09-29 21:05:07
回答 1查看 252关注 0票数 1

我正在读以下两个例子

在设置网格搜索时,它们都会修复ntree,而不是提供一个ntree列表。

代码语言:javascript
复制
[i * 100 for i in range(1, 11)]. 

这是我的问题

  1. 我想知道这是因为早停是因为在树形上设置的吗?例如,我们可以设置ntree = 1000和score_tree_interval = 100,然后它可以从100,200,…直到1000岁。我的理解正确吗?
  2. 但如果我的网格搜索也包括learn_rate和max_depth。早期止损也会对learn_rate和max_depth进行评估吗?我的意思是,在相同的树数内,例如ntree = 500,当它评估不同的学习速率0.015,0.015,0.025,0.05,0.1时,它会在学习率列表的某个地方止步吗?
  3. 在"stopping_tolerance“(tolerance.html)的文献中,它描述了”模型在连续到达三个得分事件后将停止训练,其中一个模型的错误类值不会提高1e-3“。那么三个得分项目是什么呢?它们是三个不同的树数,还是可以是相同的树数,但不同的学习速率?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-05 00:14:53

正如达伦·库克在评论中提到的那样,你构建的每个模型都会提前停止,网格搜索也会提前停止。

对于单个GBM,ntree(树的数目)通过早期停止(即使用算法中指定的stopping_tolerance、stopping_rounds、stopping_metric )进行调优。如果打开流并查看单个模型的得分历史图,您可以看到这一点。你会看到树的数目是x轴.

对于网格搜索,您有添加层的超参数。因此,如果在GBM模型中设置ntree= 100,并且网格超过学习速率= 0.015,那么您将构建两个模型,一个为ntree= 100,另一个模型为ntree= 100,学习速率为0.015。例如,在第一个模型中,每次迭代都有不同的树数,而学习速率则是固定的。

因此,看看你的具体问题:

  1. 是的,这是对的。
  2. 网格将查看您的不同学习速率(0.01、0.015等)和最大深度之间是否有任何改进。所以你所说的也是正确的。网格将停止,如果它没有看到任何不同的学习速度和最大深度值的改进(也就是说,它将不再继续构建新模型)。
  3. 所以在这里,你需要把模型和网格搜索分开。一个单独的模型将停止构建(添加树),如果它在三个评分事件之后没有看到改进(在这里,您的learn_rate和max_depth将被修复,而ntree将改变)。然后我们走到网格,网格将停止构建新的模型,如果它没有看到用户指定数量的改进,它所建立的各个模型。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52572541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档