Bug SqueezeBERT stops with no error 
Author: HRezaeiM
Pull request: no
Labels: name: wontfix

## 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: 
- Platform: Ubuntu
- Python version: anaconda python 3.7
- PyTorch version (GPU?): 
- Tensorflow version (GPU?):
- Using GPU in script?:
- Using distributed or parallel set-up in the script?:

The GPUs available were : 
```
Geforce GTX 980 4gb
Geforce GTX Titan 12gb
```
```
transformers == 4.1.1
torch==1.7.0
torchvision == 0.8.1
```

### 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 
 tokenizers: @mfuntowicz
 Trainer: @sgugger
 Speed and Memory Benchmarks: @patrickvonplaten
 Model Cards: @julien-c
 TextGeneration: @TevenLeScao 
 examples/distillation: @VictorSanh
 nlp datasets: [different repo](https://github.com/huggingface/nlp)
 rust tokenizers: [different repo](https://github.com/huggingface/tokenizers)
 Text Generation: @patrickvonplaten @TevenLeScao
 Blenderbot: @patrickvonplaten
 Bart: @patrickvonplaten
 Marian: @patrickvonplaten
 Pegasus: @patrickvonplaten
 mBART: @patrickvonplaten
 T5: @patrickvonplaten
 Longformer/Reformer: @patrickvonplaten
 TransfoXL/XLNet: @TevenLeScao
 RAG: @patrickvonplaten, @lhoestq
 FSMT: @stas00
 examples/seq2seq: @patil-suraj
 examples/bert-loses-patience: @JetRunner
 tensorflow: @jplu
 examples/token-classification: @stefan-it
 documentation: @sgugger
 -->

## Information

Model I am using (Bert, XLNet ...): SqueezeBERT

The problem arises when using:
* [ ] the official example scripts: (give details below)
using [Sequence Classification with IMDb Reviews
](https://huggingface.co/transformers/custom_datasets.html#seq-imdb) example I have made my own script
* [x] my own modified scripts: (give details below)
The only changes I have made in this script are

1.  to use Yelp dataset,
2. use SqueezeBERT instead of DistilBERT, 
3. also do a 5label sentiment...

```python
training_args = TrainingArguments(
    output_dir='./SqueezeBERT_10ep_result',          # output directory
    per_device_train_batch_size=3,  # batch size per device during training
    per_device_eval_batch_size=3,   # batch size for evaluation
    warmup_steps=500,                # number of warmup steps for learning rate scheduler
    weight_decay=0.01,               # strength of weight decay
    logging_dir='./SqueezeBERT_10ep_log',            # directory for storing logs
    logging_steps=500,
    num_train_epochs=10,              # total number of training epochs
    evaluation_strategy="epoch",
    do_train=True,
    do_eval=True,
)

model = SqueezeBertForSequenceClassification.from_pretrained('squeezebert/squeezebert-mnli-headless', return_dict=True)
model.num_labels = 5
model.classifier = nn.Linear(768,5)



from sklearn.metrics import accuracy_score, precision_recall_fscore_support


def compute_metrics(pred):    
    
    labels = pred.label_ids
    preds = pred.predictions.argmax(-1)
    precision, recall, f1, _ = precision_recall_fscore_support(labels, preds, average='macro')
    acc = accuracy_score(labels, preds)

    return {
        'accuracy': acc,
        'f1': f1,
        'precision': precision,
        'recall': recall
    }


print("Displaying model architecture... !\n")
print(model)
print("Training model starting...!\n")
       
trainer = Trainer(
    model=model,             # the instantiated 🤗 Transformers model to be trained
    args=training_args,                  # training arguments, defined above
    train_dataset=train_dataset,         # training dataset
    eval_dataset=val_dataset,             # evaluation dataset
    compute_metrics=compute_metrics,
)

trainer.train()


```
The tasks I am working on is:
* [ ] an official GLUE/SQUaD task: (give the name)
* [x] my own task or dataset: (give details below) 
Using the yelp full dataset

## To reproduce

Steps to reproduce the behavior:

1. Run the scripts as mentioned
2. Reaching Epoch 3, it will suddenly stop using the GPU and although no error is showing up, nothing changes...
3. the Last checkpoint that saves is `checkpoint-310000` 


<!-- 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

<!-- A clear and concise description of what you would expect to happen. -->
it should have just go on and finished the training process.


Comments:
Hi! Is there a way for you to reproduce this error in a colab notebook? 

This issue has been automatically marked as stale and been closed because it has not had recent activity. Thank you for your contributions.

If you think this still needs to be addressed please comment on this thread.