多节点Sagemaker训练是按节点批处理还是共享的?

我正在使用Tensorflow,并注意到使用多个节点时,单个步骤的速度比使用一个节点时要慢,因此我对在Sagemaker上多个训练节点上的“步骤”定义有些困惑。

如果我的批次大小是10,我有5个训练节点,那么一个“步骤”是每个节点2个还是每个节点10个?

如果我的批次大小是1,有5个节点,又会怎样?

注意 – 这里的“节点”是指单个训练实例,由train_instance_count=5创建的数量


回答:

请查看这个笔记本以了解使用TF进行分布式训练的示例:https://github.com/awslabs/amazon-sagemaker-examples/blob/master/sagemaker-python-sdk/tensorflow_distributed_mnist/tensorflow_distributed_mnist.ipynb

“每个实例将预测数据集的一个批次,计算损失并最小化优化器。这个过程的一个完整循环被称为训练步骤。

全局步骤是一个在实例之间共享的全局变量。对于分布式训练来说这是必要的,这样优化器就可以跟踪运行之间的训练步骤数:

train_op = optimizer.minimize(loss, tf.train.get_or_create_global_step())这是分布式训练所需的唯一更改!”

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中创建了一个多类分类项目。该项目可以对…

发表回复

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