首页 > 解决方案 > 通过 Python 将 Scikit Learn 模型或其他专有模型导入 H2O

问题描述

我有使用 python 和 scitkit learn、panda frames 等构建的示例模型。我希望能够在 H2O 中导入和查看/运行该模型。在查看了 H2O 库中的导入和保存选项后,它需要专有使用 H2O API 来执行任何类型的导入或保存未使用 H2O 算法创建的模型。

问题:有没有办法强制使用 H2O 算法并允许使用 H2O API 保存其他所有者的模型?

下图:这是在 H2O 中保存模型的当前方法,但不允许与 pandas 等专有对象进行交互。

如果我使用 scikit 学习算法构建模型并尝试将其保存在 H2O 中,则 API 不允许这样做。

尝试使用 H2O h2o.save_model 方法保存以下 clf 模型失败。

# Train Test Model
clf = RandomForestClassifier(n_estimators=100, n_jobs=2, random_state=seed)
clf.fit(x, labels)

# build the model
model = H2ODeepLearningEstimator(params)
model.train(params)

# save the model
# This works
model_path = h2o.save_model(model=model, path="/tmp/mymodel", force=True)
# This doesn't work
model_path = h2o.save_model(model=clf, path="/tmp/mymodel", force=True)
print model_path
/tmp/mymodel/DeepLearning_model_python_1441838096933

# load the model
saved_model = h2o.load_model(model_path)

# download the model built above to your local machine
my_local_model = h2o.download_model(model, path="/Users/UserName/Desktop")

# upload the model that you just downloded above
# to the H2O cluster
uploaded_model = h2o.upload_model(my_local_model)

标签: pythonscikit-learnh2o

解决方案


目标是使用具有主要模型分析工具的 H2O 以及提供更丰富的接口来比较指标等。发现 H2O 与其他专有模型不兼容,并且不包含用于转换它们的包装器。


推荐阅读