kubeflow/katib

Automated Machine Learning on Kubernetes

何を解決するか

Kubeflow Katib は、自動機械学習(AutoML)を自動化するための Kubernetes ネイティブプロジェクトです。機械学習モデルの最適なハイパーパラメータ、ニューラルアーキテクチャ、および早期停止ルールを自動で見つけるプロセスを自動化します。最適なパフォーマンスを得るためにモデルを手動でチューニングする作業を排除します。

動作方法

Katib は Kubernetes 上のコントロールプレーンとして動作し、あらゆる言語で書かれたアプリケーションのハイパーパラメータチューニングが可能な中立的なレイヤーとして機能します。TensorFlow、PyTorch、XGBoost などのさまざまな ML フレームワークと統合でき、Kubernetes のカスタムリソース(Kubeflow Training Operator、Argo Workflows、Tekton Pipelines など)を使用してトレーニングジョブを実行できます。

対象ユーザー

主に、Kubernetes 上でスケーラブルでクラウドネイティブなハイパーパラメータチューニングとアーキテクチャ探索を必要とするデータサイエンティストや ML エンジニア向けです。

主な特徴

  • 広範なアルゴリズム対応: ランダムサーチ、グリッドサーチ、ベイズ最適化、TPE、CMA-ES、HyperBand など、幅広い探索アルゴリズムをサポート。
  • HPO と NAS: ハイパーパラメータチューニング(HPO)、ニューラルアーキテクチャ探索(ENAS、DARTS)、および早期停止(Median Stop)の機能を提供。
  • フレームワーク非依存: あらゆる ML フレームワークや言語で動作可能。既存のツール(Optuna、Hyperopt、Scikit Optimize)を活用。
  • Python SDK: チューニングジョブの作成と管理を簡素化する Python SDK を提供。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト