from_pretrained incompatible with the models being downloaded
Author: sebastianbujwid
Pull request: no

## Environment info
<!-- You can run the command `transformers-cli env` and copy-and-paste its output below.
     Don't forget to fill out the missing fields in that output! -->
     
- `transformers` version: 2.3.0
- Platform: Linux
- Python version: 3.7.7

### Who can help
<!-- Your issue will be replied to more quickly if you can figure out the right person to tag with @
 If you know how to use git blame, that is the easiest way, otherwise, here is a rough guide of **who to tag**.
 Please tag fewer than 3 people.
 
 albert, bert, GPT2, XLM: @LysandreJik 
 -->
@LysandreJik 

## Information

Model I am using (Bert, XLNet ...):

The problem arises when using:
* [ ] the official example scripts: (give details below)
* [x] my own modified scripts: (give details below)

```
import logging
logging.basicConfig(level=logging.DEBUG) 
from transformers import TFAlbertModel 
model = TFAlbertModel.from_pretrained('albert-xxlarge-v2') 
```

**Problem:**
The model does not load the weights. I assume due to some incompatibility. The output:
```
INFO:transformers.modeling_tf_utils:Layers of TFAlbertModel not initialized from pretrained model: ['pooler', 'encoder', 'embeddings']
INFO:transformers.modeling_tf_utils:Layers from pretrained model not used in TFAlbertModel: ['albert', 'predictions']
```

I suppose the model from https://s3.amazonaws.com/models.huggingface.co/bert/albert-xxlarge-v2-tf_model.h5 has been changed and is incompatible now. I cannot find the older version of the model anywhere.

## To reproduce

Steps to reproduce the behavior:

(See script above)
1. (Assume) Clean model cache
2. Enable full logging
3. Run TFAlbertModel.from_pretrained('albert-xxlarge-v2')


<!-- If you have code snippets, error messages, stack traces please provide them here as well.
     Important! Use code tags to correctly format your code. See https://help.github.com/en/github/writing-on-github/creating-and-highlighting-code-blocks#syntax-highlighting
     Do not use screenshots, as they are hard to read and (more importantly) don't allow others to copy-and-paste your code.-->

## Expected behavior

It should load the weights correctly (or at least give an error/warning), not simply fail silently!

<!-- A clear and concise description of what you would expect to happen. -->

---

## Question

Is there a way to access older Albert models (for `transformers==2.3.0`)?
Those from https://s3.amazonaws.com/models.huggingface.co/bert/albert-xxlarge-v2-tf_model.h5 seem to be incompatible.

I really cannot modify the code now or upgrade `transformers` version, but it would totally save me if someone had available the older version of the model. Would it be possible to share (at least all Albert models)?


Comments:
I let @LysandreJik answer about the model but I have a tangential question I love to have some information about @sebastianbujwid (we may be able to help):
Why is it not possible for you to update transformers past the 2.3.0 version?

Hello! Indeed, there has been an issue with the TF ALBERT model that has been resolved in the following commit: https://github.com/huggingface/transformers/commit/1abd53b1aa2f15953bbbbbfefda885d1d9c9d94b#diff-143909fef69337378ffd5ccb1af28c3855ba498a11296fb62886b854d269342d

This commit is, unfortunately, only available on version v2.5.1. Is it possible for you to update your version to v2.5.1? If not, let me know specifically which models you would like and I'll give you URLs you can use to download these specific model weights, but please understand that *before v2.5.1*, the TF version of the ALBERT models will not correctly if using them with heads (e.g. SequenceClassification, TokenClassification, QuestionAnswering, etc.)

Thank you so much for the quick response!

I did more digging into the issue and realized that I actually still have the old model weights in my `.cache`, they are just not used since the model checks the URL and downloads the new weights anyway (expects the cached weights with the newest e-tag).

Although I haven't verified it yet, I'm quite confident I should be able to either use the cached weights I have or maybe upgrade to v2.5.1 (assuming the API hasn't changed much, for practical reasons I'd strongly prefer not to change the code since would have run additional test and re-do at least some of my main experiments).
Otherwise, I might reach out again for the specific URLs. Thanks :)

Maybe the issue with incompatibility is not fixable for older versions anymore but for the future maybe it would be good to do some versioning of the weight files and check for the right version when downloading/reading from the cache, in case that's not done yet? It's a shame if some code suddenly stops working without being changed.
Regarding the logging, after a quick check now I see that the recent code from the main branch uses `logging.warning` instead which should at least make the issue easier to notice (sadly, it took me a few days to realize that all my problems were due to the model not loading the pre-trained weights - apparently ALBERT with random weights still works much better than random on certain problems).

You're absolutely right that these incompatibility issues are due to not having a way to version models. You'll be happy to hear that we're currently working on this internally :).

Thank you for opening such a detailed issue!