【问题标题】:Manage scikit-learn model in Google Cloud Platform在 Google Cloud Platform 中管理 scikit-learn 模型
【发布时间】:2017-09-17 21:50:28
【问题描述】:

我们正试图弄清楚如何在 GCP 中托管和运行我们现有的许多 scikit-learn 和 R 模型(原样)。似乎 ML Engine 非常特定于 Tensorflow。如果数据集太大而无法拉入 datalab,如何在 Google 云平台上训练 scikit-learn 模型并管理我的模型?我还能继续使用 ML Engine,还是大多数人采用不同的方法?

作为更新,我能够通过将 scikit-learn 模型作为训练作业提交给 ML Engine 来获得训练 scikit-learn 模型运行的 Python 脚本,但还没有找到托管腌制模型或将其用于预测的方法.

【问题讨论】:

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

标签: scikit-learn google-cloud-platform google-cloud-ml-engine


【解决方案1】:

Cloud ML Engine 仅支持用 TensorFlow 编写的模型。

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

【讨论】:

    【解决方案2】:

    有可能,Cloud ML 从 2017 年 12 月开始提供此功能,截至今天,它作为早期访问提供。基本上,Cloud ML 团队正在测试此功能,但您也可以参与其中。更多关于here

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

    gcloud ml-engine 版本创建 ${MODEL_VERSION} --model=${MODEL} --origin="gs://${MODEL_PATH_IN_BUCKET}" --runtime-version="1.2" --framework ="SCIKIT_LEARN"

    【讨论】:

      【解决方案3】:

      现在 ML Engine 支持 sklearn。

      这是一个使用完全托管的 scikit-learn 训练、在线预测和超参数调整的完整示例:

      https://github.com/GoogleCloudPlatform/training-data-analyst/blob/master/blogs/sklearn/babyweight_skl.ipynb

      【讨论】:

      • 有谁知道对 sci-kit learn 的支持是否可以处理自定义依赖项,如果可以,如何实现?
      • 是的,就在 setup.py 的依赖项中
      • 谢谢,您能否指出有关使用 ML 引擎 + sci-kit 学习的自定义依赖项的任何资源(博客、示例、文档)?
      • 这是一个 setup.py 示例,它列出了 3 个自定义依赖项:github.com/GoogleCloudPlatform/training-data-analyst/blob/…'pandas-gbq==0.4.1'、'urllib3'、'google-cloud-bigquery'跨度>
      猜你喜欢
      • 2020-08-22
      • 1970-01-01
      • 1970-01-01
      • 2020-03-19
      • 1970-01-01
      • 2019-02-08
      • 1970-01-01
      • 2017-07-13
      • 2015-08-14
      相关资源
      最近更新 更多