Мотивація версіонування даних

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

Ravi Bhadauria

Machine Learning Engineer

Що таке версіонування даних?

  • Визначення
    • Відстежує зміни даних з часом
    • Фіксує «знімки» даних по ітераціях
    • Подібне до версіонування коду
  • Переваги
    • Пошук і аналіз
    • Узгодженість, відповідальність і походження даних
  • Застосування
    • Data Science і Machine Learning
    • Data Engineering
    • Фінансовий аналіз, аудит і відповідність вимогам
Вступ до керування версіями даних із DVC

Версіонування даних vs коду

Версіонування коду

  • Добре відоме в розробці ПЗ
  • Використовує інструменти на кшталт Git для децентралізованого контролю версій
  • Легше керувати, бо кодові бази малі

Версіонування даних

  • Відносно нове (SciDB запропоновано у 2012)
  • Ланцюжки інструментів як-от DVC використовують разом із Git
  • Керувати складніше через великий розмір наборів даних
1 doi: 10.1109/ICDE.2012.102
Вступ до керування версіями даних із DVC

Навіщо версіонувати дані в ML?

Зображення складових ML‑моделі: код, гіперпараметри та дані

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

Вплив набору даних

Набір даних A Зображення head датафрейму для набору даних A

Набір даних B Зображення head датафрейму для набору даних B

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

Вплив набору даних

 

Гіперпараметри сталі, змінено набір даних

 

Metric Dataset A Dataset B
Precision 0.78 0.79
Recall 0.54 0.57
F1 Score 0.64 0.66
Accuracy 0.80 0.81
Вступ до керування версіями даних із DVC

Вплив гіперпараметрів

 

Набір даних сталий, змінено гіперпараметри

 

Metric n_estimators=5 n_estimators=10
Precision 0.78 0.85
Recall 0.54 0.52
F1 Score 0.64 0.65
Accuracy 0.80 0.81
Вступ до керування версіями даних із DVC

Макет вправ в редакторі

Підписане зображення макету вправ в редакторі з папкою, файлом і терміналом.

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

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

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

Preparing Video For Download...