Lsh Deduplication

MinHash & SimHash: Дедупликация и сжатие текстовых архивов

Published: 2026-06-25 · Trading

LSH-дедупликация текстовых баз — это двухэтапный конвейер фильтрации и сжатия крупных массивов неструктурированных данных. Алгоритм MinHash группирует схожие по тематике документы

⚡ Быстрый ответ

  • MinHash and SimHash LSH pipeline for de-duplicating and compressing large textual archives into CompactDigest records.
  • Parameters: MinHash Jaccard threshold >= 0.55 ($n\_perm=128$, $bands=32$, $rows=4$), SimHash Hamming distance <= 3 (strict) or <= 4 (soft inside clusters).
  • Aggregates raw text into 200-400 validated CompactDigest records containing core summaries, key facts, and back-trace IDs.

Safety Guards

Rule Max Limit Action On Breach
max_dupes_pct 0.35 abort
min_quality_score 0.92 quarantine

Руководство по интеграции

Обновлено: 2026-07-04
*Дисклеймер: Данный технический материал носит исключительно информационный характер и не является финансовой рекомендацией.*

## Как работает LSH-дедупликация и сжатие текстовых баз ИИ-агентов?

LSH-дедупликация текстовых баз — это двухэтапный конвейер фильтрации и сжатия крупных массивов неструктурированных данных. Алгоритм MinHash группирует схожие по тематике документы по коэффициенту Жаккара, а SimHash склеивает почти-дубликаты на основе расстояния Хэмминга. Итоговый кластер сжимается в формат CompactDigest, сохраняя ключевые факты и исходные обратные ссылки для ИИ-агентов.









































Этап пайплайна LSH Математический алгоритм и логика Ключевые константы и параметры
1. Разбиение на шинглы Разделение текста на пересекающиеся фразы (словные или символьные шинглы) для оценки сходства. Размер шингла: 3–5 слов
2. MinHash фильтрация Векторизация шинглов через случайные перестановки и сопоставление по коэффициенту Жаккара. n_perm = 128, bands = 32, rows = 4
3. SimHash склейка Вычисление бинарного хэша документов и точное слияние по расстоянию Хэмминга. Строгое: d_H <= 3, Мягкое: d_H <= 4
4. Сжатие в CompactDigest Формирование краткого дайджеста, включающего ключевые факты и трассировочные хэши SHA-256. Целевой объем базы: 200–400 дайджестов
5. Качество сжатия Оценка доли остаточных дубликатов и итоговой степени компрессии текстового архива. Дубликаты: <= 0.35%, сжатие: <= 7%
6. Карантин базы Защитный барьер, блокирующий конвейер при падении метрик качества извлечения. Порог качества: min_quality_score >= 0.92


### 1. Архитектура конвейера LSH

Пайплайн состоит из следующих последовательных шагов:
1. **Нормализация**: Приведение к нижнему регистру, Unicode-нормализация, очистка от ссылок (URLs), эмодзи и разметки. Текст разбивается на символьные или словные шинглы (shingles) размером 3–5 слов.
2. **MinHash (группировка по темам)**:
- Документы векторизуются с использованием $n\_perm = 128$ перестановок.
- Применяется LSH с параметрами $bands = 32$, $rows = 4$.
- Пара бакетов признается кандидатом на сходство при значении коэффициента Жаккара $J(A, B) \ge 0.55$.
3. **SimHash (склейка почти-дубликатов)**:
- Для кандидатов внутри каждого бакета вычисляется 64-битный SimHash.
- Расстояние Хэмминга ($d_H$) используется для точной склейки:
- $d_H \le 3$ — строгое совпадение (автоматическое слияние);
- $d_H \le 4$ — мягкое совпадение (слияние внутри сформированного кластера).

### 2. Спецификация CompactDigest

Каждый верифицированный кластер сжимается в компактную запись `CompactDigest`. Это основной ре-ингест формат для ИИ-агентов. Структура записи:
- **Заголовок**: Тема, период времени, идентификаторы исходных файлов.
- **Ядро (Core Summary)**: 120–200 слов чистой сути без вводных слов и воды.
- **Факты**: Список из 5–10 конкретных фактов с датами, именами, суммами и действиями.
- **Ссылки (Traceability)**: Хэши SHA-256 оригинальных сообщений для трассировки выводов назад к первоисточнику.

### 3. Инкрементальное обновление базы

Для поддержания актуальности базы без полного пересчета применяется incremental-обновление:
1. Новое сообщение проходит фильтр SHA-256 на точное совпадение.
2. Вычисляется MinHash и определяется принадлежность к существующим LSH-бакетам.
3. Внутри бакета вычисляется SimHash и проверяется расстояние Хэмминга до центроида кластера.
4. Если расстояние $\le 4$, сообщение добавляется в кластер, а `CompactDigest` перегенерируется.
5. Если совпадений нет, создается новый кластер-кандидат.

### 4. Критерии качества (DoD)

Итоговая база дайджестов (целевой объем 200–400 записей) должна отвечать требованиям:
- Доля дубликатов: $\le 0.35\%$;
- Коэффициент сжатия: размер базы составляет $\le 7\%$ от первоначального объема;
- Каждая запись содержит полную цепочку обратных ссылок (`trace`).