项目介绍:bert-base-arabic-camelbert-msa-ner
模型描述
"CAMeLBERT MSA NER Model" 是一个专门用于命名实体识别(NER)的模型,由现代标准阿拉伯语(MSA)的CAMeLBERT模型微调而成。为了进行微调,该模型使用了ANERcorp数据集。关于微调的具体过程以及所用的超参数,可以参考他们的论文《阿拉伯预训练语言模型中变体、规模和任务类型的相互作用》。微调的代码可在CAMeL-Lab的GitHub页面找到。
使用场景
这个模型可以被直接用于CAMeL Tools中的NER组件,或者作为transformers管道的一部分来使用。
如何使用
- 如果想通过CAMeL Tools的NER组件来使用这个模型,可以按照以下步骤进行:
from camel_tools.ner import NERecognizer
from camel_tools.tokenizers.word import simple_word_tokenize
ner = NERecognizer('CAMeL-Lab/bert-base-arabic-camelbert-msa-ner')
sentence = simple_word_tokenize('إمارة أبوظبي هي إحدى إمارات دولة الإمارات العربية المتحدة السبع')
ner.predict_sentence(sentence)
# 输出:['O', 'B-LOC', 'O', 'O', 'O', 'O', 'B-LOC', 'I-LOC', 'I-LOC', 'O']
- 也可以直接通过transformers管道来使用:
from transformers import pipeline
ner = pipeline('ner', model='CAMeL-Lab/bert-base-arabic-camelbert-msa-ner')
ner("إمارة أبوظبي هي إحدى إمارات دولة الإمارات العربية المتحدة السبع")
# 输出的实体包括阿布扎比和阿拉伯联合酋长国,分别标记为位置(LOC)实体
注意:为了下载这些模型,您需要确保安装的transformers
版本不低于3.5.0。否则,您可能需要手动下载模型。
模型引用
如果您使用了该项目成果,请引用以下论文:
@inproceedings{inoue-etal-2021-interplay,
title = "The Interplay of Variant, Size, and Task Type in {A}rabic Pre-trained Language Models",
author = "Inoue, Go and
Alhafni, Bashar and
Baimukan, Nurpeiis and
Bouamor, Houda and
Habash, Nizar",
booktitle = "Proceedings of the Sixth Arabic Natural Language Processing Workshop",
month = apr,
year = "2021",
address = "Kyiv, Ukraine (Online)",
publisher = "Association for Computational Linguistics",
abstract = "本文探讨了语言变体、数据规模以及微调任务类型在阿拉伯预训练语言模型中的作用。为了达成此目的,我们构建了三种阿拉伯语变体的预训练语言模型:现代标准阿拉伯语、方言阿拉伯语和古典阿拉伯语,以及一个混合上述三种语言的第四个语言模型。同时,通过在缩小的数据集上预训练msa变体模型,探讨了预训练数据规模的重要性。我们比较了不同的模型,并对它们进行了五项NLP任务微调,涉及12个数据集。结果表明,预训练数据与微调数据的变体接近性比预训练数据规模更重要。我们利用这一洞见为所研究的任务定义了一种优化系统选择模型。",
}
通过这些步骤,使用者可以轻松地使用CAMeLBERT MSA NER模型进行阿拉伯语实体识别工作,从而为中文学术和技术界对阿拉伯语自然语言处理的理解和探索提供支持。