def main(args): #Clean up checkpoint dirs clear_dirs(args.mode, args.model_path) df = pd.read_csv(args.df_path) ##Create dataset from csv data = DataSet(df, args.num_tasks) data.create_tasks() num_timesteps = int(np.ceil(len(df) / args.batch_size)) if args.mode == 'UCB1': print('Starting UCB1...') UCB1(dataset=data, csv=df, num_episodes=args.num_episodes, num_timesteps=num_timesteps, batch_size=args.batch_size, hist_path=args.hist_path, c=args.c, gain_type=args.gain_type) elif args.mode == 'EXP3': print('Starting EXP3...') EXP3(data, df, args.num_episodes, num_timesteps, args.batch_size, args.hist_path, args.c, args.gain_type) elif args.mode == 'LinUCB': LinUCB(data, args.hist_path, args.num_episodes, num_timesteps, args.batch_size, args.gain_type) elif args.mode == 'SWTSK': s = SWTSK(data) s.train()