optuna/optuna

A hyperparameter optimization framework

解決する課題

Optunaは、機械学習のハイパーパラメータ最適化プロセスを自動化します。モデルの最適なパフォーマンスを達成するための最良の設定(ハイパーパラメータ)を、手動で試行錯誤しながら見つける必要をなくします。

仕組み

Optunaは「define-by-run」APIを採用しており、ユーザーはループや条件文を含む標準的なPython構文を使用して、検索空間を動的に構築できます。最適化は「スタディ」(全体的な目標)と「トライアル」(目的関数の個々の実行)に整理されます。このフレームワークは、最先端のサンプリングアルゴリズムを使用してハイパーパラメータを提案し、有望でないトライアルを早期に打ち切るプルーニング技術を採用しています。

対象ユーザー

さまざまなプラットフォームやスケールでモデルのパフォーマンスを効率的に最適化する必要がある、機械学習の実務者や研究者向けに設計されています。

主な特長

  • Pythonicな検索空間: 静的な設定ではなく、使い慣れたPythonコードでハイパーパラメータを定義できます。
  • 効率的なアルゴリズム: 最適なパラメータの探索を加速する高度なサンプリングとプルーニングを備えています。
  • 簡単な並列化: 最小限のコード変更で数百のワーカーにスケールします。
  • 可視化ツール: プロット関数と、最適化の履歴を監視するためのリアルタイムWebダッシュボードを提供します。
  • Rustuna: 大幅に高速なサンプリングと優れたメモリ効率を実現する、実験的なRustベースの実装です。

関連

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