best_val = float('inf') best_name = args.save_folder + "/" + args.save_name.format(architecture=args.architecture, epoch="best", dataset_name=args.dataset_name) for epoch in range(args.start_epochs - 1, args.epochs): epoch_1 = epoch + 1 loss_train = train(epoch_1) if args.iterations_val > 0: loss_val = validation(epoch_1) else: loss_val = loss_train if best_val > loss_val: is_best = True best_val = loss_val else: is_best = False if has_tensorboardX: threading.Thread(target= lambda: train_writer.add_scalar('Loss', loss_train, int(epoch_1))).start() if args.iterations_val > 0: threading.Thread(target= lambda: val_writer.add_scalar('Loss', loss_val, int(epoch_1))).start() if epoch_1 % args.save_interval == 0: save_checkpoint({ 'epoch': epoch_1, 'model': model_net.save_model(), 'best_loss': best_val, }, is_best, args.save_folder + "/" + args.save_name.format(architecture=args.architecture, epoch=epoch_1, dataset_name=args.dataset_name))