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 を提供。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト