google-deepmind/xmanager

A platform for managing machine learning experiments

해결하는 문제

XManager은 기계학습 실험의 패키징, 실행, 추적을 간소화합니다. 로컬과 클라우드 간의 다양한 실행 환경을 수동으로 관리하는 부담과, 다양한 컴퓨팅 리소스에서 서로 다른 하이퍼파라미터를 가진 여러 시도를 시작하는 복잡성을 제거합니다.

작동 방식

사용자는 실험의 라이프사이클을 정의하는 Python "런 스크립트"를 작성합니다. 이 과정은 구조화된 워크플로우를 따릅니다:

  1. 실험 컨텍스트: 메타데이터를 추적하기 위해 실험이 생성됩니다.
  2. 실행 가능 사양: 무엇을 실행할지(예: Python 디렉터리, Bazel 타겟, 또는 사전 빌드된 바이너리) 사용자가 정의합니다.
  3. 패키징: XManager은 특정 타겟 환경(예: Vertex AI용 Docker 이미지 빌드)에 맞게 실행 가능 파일을 패키징합니다.
  4. 작업 정의: 사용자는 하이퍼파라미터와 리소스 요구사항(예: GPU 수)을 정의합니다.
  5. 실행: 작업 또는 JobGroup(갱 스케줄링용)을 실험에 추가하고, 로컬 머신, Kubernetes, 또는 Google Cloud의 Vertex AI와 같은 선택된 실행자에서 시작합니다.

대상 사용자

대규모 실험을 수행하고, 하이퍼파라미터 스위프를 수행하며, 로컬 개발 환경과 클라우드 인프라스트럭처 간에 작업을 원활하게 이동시키고자 하는 기계학습 연구자 및 엔지니어.

주요 특징

  • 다중 플랫폼 지원: 로컬, Kubernetes, 또는 Google Cloud Platform(Vertex AI)에서 실험을 시작할 수 있습니다.
  • 유연한 패키징: Python 컨테이너, Bazel 바이너리, 사전 빌드된 이미지 등 다양한 실행 가능 파일 유형을 지원합니다.
  • 하이퍼파라미터 관리: 다양한 인수와 환경 변수를 가진 여러 시도를 쉽게 정의하고 시작할 수 있습니다.
  • 갱 스케줄링: JobGroup을 사용하여 관련된 여러 작업이 동시에 스케줄링되고 종료되도록 보장합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트