🚀 基尼亚卢旺达语预训练模型 - KinyaRoBERTa
本项目是一个基于基尼亚卢旺达语数据集,采用掩码语言建模(MLM)目标进行预训练的模型。它能为基尼亚卢旺达语的相关自然语言处理任务提供强大支持,助力语言分析、文本理解等工作。
🚀 快速开始
本模型可以直接通过掩码语言建模的管道进行使用,示例代码如下:
from transformers import pipeline
the_mask_pipe = pipeline(
"fill-mask",
model='jean-paul/kinyaRoberta-small',
tokenizer='jean-paul/kinyaRoberta-small',
)
the_mask_pipe("Ejo ndikwiga nagize <mask> baje kunsura.")
[{'sequence': 'Ejo ndikwiga nagize amahirwe baje kunsura.', 'score': 0.3530674874782562, 'token': 1711, 'token_str': ' amahirwe'},
{'sequence': 'Ejo ndikwiga nagize ubwoba baje kunsura.', 'score': 0.2858319878578186, 'token': 2594, 'token_str': ' ubwoba'},
{'sequence': 'Ejo ndikwiga nagize ngo baje kunsura.', 'score': 0.032475441694259644, 'token': 396, 'token_str': ' ngo'},
{'sequence': 'Ejo ndikwiga nagize abana baje kunsura.', 'score': 0.029481062665581703, 'token': 739, 'token_str': ' abana'},
{'sequence': 'Ejo ndikwiga nagize abantu baje kunsura.', 'score': 0.016263306140899658, 'token': 500, 'token_str': ' abantu'}]
也可以直接从transformers
库中使用AutoModel
来获取特征,示例如下:
from transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained("jean-paul/kinyaRoberta-small")
model = AutoModelForMaskedLM.from_pretrained("jean-paul/kinyaRoberta-small")
input_text = "Ejo ndikwiga nagize abashyitsi baje kunsura."
encoded_input = tokenizer(input_text, return_tensors='pt')
output = model(**encoded_input)
✨ 主要特性
- 预训练模型:基于基尼亚卢旺达语数据集进行预训练,能更好地适应基尼亚卢旺达语的语言特点。
- 大小写不敏感:模型使用无大小写区分的标记进行预训练,例如
ikinyarwanda
和Ikinyarwanda
被视为相同。
📚 详细文档
训练参数
数据集
训练使用的数据集来源广泛,包括从不同新闻网页提取的卢旺达新闻文章、维基百科转储文件以及基尼亚卢旺达语书籍。具体数据规模如下:
数据来源 |
数量 |
新闻文章 |
7.2万篇 |
维基百科文章 |
3000篇 |
书籍 |
6本(每本超过1000页) |
超参数
模型使用Huggingface中RoBerta和Trainer的默认配置进行训练。不过,由于计算资源的限制,将Transformer层数设置为6。
注意事项
我们使用Huggingface的实现从头开始预训练RoBerta,包括RoBerta模型及其所需的类。