DVC のセットアップと初期化

DVCによるデータバージョニング入門

Ravi Bhadauria

Machine Learning Engineer

インストール

  • DVC は Python パッケージ
    • pip でインストール可能
$ pip install dvc
  • 仮想環境にインストールすること
  • Git がインストール済みであることを確認
DVCによるデータバージョニング入門

インストールの確認

$ dvc version
DVC version: 3.40.1 (pip)

Platform: Python 3.9.16 on macOS-14.2.1-arm64-arm-64bit
Config: Global: /Users/<username>/Library/Application Support/dvc System: /Library/Application Support/dvc
Repo: dvc, git
1 https://dvc.org/doc/command-reference/version
DVCによるデータバージョニング入門

DVC の初期化

  • まず Git を初期化
$ git init
Initialized empty Git repository in /path/to/repo/.git/
  • リポジトリで DVC を初期化
$ dvc init
Initialized DVC repository.

You can now commit the changes to git.
1 https://dvc.org/doc/command-reference/init
DVCによるデータバージョニング入門

DVC の隠しファイル

  • 初期化で作成される内部ファイルは Git で追跡すべき
$ git status
Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
    new file:   .dvc/.gitignore
    new file:   .dvc/config
    new file:   .dvcignore
  • 変更をコミット
$ git commit -m "initialized dvc"
DVCによるデータバージョニング入門

.dvcignore ファイル

  • .gitignore と同様のファイル

    • 同じパターンを使用
    • DVC が無視するファイル/ディレクトリを指定
  • 不要な大量データを追跡しないのに有用

    • DVC 処理の実行時間を短縮
1 https://dvc.org/doc/user-guide/project-structure/dvcignore-files 2 https://git-scm.com/docs/gitignore
DVCによるデータバージョニング入門

# .dvcignore
# 'data' ディレクトリ内のすべてのファイルを無視
data/*

# ただし 'data/data.csv' は無視しない !data/data.csv
# すべての .tmp ファイルを無視 *.tmp
1 https://dvc.org/doc/user-guide/project-structure/dvcignore-files
DVCによるデータバージョニング入門

無視対象の確認

  • dvc check-ignore コマンドを使用
$ dvc check-ignore data/file.txt
data/file.txt
  • 詳細は -d フラグで表示
$ dvc check-ignore -d data/file.txt
.dvcignore:3:data/*    data/file.txt
1 https://dvc.org/doc/command-reference/check-ignore
DVCによるデータバージョニング入門

まとめ

  • pip install dvc で DVC を導入
  • DVC のバージョンやプラットフォームを確認
    • dvc version
  • ワークスペースで DVC を初期化
    • dvc init
    • 先に Git を初期化
  • 除外ファイルは .dvcignore で指定
    • .gitignore と同様の構文
    • 特定ファイルの除外確認
      • dvc check-ignore <filename>
DVCによるデータバージョニング入門

Let's practice!

DVCによるデータバージョニング入門

Preparing Video For Download...