🚀 roberta-large-1160k
該模型可用於掩碼語言建模任務,也可在下游任務中進行微調,為斯堪的納維亞語系相關的自然語言處理提供支持。
🚀 快速開始
你可以使用這個原始模型進行掩碼語言建模,但它主要用於在下游任務中進行微調。
✨ 主要特性
- 多語言支持:支持瑞典語、挪威語和丹麥語等斯堪的納維亞語系語言。
- 微調能力:適用於在下游任務中進行微調。
💻 使用示例
基礎用法
你可以直接使用這個模型與掩碼語言建模管道進行交互:
>>> from transformers import pipeline
>>> unmasker = pipeline('fill-mask', model='AI-Sweden-Models/roberta-large-1160k')
>>> unmasker("Huvudstaden i Sverige är <mask>.")
[{'score': 0.5841221213340759,
'token': 1945,
'token_str': ' Stockholm',
'sequence': 'Huvudstaden i Sverige är Stockholm.'},
{'score': 0.06775698810815811,
'token': 5007,
'token_str': ' Göteborg',
'sequence': 'Huvudstaden i Sverige är Göteborg.'},
{'score': 0.05057400465011597,
'token': 5761,
'token_str': ' Malmö',
'sequence': 'Huvudstaden i Sverige är Malmö.'},
{'score': 0.021936343982815742,
'token': 21449,
'token_str': ' Norrköping',
'sequence': 'Huvudstaden i Sverige är Norrköping.'},
{'score': 0.017798304557800293,
'token': 5658,
'token_str': ' Uppsala',
'sequence': 'Huvudstaden i Sverige är Uppsala.'}]
>>> unmasker("Hovedstaden i Norge er <mask>.")
[{'score': 0.6792309284210205,
'token': 5158,
'token_str': ' Oslo',
'sequence': 'Hovedstaden i Norge er Oslo.'},
{'score': 0.09379775077104568,
'token': 15456,
'token_str': ' Trondheim',
'sequence': 'Hovedstaden i Norge er Trondheim.'},
{'score': 0.052535850554704666,
'token': 11370,
'token_str': ' Bergen',
'sequence': 'Hovedstaden i Norge er Bergen.'},
{'score': 0.03465486690402031,
'token': 29407,
'token_str': ' hovedstaden',
'sequence': 'Hovedstaden i Norge er hovedstaden.'},
{'score': 0.03017985075712204,
'token': 33311,
'token_str': ' Kristiansand',
'sequence': 'Hovedstaden i Norge er Kristiansand.'}]
>>> unmasker("Danmarks hovedstad er <mask>.")
[{'score': 0.11624140292406082,
'token': 4794,
'token_str': ' København',
'sequence': 'Danmarks hovedstad er København.'},
{'score': 0.045051511377096176,
'token': 7680,
'token_str': ' død',
'sequence': 'Danmarks hovedstad er død.'},
{'score': 0.02936543896794319,
'token': 10795,
'token_str': ' lukket',
'sequence': 'Danmarks hovedstad er lukket.'},
{'score': 0.026030730456113815,
'token': 13580,
'token_str': ' Odense',
'sequence': 'Danmarks hovedstad er Odense.'},
{'score': 0.02130937948822975,
'token': 16347,
'token_str': ' Roskilde',
'sequence': 'Danmarks hovedstad er Roskilde.'}]
高級用法
以下是如何在PyTorch中使用這個模型來獲取給定文本的特徵:
from transformers import RobertaTokenizer, RobertaModel
tokenizer = RobertaTokenizer.from_pretrained('AI-Sweden-Models/roberta-large-1160k')
model = RobertaModel.from_pretrained('AI-Sweden-Models/roberta-large-1160k')
text = "Replace me by any text you'd like."
encoded_input = tokenizer(text, return_tensors='pt')
output = model(**encoded_input)
📦 訓練數據
該模型的訓練數據來自北歐語料庫(Nordic Pile)的斯堪的納維亞子集,包含瑞典語、挪威語和丹麥語,共有414,962,688個文本樣本。
🔧 技術細節
- 訓練框架:該模型使用 optimum-habana 框架進行訓練。
- 硬件加速:利用8個英特爾® Gaudi® 2 AI加速器進行訓練,由瑞典英特爾公司(Intel Sweden AB)管理。
- 初始化權重:使用來自 https://huggingface.co/FacebookAI/roberta-large 的權重進行初始化,分詞器則是從頭開始訓練的。
- 檢查點信息:該模型是一個檢查點(1,160,000 / 1,350,790),最終訓練輪數為5輪,當前處於第4.29輪。
- 批次大小:訓練時使用的批次大小為1536。
📚 評估結果
在下游任務中進行微調後,該模型取得了以下評估結果:
排名 |
丹麥語排名 |
挪威語排名 |
瑞典語排名 |
丹麥語任務 |
憤怒推文任務 |
丹麥語Scala任務 |
丹麥語ScandiQA任務 |
挪威語Norne(書面挪威語)任務 |
挪威語Norne(新挪威語)任務 |
挪威語Norec任務 |
挪威語Scala(書面挪威語)任務 |
挪威語Scala(新挪威語)任務 |
挪威語Norquad任務 |
瑞典語Suc3任務 |
瑞典語Swerec任務 |
瑞典語Scala任務 |
瑞典語ScandiQA任務 |
1.3 |
1.33 |
1.34 |
1.23 |
74.16 |
51.2 |
73.87 |
49.34 |
92.01 |
87.17 |
60.11 |
72.85 |
65.56 |
60.38 |
82.65 |
77.25 |
77.9 |
49.64 |
截至2024年3月26日,該模型在 ScandEval 上排名第2,僅次於 gpt-4-0613。
📄 許可證
該模型採用MIT許可證。