Dataset

dataset — набор примеров для обучения и проверки модели

Раздел
Обучение
Обновлено
11.08.26

Dataset, или датасет, — организованный набор примеров для обучения, настройки или проверки модели. В нём важны не только объём и разметка, но и происхождение, права, покрытие реальных случаев, дубликаты и способ разделения на train, validation и test. Ошибки данных легко превращаются в ошибки модели.

Коротко

Dataset — не просто папка с файлами, а набор данных с понятной целью, структурой и историей. Хороший датасет показывает модели нужные случаи, позволяет честно измерить обобщение и не скрывает, откуда появились материалы и как их можно использовать.

Из чего состоит пример

Форма зависит от задачи:

  • изображение и метка класса;
  • текст и перевод;
  • аудио и расшифровка;
  • вопрос и ожидаемый ответ;
  • документ и найденные в нём поля;
  • последовательность действий и награда;
  • изображение и текстовое описание.

Разметка нужна не всегда. При self-supervised training цель можно построить из самих данных: скрыть часть текста, добавить шум к изображению или предсказывать следующий элемент последовательности.

Датасеты решают разные задачи

Training set обновляет параметры модели.

Validation set помогает выбирать настройки, checkpoint и момент остановки.

Test set нужен для итоговой независимой оценки.

Evaluation suite может состоять из нескольких наборов: обычных случаев, редких ошибок, безопасности и регрессий. Один test не обязан отвечать на все вопросы о модели.

Размер долей не универсален. Важнее независимость. Если один пользователь, документ или видеосцена попали в разные части, метрика может измерять узнавание почти одинакового примера вместо обобщения.

Жизненный цикл датасета

1. Постановка задачи

Сначала определяют, что считается входом, правильным результатом и ошибкой. Без этого невозможно понять, какие данные собирать.

2. Сбор и происхождение

Для каждого источника полезно знать владельца, лицензию, дату получения, согласие и ограничения. Эти сведения называют provenance.

3. Очистка

Проверяются повреждённые файлы, дубликаты, утечки, неверный формат, неподходящий язык и технический мусор. Автоматические фильтры ускоряют работу, но их результат тоже просматривают вручную.

4. Разметка

Правила разметки описывают неоднозначные случаи и порядок разрешения споров. Несколько оценщиков помогают увидеть, где задача сама не имеет однозначного ответа.

5. Разделение

Данные делят по той сущности, которая не должна пересекаться между обучением и проверкой: пользователю, устройству, времени, документу, сцене или объекту.

6. Версионирование

Изменение фильтра или метки создаёт новую версию. Вместе с моделью сохраняют идентификатор данных и код подготовки.

7. Мониторинг

После запуска распределение может измениться. Новые типы запросов и ошибки возвращаются в цикл сбора, но не должны незаметно загрязнять старый test.

Что такое утечка данных

Data leakage возникает, когда модель получает информацию из будущей проверки. Простые примеры:

  • одинаковый файл есть и в train, и в test;
  • соседние кадры одного ролика разнесены случайно;
  • признак содержит ответ, который в реальной работе ещё неизвестен;
  • test использовался для многократного выбора настроек;
  • эталонные вопросы оказались в обучающем корпусе.

Утечка делает метрику красивее, но не делает модель полезнее.

Качество разметки

Разметка может быть:

  • объективной — например, координаты измерительного прибора;
  • экспертной — диагноз или юридическая категория;
  • субъективной — естественность голоса или красота композиции;
  • автоматической — метка из правила, модели или метаданных.

Для субъективной задачи полезно хранить несколько мнений или степень согласия, а не притворяться, что у каждого примера есть одна вечная истина.

Баланс и покрытие

Если большинство примеров относится к одному классу, высокая accuracy может скрывать полный провал на редком классе. Нужны метрики по сегментам и понимание реальной частоты событий.

Искусственно выровнять классы тоже не всегда правильно. В эксплуатации редкий случай может остаться редким, но быть особенно важным. Тогда обучение, калибровка и итоговые пороги решают разные задачи.

Дубликаты и почти дубликаты

Точная копия находится по hash, а почти одинаковые изображения, перефразированный текст и соседние кадры требуют более содержательного сравнения.

Дубликаты могут:

  • переоценить размер корпуса;
  • усилить случайный пример;
  • попасть одновременно в train и test;
  • повысить риск дословного воспроизведения;
  • нарушить договорённости с владельцем данных.

Аугментация и синтетические данные

Аугментация меняет существующий пример: обрезает изображение, добавляет шум, меняет темп аудио или переставляет допустимые элементы.

Синтетический датасет создаётся моделью, симулятором или правилом. Он полезен для редких случаев и приватности, но наследует ограничения генератора. Если проверять синтетическую модель на данных того же генератора, результат может не переноситься на реальность.

Права и персональные данные

Набор данных может быть технически доступен и юридически непригоден для обучения. Проверяются:

  • лицензия и условия источника;
  • согласие людей;
  • персональные и биометрические данные;
  • возможность удалить запись;
  • срок хранения;
  • передача стороннему сервису;
  • права на полученную модель и результаты.

Точные требования зависят от страны и сценария, поэтому для чувствительных данных нужна профильная проверка.

Документация датасета

Полезная карточка отвечает на вопросы:

  • зачем набор создан;
  • откуда пришли данные;
  • кто и как размечал;
  • какие случаи исключены;
  • как устроен split;
  • какие известны ограничения;
  • какая версия используется;
  • кому разрешён доступ;
  • как сообщить об ошибке или запросить удаление.

Такая документация помогает будущей команде понять, что на самом деле измеряет модель.

Быстрая проверка перед обучением

Случайную выборку удобно просмотреть глазами и по нескольким срезам. Часто так находятся перепутанные метки, повреждённые файлы, неуместные водяные знаки, утечки и неожиданные источники.

Затем полезны автоматические отчёты:

  • распределение классов и длин;
  • пропуски и необычные значения;
  • точные и приблизительные дубликаты;
  • пересечения между split;
  • доли по источникам, языкам и времени;
  • примеры после всех преобразований pipeline.

Частые ошибки

  • Считать больше всегда лучше. Большой шумный корпус может уступить меньшему и точному.
  • Делить случайно всё подряд. Связанные примеры создают утечку.
  • Не хранить источник. Потом трудно проверить права и удалить запись.
  • Исправлять test после каждого провала. Он превращается в ещё один validation.
  • Считать автоматическую разметку истиной. Учитель-модель переносит в данные свои ошибки.
  • Оценивать только среднее. Редкие группы и дорогие ошибки исчезают в общей цифре.

Частые вопросы

Сколько данных нужно? Зависит от разнообразия задачи, качества базы и цены ошибки. Полезно строить learning curve: обучать на растущих долях и смотреть, продолжает ли независимая метрика улучшаться.

Нужна ли ручная разметка? Не всегда. Возможны self-supervised цели, правила и pseudo-labeling. Но для проверки всё равно нужен надёжный эталон или другой способ подтвердить качество.

Можно ли обновлять test? Да, когда реальная задача изменилась, но старую версию сохраняют для сравнения. Новый test не должен незаметно участвовать в подборе настроек.

Чем dataset отличается от corpus? Corpus часто называют коллекцию текста или речи, а dataset — любой организованный набор примеров. На практике слова пересекаются.

Главное

Dataset определяет, чему модель может научиться и что покажет её метрика. Надёжный набор имеет понятную цель, происхождение, права, версию и честный split. Объём помогает только после того, как данные отражают реальную задачу и не подсказывают ответы из будущей проверки.