Add BeitForSemanticSegmentation
# What does this PR do?

This PR is a follow-up of #12994, and adds the semantic segmentation head of [BEiT](https://arxiv.org/abs/2106.08254). It's the state-of-the-art model currently for semantic segmentation (i.e. the task of labeling each pixel of an image), on datasets like [ADE20k](https://groups.csail.mit.edu/vision/datasets/ADE20K/) and [CityScapes](https://www.cityscapes-dataset.com/) (see [this chart](https://paperswithcode.com/sota/semantic-segmentation-on-ade20k-val) on paperswithcode).

Now it's easily available with a HuggingFace API! :)

Models are on the hub: https://huggingface.co/models?search=ade-640

Here's a notebook for quick inference: https://colab.research.google.com/drive/1AS3z0plOhWWibBvDgsQkRbfJB73vSsR3?usp=sharing
@NielsRogge 
Do you have plans to add an example fine-tuning script for the segmentation task?<|||||>Hi @kamalkraj,

Yes I do plan to add that. However, this will become easier once the Image feature will be available in the Datasets library.<|||||>Okay @NielsRogge 

I can update the flax version of beit, after this PR merge 