Jump to content

Управление версиями данных (программное обеспечение)

(Перенаправлено из контроля версий данных )
DVC
Оригинальный автор (ы) Dmitry Petrov
Разработчик (ы) Iterative.ai
Первоначальный выпуск 4 мая 2017 года; 5 лет назад
Стабильный релиз
2.30.0 / 10 октября 2022 года; 1 день назад
Репозиторий https://github.com/iterative/dvc
Написано в Питон
Тип Машинное обучение CLI
Лицензия Apache License 2.0
Веб -сайт DVC .орг

DVC представляет собой бесплатную систему с открытым исходным кодом платформы, алкогольная система, для данных , моделей машинного обучения и экспериментов. [ 1 ] Он предназначен для того, чтобы сделать ML -модели общими, эксперименты воспроизводимыми, [ 2 ] и отслеживать версии моделей, данных и трубопроводов. [ 3 ] [ 4 ] [ 5 ] DVC работает поверх GIT репозиториев [ 6 ] и облачное хранилище . [ 7 ]

Первая (бета) версия DVC 0,6 была запущена в мае 2017 года. [ 8 ] В мае 2020 года DVC 1.0 был публично выпущен итеративным. [ 9 ]

DVC предназначен для включения лучших практик разработки программного обеспечения [ 10 ] в машинного обучения рабочие процессы . [ 11 ] Это делает это путем расширения традиционного программного инструмента GIT с помощью облачных фантазий для наборов данных и моделей машинного обучения. [ 12 ]

В частности, DVC делает операции машинного обучения: 

DVC хранит большие файлы и наборы данных в отдельном хранилище, за пределами GIT . [ 3 ] Это хранилище может быть на компьютере пользователя или размещено на любом крупном поставщике облачного хранилища, [ 16 ] [ 5 ] такие как AWS S3 , Google Cloud Storage и Microsoft Azure Blob Blob. [ 17 ] [ 18 ] Пользователи DVC также могут настроить удаленный репозиторий на любом сервере и подключиться к нему удаленно. [ 3 ]

Когда пользователь хранит свои данные и модели в удаленном хранилище, текстовый файл создается в их репозитории GIT , который указывает на фактические данные в удаленном хранилище. [ 2 ]

Функции DVC можно разделить на три категории: управление данными , трубопроводы и отслеживание экспериментов. [ 19 ] [ 20 ] [ 18 ]

Управление данными

[ редактировать ]

Расположение версий данных и модели является базовым уровнем [ 21 ] DVC для больших файлов, наборов данных и машинного обучения моделей . Это позволяет использовать стандартный GIT рабочий процесс , но без необходимости хранить эти файлы в репозитории. Большие файлы, каталоги и модели ML заменяются небольшими метафилами , что, в свою очередь, указывает на исходные данные. Данные хранятся отдельно, позволяя ученым -ученым передавать большие наборы данных или делиться моделью с другими. [ 6 ]

DVC включает в себя управление версиями данных посредством кодификации. [ 22 ] Когда пользователь создает метафийлы, описывая, какие наборы данных, артефакты ML и другие функции для отслеживания, DVC позволяет захватывать версии данных и моделей, создавать и восстанавливать с моментальных снимков, записать развивающиеся метрики, переключение между версиями и т. Д. [ 6 ]

Уникальные версии файлов и каталогов данных кэшируются [ 23 ] систематическим образом (также предотвращение дублирования файлов). Рабочее хранилище данных отделено от рабочей области пользователя, чтобы сохранить свет проекта, но остается подключенным через ссылки на файлы, обрабатываемые автоматически DVC. [ 24 ]

Трубопроводы

[ редактировать ]

DVC обеспечивает механизм для определения и выполнения трубопроводов . [ 25 ] [ 26 ] Трубопроводы представляют собой процесс создания наборов данных и моделей ML, от того, как данные предварительно обработаны до того, как модели обучаются и оцениваются. [ 27 ] Трубопроводы также могут быть использованы для развертывания моделей в производственные среды.

Трубопровод DVC сфокусирован на этапе экспериментов процесса ML. Пользователи могут запускать несколько копий трубопровода DVC, клонируя репозиторий GIT с помощью трубопровода или экспериментов ML. Они также могут записать рабочий процесс как трубопровод и воспроизводить [ 28 ] это в будущем.

Трубопроводы представлены в коде как yaml [ 29 ] Файлы конфигурации . Эти файлы определяют этапы трубопровода и то, как данные и информация выходят от одного шага к следующему.

Когда запускается трубопровод, артефакты , произведенные этим трубопроводом, зарегистрированы в dvc.lock file. [ 30 ] А lockfile Записывает этапы, которые были запускаются, и хранит хэш результирующего вывода для каждого этапа. [ 25 ] Это не только запись о выполнении трубопровода, но также полезно при принятии решения о том, какие шаги должны быть повторно затронуты при последующих выполнениях трубопровода. [ 27 ] [ 19 ]

Экспериментное отслеживание

[ редактировать ]

Отслеживание экспериментов позволяет разработчикам исследовать, итерации и сравнивать различные эксперименты по машинному обучению. [ 21 ] [ 19 ]

Каждый эксперимент представляет собой вариацию проекта науки о данных, определяемого изменениями в рабочей области. Эксперименты сохраняют ссылку на коммит в текущем филиале (git HEAD) [ 31 ] как их родитель или базовый уровень. Тем не менее, они не являются частью обычного дерева GIT (если они не становятся постоянными). [ 32 ] Это останавливает временные коммиты и филиалы от переполнения репозитория пользователя.

Общие варианты использования [ 33 ] Для экспериментов:

  1. Сравнение модельных архитектур
  2. Сравнение наборов данных обучения или оценки
  3. Выбор модельных гиперпараметров

Эксперименты DVC можно управлять и визуализировать либо из VS Code IDE [ 34 ] или онлайн с использованием итерационной студии. [ 35 ] Визуализация [ 36 ] Позволяет каждому пользователю сравнивать результаты эксперимента визуально, отслеживать графики и генерировать их с помощью интеграции библиотеки.

DVC предлагает несколько вариантов [ 36 ] Для использования визуализации в обычном рабочем процессе:

  • DVC может генерировать HTML -файлы, которые включают интерактивные графики из серии данных в формате JSON , YAML , CSV или TSV
  • DVC может отслеживать файлы изображений, созданные в виде выходов сюжета [ 37 ] Из сценариев обучения/оценки
  • DVClive [ 38 ] Интеграции могут автоматически производить участки во время обучения

Расширение DVC против кода

[ редактировать ]

В 2022 году итерации выпустили бесплатное расширение [ 39 ] Для кода Visual Studio (VS Code) редактор исходного кода , изготовленный Microsoft , который предоставляет пользователям VS кода возможность использовать DVC в своих редакторах с дополнительными функциями пользовательского интерфейса . [ 40 ] [ 41 ]

В 2017 году, [ 42 ] [ 43 ] Первая (бета) версия DVC 0.6 [ 44 ] был публично выпущен (как инструмент простой командной строки). [ 43 ] Это позволило ученым данных отслеживать свои процессы машинного обучения и зависимости от файлов в простой форме команд, подобных git. Это также позволило им превратить существующие процессы машинного обучения в воспроизводимые трубопроводы DVC. DVC 0.6 решил большинство общих проблем, с которыми сталкивались инженеры по машинному обучению и ученые для данных: воспроизводимость экспериментов по машинному обучению, а также управление версиями данных и низкий уровень сотрудничества между командами.

Созданный бывшим ученым Data Microsoft Dmitry Petrov, DVC направлен на интеграцию лучших существующих методов разработки программного обеспечения в операции машинного обучения. [ 45 ]

В 2018 году, [ 46 ] Дмитрий Петров вместе с Иваном Шшеклейном, инженером и предпринимателем, основал iterative.ai, [ 4 ] [ 47 ] Компания MLOPS, которая продолжила развитие DVC. Помимо DVC, iterative.ai также стоит за инструментами с открытым исходным кодом, таким как CML, MLEM и Studio, корпоративная версия инструментов с открытым исходным кодом.

В июне 2020 года, [ 48 ] Команда iterative.ai выпустила DVC 1.0. Новые функции, такие как многоэтапные файлы DVC, запуск кэша, графики, оптимизации передачи данных, отслеживание гиперпараметра и стабильные циклы выпуска, были добавлены в результате обсуждений и вкладов сообщества.

В марте 2021 года, [ 49 ] DVC выпустил DVC 2.0, который представил эксперименты ML (управление экспериментом), модель контрольно -пропускных пунктов и регистрации метрик.

ML Эксперименты: для решения проблемы накладных расходов GIT, когда сотни экспериментов должны проводиться за один день, и каждый эксперимент требует дополнительных команд GIT, DVC 2.0 представил функцию легких экспериментов . Это позволяет своим пользователям автоматически отслеживать эксперименты ML и снимать изменения кода.

Это устранило зависимость от дополнительных услуг [ 50 ] Сохранение версий данных в качестве метаданных в GIT, в отличие от того, чтобы перенести их на внешние базы данных или API. [ 51 ]

ML MODEL CHACKPOINTS В версии версии: новый выпуск также позволяет управлять всеми контрольно -пропускными пунктами с соответствующим кодом и данными.

Регистрация метриков: библиотеки с открытым исходным кодом DVC 2.0 представила новую DVC-Live , которая обеспечит функциональность для отслеживания метрик моделей и организации метрик таким образом, чтобы DVC мог визуализировать с навигацией в истории GIT.

Альтернативные решения для DVC

[ редактировать ]

Есть несколько проектов с открытым исходным кодом, которые предоставляют аналогичные возможности управления версиями данных для DVC, [ 52 ] такие как: Git LFS , Dolt , Nessie и Lakefs . Эти проекты варьируются в соответствии с различными потребностями инженеров и ученых данных, таких как: масштабируемость, поддерживаемые форматы файлов, поддержка в табличных данных и неструктурированные данные, объем поддерживаемых данных и многое другое.

  1. ^ Hewage Nipuni, Meedeniya Dulani (февраль 2022 г.). «Операции машинного обучения: опрос поддержки инструмента MLOPS» . Researchgate . Arxiv : 2202.10169 .
  2. ^ Jump up to: а беременный Баррак Амин, Эган Эллис Э., Адамс Брэм (март 2021 г.). «О коэволюции трубопроводов ML и исходного кода - эмпирическое исследование проектов DVC» . Ieee xplore . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  3. ^ Jump up to: а беременный в дюймовый ИВАНСИК, КРИСТИДЖАН. «Управление версией данных с Python и DVC» . Настоящий питон . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  4. ^ Jump up to: а беременный Виггерс, Кайл. «Mlops Startup iterative.ai nabs 20 миллионов долларов» . VentureBeat . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  5. ^ Jump up to: а беременный «Компания Mlops итерация достигает значительного роста клиентов и компании в 2021 году» . Бизнес -проволока . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  6. ^ Jump up to: а беременный в Холл, Сьюзен (4 февраля 2021 года). «Iterative.ai: инструменты машинного обучения на основе GIT для инженеров ML» . Новый стек . Архивировано из оригинала 5 октября 2022 года . Получено 5 октября 2022 года .
  7. ^ "Что такое DVC?" Полем Руководство MLOPS . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  8. ^ Петров, Дмитрий. «DVC 3 года и 1,0 предварительного выпуска» . Итеративный.ai . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  9. ^ Анадиотис, Джордж. «Упрощение науки о данных с открытым исходным кодом: управление версиями данных и непрерывное машинное обучение» . Zdnet . Архивировано из оригинала 2022-10-05 . Получено 2022-10-05 .
  10. ^ Петров, Дмитрий. «Дорога к аду ИИ начинается с хороших намерений MLOPS» . Новый стек . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  11. ^ Эджаз, Нимра (6 октября 2021 года). «Управление версией данных объяснил» . Crowdbotics . Архивировано из оригинала 7 октября 2022 года . Получено 7 октября 2022 года .
  12. ^ Лардиноис, Фредерик. «Итеративно приносит 20 миллионов долларов за свою платформу MLOPS» . TechCrunch . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  13. ^ «Интервью Aitech с Dmitry Petrov, соучредителем и генеральным директором в iterative.ai» . ИИ Технологический парк . 20 июля 2022 года. Архивировано с оригинала 6 октября 2022 года . Получено 6 октября 2022 года .
  14. ^ «Версии данных для CD4ML - Часть 2» . Ай Сингапур . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  15. ^ Баена, Даниэль (2 марта 2022 г.). «Как построить эффективный рабочий процесс проекта машинного обучения с использованием управления версиями данных (DVC)» . Rappi Tech . Архивировано из оригинала 6 октября 2022 года . Получено 6 октября 2022 года .
  16. ^ «Документация DVC. Поддерживаемые типы хранения» . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  17. ^ Визард, Майкл. «Iterative.ai обновляет платформу Mlops для оптимизации и поддержки облачного обеспечения» . VentureBeat . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  18. ^ Jump up to: а беременный Кулкарни, Амит (17 июня 2021 года). «Отслеживание экспериментов ML с контролем версий данных» . Аналитика Видхья . Архивировано из оригинала 6 октября 2022 года . Получено 6 октября 2022 года .
  19. ^ Jump up to: а беременный в «Введение в контроль версий данных (DVC)» . Кэггл . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  20. ^ Геррапин, Базиль (12 июля 2019 г.). «Использование DVC для создания эффективной системы управления версиями для проектов данных» . Конто Путь . Архивировано из оригинала 6 октября 2022 года . Получено 6 октября 2022 года .
  21. ^ Jump up to: а беременный «Документация DVC. Начните» . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  22. ^ «DVC документация. Данные и модели версий» . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  23. ^ «Документация DVC. Внутренние каталоги и файлы» . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  24. ^ «Документация DVC. Большая оптимизация наборов данных» . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  25. ^ Jump up to: а беременный «Работа с трубопроводами» . Руководство MLOPS . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  26. ^ «Документация DVC. Начните: трубопроводы данных» . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  27. ^ Jump up to: а беременный Идову Самуэль, Струбер Даниэль, Бергер Торстен (2021). «Управление активами в машинном обучении: опрос» . Система данных астрофизики (ADS) . Arxiv : 2102.06919 .
  28. ^ Капур Сайаш, Нараянан Арвинд (2022). «Утечка и кризис воспроизводимости в науке на основе ML» . Researchgate . Arxiv : 2207.07048 . Архивировано из оригинала 2024-06-28 . Получено 2022-10-07 .
  29. ^ "DVC документация. DVC.YAML" . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  30. ^ "DVC Documentation. DVC.Lock File" . dvc.org/doc . Архивировано из оригинала 2022-10-06 . Получено 2022-10-06 .
  31. ^ «DVC Documentation. Обзор экспериментов DVC» . dvc.org/doc . Архивировано из оригинала 2022-10-07 . Получено 2022-10-07 .
  32. ^ «Документация DVC. Упорные эксперименты» . dvc.org/doc .
  33. ^ «Как мы отслеживаем наши эксперименты с данными» . Каперников . 26 января 2022 года. Архивировано с оригинала 6 октября 2022 года . Получено 6 октября 2022 года .
  34. ^ «Расширение DVC для кода Visual Studio» . Визуальная студия. Рынок . Архивировано из оригинала 2022-10-07 . Получено 2022-10-07 .
  35. ^ «Итерационный представлен первой реестр моделей машинного обучения на основе GIT» . Yahoo Finance . Архивировано из оригинала 2022-10-07 . Получено 2022-10-07 .
  36. ^ Jump up to: а беременный «Документация DVC. Начните: визуализация с участками» . dvc.org/doc . Архивировано из оригинала 2022-10-07 . Получено 2022-10-07 .
  37. ^ «Документация DVC. Метрики и выходы участков» . dvc.org/doc . Архивировано из оригинала 2022-10-07 . Получено 2022-10-07 .
  38. ^ «Документация DVC. DVClive с DVC» . dvc.org/doc . Архивировано из оригинала 2022-10-07 . Получено 2022-10-07 .
  39. ^ Николлс, Эмили (14 июня 2022 года). «Итерационный объявляет бесплатное расширение кода Microsoft Visual Studio для ускорения опыта разработки модели ML» . Тфир . Архивировано из оригинала 7 октября 2022 года . Получено 7 октября 2022 года .
  40. ^ Бхартия, Свапнил (28 июня 2022 года). «Расширение DVC от итерации превращается в код в платформу экспериментов ML» . Тфир . Архивировано из оригинала 28 июня 2024 года . Получено 7 октября 2022 года .
  41. ^ Аван, Абид Али. «12 Основные расширения VSCODE для науки о данных» . Kdnuggets . Архивировано из оригинала 2024-06-28 . Получено 2022-10-07 .
  42. ^ «DVC 3 года и 1,0 предварительного выпуска» . Итеративный.ai . 4 мая 2020 года. Архивировано с оригинала 5 октября 2022 года . Получено 5 октября 2022 года .
  43. ^ Jump up to: а беременный «Управление версией данных объяснил» . Crowdbotics . 6 октября 2021 года. Архивировано с оригинала 7 октября 2022 года . Получено 7 октября 2022 года .
  44. ^ Петров, Дмитрий. «Управление версиями данных: итеративное машинное обучение» . Kdnuggets . Архивировано из оригинала 2022-12-02 . Получено 2022-12-02 .
  45. ^ Васкес, Фавио (17 апреля 2019 г.). "Контроль версий данных с DVC. Что говорят авторы?" Полем К науке о данных . Архивировано из оригинала 2 декабря 2022 года . Получено 2 декабря 2022 года .
  46. ^ Смолакс, макс. «Iterative.ai раздает альтернативу открытым исходным кодам AWS SageMaker и инженеру Azure ML» . ИИ бизнес . Архивировано из оригинала 2022-12-02 . Получено 2022-12-02 .
  47. ^ Сингх, свастик (3 июня 2021 года). «Startup iterative с открытым исходным кодом . Vcbay . Архивировано из оригинала 2 декабря 2022 года . Получено 2 декабря 2022 года .
  48. ^ «DVC 1.0 Release: новые функции для MLOP» . Итеративный.ai . 22 июня 2020 года. Архивировано с оригинала 2 декабря 2022 года . Получено 2 декабря 2022 года .
  49. ^ "DVC 2.0 Release" . Итеративный.ai . 3 марта 2021 года. Архивировано с оригинала 2 декабря 2022 года . Получено 2 декабря 2022 года .
  50. ^ «Документация DVC. Управление экспериментом» . dvc.org/doc . Архивировано из оригинала на 2022-10-08 . Получено 2022-10-07 .
  51. ^ «Документация DVC. Связанные технологии» . dvc.org/doc . Архивировано из оригинала 2022-12-02 . Получено 2022-12-02 .
  52. ^ Орр, Эйнат (25 июля 2022 г.). «Управление версиями данных как ваша карта« Убирайся из тюрьмы »-DVC против Git-LFS против Dolt против Lakefs» . Lakefs . Архивировано из оригинала 23 ноября 2022 года . Получено 23 ноября 2022 года .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c2aa9cbbbf9e3b7ae3e362bfcc1c3013__1719584040
URL1:https://arc.ask3.ru/arc/aa/c2/13/c2aa9cbbbf9e3b7ae3e362bfcc1c3013.html
Заголовок, (Title) документа по адресу, URL1:
Data Version Control (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)