Есть ли способ написать метрики проверки в конце индикатора выполнения, используя pytorch-ignite, как в keras?
Сейчас я использую ProgressBar.log_message (пример ниже), чтобы напечатать соответствующую метрики, но при этом печатает на новой строке в конце каждой эпохи. Я бы хотел, чтобы сообщения печатались в конце строки, без символа новой строки.
@trainer.on(Events.EPOCH_COMPLETED)
def run_evaluator(trainer):
evaluator.run(val_loader)
val_metrics = evaluator.state.metrics
# ProgBar
pbar.log_message(f"Val_loss: {val_metrics['Val_loss']:.2f}")
pbar.log_message(f"RMSE: {val_metrics['RMSE']:.2f}")
Чтобы уточнить, я получаю вывод:
Epoch [1/3]: [3/3] 100%|██████████| [00:00/00:00], Train_loss=1.59e+4
Val_loss: 26333.96
RMSE: 72572.66
Epoch [2/3]: [3/3] 100%|██████████| [00:00/00:00], Train_loss=2.35e+4
Val_loss: 25508.46
RMSE: 71426.14
Epoch [3/3]: [3/3] 100%|██████████| [00:00/00:00], Train_loss=2.26e+4
Val_loss: 24721.82
RMSE: 70316.17
И вот что я хочу:
Epoch [1/3]: [3/3] 100%|██████████| [00:00/00:00], Train_loss=1.59e+4 Val_loss: 26333.96 RMSE: 72572.66
Epoch [2/3]: [3/3] 100%|██████████| [00:00/00:00], Train_loss=2.35e+4 Val_loss: 25508.46 RMSE: 71426.14
Epoch [3/3]: [3/3] 100%|██████████| [00:00/00:00], Train_loss=2.26e+4 Val_loss: 24721.82 RMSE: 70316.17