Add multi-label text classification support to pytorch example
Author: ranchlai
Pull request: yes

# What does this PR do?
The transoformer config supports multi-label classification by setting config.problem_type = "multi_label_classification", 
but the run_glue.py does not support it.
This PR add `run_classification.py` to support multi-label classification task.

Main changes compared to `run_glue.py`:
- [x] Add support for multi-label classification task and datasets, e.g., [Reuters-21578](https://huggingface.co/datasets/reuters21578).
- [x] Remove code related to glue tasks
- [x] Update README.md for multi-label classification task.
- Add parameraters and code to support single/multi-label classification and regression task
    - Add `shuffle_train_dataset` option to shuffle train dataset. This is useful to avoid problems caused by ordered labels.
    - Add `metric_name` to specify the metric used to evaluate the model. 
    - Add `remove_splits` to remove some unnsed splits from the dataset, e.g., Reuter dataset has "unused" split, IMDB dataset has "unsupervised" split.
    - Add `remove_columns` to remove some unnsed columns from the dataset
    - Add `text_column_names` to specify the (possibly multiple) columns containing the text.
    - Add `label_column_name` to specify the column containing the labels, e.g.,  `stars" for amazon review dataset
    - Add train/validation/test_split_name to specify the split name for train/validation/test dataset
    - Add do_regression to force treating text-classification task as regression task. This remove the need to change the label dtype of the dataset.


Comments:
@ranchlai Thanks for opening this PR and contributing to the examples! 

Could you add to the README for this example a snippet for running on a multi-label classification task?

> @ranchlai Thanks for opening this PR and contributing to the examples!
> 
> Could you add to the README for this example a snippet for running on a multi-label classification task?

Sure^_^.  Working on the  [reuters21578](https://huggingface.co/datasets/reuters21578) dataset  as a minimum example. Will update README accordingly. 

@ranchlai Please note that the examples are kept simple to be more readable. This adds a lot of complexity to the original example for something that is not covered by the primary goal of that example (run GLUE benchmark) so I would keep it separate.

Thanks for commenting @sgugger. I understand and that's why I am trying to make the change minimum.  Multiple label classification is indeed more complicated . Hence, adding a demo in the "text-classification" example could be helpful. Thank you~

Yes, but maybe it could go in a new file focused on text classification only (and not GLUE)?

That's a good idea. How about run_classification.py in parallel to run_glue.py?  I can try to work it out. 

Perfect!

@sgugger please would you leave more comments, although I am still running more tests

_The documentation is not available anymore as the PR was closed or merged._

> 

@sgugger I think I have finished my tests. Scripts [here](https://github.com/ranchlai/transformers/tree/add_test_scripts/examples/pytorch/text-classification/test) at another branch. Please merge if looks good. 

Thanks again for your contribution!

I think the added content in README should be placed in the bottom.