kozistr/pytorch_optimizer
optimizer & lr scheduler & loss function collections in PyTorch
해결하는 문제
PyTorch 사용자들이 반복적인 보일러플레이트 코드를 작성하거나 여러 연구 저장소를 수동으로 통합하지 않고도 다양한 최신 최적화 알고리즘, 학습률 스케줄러, 손실 함수를 실험할 수 있는 통합된 프로덕션 준비형 툴킷을 제공합니다.
작동 방식
이 라이브러리는 옵티마이저, 스케줄러, 손실 함수를 로드하고 생성하기 위한 일관된 API를 제공합니다. 사용자는 클래스를 직접 호출하거나, load_optimizer 함수를 사용하거나, Gradient Centralization 및 Lookahead와 같은 고급 기능을 지원하는 create_optimizer 헬퍼를 통해 옵티마이저를 인스턴스화할 수 있습니다. 또한 PyTorch의 torch.compile을 지원하여 옵티마이저 업데이트를 융합해 성능을 향상시키며, Lion 및 Tiger와 같은 특정 옵티마이저를 위한 전용 컴파일 경로를 제공합니다.
대상 사용자
다양한 학습 방법을 빠르게 실험하고 고급 옵티마이저를 학습 파이프라인에 표준화된 방식으로 통합해야 하는 PyTorch를 사용하는 머신러닝 엔지니어와 연구자.
주요 특징
- 100개 이상의 옵티마이저, 10개 이상의 학습률 스케줄러, 10개 이상의 손실 함수.
- 옵티마이저 업데이트를 자동으로 융합하는
torch.compile지원. bitsandbytes,q-galore-torch,torchao와 같은 생태계 도구와의 통합.- 다양한 최적화 전략 간 전환을 쉽게 해주는 일관된 로더 API.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트