astroautomata/PySR

High-Performance Symbolic Regression in Python and Julia

何を解決するか

PySRは、データセットに適合する解釈可能な解析式を見つける問題を解決します。標準的な機械学習モデルが「ブラックボックス」として機能するのに対し、PySRは記号回帰を実行して、特定の目的関数を最適化する実際の数学的式を発見します。

動作方法

PySRは、Juliaで書かれた高性能な検索エンジン(SymbolicRegression.jl)をPythonインターフェースからアクセスします。何十万もの突然変異と評価を実行することで、記号式を探索します。また、「記号的蒸留(Symbolic Distillation)」にも使用でき、複雑なニューラルネットワークをより単純な解析式に変換し、ネットワークの振る舞いを解釈可能にします。

対象ユーザー

低次元のデータセットを扱っている、または深層ニューラルネットワークの解釈を求める研究者やデータサイエンティスト向けに設計されています。明示的な数学的式が必要な場合に最適です。

特徴

  • 高性能: 多スレッドのJuliaバックエンドにより、高速かつカスタマイズ可能な設計です。
  • 柔軟な演算子: 特定の複雑さ制約付きでカスタムの二項演算子および単項演算子をサポートします。
  • 相互運用性: 学習された式をSymPy、JAX、PyTorchなど、複数の形式にエクスポートできます。
  • scikit-learnスタイル: Pythonワークフローへの簡単な統合を可能にする、馴染み深い PySRRegressor インターフェースを提供します。

関連

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