我在h2o中使用早期停止和设置ntrees=10000来训练GBM。我想取回模型中的树的数量。但是如果我调用model.params['ntrees'] ( model是网格搜索中最好的模型),我就会得到
{'default': 50, 'actual': 10000}其中,10000是我在培训期间设置的参数,而不是最终在模型中得到的实际树数。
如果我打电话给model.score_history(),那么我就能看到280树的早停。但是,肯定有一种比这次黑客更直接的方法来找出模型中的实际树数:
best_model.score_history()['number_of_trees'].max()发布于 2018-04-25 19:57:45
目前还没有一种干净的方法来做到这一点。另一种方法,它不需要计算一个最大值,但仍然是笨手笨脚的,它是model.summary()['number_of_trees'][0] (如果你想要这个数字),model.summary()['number_of_trees'] (如果你想要一个列表中的数字)。或者只是model.summary(),如果你只想看这个号码。
https://stackoverflow.com/questions/50027950
复制相似问题