【发布时间】:2019-12-13 00:40:33
【问题描述】:
我正在使用 Google 的 AI 平台进行一些实验,对此我有一些疑问。
基本上,我的项目是按照文档构建的,其中包含一个培训任务和一个单独的批量预测任务。我想了解 AI Platform 如何为我执行的任务分配资源。将它与当前的 SOTA 解决方案(如 Spark、Tensorflow 和 Pytorch)进行比较是我产生疑问的地方。
这些引擎/库具有具有专用协调系统的分布式工作人员,并具有所有机器学习算法的单独分布式实现。由于我的任务是使用 ScikitLearn 编写的,由于 sklearn 没有任何此类分布式计算能力,这些计算如何在 AI Platform 提供的集群中并行化?
遵循文档here。我正在使用的命令,
gcloud ai-platform jobs submit training $JOB_NAME \
--job-dir $JOB_DIR \
--package-path $TRAINING_PACKAGE_PATH \
--module-name $MAIN_TRAINER_MODULE \
--region $REGION \
--runtime-version=$RUNTIME_VERSION \
--python-version=$PYTHON_VERSION \
--scale-tier $SCALE_TIER
任何帮助/澄清将不胜感激!
【问题讨论】:
-
你在用 sklearn 做分布式训练吗? AFAIK,sklearn 不支持分布式训练。如果您想在一个 ML Engine 的训练作业中运行多个 sklearn 作业,您可以在每个工作人员上运行不同的作业。您可以解析环境变量 TF_CONFIG 以了解工作人员索引以采取相应措施。
-
是的,这就是我的疑问。
标签: machine-learning google-cloud-platform google-cloud-ml gcp-ai-platform-notebook