🚀 IndoBERT-QA:基于翻译版SQuAD 2.0微调的问答模型
本项目使用在翻译版SQuAD 2.0数据集上微调的IndoBERT基础无大小写模型,用于问答下游任务,在印尼语问答场景中表现出色。
Github
🔔 归属声明
特此声明,Muhammad Fajrin Buyang Daffa 并非本项目成员,且从未参与本项目。他们未对本仓库做出任何贡献,因此不应在与本工作相关的内容中提及他们。
如有进一步疑问,请联系 rifky@genta.tech。
本项目是题为 “Teman Belajar : Asisten Digital Pelajar SMA Negeri 28 Jakarta dalam Membaca” 的研究的一部分,该研究参与了 KOPSI(Kompetisi Penelitian Siswa Indonesia/印尼学生研究竞赛)。
✨ 主要特性
IndoBERT 由 IndoLEM 训练,并在 翻译版SQuAD 2.0 上进行微调,用于问答下游任务。
模型大小(训练后):420MB
📚 详细文档
IndoBERT 模型详情
IndoBERT 是BERT模型的印尼语版本。该模型使用超过2.2亿个单词进行训练,这些单词主要来自三个来源:
- 印尼语维基百科(7400万个单词)
- 来自Kompas、Tempo(Tala等人,2003年)和Liputan6的新闻文章(总共5500万个单词)
- 印尼网络语料库(Medved和Suchomel,2017年)(9000万个单词)。
该模型训练了240万步(180个epoch),在开发集上的最终困惑度为3.97(与英语BERT基础模型相似)。
这个IndoBERT模型用于评估IndoLEM——一个印尼语基准测试,包含七个针对印尼语的任务,涵盖形态句法、语义和语篇等方面。[1]
下游任务详情(问答) - 数据集
SQuAD 2.0将SQuAD 1.1中的10万个问题与超过5万个由众包工作者对抗性编写的无法回答的问题相结合,这些问题看起来与可回答的问题相似。要在SQuAD 2.0上表现良好,系统不仅要在可能的情况下回答问题,还要确定段落中是否没有支持答案的信息,并避免回答。
数据集 |
划分 |
样本数量 |
SQuAD 2.0 |
训练集 |
130k |
SQuAD 2.0 |
评估集 |
12.3k |
模型训练
该模型在Tesla T4 GPU和12GB RAM上进行训练。
模型结果
💻 使用示例
基础用法
from transformers import pipeline
qa_pipeline = pipeline(
"question-answering",
model="Rifky/Indobert-QA",
tokenizer="Rifky/Indobert-QA"
)
qa_pipeline({
'context': """Pangeran Harya Dipanegara (atau biasa dikenal dengan nama Pangeran Diponegoro, lahir di Ngayogyakarta Hadiningrat, 11 November 1785 – meninggal di Makassar, Hindia Belanda, 8 Januari 1855 pada umur 69 tahun) adalah salah seorang pahlawan nasional Republik Indonesia, yang memimpin Perang Diponegoro atau Perang Jawa selama periode tahun 1825 hingga 1830 melawan pemerintah Hindia Belanda. Sejarah mencatat, Perang Diponegoro atau Perang Jawa dikenal sebagai perang yang menelan korban terbanyak dalam sejarah Indonesia, yakni 8.000 korban serdadu Hindia Belanda, 7.000 pribumi, dan 200 ribu orang Jawa serta kerugian materi 25 juta Gulden.""",
'question': "kapan pangeran diponegoro lahir?"
})
输出:
{
'answer': '11 November 1785',
'end': 131,
'score': 0.9272009134292603,
'start': 115
}
引用
[1]Fajri Koto and Afshin Rahimi and Jey Han Lau and Timothy Baldwin. 2020. IndoLEM and IndoBERT: A Benchmark Dataset and Pre-trained Language Model for Indonesian NLP. Proceedings of the 28th COLING.
📄 许可证
本项目采用 Apache-2.0 许可证。
属性 |
详情 |
模型类型 |
IndoBERT基础无大小写模型,在翻译版SQuAD 2.0上微调 |
训练数据 |
翻译版SQuAD 2.0数据集 |
评估指标 |
F1 |
基础模型 |
indolem/indobert-base-uncased |
数据集 |
rajpurkar/squad_v2 |