Sparse retrieval — подход к поиску, при котором запросы и документы представлены разреженными векторами с небольшим числом ненулевых признаков, напрямую связанных с терминами или их взвешенными вариантами.
Определение
Sparse retrieval — это класс поисковых методов, основанных на разреженных представлениях текста, где каждый измеримый признак соответствует конкретному термину или псевдотермину. В отличие от dense retrieval, где используются плотные семантические эмбеддинги, sparse retrieval сохраняет явную интерпретируемую связь между словами запроса и документами. Классические алгоритмы (TF-IDF, BM25) и современные neural sparse модели (SPLADE, DeepImpact) относятся к этому подходу.
Как работает
1. Разреженное представление
Документы и запросы кодируются в векторы большой размерности, где:
- каждое измерение соответствует термину словаря;
- большинство значений равны нулю;
- ненулевые значения отражают важность термина.
2. Взвешивание терминов
Ключевой механизм sparse retrieval — оценка значимости слов:
- TF-IDF — частота термина с учётом его редкости;
- BM25 — вероятностная модель с нормализацией по длине документа;
- Learned weights — нейросети предсказывают веса терминов.
3. Сопоставление и ранжирование
Релевантность вычисляется как скалярное произведение или суммарный скор по совпадающим терминам. Чем больше совпадений и выше веса — тем выше позиция документа.
4. Neural sparse retrieval
Современные модели расширяют классический подход:
- SPLADE — Transformer генерирует разреженный вектор с псевдотерминами;
- DeepImpact — обучает веса терминов через supervision;
- UniCOIL — токен-уровневые веса для BM25-подобного поиска.
При этом сохраняется совместимость с inverted index и классическими поисковыми движками.
Где применяется
- Поиск по документации и техническим текстам.
- Корпоративные базы знаний.
- Юридические и медицинские архивы.
- Поисковые системы общего назначения.
- Retrieval-слой в RAG-системах.
Практические примеры использования
BM25 остаётся стандартом в Elasticsearch и OpenSearch благодаря предсказуемости и скорости. В production-системах sparse retrieval часто используется как первый этап кандидатов, после которого применяется neural re-ranking или dense retrieval.
Neural sparse модели (SPLADE) активно применяются в поиске научных статей и технической документации, где точное совпадение терминов критично. В RAG-пайплайнах sparse retrieval обеспечивает попадание редких сущностей, API-названий и формальных терминов, которые dense модели могут игнорировать.
Ключевые свойства
- Явная связь между терминами запроса и документа.
- Интерпретируемость скоринга.
- Совместимость с inverted index.
- Высокая точность для редких и специфических слов.
- Низкие требования к вычислениям по сравнению с dense retrieval.
Проблемы и ограничения
- Слабая работа с перефразированием и синонимами.
- Ограниченное семантическое обобщение.
- Зависимость от качества токенизации.
- Большие словари увеличивают размер индекса.
- Neural sparse модели сложнее в обучении и настройке.
Преимущества и ограничения
- Плюс: точность, интерпретируемость и эффективность.
- Минус: ограниченная семантика без гибридных подходов.
Связанные термины
- Dense retrieval
- BM25
- Hybrid search
- Inverted index
- RAG