PythonOT/POT
POT : Python Optimal Transport
何を解決するか
POT (Python Optimal Transport) は、最適輸送 (OT) に関連する最適化問題の包括的なソルバー群を提供します。確率分布間の距離とマッピングを効率的に計算する課題に対処し、信号処理、画像処理、機械学習タスクにおいて不可欠です。
動作方法
このライブラリは、正確な線形計画法(例:ネットワークシンプレックスソルバー)から正則化されたバージョン(例:エントロピー正則化のSinkhorn Knopp)まで、幅広いOTソルバーを実装しています。Gromov-Wasserstein距離(異なる空間内の分布を比較するため)、質量が異なる分布向けの非平衡および部分的OT、高次元データ向けのスライス Wasserstein距離など、さまざまなOT定式化をサポートしています。柔軟性とパフォーマンスを確保するため、PyTorch、JAX、TensorFlow、NumPy、CuPyなどの複数のバックエンドと統合されています。
対象ユーザー
機械学習、信号処理、画像処理の研究者および実務家で、分布間の距離を測定したり、ドメイン適応や部分空間学習を実行したい方々に最適です。
特徴
- 多様なソルバー群: 精確な線形OT、エントロピーおよび二次正則化OT、Gromov-Wassersteinのバリエーションを含む。
- ML統合: ドメイン適応、マッピング推定、Graph Neural Network (GNN) レイヤー向けの専用ソルバーを提供。
- バリセンタ計算: 固定および自由なサポートに対する Wasserstein および GW バリセンタをサポート。
- マルチバックエンド対応: PyTorch、JAX、TensorFlow、NumPy、CuPy 配列と互換性があり、ディープラーニングパイプラインへのシームレスな統合を可能にします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト