Latent Space Oddity, VAE 잠재 공간의 직선이 최단 경로가 아닌 이유
두 latent vector 사이를 이동할 때 가장 간단한 방법은 직선을 긋는 것입니다. 생성형 AI에서 interpolation을 설명할 때도 두 점 사이의 값을 선형적으로 섞는 방식이 자주 등장합니다.
하지만 2018년 ICLR에 발표된 Latent Space Oddity: On the Curvature of Deep Generative Models는 여기서 한 가지 문제를 지적했습니다. deep generative model의 decoder가 비선형이라면 latent space에서의 직선거리와 실제 생성 데이터의 변화량이 서로 다를 수 있다는 것입니다.
latent space oddity on the curvature of deep gen에서 가장 먼저 볼 변화
Latent Space가 평평하다고 가정하면 무엇이 문제일까
VAE 같은 생성모델에서는 latent variable z를 decoder에 넣어 데이터 공간의 결과를 생성합니다.
latent에서 두 점이 숫자상 가까워 보인다고 해도 decoder를 통과한 결과가 같은 정도로 가까울 것이라는 보장은 없습니다. decoder가 nonlinear mapping이기 때문입니다.
같은 Latent 거리도 출력에서는 다르게 움직일 수 있다
latent space에서 일정한 크기로 한 걸음 움직였다고 생각해 보겠습니다.
어떤 영역에서는 출력 이미지가 거의 변하지 않을 수 있고, 다른 영역에서는 같은 정도의 latent 변화가 출력에서 훨씬 큰 변화를 일으킬 수 있습니다. 즉 latent 좌표 자체만으로 측정한 Euclidean distance가 생성 결과가 실제로 변화하는 정도를 그대로 나타내지는 못합니다.
논문의 표현을 따라가면 nonlinear generator가 latent space에서 바라보는 input space의 형태를 왜곡시키는 것입니다.

그래서 이 연구는 latent space 자체를 평평한 좌표계로 취급하기보다, generator가 만들어내는 geometry까지 포함해 거리를 계산해야 한다고 봅니다.
Riemannian Metric으로 Latent의 왜곡을 측정한다
연구진이 사용하는 핵심 도구가 Riemannian geometry입니다.
latent space oddity on the curvature of deep gen가 ComfyUI 워크플로우에 미치는 영향
쉽게 말하면 공간의 위치에 따라 거리 측정 방법 자체가 달라질 수 있도록 만드는 접근입니다. 평평한 종이 위에서 두 점의 거리를 재는 것과 굽어진 표면 위에서 거리를 재는 것이 다른 것과 비슷합니다.
기존 방식과 비교해야 할 부분
Decoder가 Latent Space의 Metric을 만든다
latent에서 아주 작은 변화가 발생했을 때 decoder 출력이 얼마나 변하는지를 살펴보면 해당 영역의 local geometry를 정의할 수 있습니다.
따라서 중요한 것은 단순한 latent 좌표 차이가 아니라 다음 관계입니다.
latent에서 이동 → generator를 통과함 → input space에서 변화 발생
generator의 비선형성이 강한 영역에서는 이 대응 관계도 크게 변할 수 있습니다.

논문은 stochastic generator의 경우 이러한 distortion을 stochastic Riemannian metric으로 표현할 수 있음을 제시합니다. 즉 latent space의 geometry를 decoder가 유도하는 구조로 해석하는 것입니다.
Linear Interpolation보다 Geodesic이 중요한 이유
두 latent 사이를 연결할 때 일반적으로 사용하는 방식은 linear interpolation입니다.
두 점 사이의 좌표를 일정 비율로 섞기 때문에 계산하기 쉽습니다. 하지만 공간 자체가 휘어 있다면 좌표상 직선이 실제 geometry에서 가장 자연스러운 경로라는 보장은 없습니다.
성능과 결과 품질에서 확인할 차이
Geodesic은 휘어진 공간의 최단 경로다
워크플로우 구성에서 놓치기 쉬운 부분
Riemannian geometry에서는 공간의 metric을 고려한 최단 경로를 geodesic이라고 합니다.
지구 표면에서 두 도시 사이를 이동할 때 평면 지도 위의 직선을 그대로 따지는 것과 실제 구면 위 최단 경로를 계산하는 것이 다른 것과 비슷합니다.
Latent Space Oddity에서는 generator가 만든 geometry를 반영해 geodesic을 계산하고, 이를 이용한 distance와 interpolation이 단순한 Euclidean 접근보다 개선될 수 있음을 실험적으로 보여줍니다.

따라서 latent interpolation을 볼 때 “두 점 사이를 직선으로 섞으면 가장 자연스럽게 연결된다”고 항상 가정할 필요는 없습니다.
Geometry는 Sampling과 Clustering에도 영향을 준다
이 문제는 interpolation에만 국한되지 않습니다.
거리의 정의가 달라지면 latent space에서 가까운 데이터가 무엇인지 판단하는 방식도 달라집니다. 그 결과 probability distribution, sampling, clustering 같은 작업도 영향을 받을 수 있습니다.
논문에서는 Riemannian metric을 적용했을 때 distances와 interpolants가 개선되고, 이러한 geometry가 latent probability distributions, sampling algorithms, clustering에도 도움이 될 수 있다고 보고했습니다.
또한 geometric analysis를 통해 당시 generator의 variance estimation 문제를 지적하고, 이를 개선하기 위한 generator architecture도 제안했습니다.
실제로 적용할 때 체크할 점
핵심은 latent space를 단순히 숫자가 배치된 평평한 상자로 보는 것보다 generator와 함께 형성되는 geometry로 보는 것입니다.
Stable Diffusion의 LATENT와 바로 같은 이야기는 아니다
ComfyUI 사용자라면 latent라는 단어 때문에 KSampler의 LATENT를 바로 떠올릴 수 있습니다.
하지만 이 논문의 실험 대상은 convolutional VAE와 fully connected VAE입니다. Stable Diffusion이나 ComfyUI workflow의 KSampler 동작을 직접 분석한 논문은 아닙니다.
논문의 구조를 단순화하면 다음과 같습니다.
z → nonlinear generator/decoder → x
그리고 연구가 보는 것은 이 mapping 때문에 z 공간의 geometry가 어떻게 왜곡되는가입니다.
따라서 “ComfyUI의 latent interpolation은 모두 Riemannian geodesic으로 계산해야 한다”는 식으로 바로 확장해서 받아들이면 안 됩니다. 이 논문의 직접적인 메시지는 deep generative model의 latent geometry를 Euclidean space라고 자동으로 가정하는 것이 항상 적절하지 않다는 데 있습니다.
마지막 확인
Latent Space Oddity의 핵심은 latent space에 실제로 눈에 보이는 곡면이 들어 있다는 이야기가 아닙니다. nonlinear generator가 latent의 작은 변화를 서로 다른 크기의 출력 변화로 바꾸기 때문에, latent에서 유효한 거리 구조가 휘어진 공간처럼 나타날 수 있다는 것입니다.
그래서 두 latent 사이의 숫자상 직선거리만 볼 것이 아니라 generator가 유도하는 Riemannian metric과 geodesic을 고려할 수 있습니다. VAE나 다른 생성모델에서 latent interpolation 결과가 왜 단순한 좌표 거리만으로 설명되지 않는지 궁금했다면 이 논문의 출발점을 먼저 확인하면 이해하기 쉽습니다.