'v_time: {:.4f}s'.format(outputs[6])) if args.no_tensorboard is False: tb_writer.add_scalars('Loss', {'train': outputs[0], 'val': outputs[2]}, epoch) tb_writer.add_scalars('Accuracy', {'train': outputs[1], 'val': outputs[3]}, epoch) tb_writer.add_scalar('lr', outputs[4], epoch) tb_writer.add_scalars('Time', {'train': outputs[5], 'val': outputs[6]}, epoch) loss_train.append(outputs[0]) acc_train.append(outputs[1]) loss_val.append(outputs[2]) acc_val.append(outputs[3]) if args.early_stopping > 0 and early_stopping.early_stop: print("Early stopping.") classifier_model.load_state_dict(early_stopping.load_checkpoint()) break if args.early_stopping > 0: classifier_model.load_state_dict(early_stopping.load_checkpoint()) if args.debug: print("Optimization Finished!") print("Total time elapsed: {:.4f}s".format(time.time() - t_total)) # Testing (test_adj, test_fea) = sampler.get_test_set(normalization=args.normalization, cuda=args.cuda) if torch.cuda.is_available(): test_edges = test_adj._indices().cpu().data else: test_edges = test_adj._indices().data
optimizer, milestones=[200, 300, 400, 500, 600, 700], gamma=0.6) # convert to cuda if args.cuda: model.cuda() # For the mix mode, lables and indexes are in cuda. if args.cuda or args.mixmode: labels = labels.cuda() idx_train = idx_train.cuda() idx_val = idx_val.cuda() idx_test = idx_test.cuda() if args.warm_start is not None and args.warm_start != "": early_stopping = EarlyStopping(fname=args.warm_start, verbose=False) print("Restore checkpoint from %s" % (early_stopping.fname)) model.load_state_dict(early_stopping.load_checkpoint()) # set early_stopping if args.early_stopping > 0: early_stopping = EarlyStopping(patience=args.early_stopping, verbose=False) print("Model is saving to: %s" % (early_stopping.fname)) if args.no_tensorboard is False: tb_writer = SummaryWriter( comment=f"-dataset_{args.dataset}-type_{args.type}") def get_lr(optimizer): for param_group in optimizer.param_groups: return param_group['lr']