Dataset

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

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

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

Коротко

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

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

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

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

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

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

Обучающая выборка (train) используется для обновления параметров модели.

Валидационная выборка (validation) помогает выбирать настройки, сохранённую версию модели и момент остановки.

Тестовая выборка (test) нужна для итоговой независимой оценки.

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

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

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

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

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

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

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

3. Очистка

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

4. Разметка

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

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

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

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

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

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

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

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

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

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

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

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

Разметку можно описывать с разных сторон — по типу оценки и способу её получения. Эти категории не исключают друг друга:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Главное

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

Типичные утечки при подготовке данных разобраны в руководстве scikit-learn. Вопросы для документации набора предложены в работе Datasheets for Datasets.