/ Модель

Характеристики

Размер весов
1,5 ГБ
Опубликована
2 мар 2022

ner-german

Разметка токеновТекст → label6 профессий

Модель Flair для извлечения имён людей, мест и организаций из немецкоязычного текста.

7 125скачиваний за 30 дней15лайковвеса обновлены5 апр 2023

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

flair/ner-german — стандартная модель распознавания именованных сущностей для немецкого языка, поставляемая вместе с библиотекой Flair. Она основана на эмбеддингах Flair и архитектуре LSTM-CRF и обучена для четырёх классов NER на наборе CoNLL-2003 German revised. Модель размечает в тексте имена людей, названия мест и организаций; показатель F1 на указанном наборе составляет 87,94.

Модель предназначена для извлечения сущностей из немецкоязычных текстов, например для обогащения документов и подготовки данных к поиску или аналитике. Для использования требуется библиотека Flair. Репозиторий содержит веса PyTorch; сведения о лицензии в доступных данных не приведены.

Сценарии применения

  • извлечение имён людей из немецких текстов
  • поиск географических названий в немецких документах
  • извлечение названий организаций из немецкоязычных материалов

Ограничения

Модель рассчитана на немецкий язык и распознаёт четыре класса сущностей; приведённый F1 87,94 относится к CoNLL-2003 German revised.

Для каких профессий подходит6

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

German NER in Flair (default model)

This is the standard 4-class NER model for German that ships with Flair.

F1-Score: 87,94 (CoNLL-03 German revised)

Predicts 4 tags:

tagmeaning
PERperson name
LOClocation name
ORGorganization name
MISCother name

Based on Flair embeddings and LSTM-CRF.


Demo: How to use in Flair

Requires: Flair (pip install flair)

from flair.data import Sentence
from flair.models import SequenceTagger

# load tagger
tagger = SequenceTagger.load("flair/ner-german")

# make example sentence
sentence = Sentence("George Washington ging nach Washington")

# predict NER tags
tagger.predict(sentence)

# print sentence
print(sentence)

# print predicted NER spans
print('The following NER tags are found:')
# iterate over entities and print
for entity in sentence.get_spans('ner'):
    print(entity)

This yields the following output:

Span [1,2]: "George Washington"   [− Labels: PER (0.9977)]
Span [5]: "Washington"   [− Labels: LOC (0.9895)]

So, the entities "George Washington" (labeled as a person) and "Washington" (labeled as a location) are found in the sentence "George Washington ging nach Washington".


Training: Script to train this model

The following Flair script was used to train this model:

from flair.data import Corpus
from flair.datasets import CONLL_03_GERMAN
from flair.embeddings import WordEmbeddings, StackedEmbeddings, FlairEmbeddings

# 1. get the corpus
corpus: Corpus = CONLL_03_GERMAN()

# 2. what tag do we want to predict?
tag_type = 'ner'

# 3. make the tag dictionary from the corpus
tag_dictionary = corpus.make_tag_dictionary(tag_type=tag_type)

# 4. initialize each embedding we use
embedding_types = [

    # GloVe embeddings
    WordEmbeddings('de'),

    # contextual string embeddings, forward
    FlairEmbeddings('de-forward'),

    # contextual string embeddings, backward
    FlairEmbeddings('de-backward'),
]

# embedding stack consists of Flair and GloVe embeddings
embeddings = StackedEmbeddings(embeddings=embedding_types)

# 5. initialize sequence tagger
from flair.models import SequenceTagger

tagger = SequenceTagger(hidden_size=256,
                        embeddings=embeddings,
                        tag_dictionary=tag_dictionary,
                        tag_type=tag_type)

# 6. initialize trainer
from flair.trainers import ModelTrainer

trainer = ModelTrainer(tagger, corpus)

# 7. run training
trainer.train('resources/taggers/ner-german',
              train_with_dev=True,
              max_epochs=150)

Cite

Please cite the following paper when using this model.

@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}
}

Issues?

The Flair issue tracker is available here.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Нельзя запустить

Модели Flair требуют отдельного рантайма.

Ревизия весов
4e3f3d1

0 моделей