使用Keras API和验证集进行Tensorflow分布式培训

我曾经使用 Estimator API 使用 MultiWorkerMirroredStrategy 在集群上训练模型。在那里,将评估器添加到集群规范时,其唯一目的是对模型的中间检查点和最终检查点进行评估。

使用TF Keras API时,似乎不再是这种情况了?在我看来,现在所有工作人员也都在评估数据,而评估者也对模型进行了训练。

{"chief": ["task0:1000"],"worker": ["task1:2200","task2:2200","task3:2200"],"evaluator": ["task4:2201"]}

用于模型训练的伪代码如下

import tensorflow as tf

strategy = tf.distribute.experimental.MultiWorkerMirroredStrategy()
EPOCHS = 5

with strategy.scope():
     model = get_model()
     model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['accuracy'])
     train_ds,test_ds = build_data_set(mnist_data)

model.fit(x=train_ds,validation_data=test_ds,epochs=EPOCHS,verbose=2)

是否有人知道使用Keras API进行的分布式培训是否仍支持显式评估器,还是每个工作人员在每个时期之后仅评估其一部分?

lyxxzrb 回答:使用Keras API和验证集进行Tensorflow分布式培训

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2994830.html

大家都在问