Data deduplication — процесс поиска и удаления полных и частичных дубликатов данных, необходимый для контроля качества корпусов и предотвращения переобучения моделей.
Определение
Data deduplication — это процедура обнаружения и устранения повторяющихся документов, их частей или парафразов в обучающем наборе данных. Дубликаты приводят к повышенной корреляции между образцами, смещению распределений и переобучению модели на узком наборе текстов. В LLM это выражается в ухудшении генерации, повторении фрагментов источников и деградации обобщающей способности.
Как работает
Дедупликация реализуется на нескольких уровнях: от грубой филтрации идентичных строк до поиска частичных совпадений через алгоритмы локально-чувствительного хеширования и нейронных embedding-векторов. Типичный пайплайн включает:
- Полная дедупликация — сравнение хешей документов (SHA-256, BLAKE3); подходит для точных копий.
- Частичная дедупликация — разбиение документов на чанки и применение MinHash + locality-sensitive hashing (LSH) для нахождения похожих фрагментов.
- Нейронная дедупликация — сравнение embedding-векторов предложений/абзацев, кластеризация похожих документов.
- Нормализация — перед дедупликацией текст очищается от пробелов, HTML-разметки, мусорных символов, чтобы исключить «ложно уникальные» записи.
- Фильтрация по порогу сходства — выбор порога Jaccard similarity, cosine similarity или MinHash-скора.
Для больших LLM-корпусов дедупликация выполняется распределённо: шардирование данных, параллельные LSH-индексы, сохранение статистики совпадений и контроль коллизий.
Где применяется
- Подготовка текстовых корпусов для обучения LLM.
- Оптимизация RAG-баз: удаление повторяющихся документов снижает шум retrieval.
- Обучение embedding-моделей.
- Корпоративные хранилища, где необходимо убрать дубли сотрудников/отчётов.
- Очистка веб-контента после массового crawling.
Практические примеры использования
При подготовке корпусов для современных LLM (LLaMA, Mistral, Qwen) применяется многоуровневая дедупликация: MinHash для грубых совпадений, LSH для частичных фрагментов и embedding-модели для тонкого отбора. Это снижает долю повторяющихся документов на десятки процентов. В RAG-системах дедупликация улучшает точность retrieval и уменьшает вероятность возвращения однотипных абзацев. В fine-tuning пайплайнах дедупликация обязательна — дубликаты инструкций приводят к перекосу модели и ухудшению generalization.
Ключевые свойства
- Контроль корреляции в данных за счёт удаления повторов.
- Снижение риска переобучения и модельного смещения.
- Работа с полными и частичными совпадениями.
- Поддержка хешовых и векторных методов сравнения.
- Масштабируемость на десятки миллиардов токенов.
Проблемы и ограничения
- LSH и MinHash создают коллизии — необходимо ручное калибрование порогов.
- Embedding-сравнение дорого по вычислениям на больших корпусах.
- Избыточная агрессия дедупликации может удалить редкие, но важные примеры.
- Дедупликация чувствительна к качеству нормализации текста.
- При плохой сегментации документов остаются скрытые частичные дубликаты.
Преимущества и ограничения
- Плюс: повышает качество модели и снижает переобучение.
- Минус: требует значительных вычислительных ресурсов и сложной настройки.
Связанные термины
- Data preprocessing
- MinHash
- Locality-sensitive hashing (LSH)
- Embedding similarity
- Dataset curation