PythonOT/POT

POT : Python Optimal Transport

해결하는 문제

이 라이브러리는 최적 운송 (OT) 문제를 위한 포괄적인 솔버 제품군을 제공합니다. OT는 확률 분포 간의 거리를 측정하는 데 사용되는 수학적 프레임워크로, 머신러닝에서 도메인 적응, 데이터셋 비교, 생성 모델 학습과 같은 작업에 매우 유용합니다.

작동 방식

정확한 선형 계획법 솔버(Earth Mover's Distance 등)부터 더 빠른 정규화 근사치(Sinkhorn 알고리즘 등)에 이르기까지 광범위한 알고리즘을 구현합니다. 이 라이브러리는 하드웨어에 구애받지 않도록 설계되었으며, NumPy, PyTorch, JAX, TensorFlow 및 CuPy와 원활하게 통합되는 백엔드를 제공하여 CPU와 GPU 모두에서 계산을 수행할 수 있습니다.

대상 사용자

신호 처리, 컴퓨터 비전 또는 딥러닝 분야에서 연구하거나 Wasserstein 거리 또는 OT 기반 손실 함수를 모델에 통합해야 하는 머신러닝 엔지니어를 위해 설계되었습니다.

주요 특징

  • 방대한 OT 솔버 컬렉션: Gromov-Wasserstein, Fused Gromov-Wasserstein, 비균형 OT 및 부분 OT를 포함합니다.
  • 다중 백엔드 지원: PyTorch, JAX, TensorFlow 및 NumPy 배열과 기본적으로 호환됩니다.
  • ML 준비 완료: 도메인 적응, Wasserstein 중심점 및 그래프 신경망 (GNN) 레이어를 위한 사전 구축된 모듈을 제공합니다.
  • 성능 최적화: 대규모 데이터셋을 위한 안정화된 Sinkhorn 구현 및 확률적 솔버가 포함되어 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트