При разборе корпоративных новостей мы часто видим: «Сбербанк назначил Германа Грефа председателем». NER найдёт сущности, но связь «назначение» останется неявной. Relation Extraction (RE) решает это — превращает неструктурированный текст в тройки (субъект, отношение, объект). В одном проекте для юридического департамента мы обработали 100 000 судебных решений: ручная разметка заняла бы полгода, а fine-tuning BERT с Distant Supervision дал F1 78% за 3 недели. Наши инженеры реализовали 15+ проектов по RE для финансовых и юридических корпусов, включая построение графов знаний. Более 5 лет опыта в NLP — практика, которая гарантирует F1 не ниже 75% на стандартных бенчмарках. RE-системы уже сейчас экономят компаниям до 70% времени на анализ контрактов и судебных решений. Подход RE подробно описан в Wikipedia.
Как Relation Extraction извлекает семантические связи?
Named Entity Recognition (NER) только идентифицирует сущности, но не определяет тип связи между ними. Relation Extraction (RE) дополняет NER: на выходе получаются семантические тройки вида (Сбербанк, назначает, Герман Греф). Такие тройки — основа для построения графов знаний и автоматического анализа текстов. Мы используем открытые бенчмарки TACRED и DocRED для валидации — на них fine-tuned BERT стабильно даёт F1 75-80%.
Как fine-tuning BERT превосходит prompt-based LLM?
Prompt-based подход с LLM (например, GPT-4) позволяет запустить RE за день, но на большом объёме данных стоимость инференса высока — latency p99 может достигать 1 секунды на тройку. Fine-tuned BERT с entity-marker токенами ([E1]сущность[/E1]) даёт F1 на 10-15% выше при latency 10-50 мс. Сравнение подходов:
| Подход | F1 (TACRED) | Latency p99 | Стоимость инференса | Гибкость схемы |
|---|---|---|---|---|
| Prompt-based LLM (GPT-4) | 60-70% | 500-1000 мс | Высокая | Высокая |
| Fine-tuned BERT (RoBERTa-large) | 75-80% | 10-50 мс | Низкая | Низкая |
| REBEL (T5-based) | 65-72% | 100-200 мс | Средняя | Средняя |
Fine-tuned BERT в 10 раз дешевле при инференсе и на 10-15% точнее — оптимальный выбор для high-load систем. Метрики считаются строго: правильным считается ответ только при полном совпадении сущностей, направления и типа отношения.
Как distant supervision снижает затраты на разметку?
Разметка данных для RE — дорогой этап. Distant Supervision автоматически создаёт выборку, сопоставляя тексты с базой знаний (например, Wikidata). Это даёт в 10 раз больше примеров за ту же стоимость, что и ручная разметка, при некотором снижении точности (на 5-8% F1). Для компенсации шума мы используем weighted loss и фильтрацию по уверенности.
Сравнение методов разметки:
| Метод | Объём за месяц | Стоимость | Точность (F1) |
|---|---|---|---|
| Ручная разметка | 5-10 тыс. примеров | Высокая | 100% (эталон) |
| Distant Supervision | 50-100 тыс. примеров | Низкая | 92-95% (с фильтрацией) |
Процесс внедрения RE
- Аудит корпуса и схемы отношений — определяем список отношений и проверяем качество NER.
- Выбор подхода — на основе объёма данных и требований к latency выбираем prompt-based, fine-tuning или REBEL.
- Разметка — при нехватке размеченных данных применяем Distant Supervision.
- Обучение и валидация — настраиваем гиперпараметры, контролируем F1 на отложенной выборке.
- Деплой — упаковываем модель в Docker, API на FastAPI с метриками и логированием.
- Сопровождение — обучаем вашу команду, поддерживаем 3 месяца.
Что входит в работу
- Обученная модель RE с целевыми метриками
- API-сервис на FastAPI в Docker-контейнере
- Документация: описание архитектуры, инструкция по дообучению, спецификация API
- Исходный код и конфиги под систему контроля версий
- Обучение вашей команды работе с моделью (2–3 сессии)
- Техническая поддержка в течение 3 месяцев после деплоя
Типичные ошибки и как их избежать
- Пропуск long-tail отношений: редкие типы зашумляют distant supervision. Решение — балансировать выборку и использовать weighted loss.
- Ошибки сущностей: если NER неточен, RE унаследует ошибки. Рекомендуем ставить каскад с промежуточной валидацией.
- Игнорирование контекста: одно и то же слово может означать разные отношения в разных доменах. Fine-tuning на целевом корпусе решает проблему.
Чтобы узнать, какой подход подходит вашему корпусу, свяжитесь с нами — мы проведём бесплатный аудит. Мы готовы обсудить детали. Получите консультацию по выбору подхода для вашего корпуса — это бесплатно.







