syne-tune/syne-tune

Large scale and asynchronous Hyperparameter and Architecture Optimization at your fingertips.

해결하는 문제

Syne Tune은 기계학습 모델을 위한 대규모 하이퍼파라미터 최적화(HPO)의 과제를 해결합니다. 모델의 성능을 극대화하기 위해 최적의 설정(하이퍼파라미터)을 효율적으로 찾는 프레임워크를 제공하며, 로컬 머신 또는 SLURM 클러스터에서 분산 실행을 지원하여 계산 비용이 큰 튜닝 작업을 처리할 수 있습니다.

작동 방식

이 라이브러리는 하이퍼파라미터의 탐색 공간을 정의하고, 스케줄러를 사용하여 평가할 구성(구성)을 제안함으로써 작동합니다. 주로 두 가지 주요 상호작용 패턴을 지원합니다:

  • 실행 기반 튜닝: 라이브러리가 트레이닝 스크립트를 별도의 프로세스로 관리하고, Reporter 객체를 통해 메트릭을 튜너로 보고합니다.
  • Ask/Tell 인터페이스: 사용자는 스케줄러와 직접 상호작용하여 구성(ask)을 얻고 결과를 제공(tell)할 수 있습니다. 이는 Jupyter 노트북이나 커스텀 트레이닝 루프와 같은 환경에서 유용합니다.

다중 페리디티 최적화, 다중 목적 최적화, 전이 학습, 인구 기반 학습과 같은 최신 HPO 방법을 구현하고 있습니다.

대상 사용자

Hugging Face 트랜스포머를 사용하거나 Optuna와 같은 도구와 통합하는 복잡한 모델에 대해 대규모이고 재현 가능한 하이퍼파라미터 튜닝이 필요한 머신러닝 엔지니어 및 연구자.

주요 특징

  • 분산 실행: 로컬 또는 SLURM 클러스터에서 실험을 실행할 수 있습니다.
  • 다양한 HPO 방법: 다중 페리디티, 다중 목적, 인구 기반 학습을 지원합니다.
  • 시뮬레이션 도구: 효율적인 HPO 시뮬레이션을 위한 블랙박스(서rogate 및 테이블 기반 벤치마크) 모음이 포함되어 있습니다.
  • 유연한 통합: Ask/Tell 인터페이스와 OptunaHub를 통한 Optuna용 샘플러를 제공합니다.

관련

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