参数服务器和工人的角色

Roles of parameter servers and workers

参数服务器工人分布式训练神经网络中的确切作用是什么网络? (例如在分布式 TensorFlow 中)

或许分解如下:

例如:

Parameter Servers — 这实际上与 worker 相同。通常它是一个 CPU,您将需要的 variables 存储在 workers 中。在我的例子中,这是我定义网络所需的 weights variables

的地方

Workers — 这是我们进行大部分计算密集型工作.

的地方

在正向传播中——我们从Parameter servers中获取变量,对我们的工人

做一些事情

在反向传递中 — 我们将当前状态发送回 parameter servers 进行一些更新操作并给我们新的权重来尝试

参数服务器是否只负责在 ACID 存储中存储和提供变量值? ==> ,根据Tensorflow Documentation and Medium Article

不同的参数服务器管理图中的不同变量吗? ==> ,从语句推断,

In addition, to that you can decide to have more than one parameter server for efficiency reasons. Using parameters the server can provide better network utilization, and it allows to scale models to more parallel machines. It is possible to allocate more than one parameter server.

来自 this link.

parameter servers 自己接收梯度吗(并因此将它们相加)? ==> 。 AFAIK,它收到更新的 Weights 因为计算 Gradients 并使用公式

修改 Weights
W1 = W0 - Learning Rate * Gradients

发生在 Workers