if np.abs(acc_1 - acc_2) < 0.03: flag = True return ter_dict, flag else: return f_dict, flag if __name__ == '__main__': torch.manual_seed(Args.seed) C_iter, train_iter, test_iter, stats = data_utils.get_dataset(args=Args) # build global network G_net = Fed_Model() print(G_net) G_net.train() G_loss_fun = torch.nn.CrossEntropyLoss() # copy weights w_glob = G_net.state_dict() m = max(int(Args.frac * Args.num_C), 1) gv_acc = [] net_best = None val_acc_list, net_list = [], [] num_s2 = 0 # training c_lists = [[] for i in range(Args.num_C)] for rounds in range(Args.rounds):