포스트

Latent Bridge Matching의 1 NFE는 정말 한 번의 계산일까: 수식, 속도, 한계 해설

Latent Bridge Matching(LBM)의 1 NFE는 학습된 drift network를 한 번 평가한다는 뜻이며, 이미지 인코딩과 디코딩까지 포함한 전체 pipeline이 한 번의 연산이라는 뜻은 아닙니다. 그래도 수십 단계 denoising을 한 번의 latent 이동으로 줄인다는 점은 image-to-image 변환에서 분명한 속도 이점입니다.

LBM 개요

자료는 논문, GitHub, relighting demo에 연결돼 있습니다.

LBM의 1 NFE는 drift network 평가 횟수를 뜻하며 VAE encode, decode와 데이터 이동까지 한 번에 끝난다는 의미가 아닙니다. 실제 이득은 전체 pipeline 지연과 task 품질을 기존 multi-step 방식과 비교해야 확인할 수 있습니다.

1 NFE가 줄이는 것과 남겨 두는 것

일반적인 diffusion 추론은 현재 sample에서 noise를 조금씩 제거하며 network를 여러 번 호출합니다. LBM은 source latent에서 target latent로 가는 방향을 학습해 다음처럼 한 번에 이동합니다.

\[\\hat z_1 = z_0 + v_\\theta(z_0,0)\]

여기서 한 번인 것은 $v_\theta$의 function evaluation입니다. 실제 image-to-image pipeline에는 다음 단계가 남습니다.

1
2
3
4
5
6
7
source image
→ VAE encoder
→ source latent z₀
→ drift network 1회
→ target latent ẑ₁
→ VAE decoder
→ output image

따라서 1 NFE와 한 번의 GPU kernel, 1ms 처리, 실시간 실행은 같은 말이 아닙니다. 입력 해상도, VAE 비용, drift network 크기, memory transfer까지 포함한 end-to-end latency를 측정해야 합니다.

원문은 필요하면 2~4 NFE로 더 정확한 결과를 얻을 수 있다고 설명합니다. 결국 LBM도 무조건 1회를 고집하는 모델이 아니라, 목표 품질과 시간을 보고 step 수를 선택할 수 있는 구조입니다.

source와 target 사이 bridge를 어떻게 학습하나

Bridge Matching은 source 분포 $\pi_0$와 target 분포 $\pi_1$ 사이의 확률적 경로를 만듭니다.

\[x_t=(1-t)x_0+tx_1+ \\sigma\\sqrt{t(1-t)}\\epsilon\]
  • $x_0$: source image
  • $x_1$: 대응하는 target image
  • $t$: 0과 1 사이의 경로 위치
  • $\epsilon$: 표준 정규 noise
  • $\sigma$: noise 강도

첫 두 항은 source와 target의 선형 보간이고 마지막 항은 중간 경로에 무작위성을 더합니다. $\sigma=0$이면 원문 설명상 Flow Matching과 같은 결정적 경로가 됩니다.

LBM bridge 구조

고해상도 pixel 공간에서 직접 경로를 만들지 않고 VAE latent로 옮기는 것이 LBM의 계산 전략입니다.

\[z_0=E(x_0),\\qquad z_1=E(x_1)\] \[z_t=(1-t)z_0+tz_1+ \\sigma\\sqrt{t(1-t)}\\epsilon\]

Pixel에서 latent로 이동

LBM drift 학습

drift network $v_\theta(z_t,t)$는 중간 latent에서 target 방향을 예측하도록 학습됩니다. 기존 글에 나온 loss의 핵심은 예측 방향과 target으로 향하는 방향 사이의 제곱 오차를 줄이는 것입니다.

latent 공간은 pixel보다 압축돼 계산량을 줄일 수 있지만, 압축 과정에서 아주 작은 texture가 사라질 수 있습니다. 속도 이점과 detail 보존은 같은 latent representation에서 생기는 trade-off입니다.

조건부 변환은 무엇을 입력으로 받나

LBM은 drift에 조건 $c$를 추가할 수 있습니다.

\[v_\\theta(z_t,t,c)\]

원문에 제시된 조건은 2D light position map과 색상을 포함한 RGB light map입니다. 구현 개념은 처리한 조건을 latent와 channel 방향으로 붙이는 것입니다.

1
z_conditioned = concatenate([z_t, process(c)])

이를 통해 foreground relighting, shadow 생성, light 위치와 색상 제어를 다룹니다.

Image relighting 결과

Relighting 비교

조건부 입력이 있다고 임의의 자연어 편집까지 가능한 것은 아닙니다. text prompt 조건은 원문에서 향후 연구 방향으로 분류돼 있습니다. 공개 결과로 판단할 수 있는 범위는 학습된 map 조건과 해당 image translation task입니다.

객체 제거, depth, relighting 결과를 어떻게 읽나

LBM은 서로 성격이 다른 작업에 적용됐습니다.

Object removal

mask로 지정한 객체와 shadow를 제거하고 빈 영역을 복원합니다. 원문은 1 NFE LBM이 50회 추론을 쓰는 기존 방법보다 FID, Local FID, fMSE, PSNR, SSIM에서 우수했다고 설명합니다.

LBM 객체 제거

다만 이 글에는 각 수치와 비교 모델별 차이가 없습니다. “모든 metric에서 우수”만으로 얼마나 큰 차이인지, 어떤 객체 크기에서 유지되는지 판단할 수 없으므로 실제 표나 자신의 test set이 필요합니다.

Depth와 surface normal

RGB 입력을 depth 또는 normal map으로 바꾸는 dense prediction에도 같은 translation 틀을 씁니다. 원문은 surface normal에서 최고 평균 순위, 특히 Sintel과 NYUv2에서 좋은 결과를 소개합니다.

LBM 표면 법선

이 결과가 3D reconstruction이나 robot control의 전체 정확도를 바로 보장하지는 않습니다. latent 출력에서 metric depth, normal로 변환한 뒤 task 단위 오차를 확인해야 합니다.

Relighting과 controllable shadow

relighting 학습에서는 synthetic data 비율 약 70%에서 최적 결과가 제시됐습니다. 이는 synthetic lighting의 다양성과 real image의 질감 사이에서 해당 실험의 균형점이 있었다는 뜻입니다. 다른 domain에서도 70%가 최적이라는 법칙은 아닙니다.

제어 가능한 조명

sigma, NFE, pixel loss에서 생기는 trade-off

원문은 세 가지 tuning 결과를 제시합니다.

  • $\sigma=0.005\sim0.05$에서 좋은 성능
  • $\sigma\ge0.2$에서는 과도한 noise로 성능 저하
  • pixel loss 가중치 $\lambda=10$에서 좋은 균형

$\sigma$는 중간 bridge의 다양성과 noise 크기를 조절합니다. 너무 작으면 결정적 경로에 가까워지고, 너무 크면 target 방향을 배우기 어려워집니다.

NFE 효과는 timestep 학습 방식에 따라 다릅니다. discrete timestep 분포에서는 NFE가 timestep 수와 맞을 때 좋고 더 늘리면 오히려 저하될 수 있으며, uniform timestep 분포에서는 NFE 증가와 함께 품질이 계속 좋아지지만 시간도 늘어납니다. “step을 늘리면 항상 좋다”는 규칙이 아닌 이유입니다.

pixel loss는 latent 방향만 맞추는 것과 실제 decoded image의 선명도를 함께 최적화합니다. 그러나 $\lambda=10$ 역시 논문의 실험 설정에서 나온 값이므로 새 task에서는 다시 검증해야 합니다.

빠른 변환이 필요한 경우의 도입 기준

LBM이 잘 맞는 조건은 source-target pair를 만들 수 있고, 같은 종류의 변환을 낮은 latency로 반복해야 하는 경우입니다. 객체 제거, relighting, depth, normal prediction이 논문에서 다룬 예입니다.

반대로 다음 한계는 설계 단계에서 비용으로 잡아야 합니다.

  • 학습에 대응하는 source-target image pair가 필요
  • 복잡한 반사, 굴절, 인과적인 shadow 처리 한계
  • VAE 압축에 따른 미세 texture 손실
  • 일부 task의 synthetic data 의존
  • 고해상도에서의 memory 최적화 필요

실제 비교에서는 1 NFE 숫자만 기록하지 말고 encoder, drift, decoder 시간을 나눠 측정합니다. 1, 2, 4 NFE의 품질과 latency를 같은 입력에서 비교하고, pixel metric뿐 아니라 task metric을 봅니다. paired data를 얻는 비용도 inference 절감과 함께 계산해야 합니다.

기존 글에 적힌 모바일, 의료, 실시간 VFX 활용은 가능한 방향이지 이 글의 수치로 검증된 제품 성능은 아닙니다. LBM의 핵심 성과는 diffusion의 긴 iterative path를 학습된 latent bridge로 압축한 것이며, 그 이점은 자신의 task에서 한 번의 drift가 충분한 품질을 낼 때 비로소 실용성이 됩니다.

함께 읽으면 이해가 이어지는 글

자주 묻는 질문

1 NFE면 전체 연산도 한 번인가요?

아닙니다. 학습된 drift network를 한 번 평가한다는 뜻이며 encoder, decoder와 전후처리 비용은 별도로 남습니다.

LBM은 어떤 데이터가 필요한가요?

Source와 target의 대응을 배우는 설정에서는 paired data의 품질과 정렬이 중요합니다. 데이터 제작 비용도 추론 절감과 함께 계산해야 합니다.

무엇을 비교해야 하나요?

1, 2, 4 NFE의 task 품질, encoder, drift, decoder 시간, peak memory와 paired-data 비용을 기존 방식과 같은 입력에서 봐야 합니다.

THE END / OPSOAI

여기까지 읽었습니다

핵심 장면을 한 번 더 떠올려 보세요. 이해가 남았다면 이 책은 제 역할을 다했습니다.

다른 책 고르기
표지 1

키와 좌우 스와이프를 지원합니다. 읽던 페이지는 이 기기에 저장됩니다.

CONTENTS

이 책의 목차

    7개 장 13 분읽는 시간