DVC リモートの操作

Machine Learning のための CI/CD

Ravi Bhadauria

Machine Learning Engineer

DVC リモートの理解

  • DVC リモート: データ保存先の場所
  • Git リモートに似ているが、キャッシュデータ用
  • リモート利用のメリット
    • 大きなファイルやディレクトリを同期
    • データストレージを集約または分散
    • ローカルの容量を節約
  • 対応するストレージの種類
    • Amazon S3、GCS、Google Drive
    • SSH、HTTP、ローカルファイルシステム
Machine Learning のための CI/CD

リモートの設定

  • dvc remote add コマンドでリモートを設定
  • AWS の場合
dvc remote add myAWSremote s3://mybucket
  • dvc remote modify でカスタマイズ可能
dvc remote modify myAWSremote connect_timeout 300
  • .dvc/config の変更内容
 ['remote "myAWSremote"']
     url = s3://mybucket
     connect_timeout = 300
Machine Learning のための CI/CD

ローカルリモートとデフォルトリモート

  • ローカルリモートは迅速なプロトタイピングに使用
  • システムディレクトリやネットワーク接続ストレージを使用
dvc remote add mylocalremote /tmp/dvc
  • -d フラグでデフォルトリモートを設定
dvc remote add -d mylocalremote /tmp/dvc
  • デフォルトリモートは .dvc/config の core セクションに割り当てられる
[core]
remote = mylocalremote
Machine Learning のための CI/CD

データのアップロードと取得

  • データを転送するコマンド

    • リモートへプッシュ: dvc push <target>
    • リモートからプル: dvc pull <target>
  • git push や git pull に似ている

    • .dvc は DVC ではなく Git が追跡する
  • 対象は個別ファイル dvc push data.csv でも指定可能
    • またはキャッシュ全体 dvc push
  • -r フラグでデフォルトリモートを上書き
dvc push -r myAWSremote data.csv
Machine Learning のための CI/CD

データ変更の追跡

  • データファイルの内容を変更し、データセットの変更を追加
dvc add /path/to/data/datafile
  • 変更された .dvc ファイルを Git にコミット
git add /path/to/datafile.dvc
git commit /path/to/datafile.dvc -m "Dataset updates"
  • メタデータを Git にプッシュ
git push origin main
  • 変更されたデータファイルをアップロード
dvc push
Machine Learning のための CI/CD

練習しましょう!

Machine Learning のための CI/CD

Preparing Video For Download...