visualizer = Visualizer(opt, dataLoader.dataset).reset() steps = 0 for epoch in range(opt.epochStart, opt.nEpochStart + opt.nEpochDecay + 1): for i, data in enumerate(dataLoader): steps += 1 model.set_input(data) model.optimize_parameters() visualizer.print_process('Train', epoch, loss=model.current_losses()) if steps % opt.displayInterval == 0: # default: 5 visualizer.displayImage(model.current_images(), steps) visualizer.displayLoss(model.current_losses(), steps) if steps % opt.saveLatestInterval == 0: # default: 5000 print('saving the latest model (epoch %d, total_steps %d)\n' % (epoch, steps)) model.save_networks('latest') # latest model will override if epoch % opt.saveEpochInterval == 0: # default: 5 print('saving the model at the end of epoch %d, iters %d\n' % (epoch, steps)) model.save_networks('latest') model.save_networks(epoch) visualizer.print('Train', epoch, miou=model.current_mious()) # important print('=' * 80)