allowing the user to set booleans with HfArgumentParser
Author: rabeehkarimimahabadi
Pull request: no

Hi
this is more general issue, if the user defines some booleans as arguments like --flag false/true once calling the finetune_trainer.py one would get following error as below with HfArgumentParser, it would be great to allow users set explicit values for booleans too, currently this is only possible with config files. thanks

```

raceback (most recent call last):
Traceback (most recent call last):
  File "finetune_t5_trainer.py", line 329, in <module>
  File "finetune_t5_trainer.py", line 329, in <module>
        main()main()

  File "finetune_t5_trainer.py", line 48, in main
  File "finetune_t5_trainer.py", line 48, in main
        model_args, data_args, training_args, adapter_args = parser.parse_args_into_dataclasses()model_args, data_args, training_args, adapter_args = parser.parse_args_into_dataclasses()

  File "/opt/conda/envs/internship/lib/python3.7/site-packages/transformers-3.5.1-py3.7.egg/transformers/hf_argparser.py", line 144, in parse_args_into_dataclasses
  File "/opt/conda/envs/internship/lib/python3.7/site-packages/transformers-3.5.1-py3.7.egg/transformers/hf_argparser.py", line 144, in parse_args_into_dataclasses
        raise ValueError(f"Some specified arguments are not used by the HfArgumentParser: {remaining_args}")raise ValueError(f"Some specified arguments are not used by the HfArgumentParser: {remaining_args}")

ValueErrorValueError: : Some specified arguments are not used by the HfArgumentParser: ['True', 'true', 'False', 'False', 'True', 'True', 'True', 'True', 'True', 'True', 'True', '--add_adapters_in_decoder', 'False']Some specified arguments are not used by the HfArgumentParser: ['True', 'true', 'False', 'False', 'True', 'True', 'True', 'True', 'True', 'True', 'True', '--add_adapters_in_decoder', 'False']

Traceback (most recent call last):
  File "/opt/conda/envs/internship/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/opt/conda/envs/internship/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/opt/conda/envs/internship/lib/python3.7/site-packages/torch-1.7.0-py3.7-linux-x86_64.egg/torch/distributed/launch.py", line 260, in <module>
    main()
  File "/opt/conda/envs/internship/lib/python3.7/site-packages/torch-1.7.0-py3.7-linux-x86_64.egg/torch/distributed/launch.py", line 256, in main
    cmd=cmd)
subprocess.CalledProcessError: Command '['/opt/conda/envs/internship/bin/python', '-u', 'finetune_t5_trainer.py', '--local_rank=1', '--model_name_or_path', 't5-small', '--tokenizer_name', 't5-small', '--learning_rate', '1e-2', '--output_dir', 'outputs/test', '--max_source_length', '128', '--max_target_length', '128', '--val_max_target_length', '128', '--test_max_target_length', '128', '--num_train_epochs', '10', '--warmup_steps', '500', '--eval_steps', '200', '--overwrite_output_dir', 'True', '--tasks', '[scitail,', 'boolq]', '--eval_tasks', '[rte,', 'boolq]', '--sampling', 'true', '--label_smoothing', '0.1', '--freeze_encoder', 'False', '--freeze_embeds', 'False', '--per_device_train_batch_size', '64', '--per_device_eval_batch_size', '64', '--save_steps', '20', '--logging_first_step', 'True', '--logging_steps', '200', '--save_total_limit', '1', '--train_adapters', 'True', '--adapter_config_name', 'parametric-meta-adapter', '--temperature', '10', '--do_eval', 'True', '--predict_with_generate', 'True', '--n_train', '10', '--task_embedding_dir', 'test_data/task_embeddings/n-train-all', '--task_embedding_dim', '512', '--n_val', '10', '--n_train', '10', '--do_finetune', 'True', '--do_train', 'True', '--n_finetune', '100', '--eval_output_dir', 'outputs/eval_test', '--reduction_factor', '16', '--non_linearity', 'relu', '--train_task_embeddings', 'True', '--projected_task_embedding_dim', '512', '--add_adapters_in_decoder', 'False', '--unfreeze_lm_head', '--unfreeze_layer_norms']' returned non-zero exit status 1.
```


Comments:
Hey @rabeehkarimimahabadi, 

One should not call the `HfArgumentParser` with 

`--overwrite_output_dir True`, but just with `--overwrite_output_dir` to set the bool from `False` to `True`. If one wants to leave it as `False`, the arg should just not be passed. If the default field of this variable is already `True` and one wants to set it to `False` the argument should be passed as follows :`--no_remove_unused_columns`, see: https://github.com/huggingface/transformers/blob/master/src/transformers/hf_argparser.py#L83
.