args_dict = { 'ENV_ID': 'Acrobot-v1', 'SEED': 1, 'NB_FRAMES': 10000, 'BATCH_SIZE': 32, 'DISCOUNT': 0.99, 'TARGET_UPDATE_STEPS': 100, 'LEARNING_RATE': 1e-3, 'REPLAY_BUFFER_SIZE': 1000, 'MIN_REPLAY_BUFFER_SIZE': 100, 'EPSILON_START': 1, 'EPSILON_END': 0.1, 'EPSILON_DECAY_DURATION': 5000, } # Allow changing hyperparameters from command-line arguments args = get_args(default_args=args_dict) # Create wrapped environment env = make_env(args.ENV_ID) # Set Seed set_seed(env, args.SEED) # GPU or CPU device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu') # Create agent agent = Agent(env, device, args) # Train agent for args.NB_FRAMES agent.train()
tdc.eval() cmc.eval() plot_tsne(tsne_loaders, tdc, cmc, device) tdc.train() cmc.train() tsne_end_t = time.time() print( "[pretrain] Updated t-SNE figure (Duration: {}s)".format( tsne_end_t - tsne_start_t ) ) if __name__ == "__main__": # Parse arguments args = get_args() # Setup wandb wandb.init(project="youtube") wandb.config.update(args) print("[pretrain] Wandb setup complete.") device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") dataset = TDCCMCDataset( filenames=["./data/6zXXZvVvTFs", "./data/2AYaxTiWKoY", "./data/sYbBgkP9aMo"], trims=[(960, 9960), (550, 9550), (1, 9901)], crops=[(35, 50, 445, 300), (0, 13, 640, 335), (5, 22, 475, 341)], ) loader = DataLoader( dataset, batch_size=args.BATCH_SIZE, num_workers=0, pin_memory=True