使用Google Cloud Function并行运行带有不同用户参数的相同训练作业

我正在寻找一种方法来并行运行带有不同用户参数的相同训练作业。我需要为每个product_X并行运行MYMODULE。MYMODULE读取user_arg,但我需要每次读取时,它读取不同的产品,并并行启动它们。我知道一种解决方案是分别运行三个训练代码块,但可能有一个函数可以直接用一个来完成。

!gcloud ai-platform jobs submit training demo_training_$(date +"%Y%m%d_%H%M%S") \    --staging-bucket gs: MYBUCKET\    --package-path MYPATH \    --module-name MYMODULE \    --region MYREGION \    --runtime-version=2.1 \    --python-version=3.7 \    --scale-tier BASIC \    -- \    --model-bucket MYBUCKET \    --output-dir MYDIR \    --user_arg product_1, product_2, product_3 \

MYMODULE看起来像这样,我需要在每次运行时读取不同的产品。

def train_and_evaluate (args):    ...code    product = args.user_arg    ...more code

回答:

对于这种类型的调用没有客户端库。但在谷歌,一切皆API。因此,您可以直接调用API来运行您的作业。

您可以调用AI Platform作业创建API来创建您的作业。您需要指定一个训练作业体,其中包含一个训练作业输入。在这个对象中,您有提供给训练作业的args列表。

如果您想要一个填充JSON的示例,可以在运行您的gcloud命令时使用--log-http选项,API调用将会在控制台上打印出来。


当您执行API调用时,您需要进行认证调用。您可以使用Google OAuth2库来获取凭证。然后,生成一个访问令牌,并将其作为Authorization: Bearer头部添加。别忘了也在头部中添加content-type(当然是application/json

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注