kubeflow/katib

Automated Machine Learning on Kubernetes

해결하는 문제

Kubeflow Katib은 자동 기계학습(AutoML)을 위한 Kubernetes 네이티브 프로젝트로, 기계학습 모델의 최적의 하이퍼파라미터, 신경망 아키텍처, 조기 중단 규칙을 자동으로 찾는 프로세스를 자동화합니다. 최적의 성능을 얻기 위해 모델을 수동으로 튜닝하는 노동을 제거합니다.

작동 방식

Katib은 Kubernetes 상의 컨트롤 플레인으로 작동하며, 어떤 언어로 작성된 애플리케이션에도 하이퍼파라미터 튜닝이 가능한 중립적인 계층으로 작용합니다. TensorFlow, PyTorch, XGBoost 등의 다양한 ML 프레임워크와 통합되며, Kubeflow Training Operator, Argo Workflows, Tekton Pipelines와 같은 Kubernetes 커스텀 리소스를 사용하여 트레이닝 작업을 실행할 수 있습니다.

대상 사용자

주로 Kubernetes에서 확장 가능하고 클라우드 네이티브한 하이퍼파라미터 튜닝 및 아키텍처 탐색이 필요한 데이터 사이언티스트 및 ML 엔지니어를 위한 것입니다.

주요 특징

  • 광범위한 알고리즘 지원: 랜덤 서치, 그리드 서치, 베이지안 최적화, TPE, CMA-ES, HyperBand 등 다양한 탐색 알고리즘을 지원합니다.
  • HPO 및 NAS: 하이퍼파라미터 튜닝(HPO), 신경망 아키텍처 탐색(NAS, ENAS, DARTS), 조기 중단(Median Stop) 기능을 제공합니다.
  • 프레임워크 독립성: 어떤 ML 프레임워크나 언어와도 호환되며, Optuna, Hyperopt, Scikit Optimize와 같은 기존 도구를 활용합니다.
  • Python SDK: 튜닝 작업의 생성 및 관리를 간편하게 하는 Python SDK를 포함합니다.

관련

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