🚀 Flairにおけるドイツ語法的テキストの固有表現抽出 (デフォルトモデル)
これは、Flair とともに提供されるドイツ語の法的固有表現抽出(NER)モデルです。
F1スコア: 96,35 (LERドイツ語データセット)
このモデルは19種類のタグを予測します。
タグ |
意味 |
AN |
弁護士 |
EUN |
欧州規格 |
GS |
法律 |
GRT |
裁判所 |
INN |
機関 |
LD |
州 |
LDS |
地域 |
LIT |
文献 |
MRK |
商標 |
ORG |
組織 |
PER |
人物 |
RR |
裁判官 |
RS |
判例 |
ST |
都市 |
STR |
道路 |
UN |
企業 |
VO |
規則 |
VS |
規定 |
VT |
契約 |
このモデルは、Flair埋め込み とLSTM - CRFに基づいています。
法的NERデータセットの詳細については、こちら を参照してください。
🚀 クイックスタート
✨ 主な機能
- ドイツ語の法的テキストに対する高精度の固有表現抽出を行います。
- F1スコアが96,35(LERドイツ語データセット)と高い性能を示します。
- 19種類のタグを予測することができます。
📦 インストール
このモデルを使用するには、Flair が必要です。以下のコマンドでインストールできます。
pip install flair
💻 使用例
基本的な使用法
from flair.data import Sentence
from flair.models import SequenceTagger
tagger = SequenceTagger.load("flair/ner-german-legal")
sentence = Sentence("Herr W. verstieß gegen § 36 Abs. 7 IfSG.", use_tokenizer=False)
tagger.predict(sentence)
print(sentence)
print('The following NER tags are found:')
for entity in sentence.get_spans('ner'):
print(entity)
このコードは以下の出力を生成します。
Span [2]: "W." [− Labels: PER (0.9911)]
Span [5,6,7,8,9]: "§ 36 Abs. 7 IfSG." [− Labels: GS (0.5353)]
つまり、文 "Herr W. verstieß gegen § 36 Abs. 7 IfSG." から、エンティティ "W."(人物 とラベル付け)と "§ 36 Abs. 7 IfSG"(法律 とラベル付け)が検出されます。
🔧 技術詳細
このモデルは、Flair埋め込み とLSTM - CRFを使用して構築されています。以下は、このモデルを訓練するためのFlairスクリプトです。
from flair.data import Corpus
from flair.datasets import LER_GERMAN
from flair.embeddings import WordEmbeddings, StackedEmbeddings, FlairEmbeddings
corpus: Corpus = LER_GERMAN()
tag_type = 'ner'
tag_dictionary = corpus.make_tag_dictionary(tag_type=tag_type)
embedding_types = [
WordEmbeddings('de'),
FlairEmbeddings('de-forward'),
FlairEmbeddings('de-backward'),
]
embeddings = StackedEmbeddings(embeddings=embedding_types)
from flair.models import SequenceTagger
tagger = SequenceTagger(hidden_size=256,
embeddings=embeddings,
tag_dictionary=tag_dictionary,
tag_type=tag_type)
from flair.trainers import ModelTrainer
trainer = ModelTrainer(tagger, corpus)
trainer.train('resources/taggers/ner-german-legal',
train_with_dev=True,
max_epochs=150)
📄 ライセンス
このモデルを使用する際には、以下の論文を引用してください。
@inproceedings{leitner2019fine,
author = {Elena Leitner and Georg Rehm and Julian Moreno-Schneider},
title = {{Fine-grained Named Entity Recognition in Legal Documents}},
booktitle = {Semantic Systems. The Power of AI and Knowledge
Graphs. Proceedings of the 15th International Conference
(SEMANTiCS 2019)},
year = 2019,
pages = {272--287},
pdf = {https://link.springer.com/content/pdf/10.1007%2F978-3-030-33220-4_20.pdf}}
@inproceedings{akbik2018coling,
title={Contextual String Embeddings for Sequence Labeling},
author={Akbik, Alan and Blythe, Duncan and Vollgraf, Roland},
booktitle = {{COLING} 2018, 27th International Conference on Computational Linguistics},
pages = {1638--1649},
year = {2018}
}
問題がある場合
Flairの問題追跡システムは、こちら で利用できます。