Skip to main content
QUICK REVIEW

[論文レビュー] Theseus: A Library for Differentiable Nonlinear Optimization

Luis Villaseñor-Pineda, Taosha Fan|arXiv (Cornell University)|Jul 19, 2022
Sparse and Compressive Sensing Techniques被引用数 46
ひとこと要約

Theseusは、ロボティクスとビジョンにおけるエンドツーエンドの構造化学習のために、アプリケーションに依存しないインターフェース、スパースソルバー、バッチ処理、GPU加速、そして暗黙微分を提供する、PyTorchベースの微分可能非線形最小二乗法(DNLS)用のオープンソースライブラリです。

ABSTRACT

We present Theseus, an efficient application-agnostic open source library for differentiable nonlinear least squares (DNLS) optimization built on PyTorch, providing a common framework for end-to-end structured learning in robotics and vision. Existing DNLS implementations are application specific and do not always incorporate many ingredients important for efficiency. Theseus is application-agnostic, as we illustrate with several example applications that are built using the same underlying differentiable components, such as second-order optimizers, standard costs functions, and Lie groups. For efficiency, Theseus incorporates support for sparse solvers, automatic vectorization, batching, GPU acceleration, and gradient computation with implicit differentiation and direct loss minimization. We do extensive performance evaluation in a set of applications, demonstrating significant efficiency gains and better scalability when these features are incorporated. Project page: https://sites.google.com/view/theseus-ai

研究の動機と目的

  • PyTorch上で微分可能な非線形最小二乗法(DNLS)に対するアプリケーションに依存しないインターフェースを提供する。
  • 2次オーダーの最適化手法、標準および学習可能なコスト、微分可能なリーマ群と運動学を統合して、効率的でエンドツーエンドの構造化学習をサポートする。
  • スパース性、バッチ処理、GPU加速を活用して、ロボティクスとビジョンにおけるDNLSの性能とスケーラビリティを向上させる。

提案手法

  • 2次オーダー最適化子(Gauss-Newton、適応減衰付きLevenberg–Marquardt、Dogleg)と非線形最小二乗法目的関数から最適化層を構築するためのインターフェースを提供する。
  • 最適化内で2D/3D姿勢やロボットモデルを扱うための微分可能なリーマ群と微分可能な運動学を提供する。
  • PyTorchを介した自動微分を用いて、微分可能な標準コスト関数とロバスト損失を組み込む。
  • 微分可能なスパース線形ソルバー(CPU CHOLMOD、cuSolverRFベースの cudaLU、BaSpaCho)を実装し、バatchingとGPU実行をサポートする。
  • 内側のDNLS最適化を通じたエンドツーエンドの勾配流れを可能にするために、暗黙微分と直接損失最小化を適用する。
  • アンrolling、TBPTT、暗黙微分、直接損失最小化を含むバックプロパゲーションモードを有効にする。

実験結果

リサーチクエスチョン

  • RQ1DNLSを、ロボティクスとビジョンタスクのためのアプリケーションに依存しないライブラリとして、どのように効率的かつアクセスしやすくできるか?
  • RQ2DNLSにおいてスパースソルバー、バッチ処理、GPU加速を統合する利点は何か、そして異なる後方伝搬モードはどのように比較されるか?
  • RQ3微分可能なリーマ群と微分可能な運動学は、PyTorchベースのDNLSフレームワーク内で効果的にサポートできるか?
  • RQ4Theseusはエンドツーエンド学習設定とさまざまな問題規模において、最先端ソルバ(例:Ceres)と比較してどのように性能を示すか?

主な発見

  • Theseusは、問題間でのバッチ処理とスパースソルバーの使用により、デンスソルバーに対して大幅な効率向上を示す。
  • 大規模またはバッチ処理されたDNLSでは、TheseusはCeresよりかなり高速で、最大のテスト構成で約23倍のスピードアップが報告されている。
  • 暗黙微分による後方微分は、最適化反復回数が増えても計算資源とメモリを一定に維持し、勾配品質の点でアンローリングを上回る。
  • BaSpaCho、バッチ処理対応のスパースCholeskyソルバーは、大規模問題で評価済ソルバーの中で最高の性能を発揮する。
  • 暗黙微分と直接損失最小化の組み合わせは、DNLSアプリケーションにおける堅牢でスケーラブルなエンドツーエンド学習を可能にする。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。