Set dropout for ClassificationHead
When I train a classification task I want to be able to set a dropout value for the prediction head.
This dropout value should be independent of the other dropout values of the language model.

Now the issue is: If I want to set a dropout for the ClassificationHead of Electra (and other models) I have to set the 
`hidden_dropout_prob`. See here:

https://github.com/huggingface/transformers/blob/546dc24e0883e5e9f5eb06ec8060e3e6ccc5f6d7/src/transformers/models/electra/modeling_electra.py#L903

But this sets (changes) the dropout of many other layers too. IMO that should not be the case.

IMO there should be an dedicated dropout for the head which is defaulted by `hidden_dropout_prob` but can be changed by
the user.

@sgugger and @LysandreJik what do you think?

PS: I can provide a PR if wanted...
Valid point, some models (like mBART, DETR, PEGASUS) have a `classifier_dropout` in their config. 

It should ideally be the case for all models.<|||||>Agreed with Niels. If you want to make a PR @PhilipMay, please go ahead. Just make sure to use the same attribute name ( `classifier_dropout`) as in the existing models, and make sure there is no breaking change (which should be the case with your proposition).<|||||>> and make sure there is no breaking change (which should be the case with your proposition).

@sgugger I am confused - sorry.
You mean my suggestion:

> IMO there should be an dedicated dropout for the head which is defaulted by hidden_dropout_prob but can be changed by
the user.

Adds no breaking change and is ok? Or do you say it adds a breaking change?<|||||>Well - I just started with Electra: #12794

@sgugger can you please check that if it follows the right pattern? If yes I can add the other models.<|||||>This is closed by the PR merge.