[논문 리뷰] Theseus: A Library for Differentiable Nonlinear Optimization
Theseus는 로봇 공학과 비전에서 엔드투엔드 구조화 학습을 위한 differentiable nonlinear least squares(DNLS)을 위한 응용 분야에 구애받지 않는 PyTorch 기반 오픈 소스 라이브러리입니다.
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에서 differentiable nonlinear least squares (DNLS)에 대한 응용 분야에 구애받지 않는 인터페이스 제공.
- 2차 최적화기, 표준 및 학습 가능 비용, differentiable Lie groups 및 kinematics를 통합하여 효율적이고 엔드-투-엔드 구조화 학습 지원.
- 희소성, 배치 처리, GPU 가속을 활용하여 로봇 공학 및 비전에서 DNLS의 성능과 확장성을 개선.
제안 방법
- 2차 최적화기(Gauss-Newton, Levenberg–Marquardt with adaptive damping, Dogleg) 및 비선형 최소제곱 목적함수로부터 최적화 계층을 구성하는 인터페이스를 제공합니다.
- 최적화 내에서 2D/3D 자세 및 로봇 모델을 다루기 위해 differentiable Lie groups 및 differentiable kinematics를 제공합니다.
- PyTorch를 통한 자동 미분으로 differentiable 표준 비용 함수 및 강건 손실 함수를 포함합니다.
- differentiable sparse linear solvers(CPU CHOLMOD, cuSolverRF-based cudaLU, BaSpaCho) 구현 및 배치 처리 및 GPU 실행 지원.
- 암시적 미분 및 직접 손실 최소화를 적용하여 내부 DNLS 최적화를 통한 엔드-투-엔드 그래디언트 흐름을 가능하게 합니다.
- Unrolling, TBPTT, implicit differentiation, direct loss minimization을 포함한 역전파 모드 지원.
실험 결과
연구 질문
- RQ1DNLS를 로봇 공학 및 비전 작업에 대해 응용 분야에 구애받지 않는 라이브러리로 어떻게 효율적이고 접근 가능하게 만들 수 있을까요?
- RQ2DNLS에서 희소 해석기, 배치 처리 및 GPU 가속의 통합이 어떤 이점을 주며, 서로 다른 역전파 모드 간 차이점은 무엇인가요?
- RQ3 differentiable Lie groups 및 differentiable kinematics를 PyTorch 기반 DNLS 프레임워크에서 효과적으로 지원할 수 있을까요?
- RQ4Theseus는 엔드-투-엔드 학습 설정 및 다양한 문제 규모에서 Ceres와 같은 최첨단 해석기와 비교해 어떻게 성능을 보이나요?
주요 결과
- Theseus는 문제 간 희소 해석기와 배치를 사용하여 Dense 솔버 대비 상당한 효율성 향상을 보여줍니다.
- 대규모 또는 배치된 DNLS에서 Theseus는 Ceres보다 상당히 빠를 수 있으며, 가장 큰 테스트 구성에서 약 23배의 속도 향상이 보고되었습니다.
- 암시적 미분을 통한 역전파는 더 많은 최적화 반복에서도 일정한 계산/메모리를 유지하여 그래디언트 품질에서 언롤링을 능가합니다.
- BaSpaCho, 배치된 희소 Cholesky 해석기, 대규모 문제에서 평가된 해석기 중 최고 성능을 발휘합니다.
- 암시적 미분과 직접 손실 최소화를 결합하면 DNLS 응용에서 강력하고 확장 가능한 엔드-투-엔드 학습이 가능해집니다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.