🚀 XLM-RoBERTa (基礎規模模型)
XLM-RoBERTa模型在包含100種語言的2.5TB過濾後的CommonCrawl數據上進行了預訓練。它由Conneau等人在論文大規模無監督跨語言表徵學習中提出,並首次在此倉庫中發佈。
聲明:發佈XLM-RoBERTa的團隊並未為此模型撰寫模型卡片,此模型卡片由Hugging Face團隊撰寫。
🚀 快速開始
XLM-RoBERTa是RoBERTa的多語言版本,在包含100種語言的2.5TB過濾後的CommonCrawl數據上進行了預訓練。你可以直接使用此模型進行掩碼語言建模,也可以在下游任務中對其進行微調。
✨ 主要特性
- 多語言支持:支持100種語言,包括多種常見和小眾語言,如英語、中文、阿拉伯語等。
- 自監督學習:以自監督的方式在大型語料庫上進行預訓練,通過掩碼語言建模(MLM)目標學習句子的雙向表示。
- 特徵提取:學習到的100種語言的內部表示可用於提取對下游任務有用的特徵。
📦 安裝指南
文檔未提及具體安裝步驟,可參考Hugging Face的transformers庫安裝說明。
💻 使用示例
基礎用法
你可以使用此模型直接通過管道進行掩碼語言建模:
>>> from transformers import pipeline
>>> unmasker = pipeline('fill-mask', model='xlm-roberta-base')
>>> unmasker("Hello I'm a <mask> model.")
[{'score': 0.10563907772302628,
'sequence': "Hello I'm a fashion model.",
'token': 54543,
'token_str': 'fashion'},
{'score': 0.08015287667512894,
'sequence': "Hello I'm a new model.",
'token': 3525,
'token_str': 'new'},
{'score': 0.033413201570510864,
'sequence': "Hello I'm a model model.",
'token': 3299,
'token_str': 'model'},
{'score': 0.030217764899134636,
'sequence': "Hello I'm a French model.",
'token': 92265,
'token_str': 'French'},
{'score': 0.026436051353812218,
'sequence': "Hello I'm a sexy model.",
'token': 17473,
'token_str': 'sexy'}]
高級用法
以下是如何在PyTorch中使用此模型獲取給定文本的特徵:
from transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained('xlm-roberta-base')
model = AutoModelForMaskedLM.from_pretrained("xlm-roberta-base")
text = "Replace me by any text you'd like."
encoded_input = tokenizer(text, return_tensors='pt')
output = model(**encoded_input)
📚 詳細文檔
模型描述
XLM-RoBERTa是RoBERTa的多語言版本,在包含100種語言的2.5TB過濾後的CommonCrawl數據上進行了預訓練。RoBERTa是一個以自監督方式在大型語料庫上進行預訓練的transformers模型,即僅在原始文本上進行預訓練,沒有人工對其進行任何標註(因此可以使用大量公開可用的數據),並通過自動過程從這些文本中生成輸入和標籤。
更準確地說,它是通過掩碼語言建模(MLM)目標進行預訓練的。對於一個句子,模型會隨機掩碼輸入中15%的單詞,然後將整個掩碼後的句子輸入模型,並預測被掩碼的單詞。這與傳統的循環神經網絡(RNNs)通常逐個處理單詞不同,也與像GPT這樣的自迴歸模型在內部掩碼未來標記不同。這使得模型能夠學習句子的雙向表示。
通過這種方式,模型學習到100種語言的內部表示,這些表示可用於提取對下游任務有用的特徵。例如,如果你有一個標註好的句子數據集,你可以使用XLM-RoBERTa模型生成的特徵作為輸入,訓練一個標準的分類器。
預期用途和限制
你可以使用原始模型進行掩碼語言建模,但它主要用於在下游任務中進行微調。請參閱模型中心,查找針對你感興趣的任務進行微調的版本。
請注意,此模型主要旨在針對使用整個句子(可能是掩碼後的句子)進行決策的任務進行微調,如序列分類、標記分類或問答。對於文本生成等任務,你應該考慮像GPT2這樣的模型。
🔧 技術細節
預訓練目標
XLM-RoBERTa通過掩碼語言建模(MLM)目標進行預訓練,隨機掩碼輸入中15%的單詞,然後預測這些被掩碼的單詞,從而學習句子的雙向表示。
訓練數據
在包含100種語言的2.5TB過濾後的CommonCrawl數據上進行預訓練。
引用信息
@article{DBLP:journals/corr/abs-1911-02116,
author = {Alexis Conneau and
Kartikay Khandelwal and
Naman Goyal and
Vishrav Chaudhary and
Guillaume Wenzek and
Francisco Guzm{\'{a}}n and
Edouard Grave and
Myle Ott and
Luke Zettlemoyer and
Veselin Stoyanov},
title = {Unsupervised Cross-lingual Representation Learning at Scale},
journal = {CoRR},
volume = {abs/1911.02116},
year = {2019},
url = {http://arxiv.org/abs/1911.02116},
eprinttype = {arXiv},
eprint = {1911.02116},
timestamp = {Mon, 11 Nov 2019 18:38:09 +0100},
biburl = {https://dblp.org/rec/journals/corr/abs-1911-02116.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
📄 許可證
此模型遵循MIT許可證。