Use different data collator for train and eval dataset in trainer
# 🚀 Feature request

<!-- A clear and concise description of the feature proposal.
     Please provide a link to the paper and code in case they exist. -->

## Motivation

<!-- Please outline the motivation for the proposal. Is your feature request
     related to a problem? e.g., I'm always frustrated when [...]. If this is related
     to another GitHub issue, please link here too. -->

I am trying pretraining a BART model from scratch on my own data. Since the noises added during the training phase are more than MLM, I need a different data collator during evaluation that differs from the one used in training. However, in `trainer`, there is only one arg for setting data collator that is used for both train and eval dataset. How do I achieve that?

Hi there. You will need to subclass the Trainer and change the `get_eval_dataloader` method.<|||||>thanks a lot!