管理Google云端平台中的scikit-learn模型

问题描述:

我们正试图弄清楚如何在GCP中托管和运行我们现有的许多scikit-learn和R模型。看起来ML Engine对于Tensorflow非常特殊。如何在Google云平台上训练scikit-learn模型并在数据集太大而无法使用datalab时管理我的模型?我仍然可以使用ML引擎,或者大多数人采用不同的方法吗?管理Google云端平台中的scikit-learn模型

作为一个更新,我能够通过将scikit-learn模型作为培训工作提交给ML引擎来获得运行scikit-learn模型的python脚本,但没有找到一种方法来容纳pickled模型或将其用于预测。

+0

这取决于你的用例。什么是大数据集?如果让实例变大,它是否可以放入datalab实例的内存中?这是最简单的解决方案。如果没有,可能是时候看看更适合的工具 - 比如TF Learn,或者Spark MLlib。 –

Cloud ML引擎仅支持使用TensorFlow编写的模型。

如果您正在使用scikit-learn,您可能需要查看一些更高级别的TensorFlow库,如TF LearnKeras。他们可能会帮助您将模型迁移到TensorFlow,在这种情况下,您可以使用Cloud ML Engine。

Cloud ML有可能从2017年12月开始提供此功能,截至今日,它已作为早期访问提供。基本上Cloud ML团队正在测试这个功能,但你也可以成为它的一部分。更多关于here

使用以下命令将scikit-learn模型部署到cloud ml。请注意,这些参数将来可能会发生变化。

gcloud ml-engine versions create $ {MODEL_VERSION} --model = $ {MODEL} --origin =“gs:// $ {MODEL_PATH_IN_BUCKET}”--runtime-version =“1.2”--framework = “SCIKIT_LEARN”