Data deduplication в подготовке обучающих корпусов

Термин глоссария

Data deduplication


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

Категория термина

Работа с данными и векторами