DVC - основы работы

Лев Коваленко

Что такое DVC?

DVC (Data Version Control) - система контроля версий для ML:

  • Версионирование данных и моделей
  • Интеграция с Git
  • Облачные хранилища
  • Воспроизводимость экспериментов
  • ML пайплайны

Установка и настройка DVC

Установка:

pip install dvc
# или
conda install -c conda-forge dvc

Инициализация:

dvc init
dvc remote add -d myremote s3://my-bucket/dvc-storage
dvc config core.remote myremote

Основные команды DVC

Добавление файлов:

dvc add data/train.csv
dvc add data/images/
dvc add data/dataset.csv --desc "Training dataset v1.0"

Коммит и синхронизация:

dvc commit
git add data/train.csv.dvc
git commit -m "Add training dataset"

dvc pull
dvc push

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

Просмотр метаданных:

dvc info data/train.csv.dvc
dvc list .
dvc status

Теги и версии:

dvc tag add v1.0
dvc tag list
dvc checkout v1.0

Лучшие практики

Организация данных:

  • Понятные имена файлов
  • Группировка связанных данных
  • Описания к важным версиям
  • Теги для релизов

Работа в команде:

  • Синхронизация перед работой
  • Регулярные коммиты
  • Описательные сообщения
  • Документирование изменений

Производительность:

  • Облачные хранилища
  • Настройка кэширования
  • Избегание дублирования
  • Оптимизация размера файлов