模型:
Mizuiro-sakura/luke-japanese-base-finetuned-ner
这个模型是通过使用Wikipedia数据集进行微调的,用于日本语的命名实体识别任务。
您可以将这个模型用于NER任务。
precision | recall | f1-score | support | |
---|---|---|---|---|
その他の組織名 | 0.76 | 0.77 | 0.77 | 238 |
イベント名 | 0.83 | 0.90 | 0.87 | 215 |
人名 | 0.88 | 0.91 | 0.90 | 546 |
地名 | 0.84 | 0.83 | 0.83 | 440 |
政治的組織名 | 0.80 | 0.84 | 0.82 | 263 |
施設名 | 0.78 | 0.83 | 0.80 | 241 |
法人名 | 0.88 | 0.90 | 0.89 | 487 |
製品名 | 0.74 | 0.80 | 0.77 | 252 |
micro avg | 0.83 | 0.86 | 0.84 | 2682 |
macro avg | 0.81 | 0.85 | 0.83 | 2682 |
weighted avg | 0.83 | 0.86 | 0.84 | 2682 |
请安装sentencepiece和transformers(pip install sentencepiece,pip install transformers),然后运行以下代码以进行NER任务的解决。
from transformers import MLukeTokenizer,pipeline, LukeForTokenClassification tokenizer = MLukeTokenizer.from_pretrained('Mizuiro-sakura/luke-japanese-base-finetuned-ner') model=LukeForTokenClassification.from_pretrained('Mizuiro-sakura/luke-japanese-base-finetuned-ner') # 学習済みモデルの読み込み text=('昨日は東京で買い物をした') ner=pipeline('ner', model=model, tokenizer=tokenizer) result=ner(text) print(result)
LUKE(基于知识嵌入的语言理解)是基于transformer的一种新的预训练上下文化表示,用于词和实体。LUKE将给定文本中的词和实体视为独立的标记,并输出它们的上下文化表示。LUKE采用了一种实体感知的自注意机制,这是transformer的自注意机制的一种扩展,并在计算注意力分数时考虑标记的类型(词或实体)。
LUKE在包括SQuAD v1.1(抽取式问答)、CoNLL-2003(命名实体识别)、ReCoRD(填空式问答)、TACRED(关系分类)和Open Entity(实体类型)在内的五个流行自然语言处理基准测试中实现了最先进的结果。 luke-japanese是LUKE的日本语版本,它是基于单词和实体的知识增强型训练的Transformer模型。
我要感谢山田先生和ousia工作室的贡献。感谢Mr.Yamada @ikuyamada 和Studio ousia @StudioOusia。
[1]@inproceedings{yamada2020luke, title={LUKE: Deep Contextualized Entity Representations with Entity-aware Self-attention}, author={Ikuya Yamada and Akari Asai and Hiroyuki Shindo and Hideaki Takeda and Yuji Matsumoto}, booktitle={EMNLP}, year={2020} }