if __name__ == '__main__': batch_size = 2 test_batch = 2 learning_rate = 0.001 epoch_num = 100 dataset_test = MyDataset('../Data/lmdbData_test', padding='zero') dataset = MyDataset('../Data/lmdbData_train',padding='zero') train_loader = DataLoader(dataset = dataset,batch_size=batch_size,shuffle=True) model = HAR_PointGNN(r = 0.0005, T=3, state_dim=8,frame_num=60) model.to(device) if os.path.exists('./models/HAR_PointGNN.pkl'): model.load_state_dict(torch.load('./models/HAR_PointGNN.pkl',map_location = device)) print("load model sucessfully") adam = torch.optim.Adam(model.parameters(), lr=learning_rate) scheduler = torch.optim.lr_scheduler.StepLR(adam, step_size=1, gamma=0.93) crossloss = nn.CrossEntropyLoss() for epoch in range(6,epoch_num+1): test_acc(model,dataset_test,test_batch) model.train() epoch_loss = 0
if __name__ == '__main__': batch_size = 3 test_batch = 3 learning_rate = 0.0001 epoch_num = 200 dataset_test = PMDataset(dir=LMDB_DATA, map_size=10, train=False) dataset = PMDataset(dir=LMDB_DATA, map_size=10, train=True) train_loader = DataLoader(dataset=dataset, batch_size=batch_size, shuffle=True) model = HAR_PointGNN(r=-1, T=3, state_dim=11, frame_num=20, output_dim=6) # summary(model,(1,60,250,11)) model = nn.DataParallel(model) if os.path.exists('./models/PatientHAR_PointGNN.pkl'): model.load_state_dict(torch.load('./models/PatientHAR_PointGNN.pkl')) print("load model sucessfully") model.cuda() adam = torch.optim.Adam(model.parameters(), lr=learning_rate) scheduler = torch.optim.lr_scheduler.StepLR(adam, step_size=1, gamma=0.8) crossloss = nn.CrossEntropyLoss() for epoch in range(1, epoch_num + 1): test_acc(model, dataset_test, test_batch)
learning_rate = 0.001 epoch_num = 2000 dataset_test = Falldataset(root_falls="../mmfalldata/DS2_falls", root_normal="../mmfalldata/DS2_normal", raw_data=False) dataset = Falldataset(root_falls="../mmfalldata/DS1_4falls", root_normal="../mmfalldata/DS1_4normal", raw_data=False) train_loader = DataLoader(dataset=dataset, batch_size=batch_size, shuffle=True) model = HAR_PointGNN(r=-1, T=3, state_dim=4, frame_num=10, output_dim=2) # summary(model,(1,60,250,11)) model.to(device) if os.path.exists('./models/mmFall_PointGNN.pkl'): model.load_state_dict( torch.load('./models/mmFall_PointGNN.pkl', map_location=device)) print("load model sucessfully") adam = torch.optim.Adam(model.parameters(), lr=learning_rate) scheduler = torch.optim.lr_scheduler.StepLR(adam, step_size=1, gamma=0.98) crossloss = nn.CrossEntropyLoss() for epoch in range(1, epoch_num + 1): # if epoch % 20: # test_acc(model,dataset_test,test_batch)
batch_size = 30 #40 6 test_batch = 50 # 80 12 learning_rate = 0.005 epoch_num = 200 dataset_test = GestureDataset(train=False, with_state=True) dataset = GestureDataset(train=True, with_state=True) train_loader = DataLoader(dataset=dataset, batch_size=batch_size, shuffle=True) model = HAR_PointGNN(r=-1, T=3, state_dim=5, frame_num=20, output_dim=4, extend=128, lstm_hidden=16) # summary(model,(1,60,250,11)) model = nn.DataParallel(model) if os.path.exists('./models/gesture_PointGNN.pkl'): model.load_state_dict(torch.load('./models/gesture_PointGNN.pkl')) print("load model sucessfully") model.cuda() adam = torch.optim.Adam(model.parameters(), lr=learning_rate, betas=(0.9, 0.99))
if __name__ == '__main__': batch_size = 10 test_batch = 15 learning_rate = 0.01 seed = 2021 epoch_num = 200 dataset_test = GestureDataset(train=False, with_state=True) dataset = GestureDataset(train=True, with_state=True) train_loader = DataLoader(dataset = dataset,batch_size=batch_size,shuffle=True) model = HAR_PointGNN(r = -1, T=3, state_dim=5,frame_num=20, output_dim=6,extend=128, lstm_hidden = 32) # summary(model,(1,60,250,11)) model.to(device) if os.path.exists('./models/gesture_PointGNN.pkl'): model.load_state_dict(torch.load('./models/gesture_PointGNN.pkl',map_location = device)) print("load model sucessfully") adam = torch.optim.Adam(model.parameters(), lr=learning_rate) scheduler = torch.optim.lr_scheduler.StepLR(adam, step_size=1, gamma=0.85) crossloss = nn.CrossEntropyLoss() for epoch in range(1, epoch_num+1): test_acc(model,dataset_test,test_batch) model.train() epoch_loss = 0