[fix] Move _adjust_logits above postprocess to fix Marian.generate
Author: sshleifer
Pull request: yes

Fixes slow gpu test failures caused by #5031 

This logic was already discussed in a previous PR, but, to summarize, the marian model loves to predict `pad_token_id` and if we allow pad_token_id's high score to enter the softmax we get very low probabilities for everything else.


I also rename `prepare_logits_for_generation` -> `_adjust_logits`

Comments:
# [Codecov](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=h1) Report
> Merging [#5126](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=desc) into [master](https://codecov.io/gh/huggingface/transformers/commit/3d3e605affb792b78c918aac48f6bc82cfbf7e3e&el=desc) will **increase** coverage by `0.06%`.
> The diff coverage is `100.00%`.

[![Impacted file tree graph](https://codecov.io/gh/huggingface/transformers/pull/5126/graphs/tree.svg?width=650&height=150&src=pr&token=9qOlN6Hb1c)](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master    #5126      +/-   ##
==========================================
+ Coverage   77.26%   77.32%   +0.06%     
==========================================
  Files         133      133              
  Lines       22163    22163              
==========================================
+ Hits        17124    17138      +14     
+ Misses       5039     5025      -14     
```


| [Impacted Files](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [src/transformers/modeling\_bart.py](https://codecov.io/gh/huggingface/transformers/pull/5126/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy9tb2RlbGluZ19iYXJ0LnB5) | `96.25% <100.00%> (ø)` | |
| [src/transformers/modeling\_marian.py](https://codecov.io/gh/huggingface/transformers/pull/5126/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy9tb2RlbGluZ19tYXJpYW4ucHk=) | `88.88% <100.00%> (ø)` | |
| [src/transformers/modeling\_utils.py](https://codecov.io/gh/huggingface/transformers/pull/5126/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy9tb2RlbGluZ191dGlscy5weQ==) | `91.16% <100.00%> (ø)` | |
| [src/transformers/modeling\_xlnet.py](https://codecov.io/gh/huggingface/transformers/pull/5126/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy9tb2RlbGluZ194bG5ldC5weQ==) | `78.65% <0.00%> (+2.29%)` | :arrow_up: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=footer). Last update [3d3e605...c6bd992](https://codecov.io/gh/huggingface/transformers/pull/5126?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).


Don't really think that `_adjust_logits` is a better name. Also why the underscore `_` ? we don't do this for `prepare_input_ids_for_generation()` either

Because it's not user facing, but I guess that's inconsistent. What do you think about `adjust_logits`?

Hmm, I like `prepare_logits_for_generation` better than `adjust_logits`,  since it has the name `generation` in it, so people know that this function only belongs to generation in bart & marian