170 похожих чатов

Всем привет, недавно начал вникать в область, так что сильно

не бейте. Такой вопрос: как выровнять токены, полученные от NER-модели под токены изначальных данных, чтобы оценить качество модели (если их вообще нужно выравнивать)?
Например, предложение в датасете разбито так (датасет nerus):
Вице-премьер O
по O
социальным O
вопросам O
Татьяна B-PER
Голикова I-PER

А модель выдала следующее:

'Вице',
'-',
'премьер',
'по',
'социальным',
'вопросам',
'Татьяна',
'Голикова',

'O',
'O',
'O',
'O',
'O',
'O',
'B-PER',
'E-PER',

Что делать с разными обозначениями (I-PER, E-PER) - понятно (либо переобозначить под BIO или вообще единичные, как I-PER -> PER), а вот с токенами на ум приходит что-то типа просмотр изначальных и складывание нескольких токенов от модели в один, только тут куча оговорок, например, попадание тегов 'O' в новое слово, или модель наоборот что-то разобьет не до конца, непонятно как гарантировать одинаковую длину. Мне кажется, есть какой-то более-менее простой подход, который я не могу найти.

И еще вопрос, если использовать другие датасеты, в которых размечены непосредственно только сами сущности (например, загрузить ne5 с помощью corus), то как потом считать метрики для того же slovnet, который на выходе дает тоже спаны? Видел статью на этот счет, там предлагается использовать метрики для точного совпадения, частичного и т.д. И здесь не очень понятно, как тогда считать общий F1 и другие метрики как в seqeval.

2 ответов

22 просмотра

попробуй на исходном тексте использовать токенизатор модели

Артём- Автор вопроса
Евгений Лащенов
попробуй на исходном тексте использовать токенизат...

А где найти токенизатор, например, для ner_collection3_bert от deeppavlov? Поискал в документации - не нашел (возможно, просто плохо искал). Если все-таки его найти, то что это даст? Модель же возвращает токенизированный ей текст, или это не то, что нужно?

Похожие вопросы

Обсуждают сегодня

Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Где в Астане можно купить мясо для шашлыков?
Dancing Іңұқәһүғө
21
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Добрый день подскажите пожалуйста может кто то сталкивался с ошибками Sentry 22.10.0 развернутым из helm чарт в Kubernetes? Изначально 3 дня назад очень стало много событий ух...
Tire4 Finist Devops
1
всем привет почти закончил курс После него можно писать свою операционку? Какие библиотеки надо использовать и куда дальше копать для изучения
Linus
22
почому оно не работает?
Vi Chapmann ٩( 💢•̀ з•́)و Chapmann
19
Карта сайта