patrick-kidger/optimistix

Nonlinear optimisation (root-finding, least squares, ...) in JAX+Equinox. https://docs.kidger.site/optimistix/

何を解決するか

Optimistix は、非線形問題(根の発見、最小化、不動点、最小二乗法など)を統合的かつモジュール化されたフレームワークで解決するためのライブラリです。JAXエコシステムを活用することで、これらの異なる種類の数学的問題を変換・解決するプロセスを簡素化します。

仕組み

JAXに基づいて構築されており、自動微分(autodiff)、自動並列化、GPU/TPUサポートを活用しています。PyTreesを用いて状態を管理し、Optaxとの相互運用性を提供します。ユーザーは、たとえばBFGSの二次碗とドッグレッグ降下経路、信頼領域更新を組み合わせたモジュール式最適化器を定義できます。また、問題タイプ間を自動的に変換可能で、たとえば根の発見問題を最小二乗問題に変換できます。

対象ユーザー

科学計算および機械学習分野で作業する研究者や開発者向けです。高性能で微分可能な非線形ソルバーが必要な方々に最適です。

特徴

  • 相互運用性のあるソルバー:問題タイプ間を自動的に変換(例:根の発見 → 最小二乗法)。
  • モジュール式最適化器:降下経路と更新ルールのカスタム組み合わせを可能にします。
  • JAXネイティブ:自動微分、GPU/TPU加速、高速コンパイルを完全サポート。
  • Optax統合:DeepMindのOptaxライブラリとシームレスに連携。

関連

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