the execution order of `scheduler.step()` and `optimizer.step()`
## ❓ Questions & Help

About current readme, related to the execution order of `scheduler.step()` and `optimizer.step()`
https://github.com/huggingface/pytorch-transformers#optimizers-bertadam--openaiadam-are-now-adamw-schedules-are-standard-pytorch-schedules
```python
### In PyTorch-Transformers, optimizer and schedules are splitted and instantiated like this:
optimizer = AdamW(model.parameters(), lr=lr, correct_bias=False)  # To reproduce BertAdam specific behavior set correct_bias=False
scheduler = WarmupLinearSchedule(optimizer, warmup_steps=num_warmup_steps, t_total=num_total_steps)  # PyTorch scheduler
### and used like this:
for batch in train_data:
    loss = model(batch)
    loss.backward()
    torch.nn.utils.clip_grad_norm_(model.parameters(), max_grad_norm)  # Gradient clipping is not in AdamW anymore (so you can use amp without issue)
    **scheduler.step()**
    **optimizer.step()**
    optimizer.zero_grad()
```
While following the example code, i meet the warning which indicate the order is not expected according to the pytorch official document.
```bash
/lib/python3.6/site-packages/torch/optim/lr_scheduler.py:82: UserWarning: Detected call of `lr_scheduler.step()` before `optimizer.step()`. In PyTorch 1.1.0 and later, you should call them in the opposite order: 
`optimizer.step()` before `lr_scheduler.step()`.  Failure to do this will result in PyTorch skipping the first value of the learning rate schedule.See more details at https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate
```
I wonder if the readme need to be update to fit this announcement.

Thx
I believe the order doesn't actually matter as long as it reflects what you're trying to do with your learning rate.<|||||>Readme fixed, thanks!