深入探索XLM - R:从分词到自定义模型构建
1. XLM - R简介
XLM - R在多语言自然语言理解(NLU)任务中表现出色。它仅使用掩码语言模型(MLM)作为100种语言的预训练目标,其预训练语料库规模巨大,包含每种语言的维基百科转储以及2.5TB的Common Crawl网络数据,相比早期模型的语料库大了几个数量级,这为缅甸语和斯瓦希里语等资源稀缺的语言提供了显著的信号提升。
模型名称中的“RoBERTa”表明其预训练方法与单语言RoBERTa模型相同。RoBERTa在BERT的基础上进行了多方面改进,特别是完全移除了下一句预测任务。XLM - R还摒弃了XLM中使用的语言嵌入,并使用SentencePiece直接对原始文本进行分词。与RoBERTa相比,XLM - R的词汇表规模更大,达到250,000个标记,而RoBERTa为55,000个。
2. 分词技术对比
XLM - R使用SentencePiece分词器,而非WordPiece。以下是加载BERT和XLM - R分词器并对示例文本进行分词的代码:
from transformers import AutoTokenizer
bert_model_name = "bert-base-cased"
xlmr_model_name = "xlm-roberta-base"
bert_tokenizer = AutoTokenizer.from_pretrained(bert_model_name)
xlmr_tokenizer = AutoTokenizer.from_pretrained(xlmr_m
超级会员免费看
订阅专栏 解锁全文
380

被折叠的 条评论
为什么被折叠?



