Вступ до DVC

Вступ до керування версіями даних із DVC

Ravi Bhadauria

Machine Learning Engineer

Git як система керування версіями

  • Система керування версіями коду
  • Незалежна локальна розробка
    • Відгалуження та злиття
    • Керування історією версій
  • Полегшує співпрацю

Схема децентралізованої моделі Git

Вступ до керування версіями даних із DVC

Git як система керування версіями

  • Взаємодія через CLI
  • Запускається в терміналі (або оболонці)
  • Git відстежує вміст через репозиторій
    • Фактичні файли/папки для відстеження
    • Метадані Git (у папці .git)

Зображення структури репозиторію Git

Вступ до керування версіями даних із DVC

Data Version Control (DVC)

  • DVC: інструмент керування версіями даних
    • Керує даними та експериментами
    • Подібний до Git

Схематичне зображення версіонування даних із Git і DVC.png

  • Git відстежує метадані, DVC відповідає за версіонування даних
Вступ до керування версіями даних із DVC

Git vs DVC CLI

Git

  • Ініціалізуйте репозиторій у робочій папці
$ git init
  • Додавання файлів до репозиторію (підготовка змін)
$ git add code.py
  • Фіксація змін (в історії версій)
$ git commit -m "adding first file"

DVC

  • Ініціалізуйте репозиторій DVC у робочій папці
$ dvc init
  • Додавання файлів даних до DVC
$ dvc add data/mydata.csv
  • Оновлення всіх відстежуваних файлів даних
$ dvc commit
Вступ до керування версіями даних із DVC

Git vs DVC CLI

Git

  • Надішліть зміни коду на віддалений сервер
$ git push
  • Отримання змін із віддаленого сховища
$ git pull
  • Клонування наявного репозиторію з віддаленого (GitHub)
$ git clone \
https://github.com/username/repository-name.git

DVC

  • Надішліть зміни даних на віддалений сервер даних
$ dvc push
  • Синхронізація вашого проєкту DVC
$ dvc pull
  • Завантаження файлу або каталогу, що відстежується DVC
$ dvc get \
https://github.com/username/repo-name model.pkl
Вступ до керування версіями даних із DVC

Давайте потренуємось!

Вступ до керування версіями даних із DVC

Preparing Video For Download...