Что такое Распознавание сущностей
Извлечение именованных сущностей из текста
Распознавание именованных сущностей (NER) — задача NLP по автоматическому выявлению и классификации именованных сущностей в тексте: имён людей, организаций, географических названий, дат, денежных сумм и других категорий.
Типы сущностей
- PER — имена людей (Иван Петров, Elon Musk)
- ORG — организации (Сбербанк, Google, ООН)
- LOC — локации (Москва, Россия, Эверест)
- DATE — даты и время (1 января 2024, вчера)
- MONEY — денежные суммы (100 долларов, 5000₽)
- PRODUCT — продукты (iPhone 15, Tesla Model 3)
Методы NER
- Правила и словари — базовый подход с регулярными выражениями
- Машинное обучение — CRF, SVM на размеченных данных
- Глубокое обучение — BiLSTM-CRF, BERT, RoBERTa
- Transfer learning — дообучение предобученных моделей
Применение
- Поисковые системы и информационный поиск
- Чат-боты и виртуальные ассистенты
- Анализ новостей и мониторинг СМИ
- Извлечение данных из документов
- Compliance и проверка санкционных списков
Библиотеки и инструменты
- spaCy — быстрый NLP с встроенным NER
- NLTK — классическая библиотека NLP
- Natasha — NER для русского языка
- Hugging Face Transformers — BERT-модели для NER
- Stanford NER — Java-библиотека
Метрики качества
- Precision — точность распознавания
- Recall — полнота (сколько сущностей найдено)
- F1-score — гармоническое среднее precision и recall
- Entity-level vs Token-level — оценка на уровне сущностей или токенов
Сложности
- Омонимия (Apple — компания или фрукт?)
- Вложенные сущности (University of California, Los Angeles)
- Редкие и новые сущности
- Мультиязычность