h2o 子集到 "bestofFamily"

h2o subset to "bestofFamily"

AutoML 有两个学习器,一个包含 "all",另一个是 "best of family".

的子集

有什么方法可以不手动将组件和堆叠的集成聚合器保存到磁盘,以便 "best of family" 被视为独立的黑盒,可以存储、重新加载和使用而无需字面意思同一个 space?

中存在 1000 个价值较低的学习者

如果可以,我该怎么做?

虽然 运行 AutoML 一切都在内存中运行(除非您将其中一个模型保存到磁盘 - 或应用将对象保存到磁盘的选项,否则不会将任何内容保存到磁盘)。

如果您只想要 "Best of Family" 层叠合奏,您只需 save that binary model。当您保存堆叠集成时,它会为您保存所有必需的部分(基础模型和元模型)。然后你可以 re-load 稍后当你准备好进行预测时与另一个 H2O 集群一起使用(只要确保,如果你正在保存二进制模型,你可以稍后使用相同版本的 H2O)。

Python 示例:

bestoffamily = h2o.get_model('StackedEnsemble_BestOfFamily_0_AutoML_20171121_012135')

h2o.save_model(bestoffamily, path = "/home/users/me/mymodel")

R 示例:

bestoffamily <- h2o.getModel('StackedEnsemble_BestOfFamily_0_AutoML_20171121_012135')

h2o.saveModel(bestoffamily, path = "/home/users/me/mymodel")

稍后,您使用 Python 中的 h2o.load_model() 或 R 中的 h2o.loadModel() re-load 将堆叠的集成存储到内存中。

或者,您可以使用 MOJO model(不同的模型格式),而不是使用要求 H2O 簇在预测时为 运行 的 H2O 二元模型。使用 MOJO 需要做更多的工作,尽管它们速度更快并且专为生产使用而设计。如果您想保存一个 MOJO 模型,那么您可以在 Python 中使用 h2o.save_mojo() 或在 R.

中使用 h2o.saveMojo()