繁体   English   中英

如何迭代地训练 h2o automl 模型

[英]How to train h2o automl models iteratively

我试图使用h2o.automl()进行训练。 但由于超时,训练退出。 我知道max_runtime_secs可以设置为更高的数字。 但是如果我们可以训练 1 小时,然后将其保存在某个地方就好了。 第二天再次从第一天离开的地方训练它。

怎么做 ?

我尝试通过设置project_name - 但退出时没有保存任何内容。 所以如果我们关闭电脑并重新启动,它是没有用的。

我为此使用了以下代码:

library( h2o )

h2o.init( nthreads = -1, max_mem_size = '10240m' )

train = h2o.importFile( 'train.csv' )

automl_model = h2o.automl( y = 'outcome', training_frame = train, nfolds = 3, max_runtime_secs = 1800,

                           project_name = 'automl_aus_tennis' )

链接到 train.csv: http : //www.mediafire.com/file/qj7yiju15ncgnax/train.csv

您可以使用相同的project_name和不同的种子重复运行h2o.automl()以构建其他模型并将它们添加到同一个leaderboard 我一直这样做。

有一个pull request ,它应该很快就会进入,它允许您指定不运行的算法。 这允许您调整在每次AutoML运行时执行的超参数搜索。

您需要保持h2o-3实例运行以实现您的目标,因为您目前无法将AutoML运行的状态持久AutoML到磁盘并将其加载到新的h2o-3实例中,或者将从磁盘加载的模型添加到leaderboard 这些将是有用的功能请求。 :-)

如果您关闭 H2O 集群(或机器)并在以后重新启动 H2O 集群,则无法继续运行 H2O AutoML 作业。 如果您让 H2O 集群继续运行,您可以通过再次运行h2o.automl()并使用相同的project_name值将更多模型添加到排行榜。

如果您需要在两次运行之间关闭 H2O 集群,那么您能做的最好的事情就是在第二次、第三次、第四h2o.automl()时间运行h2o.automl()函数时设置不同的seed ,因为您的随机网格AutoML 运行中的搜索会有所不同。 这样,您可能会获得新模型,而不是您在之前的 AutoML 运行中已经训练过的模型。

从那以后有什么改变吗? 是否可以缓存 AutoML?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM