Что такое ДВК
DVC — это инструмент, который помогает поддерживать контроль версий моделей ML и набора данных. DVC построен поверх Git, что уменьшает разрыв между исходным кодом модели и весами модели.
Как установить ДВК
Мы можем установить DVC с помощью менеджера пакетов Conda.
cmd: conda install -c conda-forge dvc
Как использовать ДВК
Основа DVC состоит из нескольких команд, которые вы можете запускать вместе с git для отслеживания больших файлов, каталогов или файлов моделей ML. Подумайте о «Git для данных».
Во-первых, мы должны инициализировать репозиторий git.
команда: git инициировать
DVC можно настроить в любом репозитории git, просто запустите: DVC init. Это настраивает дерево DVC в репозитории и создает папку .dvc, содержащую файлы конфигурации.
cmd: инициализация dvc
Чтобы начать отслеживать файл или каталог, используйте dvc add.
cmd: dvc добавить модель данных
Здесь данные и модель находятся в двух папках. В папке данных мы храним наборы данных, а в папке модели мы храним веса модели.
DVC хранит информацию о добавленных файлах (или каталоге) в специальных файлах .dvc с именами data.dvc и model.dvc — небольших текстовых файлах с удобочитаемым форматом. Этот файл метаданных является заполнителем для исходных данных и может быть легко изменен с помощью Git, как и исходный код.
Затем вы добавляете все файлы в git, используя следующую команду
cmd: git добавить -A
затем зафиксируйте файлы в git
cmd: git commit -m «первая фиксация»
Между тем исходные данные перечислены в .gitignore.
Хранение и совместное использование
Вы можете загружать файлы данных или моделей с отслеживанием DVC с помощью dvc push, поэтому они безопасно хранятся удаленно. Это также означает, что позже их можно будет получить в других средах с помощью dvc pull. Во-первых, нам нужно настроить удаленное хранилище.
Настройка удаленного хранилища
DVC поддерживает множество типов удаленных хранилищ, включая Amazon S3, облачное хранилище объектов IBM, SSH, Google Drive, хранилище BLOB-объектов Azure и HDFS. Дополнительные сведения и примеры см. в разделе Удаленное добавление dvc.
Создайте пульт:
cmd: dvc remote add -d cos s3://‹bucket-name›
Это добавляет удаленный «cos» с URL-адресом s3, связанным с «bucket-name» в облачном хранилище объектов.
Измените URL-адрес конечной точки, чтобы он соответствовал региону вашего сегмента.
cmd: dvc Remote Modify cos endpointurl https://s3……
Изменить регион по умолчанию для DVC
cmd: dvc Remote Modify cos region имя-региона
Укажите ключи доступа, в частности, ключи HMAC, которые должны быть созданы в IAM и использоваться здесь.
cmd: удаленное изменение dvc, cos access_key_id ‹COS_HMAC_access_key_id›
cmd: удаленное изменение dvc cos secret_access_key ‹COS_HMAC_secret_access_key›
используя описанные выше шаги, вы можете настроить удаленное хранение в облачном хранилище объектов.
Получение: -
Данные и модели с отслеживанием DVC, хранящиеся удаленно, можно при необходимости загрузить в другие копии этого проекта с помощью dvc pull. Обычно мы запускаем его после git clone и git pull
cmd: dvc pull
Внесение изменений: -
Когда вы вносите изменения в файл или каталог, снова запустите dvc add, чтобы отследить последнюю версию:
cmd: dvc добавить данные
Обычно вы также запускаете git commit и dvc push, чтобы сохранить изменения:
cmd: git commit -m «Обновления набора данных»
cmd: dvc push
Переключение между версиями: -
Обычный рабочий процесс заключается в том, чтобы сначала использовать git checkout (для переключения ветки или извлечения версии файла .dvc), а затем запускать dvc checkout для синхронизации данных:
cmd: git checkout ‹…›
cmd: проверка dvc
DVC технически даже не является системой контроля версий! Содержимое файла .dvc определяет версии файла данных. Сам Git обеспечивает контроль версий. DVC, в свою очередь, создает эти файлы .dvc, обновляет их и эффективно синхронизирует данные, отслеживаемые DVC, в рабочей области для их сопоставления.