重用 python 中的 h2o 模型 mojo 或 pojo 文件

Reusing h2o model mojo or pojo file from python

由于 H2o 模型只能与保存时使用的相同主要版本的 h2o 一起使用,因此另一种方法是将模型保存为 MOJO/POJO 格式。有没有办法可以从 python 代码中 reused/loaded 获取这些保存的模型。或者有什么办法可以在升级H2O版本的时候保留模型进一步开发??

如果您想通过 python 使用您的模型进行评分,您可以使用 h2o.mojo_predict_pandas or h2o.mojo_predict_csv 之一。但否则,如果您想加载以前保存的二进制模型,则需要有兼容的版本。

在 H2O-3 之外,您可以按照 Tom 的建议查看 pyjnius:https://github.com/kivy/pyjnius

另一种选择是使用 pysparkling,如果你只需要它来评分:

from pysparkling.ml import H2OMOJOModel

# Load test data to predict
df = spark.read.parquet(test_data_path)

# Load mojo model
mojo = H2OMOJOModel.createFromMojo(mojo_path)

# Make predictions
predictions = mojo.transform(df)

# Show predictions with ground truth (y_true and y_pred)
predictions.select('your_target_column', 'prediction').show()