atong01/conditional-flow-matching

TorchCFM: a Conditional Flow Matching library

해결하는 문제

TorchCFM은 연속 정규화 흐름(CNF)을 위한 빠르고 시뮬레이션 없는 학습 목표를 제공합니다. CNF와 확산 모델 간의 성능 격차를 메우며, 다양한 데이터 유형에 대한 생성 모델링의 학습 및 추론 속도를 향상시킵니다.

작동 방식

이 라이브러리는 간단한 분포(예: 가우시안)에서 복잡한 데이터 분포로 매핑하는 방법을 학습하는 조건부 흐름 매칭(CFM) 방법을 구현합니다. 여러 손실 함수를 통해 조건부 분포 $q(z)$ 의 선택을 추상화하며, 다음을 포함합니다:

  • ConditionalFlowMatcher: 표준 CFM.
  • ExactOptimalTransportConditionalFlowMatcher: 정확한 최적 운송을 사용하여 동적 OT를 근사.
  • TargetConditionalFlowMatcher: 표준 정규 가우시안에서 데이터로의 흐름을 학습.
  • SchrodingerBridgeConditionalFlowMatcher: 엔트로피 정규화된 OT 계획을 통해 슈뢰딩거 브리지 근사.
  • VariancePreservingConditionalFlowMatcher: 삼각 보간을 사용하여 시간에 걸쳐 분산을 보존.

대상 사용자

연속 정규화 흐름, 최적 운송, 그리고 이미지 생성, 단세포 동역학, 표 형식 데이터에 대한 시뮬레이션 없는 학습에 관심이 있는 생성형 AI 연구자 및 개발자.

주요 특징

  • OT-CFM 및 SF2M를 포함한 여러 CFM 변종을 구현.
  • 이미지 생성(예: MNIST, CIFAR-10, FID 3.5)을 지원.
  • PyTorch, PyTorch Lightning, Hydra와 호환.
  • 2D 튜토리얼 및 이미지 작업용 다양한 예제와 Jupyter 노트북 제공.

관련

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