Распознавание сущностей¶
Распознавание сущностей (англ. 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 используются для выявления упоминаний организаций, признанных нежелательными или экстремистскими, в соответствии с требованиями законодательства.
¶Источники
- Nadeau, D., & Sekine, S. (2007). A survey of named entity recognition and classification. Lingvisticae Investigationes, 30(1), 3–26.
- Lample, G., Ballesteros, M., Subramanian, S., Kawakami, K., & Dyer, C. (2016). Neural architectures for named entity recognition. Proceedings of NAACL-HLT 2016.
- 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.
- Материалы конференций MUC (Message Understanding Conference) и CoNLL (Conference on Computational Natural Language Learning).
- Документация библиотек DeepPavlov и Natasha (лаборатория нейронных систем и глубокого обучения МФТИ).
- Федеральный закон от 25.07.2002 № 114-ФЗ «О противодействии экстремистской деятельности» (в ред. от 28.12.2024) — регламентирует порядок признания организаций экстремистскими и запрета их деятельности на территории РФ.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →
