Cached feature files - Naming introduces confusion/model mixing
# 🐛 Bug

The problem arises when using:
* [X] the official example scripts: glue.py
* [ ] my own modified scripts: (give details below)

The tasks I am working on is:
* [X] an official GLUE/SQUaD task: any example of GLUE
* [ ] my own task or dataset: (give details below)

In `run_glue.py` (and possibly in other run_* scripts interfaced with the new Trainer), the cache naming for the pre-processed features introduces confusion between models.

https://github.com/huggingface/transformers/blob/3d3e605affb792b78c918aac48f6bc82cfbf7e3e/src/transformers/data/datasets/glue.py#L87

`tokenizer.__class__.__name__` is `BertTokenizer`, `DistilBertTokenizer`, etc. which removes the information of which tokenization is used. For instance, `bert-base-uncased` and `bert-base-cased` would end up with the same file name while being potentially two really different files.

In scripts not interfaced yet with the Trainer, the `model_name_or_path` is used which prevents conflicting files to have the same name:
https://github.com/huggingface/transformers/blob/3d3e605affb792b78c918aac48f6bc82cfbf7e3e/examples/text-classification/run_xnli.py#L315
Good point. We can do a simple hack for the time being but the cleanest way out will be to use 🤗nlp to process the data (which I'm adding at the moment but probably won't be fully operational in the examples before early next week).

🤗nlp has a lot more reliable and general hash-naming caching scheme for all data processing based on the function and all the inputs/outputs when processing the dataset (using some smart serialization with `dill` and hashing algo).<|||||>Ok! I might go back to the old scripts to experiment in the meantime.<|||||>This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
