FlauBERT是一个基于大规模异构法语文本语料库训练的法语BERT模型。使用法国国家科学研究中心(CNRS)的超级计算机进行训练。
随着FlauBERT的发布,还有一个类似于流行的GLUE基准的法语自然语言处理系统评估设置。其目标是为了以后能够进行可重复的实验,并分享法语语言的模型和进展。详细信息请参考 official website 。
Model name | Number of layers | Attention Heads | Embedding Dimension | Total Parameters |
---|---|---|---|---|
flaubert-small-cased | 6 | 8 | 512 | 54 M |
flaubert-base-uncased | 12 | 12 | 768 | 137 M |
flaubert-base-cased | 12 | 12 | 768 | 138 M |
flaubert-large-cased | 24 | 16 | 1024 | 373 M |
注意:flaubert-small-cased是部分训练的,性能不能得到保证。仅建议将其用于调试目的。
import torch from transformers import FlaubertModel, FlaubertTokenizer # Choose among ['flaubert/flaubert_small_cased', 'flaubert/flaubert_base_uncased', # 'flaubert/flaubert_base_cased', 'flaubert/flaubert_large_cased'] modelname = 'flaubert/flaubert_base_cased' # Load pretrained model and tokenizer flaubert, log = FlaubertModel.from_pretrained(modelname, output_loading_info=True) flaubert_tokenizer = FlaubertTokenizer.from_pretrained(modelname, do_lowercase=False) # do_lowercase=False if using cased models, True if using uncased ones sentence = "Le chat mange une pomme." token_ids = torch.tensor([flaubert_tokenizer.encode(sentence)]) last_layer = flaubert(token_ids)[0] print(last_layer.shape) # torch.Size([1, 8, 768]) -> (batch size x number of tokens x embedding dimension) # The BERT [CLS] token correspond to the first hidden state of the last layer cls_embedding = last_layer[:, 0, :]
注:如果您的transformers版本