🚀 Serengeti
Serengeti是一套大规模多语言语言模型,覆盖517种非洲语言及语言变体。该模型在预训练过程中获取了有价值的、可泛化的语言信息,在自然语言理解任务上表现出色,有助于解决现有语言模型对非洲语言覆盖不足的问题。
🚀 快速开始
多语言预训练语言模型(mPLMs)在预训练期间会获取有价值且可泛化的语言信息,并在特定任务的微调方面推动了技术发展。
到目前为止,现有的语言模型仅覆盖了约2000种非洲语言中的31种。为改善这一局限,我们开发了 SERENGETI,这是一套大规模多语言语言模型,涵盖了517种非洲语言和语言变体。我们在20个数据集的八项自然语言理解任务上对我们的新模型进行了评估,并与覆盖4 - 23种非洲语言的4个mPLMs进行了比较。
SERENGETI 在八项任务的11个数据集上表现优于其他模型,平均F1分数达到82.27。我们还对模型的错误进行了分析,这使我们能够研究在零样本设置下应用模型时,语言谱系和语言相似性的影响。我们将公开发布我们的模型以供研究使用。
💻 使用示例
基础用法
以下是使用 Serengeti 预测掩码标记的示例:
from transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained("UBC-NLP/serengeti", use_auth_token="XXX")
model = AutoModelForMaskedLM.from_pretrained("UBC-NLP/serengeti", use_auth_token="XXX")
from transformers import pipeline
classifier = pipeline("fill-mask", model=model, tokenizer=tokenizer)
classifier("ẹ jọwọ , ẹ <mask> mi")
[{'score': 0.07887924462556839,
'token': 8418,
'token_str': 'ọmọ',
'sequence': 'ẹ jọwọ, ẹ ọmọ mi'},
{'score': 0.04658124968409538,
'token': 156595,
'token_str': 'fẹ́ràn',
'sequence': 'ẹ jọwọ, ẹ fẹ́ràn mi'},
{'score': 0.029315846040844917,
'token': 204050,
'token_str': 'gbàgbé',
'sequence': 'ẹ jọwọ, ẹ gbàgbé mi'},
{'score': 0.02790883742272854,
'token': 10730,
'token_str': 'kọ',
'sequence': 'ẹ jọwọ, ẹ kọ mi'},
{'score': 0.022904086858034134,
'token': 115382,
'token_str': 'bẹ̀rù',
'sequence': 'ẹ jọwọ, ẹ bẹ̀rù mi'}]
更多详细信息请阅读此笔记本 
📚 详细文档
伦理考量
Serengeti在开发技术时考虑了非洲人民的需求,与以非洲为中心的自然语言处理理念相一致。我们相信Serengeti不仅对支持的语言使用者有用,也对非洲语言的研究人员(如人类学家和语言学家)有帮助。以下我们讨论了Serengeti的一些用例,并提出了一些广泛的影响:
- Serengeti旨在解决世界上约90%的语言缺乏技术支持的问题,这种缺乏自动对这些语言的母语使用者造成了歧视。更确切地说,它通过聚焦非洲来解决这个问题。据我们所知,Serengeti是第一个为非洲语言和语言变体开发的大规模多语言预训练语言模型。一个掌握517种非洲语言的模型,是迄今为止非洲自然语言处理领域最大的模型。
- Serengeti使非洲社区能够以非洲本土语言更好地获取重要信息。这对可能不精通其他语言的人特别有益,有可能在全球范围内连接更多的人。
- Serengeti为许多非洲语言的保护提供了机会。据我们所知,Serengeti包含了迄今为止尚未用于任何自然语言处理任务的语言。我们相信它可以鼓励这些语言在多个领域的持续使用,并推动未来针对这些语言的语言技术发展。
- 为了减轻歧视和偏见,我们对数据集进行了手动筛选。南非荷兰语、约鲁巴语、伊博语、豪萨语、卢干达语、卢旺达语、奇切瓦语、绍纳语、索马里语、斯瓦希里语、科萨语、本巴语和祖鲁语的母语使用者也手动评估了部分数据,以确保其质量。为这项工作收集的数据来自不同领域,以进一步确保更好地反映母语使用者的语言使用情况。
- 虽然语言模型对广泛的应用很有用,但它们也可能被滥用。Serengeti是使用公开可用的数据集开发的,这些数据集可能存在偏差。尽管我们努力进行分析和诊断案例研究,以探究我们模型的性能,但我们的调查绝不是全面的,也不能保证数据中没有偏差。特别是,我们无法接触到大多数所覆盖语言的母语使用者,这阻碍了我们对每种(或至少大多数)语言的样本进行研究的能力。
支持的语言
请参考 suported-languages
引用
如果您在科学出版物中使用预训练模型(Serengeti),或者您发现本仓库中的资源有用,请按以下方式引用我们的论文(待更新):
@inproceedings{adebara-etal-2023-serengeti,
title = "{SERENGETI}: Massively Multilingual Language Models for {A}frica",
author = "Adebara, Ife and
Elmadany, AbdelRahim and
Abdul-Mageed, Muhammad and
Alcoba Inciarte, Alcides",
booktitle = "Findings of the Association for Computational Linguistics: ACL 2023",
month = jul,
year = "2023",
address = "Toronto, Canada",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2023.findings-acl.97",
doi = "10.18653/v1/2023.findings-acl.97",
pages = "1498--1537",
}
致谢
我们衷心感谢加拿大研究主席(CRC)、加拿大自然科学与工程研究委员会(NSERC;RGPIN - 2018 - 04267)、加拿大社会科学与人文研究委员会(SSHRC;435 - 2018 - 0576;895 - 2020 - 1004;895 - 2021 - 1008)、加拿大创新基金会(CFI;37771)、加拿大数字研究联盟、UBC ARC - Sockeye、高级微设备公司(AMD)和谷歌的支持。本材料中表达的任何意见、结论或建议均为作者的观点,不一定反映CRC、NSERC、SSHRC、CFI、联盟、AMD、谷歌或UBC ARC - Sockeye的观点。
模型信息
属性 |
详情 |
模型类型 |
掩码语言模型 |
训练数据 |
未提及具体训练数据,使用公开可用数据集 |
重要提示
⚠️ 重要提示
Serengeti是使用公开可用的数据集开发的,这些数据集可能存在偏差。尽管我们努力进行分析和诊断案例研究,以探究我们模型的性能,但我们的调查绝不是全面的,也不能保证数据中没有偏差。特别是,我们无法接触到大多数所覆盖语言的母语使用者,这阻碍了我们对每种(或至少大多数)语言的样本进行研究的能力。
💡 使用建议
若使用Serengeti模型进行研究或开发,建议关注模型可能存在的偏差问题,并结合实际需求对模型进行评估和调整。