Керування версіями наборів даних із Data Version Control

CI/CD для машинного навчання

Ravi Bhadauria

Machine Learning Engineer

Чому версіонування даних важливе

  • Версіонування фіксує історію змін даних
  • Версіонування даних критично важливе
    • Відтворюваність
    • Експерименти та ітерації
    • Співпраця
    • Пошук і виправлення помилок
    • Моніторинг і супровід моделей
    • Аудит і валідація
CI/CD для машинного навчання

Data Version Control (DVC)

  • DVC: інструмент Data Version Control
    • Керує даними та експериментами
    • Подібний до Git

Схема версіонування даних за допомогою Git і DVC.png

  • Git відстежує метадані, DVC — версії даних
CI/CD для машинного навчання

Сховище DVC

  • Дані зберігаються окремо
    • SSH, HTTP/HTTPS, локальна файлова система
    • Об'єктні сховища AWS, GCP та Azure
  • Встановіть локально
pip install dvc
CI/CD для машинного навчання

Ініціалізація DVC

  • Ініціалізуйте Git git init
  • Ініціалізуйте DVC
-> dvc init
Initialized DVC repository.
You can now commit the changes to git.
  • Створює файли проєкту DVC — готово до версіонування даних
.dvc
|- .gitignore
|- config
|- tmp
CI/CD для машинного навчання

Додавання файлів до DVC

  • Додайте файли даних командою dvc add <file>
-> dvc add data.csv
  • Генеруються файли-заглушки .dvc з метаданими
    • Для кожного файлу під керуванням DVC створюється відповідний .dvc (data.csv -> data.csv.dvc)
    • Додавайте до Git, щоб керувати версіями даних
  • Кеш DVC заповнюється в .dvc/cache
CI/CD для машинного навчання

Файли даних DVC

  • Файл даних
-> cat data.csv
This is a sample data file.
  • Файл data.csv.dvc
-> cat data.csv.dvc
 outs:
 - md5: ea9972ac9f8fa321ea74969e93acc196

size: 28
hash: md5
path: data.csv
CI/CD для машинного навчання

Підсумок

  • Версіонування даних забезпечує відтворюваність і співпрацю
  • DVC: інструмент для керування версіями даних; працює з Git
  • Ініціалізуйте DVC через dvc init, додавайте файли dvc add <file>
  • Файли .dvc зберігають метадані, Git відстежує версії
CI/CD для машинного навчання

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

CI/CD для машинного навчання

Preparing Video For Download...