본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

Data Version Control

0

Data Version Control(DVC)는 Iterative가 개발한 오픈소스 명령줄 도구로, 머신러닝 프로젝트의 데이터와 모델을 Git과 함께 버전 관리하여 공유 및 재현성을 높입니다.

ML 프로젝트데이터 버전 관리모델 버전 관리버전 관리

소개

Data Version Control(DVC)는 Iterative가 개발한 오픈소스 명령줄 도구로, 머신러닝 프로젝트의 데이터와 모델을 Git과 함께 버전 관리하여 공유 및 재현성을 높입니다. 데이터와 모델을 클라우드 스토리지에 저장하면서도 버전 정보는 Git 저장소에 유지하여, 마치 Git으로 코드를 관리하듯 데이터를 관리할 수 있습니다. 또한 경량 파이프라인과 실험 추적 기능을 제공하여 머신러닝 워크플로우를 효율적으로 개선합니다.

상세정보

데이터 및 모델 버전 관리

DVC는 데이터와 모델 파일을 Git 저장소에 직접 커밋하지 않고, 대신 메타데이터 파일을 커밋하여 버전을 관리합니다. 실제 데이터는 캐시에 저장되며, 원격 스토리지(S3, Azure, Google Cloud 등)와 동기화할 수 있습니다.

경량 파이프라인

DVC 파이프라인은 데이터 전처리, 모델 학습 등 여러 단계를 정의하고, 변경된 단계만 다시 실행하여 효율적으로 반복 작업을 수행할 수 있습니다.

실험 추적 및 비교

DVC는 로컬 Git 저장소에서 실험을 추적하고, 하이퍼파라미터, 메트릭, 플롯 등을 비교할 수 있습니다. 실험 결과를 필터링하고 시각화하여 최적의 모델을 선택할 수 있습니다.

VS Code 확장

VS Code 확장을 통해 GUI 환경에서 실험 추적과 데이터 관리를 할 수 있습니다.

설치 및 시작

DVC는 다양한 방법으로 설치할 수 있습니다. Windows에서는 Chocolatey(choco install dvc) 또는 winget(winget install --id Iterative.DVC --exact)을 사용할 수 있고, macOS에서는 Homebrew(brew install dvc), Linux에서는 Snap(snap install dvc --classic)을 사용할 수 있습니다. Python 환경에서는 pip(pip install dvc)로 설치할 수 있습니다.

설치 후에는 Git 저장소에서 dvc init으로 초기화하고, dvc add로 데이터를 추적하며, dvc remote add로 원격 저장소를 설정할 수 있습니다.

활용 예시

  • 데이터셋과 모델을 Git으로 버전 관리하여 팀원과 공유하고 재현 가능한 실험을 수행합니다.
  • 파이프라인을 정의하여 데이터 전처리부터 모델 학습까지의 과정을 자동화하고, 변경 사항이 있을 때 영향받는 단계만 다시 실행합니다.
  • 여러 실험을 실행하고 메트릭을 비교하여 최적의 하이퍼파라미터를 선택합니다.

지원 환경

DVC는 Windows, macOS, Linux에서 실행되며, Python 3.9 이상이 필요합니다. 원격 스토리지 유형에 따라 추가 플러그인 설치가 필요할 수 있습니다.

버전 및 업데이트

현재 버전은 3.67.1이며, GitHub 릴리스 페이지에서 최신 버전을 확인할 수 있습니다.

라이선스 및 확인 사항

DVC는 Apache-2.0 라이선스로 배포됩니다. 원격 스토리지 사용 시 해당 서비스의 계정과 인증 정보가 필요할 수 있습니다.

시스템 요구사항

Windows, macOS, Linux에서 사용 가능하며, Python 3.9 이상이 필요합니다. 원격 스토리지(S3, Azure, Google Cloud 등)를 사용하려면 해당 플러그인(dvc-s3, dvc-azure 등)을 추가로 설치해야 합니다.