deep-learning - 局部排名在分布式深度学习中意味着什么?

标签 deep-learning pytorch distributed-computing

https://github.com/huggingface/transformers/blob/master/examples/run_glue.py

我想调整此脚本以对我的数据进行文本分类。用于此任务的计算机是一台带有两个图形卡的机器。因此,这涉及在上面的脚本中使用术语 local_rank 进行的“分布式”训练,尤其是当 local_rank 等于 0 或 -1 时,如第 83 行。

在阅读了一些关于分布式计算的资料后,我猜 local_rank 就像机器的 ID。而 0 可能意味着这台机器是计算中的“主要”或“头部”。但是 -1 是什么?

最佳答案

Q: But what is -1?

通常,这用于禁用分布式设置。确实,如您所见here :

train_sampler = RandomSampler(train_dataset) if args.local_rank == -1 else DistributedSampler(train_dataset)

here :

if args.local_rank != -1:
    model = torch.nn.parallel.DistributedDataParallel(model, device_ids=[args.local_rank],
                                                      output_device=args.local_rank,
                                                      find_unused_parameters=True)

local_rank 设置为 -1 具有此效果。

关于deep-learning - 局部排名在分布式深度学习中意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58833652/

相关文章:

python - torch : "Model Weights not Changing"

redis - 实时分析处理系统设计

Python Keras LSTM 学习在高损失上收敛太快

tensorflow - Keras VAE 的输入尺寸不正确

pytorch - 在 PythonVirtualenvOperator 中使用除 pip 之外的其他来源下载

python - 带有神经网络的 EnsembleVoteClassifier

tensorflow - 在 Google Colab 中使用多个 GPU 在 Tensorflow 中进行分布式训练

python - 任何使分布式进程以最解耦的方式与关系数据库交互的 Python 解决方案?

python - 验证准确性/损失随着每个连续的纪元线性上升和下降

python - Keras:如何访问特定索引以进行乘法