Открыть сервис

Распознавание сущностей

Распознавание сущностей (англ. Named Entity Recognition, NER) — это задача обработки естественного языка (NLP) и извлечения информации, заключающаяся в поиске и классификации в тексте фрагментов (именованных сущностей), которые относятся к заранее определённым категориям, таким как имена людей, названия организаций, географические названия, даты, числовые выражения, денежные суммы и другие. NER является одним из ключевых этапов в построении систем понимания текста, позволяя перевести неструктурированную текстовую информацию в структурированные данные, пригодные для дальнейшего анализа.

История развития

Задача распознавания сущностей возникла в конце 1980-х — начале 1990-х годов в рамках развития методов извлечения информации. Первые значимые результаты были получены в ходе конференций Message Understanding Conference (MUC), организованных Агентством перспективных оборонных исследовательских проектов США (DARPA). Начиная с MUC-6 (1995 год), NER была выделена в отдельную задачу, что стимулировало разработку первых систем, основанных на ручных правилах и словарях.

В 2000-е годы с ростом объёмов цифровых данных и развитием статистических методов, таких как скрытые марковские модели (HMM) и условные случайные поля (CRF), точность распознавания значительно повысилась. Ключевым событием стало появление корпусов для обучения, таких как CoNLL-2003 (англоязычный) и MUC-7 (русскоязычный).

С 2010-х годов доминирующим подходом стало использование глубокого обучения. Модели на основе рекуррентных нейронных сетей (RNN, LSTM) и, впоследствии, архитектуры трансформеров (BERT, RoBERTa, GPT) позволили достичь точности, сопоставимой с человеческой, на многих стандартных наборах данных. В России разработка систем NER ведётся в рамках проектов, таких как DeepPavlov (лаборатория нейронных систем и глубокого обучения МФТИ) и библиотеки Natasha.

Классификация сущностей

Типы сущностей, выделяемые в NER, зависят от предметной области и задачи. Наиболее распространённые категории включают:

  • Персоны (PER): имена, фамилии, отчества людей (например, «Александр Пушкин», «Иван Петров»).
  • Организации (ORG): названия компаний, учреждений, политических партий, общественных объединений. При упоминании организаций, признанных в РФ нежелательными или экстремистскими, требуется соблюдение законодательства. Например, Meta (признана экстремистской и запрещена в РФ) или «Аль-Каида (террористическая организация, запрещена в РФ)» (террористическая организация, запрещена в РФ).
  • Географические объекты (LOC): страны, города, реки, горы (например, «Россия», «Москва», «Волга»).
  • Даты и время (DATE): абсолютные и относительные даты, временные промежутки (например, «12 июня 1991 года», «вчера»).
  • Денежные суммы (MONEY): суммы в валютах (например, «100 рублей», «$50»).
  • Проценты (PERCENT): процентные значения (например, «15%»).
  • Продукты (PRODUCT): названия товаров, услуг, программного обеспечения (например, «iPhone 15», «Windows 11»).
  • События (EVENT): исторические события, конференции, праздники (например, «Великая Отечественная война», «Олимпийские игры 2024»).

В специализированных областях (медицина, юриспруденция, биология) выделяют более узкие классы: названия лекарств, юридические термины, виды генов и белков.

Методы и подходы

Правила и словари

Ранние системы NER строились на наборе ручных правил (регулярных выражений) и списков (газетиров). Например, для распознавания имён могло использоваться правило: «Слово с заглавной буквы, за которым следует слово с заглавной буквы». Недостатком является низкая адаптивность к новым доменам и языкам, а также высокая трудоёмкость создания правил.

Статистические методы

С появлением размеченных корпусов стали применяться вероятностные модели, такие как скрытые марковские модели (HMM) и условные случайные поля (CRF). CRF, в частности, позволяют учитывать контекст (последовательность слов) и взаимозависимости между метками. Эти методы остаются актуальными для задач с ограниченными данными.

Глубокое обучение

Современные системы NER базируются на нейронных сетях. Типичная архитектура включает:

  • Встраивание слов (Word Embeddings): преобразование слов в векторные представления (Word2Vec, GloVe, FastText).
  • Кодировщик контекста: использование двунаправленных LSTM (BiLSTM) или трансформеров (BERT, RoBERTa) для учёта левого и правого контекста.
  • Декодер: слой CRF или softmax для присвоения метки каждому токену.

Модели на основе трансформеров (BERT) демонстрируют наилучшие результаты, так как способны учитывать глобальный контекст и обучаться на больших корпусах. В русскоязычном сегменте популярны модели RuBERT (от DeepPavlov) и RuGPT.

Гибридные подходы

Часто комбинируют нейросетевые модели с правилами и словарями для повышения точности на специфических сущностях (например, датах или номерах документов).

Применение

Распознавание сущностей используется в широком спектре прикладных задач:

  • Поисковые системы: улучшение релевантности поиска путём выделения ключевых сущностей в запросе и документах.
  • Анализ социальных сетей и СМИ: мониторинг упоминаний персон, брендов, событий. Например, для отслеживания новостей о деятельности террористических организаций, запрещённых в РФ (таких как ИГИЛ), или нежелательных организаций.
  • Автоматизация документооборота: извлечение дат, сумм, сторон из договоров и счетов.
  • Медицина: извлечение названий заболеваний, лекарств, симптомов из электронных медицинских карт.
  • Биоинформатика: распознавание названий генов, белков, химических соединений в научных статьях.
  • Чат-боты и голосовые ассистенты: понимание намерений пользователя (например, извлечение города и даты в запросе «Найди билеты в Санкт-Петербург на 10 мая»).
  • Юриспруденция: анализ судебных решений и нормативных актов для выделения сторон, дат и ссылок на законы.

Оценка качества

Для оценки систем NER используются стандартные метрики:

  • Точность (Precision): доля правильно найденных сущностей среди всех найденных системой.
  • Полнота (Recall): доля правильно найденных сущностей среди всех реально присутствующих в тексте.
  • F1-мера: гармоническое среднее точности и полноты.

Тестирование проводится на размеченных корпусах, таких как CoNLL-2003 (английский), MUC-7 (русский), RuREBus (русский, бизнес-тематика) и других.

Проблемы и ограничения

  • Неоднозначность: одно и то же слово может быть сущностью разных типов в зависимости от контекста (например, «Вашингтон» — город или фамилия).
  • Омонимия и аббревиатуры: например, «МГУ» может быть Московским государственным университетом или Международным гуманитарным университетом.
  • Сленг и нестандартное написание: в социальных сетях и мессенджерах часто встречаются искажённые формы (например, «Питер» вместо «Санкт-Петербург»).
  • Языковая специфика: для русского языка сложность представляют падежные окончания и склонения (например, «в Москве», «у Ивана»).
  • Ресурсоёмкость: современные нейросетевые модели требуют значительных вычислительных мощностей для обучения и инференса.
  • Необходимость в размеченных данных: создание качественных корпусов для обучения — трудоёмкий и дорогостоящий процесс.

Интересные факты

  • Первая система NER, использовавшая нейронные сети, была предложена в 2003 году, но широкое распространение глубокое обучение получило только после 2015 года.
  • В русском языке задача NER осложняется тем, что имена и фамилии могут быть неотличимы от нарицательных существительных (например, «Вера» — имя и понятие веры).
  • Существуют специализированные библиотеки для русского языка, такие как natasha и deeppavlov, которые включают предобученные модели NER.
  • В задачах анализа новостей и социальных сетей в России системы NER используются для выявления упоминаний организаций, признанных нежелательными или экстремистскими, в соответствии с требованиями законодательства.

Источники

  1. Nadeau, D., & Sekine, S. (2007). A survey of named entity recognition and classification. Lingvisticae Investigationes, 30(1), 3–26.
  2. Lample, G., Ballesteros, M., Subramanian, S., Kawakami, K., & Dyer, C. (2016). Neural architectures for named entity recognition. Proceedings of NAACL-HLT 2016.
  3. Devlin, J., Chang, M. W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. Proceedings of NAACL-HLT 2019.
  4. Материалы конференций MUC (Message Understanding Conference) и CoNLL (Conference on Computational Natural Language Learning).
  5. Документация библиотек DeepPavlov и Natasha (лаборатория нейронных систем и глубокого обучения МФТИ).
  6. Федеральный закон от 25.07.2002 № 114-ФЗ «О противодействии экстремистской деятельности» (в ред. от 28.12.2024) — регламентирует порядок признания организаций экстремистскими и запрета их деятельности на территории РФ.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →