Setting global tokens in BigBirdModel
## Environment info
- `transformers` version: 4.6.1
- Platform: Linux-5.8.0-55-generic-x86_64-with-glibc2.31
- Python version: 3.9.5
- PyTorch version (GPU?): 1.8.1+cu111 (True)
- Tensorflow version (GPU?): not installed (NA)
- Using GPU in script?: no
- Using distributed or parallel set-up in script?: no


### Who can help
@vasudevgupta7 , @patrickvonplaten, @patil-suraj


## Information

Model I am using: BigBirdModel

Hi, I cannot find the way to set the global tokens for BigBirdModel as in BigBird-ITC. I hope I only missed something. The official paper says (Appendix E.2, paragraph "Natural Questions") "For BIGBIRD-ITC, we make the first 128 tokens as global.".

For e.g. longformer, setting global tokens to attend to is possible via `global_attention_mask` model parameter. However I found no option how to enforce the global attention on certain tokens for bigbird. This is crucial for e.g. all QA tasks. 
Is the explicit setting of global tokens supported?






So after closely inspecting the code I ran into following comment in method `bigbird_block_sparse_attention`.

There I found
```
       # BigBird block-sparse attention as suggested in paper

        # ITC:
        #     global tokens: 2 x block_size
        #     window tokens: 3 x block_size
        #     random tokens: num_rand_tokens x block_size

        # Note:
        #     1) Currently, ETC is not supported.
        #     2) Window size is fixed to 3 blocks & it can be changed only by
        #     changing `block_size`.
        #     3) Number of global blocks are fixed (2 blocks here) & global tokens can be
        #     controlled only by `block_size`.
```

I suppose that answers my 'issue'.