模型:
Rifky/Indobert-QA
这个项目是我和我的朋友Muhammad Fajrin Buyang Daffa共同进行的研究的一部分,题目是“Teman Belajar: 杰卡尔塔第28所公立高中学生的数字助教在阅读方面的应用”,以参加KOPSI(印度尼西亚学生研究竞赛)。
IndoBERT 由 IndoLEM 训练,然后在 Translated SQuAD 2.0 上进行了Q&A下游任务的微调。
模型大小(训练后):420mb
IndoBERT 是BERT模型的印度尼西亚版本。我们使用超过2.2亿个词汇训练了该模型,这些词汇来源于三个主要来源:
我们对该模型进行了240万步(180个epochs)的训练,发展集上的困惑度最终为3.97(与英语BERT-base类似)。
这个IndoBERT模型被用来研究IndoLEM-一个涵盖印度尼西亚语言的七个任务的印度尼西亚基准测试。 [1]
SQuAD2.0将SQuAD1.1中的10万个问题与超过5万个不能回答的问题合并,这些问题由众包工作者以类似于可回答的问题的方式进行了对抗性编写。为了在SQuAD2.0上表现良好,系统不仅必须在可能时回答问题,还必须确定段落中没有支持答案并且弃权不回答。
Dataset | Split | # samples |
---|---|---|
SQuAD2.0 | train | 130k |
SQuAD2.0 | eval | 12.3k |
该模型在一块Tesla T4 GPU和12GB RAM上进行了训练。
Metric | # Value |
---|---|
EM | 51.61 |
F1 | 69.09 |
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.