add relevant description to tqdm in examples
Author: bhavitvyamalik
Pull request: yes

# What does this PR do?
Fixes #11797. Added description to `dataset.map` to improve tqdm bars. This would tell the user what's being processed. As of now I've only targeted `text-classification`, please let me know if it looks good or if any changes are required so that I can update the rest of them as well.

I was also thinking we should have `check_min_version` for `datasets` as well as this won't work in dataset versions prior to 1.7.0.

## Who can review?
@stas00 

Comments:
> I was also thinking we should have `check_min_version` for `datasets` as well as this won't work in dataset versions prior to 1.7.0.

That and also we need to make sure that the CI runs 1.7.0. So probably just bumping the required min version project-wide will resolve this at once.

@stas00, Datasets 1.8.0 was released yesterday and now all tests are passing in this PR. Please let me know if it looks good or if any changes are required so that I can update the rest of them as well.

@lhoestq can I work on `check_min_version` feature in `datasets`?

Thank you for the heads up, @bhavitvyamalik!

The code now works:
```
$ python run_glue.py   --model_name_or_path bert-base-cased   --task_name $TASK_NAME   --do_train   --do_eval   --max_seq_length 128   --per_device_train_batch_size 32   --learning_rate 2e-5   --num_train_epochs 3   --output_dir output_dir
[...]
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.
Running tokenizer on dataset: 100%|████████████████████████████████████████████████████████████████████████████████████| 4/4 [00:00<00:00, 22.54ba/s]
Running tokenizer on dataset: 100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 47.85ba/s]
Running tokenizer on dataset: 100%|████████████████████████████████████████████████████████████████████████████████████| 2/2 [00:00<00:00, 14.15ba/s]
06/09
```

So what is missing is the version checking. normally we have all the versions setup in `setup.py` and its autogenerated table, and then we just need to do `dep_version_check("datasets")` but here this higher version is only needed for these few scripts. so one way is to code it explicitly:
```
from packaging import version
if version.parse(datasets.__version__) < version.parse("1.8.0")
    raise ValueError("....")
```


But at the same time is there any reason why we can't just bump transformers's library-wide dependency to `datasets>=1.8.0`?



> @lhoestq can I work on check_min_version feature in datasets?

The problem with this one is that it will require a certain version of `datasets` to even work,


OK, so 2 things to do:

1. update: `examples/pytorch/text-classification/requirements.txt` to bump up `datasets`:
2. and then in the scripts:
```
from transformers.utils.versions import require_version
require_version("datasets>=1.8.0", "To fix: pip install -r examples/pytorch/text-classification/requirements.txt")
```



@sgugger, I was yet to replicate this for other examples. I'll raise another PR for that! 

Oops! Sorry, missed that part.

I like the approach of making the first PR with just 1 or a few examples with a commitment to extend it to other examples in a separate PR (by creating an Issue that will track the replication).

The problem with tackling more than one example is that it puts a huge onus on the developer and reviewers to do much more work if things aren't right right away. But with one example, ideas are bounced around, tried, applied, verified, merged - then if all is good it's now easy to replicate to many more examples.

This is IMHO, of course.