【问题标题】:training google cloud ml engine actually in the cloud- clarification on the approach在云端训练google cloud ml engine - 方法说明
【发布时间】:2019-08-02 02:47:45
【问题描述】:

我正在尝试使用谷歌云机器学习引擎为 sklearn 模型实现基于云的预测。我能够做到这一点,但似乎即使在使用 REST API 时,它也总是引用一个实际上是离线训练的教练模块/或在安装了 sklearn 的标准 python3 运行时上,而不是任何谷歌服务:

training_inputs = {'scaleTier': 'BASIC',
#'masterType': 'standard',
#'parameterServerType': 'large_model',
#'workerCount': 9,
#'parameterServerCount': 3,
'packageUris': ['gs://pathto/trainer/package/packages/trainer-0.0.0.tar.gz'],
'pythonModule': 'trainer.task',
'region': 'europe-west1',
'jobDir': ,
'runtimeVersion': '1.12',
'pythonVersion': '3.5'}

所以,我的看法是,无论是使用 gcloud(命令行提交)还是通过 REST API:

request = ml.projects().jobs().create(body=job_spec, parent=project_id)

实际训练是由我运行 sklearn 的 python 代码完成的,即谷歌云机器学习引擎它所做的只是从 sklearn model.bst 文件接收模型规范,然后运行实际预测。我的理解正确吗?感谢您的帮助,

【问题讨论】:

    标签: python machine-learning scikit-learn google-cloud-ml


    【解决方案1】:

    为了回答你的问题,这里有一些关于 ML Engine 的背景知识:命令中提到的模块是the main module,它启动了整个训练过程。此过程将在代码中包含训练文件和评估文件,如this example,ML Engine 将负责根据这些文件创建模型。因此,在向 ML Engine 提交训练作业时,训练过程将使用 ML Engine 资源用于每个训练步骤来创建模型,该模型可以部署到 ML Engine 中进行预测。

    对于您的问题,ML Engine 不会干扰训练数据集和模型编码。这就是为什么它需要带有模型规范和代码的训练模块。它为模型训练和预测提供资源,并管理模型的不同版本。 document 中的图表应该是 ML Engine 工作的一个很好的参考。

    【讨论】:

    • 感谢@enle lin,有用的解释,特别是它帮助我更好地掌握了云机器学习引擎,非常感谢!最好的问候
    猜你喜欢
    • 1970-01-01
    • 2018-03-24
    • 2019-03-20
    • 1970-01-01
    • 2017-03-09
    • 1970-01-01
    • 1970-01-01
    • 2017-11-08
    • 1970-01-01
    相关资源
    最近更新 更多