julien-c's picture
julien-c HF staff
Migrate model card from transformers-repo
900e1c9
metadata
language: it
license: mit
datasets:
  - wikipedia

πŸ€— + πŸ“š dbmdz BERT and ELECTRA models

In this repository the MDZ Digital Library team (dbmdz) at the Bavarian State Library open sources Italian BERT and ELECTRA models πŸŽ‰

Italian BERT

The source data for the Italian BERT model consists of a recent Wikipedia dump and various texts from the OPUS corpora collection. The final training corpus has a size of 13GB and 2,050,057,573 tokens.

For sentence splitting, we use NLTK (faster compared to spacy). Our cased and uncased models are training with an initial sequence length of 512 subwords for ~2-3M steps.

For the XXL Italian models, we use the same training data from OPUS and extend it with data from the Italian part of the OSCAR corpus. Thus, the final training corpus has a size of 81GB and 13,138,379,147 tokens.

Note: Unfortunately, a wrong vocab size was used when training the XXL models. This explains the mismatch of the "real" vocab size of 31102, compared to the vocab size specified in config.json. However, the model is working and all evaluations were done under those circumstances. See this issue for more information.

The Italian ELECTRA model was trained on the "XXL" corpus for 1M steps in total using a batch size of 128. We pretty much following the ELECTRA training procedure as used for BERTurk.

Model weights

Currently only PyTorch-Transformers compatible weights are available. If you need access to TensorFlow checkpoints, please raise an issue!

Model Downloads
dbmdz/bert-base-italian-cased config.json β€’ pytorch_model.bin β€’ vocab.txt
dbmdz/bert-base-italian-uncased config.json β€’ pytorch_model.bin β€’ vocab.txt
dbmdz/bert-base-italian-xxl-cased config.json β€’ pytorch_model.bin β€’ vocab.txt
dbmdz/bert-base-italian-xxl-uncased config.json β€’ pytorch_model.bin β€’ vocab.txt
dbmdz/electra-base-italian-xxl-cased-discriminator config.json β€’ pytorch_model.bin β€’ vocab.txt
dbmdz/electra-base-italian-xxl-cased-generator config.json β€’ pytorch_model.bin β€’ vocab.txt

Results

For results on downstream tasks like NER or PoS tagging, please refer to this repository.

Usage

With Transformers >= 2.3 our Italian BERT models can be loaded like:

from transformers import AutoModel, AutoTokenizer

model_name = "dbmdz/bert-base-italian-cased"

tokenizer = AutoTokenizer.from_pretrained(model_name)

model = AutoModel.from_pretrained(model_name)

To load the (recommended) Italian XXL BERT models, just use:

from transformers import AutoModel, AutoTokenizer

model_name = "dbmdz/bert-base-italian-xxl-cased"

tokenizer = AutoTokenizer.from_pretrained(model_name)

model = AutoModel.from_pretrained(model_name)

To load the Italian XXL ELECTRA model (discriminator), just use:

from transformers import AutoModel, AutoTokenizer

model_name = "dbmdz/electra-base-italian-xxl-cased-discriminator"

tokenizer = AutoTokenizer.from_pretrained(model_name)

model = AutoModelWithLMHead.from_pretrained(model_name)

Huggingface model hub

All models are available on the Huggingface model hub.

Contact (Bugs, Feedback, Contribution and more)

For questions about our BERT/ELECTRA models just open an issue here πŸ€—

Acknowledgments

Research supported with Cloud TPUs from Google's TensorFlow Research Cloud (TFRC). Thanks for providing access to the TFRC ❀️

Thanks to the generous support from the Hugging Face team, it is possible to download both cased and uncased models from their S3 storage πŸ€—