模型:
google/multiberts-seed_1-step_20k
MultiBERTs是一个检查点集合和统计库,用于支持对BERT进行稳健研究。我们提供了25个使用类似超参数但不同随机种子(导致初始权重和训练实例顺序的变化)训练的BERT-base模型。目标是区分适用于特定实例(即模型的特定实例)的发现和适用于更一般过程的发现。
我们还提供了140个在预训练过程中捕获的中间检查点(前5个运行保存了28个检查点)。
这些模型最初通过[链接]发布。我们在我们的论文[链接]中对它们进行了描述。
这是第1个模型,捕获在步骤20k时(最大值:2000k,即2M步)。
这个模型是在对英语的复现[链接]期间捕获的:它是一个在大量英语数据上进行预训练的Transformers模型,使用了遮蔽语言模型(MLM)和下一个句子预测(NSP)目标。
完全训练模型的预期用途、限制、训练数据和训练过程与原始模型 BERT-base uncased 类似。与原始模型相比有两个主要区别:
这是一次尽力的复现,因此可能存在与原始模型不同的地方未被发现。在完全训练后,MultiBERTs在GLUE上的性能往往可与原始BERT相媲美,但我们在SQuAD的开发集上发现了显著差异(MultiBERTs胜过原始BERT)。更多细节请参阅我们的[链接]。
使用[链接]中的代码,以下是基于Tensorflow的示例:
from transformers import BertTokenizer, TFBertModel tokenizer = BertTokenizer.from_pretrained('google/multiberts-seed_1-step_20k') model = TFBertModel.from_pretrained("google/multiberts-seed_1-step_20k") text = "Replace me by any text you'd like." encoded_input = tokenizer(text, return_tensors='tf') output = model(encoded_input)
PyTorch版本:
from transformers import BertTokenizer, BertModel tokenizer = BertTokenizer.from_pretrained('google/multiberts-seed_1-step_20k') model = BertModel.from_pretrained("google/multiberts-seed_1-step_20k") text = "Replace me by any text you'd like." encoded_input = tokenizer(text, return_tensors='pt') output = model(**encoded_input)
@article{sellam2021multiberts, title={The MultiBERTs: BERT Reproductions for Robustness Analysis}, author={Thibault Sellam and Steve Yadlowsky and Jason Wei and Naomi Saphra and Alexander D'Amour and Tal Linzen and Jasmijn Bastings and Iulia Turc and Jacob Eisenstein and Dipanjan Das and Ian Tenney and Ellie Pavlick}, journal={arXiv preprint arXiv:2106.16163}, year={2021} }