【问题标题】:Azure ML Service dump logsAzure ML 服务转储日志
【发布时间】:2019-08-09 15:16:11
【问题描述】:

使用 AzureML 服务,如何使用 Horovod 在多个节点上为 keras 深度学习转储不同时期的正确损失曲线或准确度曲线?

使用 Horovod 和 AzureML 的 Keras 深度学习的 Loss vs epochs plt 似乎存在问题。

使用 Keras/Horovod(2 个 GPU)和 AMLS SDK 训练 CNN 会生成奇怪的图形

【问题讨论】:

    标签: azure-machine-learning-service


    【解决方案1】:

    您似乎正在训练 2 个模型,并且注意正在对来自不同节点的梯度进行平均。你能分享更多你的训练脚本吗——你是否像这样将优化器包装在DistributedOptimizer 中:

    # Horovod: adjust learning rate based on number of GPUs.
    opt = keras.optimizers.Adadelta(1.0 * hvd.size())
    
    # Horovod: add Horovod Distributed Optimizer.
    opt = hvd.DistributedOptimizer(opt)
    

    另外,你真的只希望一台机器记录,所以通常只为 0 级附加一个 AzureML 记录器,如下所示:

    class LogToAzureMLCallback(tf.keras.callbacks.Callback):
      def on_batch_end(self, batch, logs=None):
        Run.get_context().log('acc',logs['acc'])
    
      def on_epoch_end(self, epoch, logs=None):
        Run.get_context().log('epoch_acc',logs['acc'])
    
    callbacks = [
        # Horovod: broadcast initial variable states from rank 0 to all other processes.
        # This is necessary to ensure consistent initialization of all workers when
        # training is started with random weights or restored from a checkpoint.
        hvd.callbacks.BroadcastGlobalVariablesCallback(0)
    ]
    
    # Horovod: save checkpoints only on worker 0 and only log to AzureML from worker 0.
    if hvd.rank() == 0:
        callbacks.append(keras.callbacks.ModelCheckpoint('./checkpoint-{epoch}.h5'))
        callbacks.append(LogToAzureMLCallback())
    
    model.fit(x_train, y_train,
              batch_size=batch_size,
              callbacks=callbacks,
              epochs=epochs,
              verbose=1,
              validation_data=(x_test, y_test))
    

    【讨论】:

      【解决方案2】:

      您如何记录这些指标?从图中可以看出,有两组数据点交错。

      【讨论】:

        猜你喜欢
        • 2015-03-15
        • 2019-10-15
        • 1970-01-01
        • 2017-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多