labels.append(label) return {"data": np.array(data).astype(np.float32), "label":np.array(labels)} if __name__ == '__main__': parser = argparse.ArgumentParser() os.system("rm -r tbdata/") tb = TB("tbdata/") iswarmup = True with TrainingEnv(name = "lyy.{}.test".format(net_name), part_count = 2, custom_parser = parser) as env: args = parser.parse_args() num_GPU = len(args.devices.split(',')) minibatch_size *= num_GPU net = make_network(minibatch_size = minibatch_size) preloss = net.loss_var net.loss_var = WeightDecay(net.loss_var, {"*conv*": 1e-4, "*fc*": 1e-4}) train_func = env.make_func_from_loss_var(net.loss_var, "train", train_state = True) lr = 0.1 * num_GPU if iswarmup: lr /= 10 optimizer = Momentum(lr, 0.9) optimizer(train_func) #train_func.comp_graph.share_device_memory_with(valid_func.comp_graph) dic = { "loss": net.loss_var, "pre_loss": preloss, "outputs": net.outputs[0]
(img, label) = p.get() data.append(img) labels.append(label) return { "data": np.array(data).astype(np.float32), "label": np.array(labels) } if __name__ == '__main__': with TrainingEnv(name="lyy.{}.test".format(net_name), part_count=2) as env: net = make_network(minibatch_size=minibatch_size) preloss = net.loss_var net.loss_var = WeightDecay(net.loss_var, { "*conv*:W": 1e-4, "*fc*:W": 1e-4, "*bnaff*:k": 1e-4, "*offset*": 1e-4 }) train_func = env.make_func_from_loss_var(net.loss_var, "train", train_state=True) valid_func = env.make_func_from_loss_var(net.loss_var, "val", train_state=False) lr = 0.1 optimizer = MyMomentum(lr, 0.9) #optimizer.learning_rate = 0.01 optimizer(train_func)
return { "data": np.array(data).astype(np.float32), "label": np.array(labels) } if __name__ == '__main__': parser = argparse.ArgumentParser() with TrainingEnv(name="lyy.{}.test".format(net_name), part_count=2, custom_parser=parser) as env: print("A") net = make_network(minibatch_size=minibatch_size) preloss = net.loss_var net.loss_var = WeightDecay(net.loss_var, { "*encoder*": 1e-4, "*outputs*": 1e-4 }) """ print(isinstance(net.loss_var.owner_opr, WeightDecay)) print(net.loss_var.owner_opr._params) print(type(net.loss_var.owner_opr._param_weights)) exit() """ train_func = env.make_func_from_loss_var(net.loss_var, "train", train_state=True) valid_func = env.make_func_from_loss_var(net.loss_var, "val", train_state=False)