epsilon=args.EPS, weight_decay=args.WD, early_stopping_patience=args.early_stopping_patience, num_epochs=args.num_epochs, num_fine_tuning_epochs=args.num_fine_tuning_epochs, best_metric=args.best_metric, zero_shot_label=args.zero_shot_label, random_state=args.random_state, cpu=args.cpu) logger = NeptuneLogger(args.neptune_username) logger.create_experiment(PARAMS) task_builder = TaskBuilder(random_state=PARAMS.random_state) task_dict = task_builder.build_tasks(dataset_list, PARAMS) run_type = "multi_task" if len(dataset_list) > 1 else "single_task" # Create the test_task_dict for zero-shot evaluation if we have been supplied test tasks if len(test_dataset_list) > 0: # If we already have a task created in the task_dict, it makes sense to just copy that task into the test_task_dict instead of creating a new task (saves on memory) already_created_tasks = [ x for x in test_dataset_list if x in task_dict.keys() ] not_already_created_tasks = [ x for x in test_dataset_list if x not in task_dict.keys() ] test_task_dict = task_builder.build_tasks(not_already_created_tasks, PARAMS, is_test_tasks=True)