项目介绍:bert-base-italian-xxl-uncased
项目背景
该项目由巴伐利亚州立图书馆的MDZ数字图书馆团队(dbmdz)开发,公开了意大利语的BERT和ELECTRA模型。这个项目的目标是创建适用于意大利语的自然语言处理模型,以帮助研究和开发人员更好地开展相关工作。
意大利语BERT模型
数据来源
意大利语BERT模型的训练数据源主要包括近期的维基百科数据提取和来自OPUS语料库的各种文本。最终的训练语料库大小达到13GB,包含2,050,057,573个词汇单位。为了进一步增强模型,特别是XXL版本,团队还使用了OSCAR语料库中的意大利语部分,使得训练语料库拓展到81GB,包含13,138,379,147个词汇单位。
模型训练
团队使用NLTK进行句子切分,因为其速度较快。他们还分别训练了大小写敏感(cased)和不敏感(uncased)的模型,初始序列长度设置为512个子词,训练的步数约为2-3百万步。
值得注意的是,在训练XXL模型时,由于词汇量设置错误,导致实际词汇表数量是31102,而config.json
中标注的词汇量并不一致。尽管如此,模型在这种情况下仍然能够正常工作,具体细节可以参见项目发布的问题讨论。
意大利语ELECTRA模型
该模型使用"XXL"语料库进行总共100万步的训练,批量大小为128。训练过程基本遵循了与BERTurk类似的ELECTRA训练程序。
模型权重
目前,仅提供与PyTorch-Transformers兼容的权重。如果需要TensorFlow的模型检查点,可以在项目页面提出需求。
可供下载的模型包括:
dbmdz/bert-base-italian-cased
dbmdz/bert-base-italian-uncased
dbmdz/bert-base-italian-xxl-cased
dbmdz/bert-base-italian-xxl-uncased
dbmdz/electra-base-italian-xxl-cased-discriminator
dbmdz/electra-base-italian-xxl-cased-generator
结果
有关下游任务(例如命名实体识别或词性标注)的结果,请参阅这个项目仓库。
使用方法
使用Transformers 2.3及以上版本,加载意大利语BERT模型的方法如下:
from transformers import AutoModel, AutoTokenizer
model_name = "dbmdz/bert-base-italian-cased"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModel.from_pretrained(model_name)
加载推荐的意大利语XXL BERT模型:
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)
加载意大利语XXL ELECTRA模型(鉴别器):
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模型库
所有模型均可在Huggingface模型库中获取。
联系方式
如果对我们的BERT/ELECTRA模型有任何问题,可以在这里提出。
致谢
感谢谷歌的TensorFlow科研云提供的云TPU支持,以及Hugging Face团队慷慨的支持,使得用户能从其S3存储中下载所有的大小写敏感和不敏感模型。