4장 파운데이션 모델이 여는 로봇의 새로운 가능성
요즘 AI를 말하면 "파운데이션 모델"보다 "생성형 AI(GenAI, Generative AI)"라는 말이 더 익숙합니다. 둘은 사실상 같은 개념입니다. 단 "생성형AI"가 콘텐츠 생산 중심의 마케팅 용어라면, "파운데이션 모델(Foundation Model)"은 기술적/범용적 관점에서 정의된 표현입니다.
즉, 파운데이션 모델은 다양한 하위 작업(Downstream Task)을 수행할 수 있는 범용 모델을 의미하고, 그 중 텍스트/이미지/영상 등을 직접 만들어내는 역할을 하는 부분이 바로 생성형 모델(Generative Model)입니다.
- 식별형 모델 vs 생성형 모델
기존 대부분의 AI모델은 "무엇인지 구분하는" 식별형 모델(Discriminative Model)이었습니다. 예를 들어, "이 이미지는 고양이다/개다"처럼 분류 경계를 배우는 형태입니다.
반면에 생성형 모델(Generative Model)은 데이터의 근본적인 확률 분포(Distribution) 자체를 학습합니다. 즉, "이런 데이터는 어떤 패턴에서 만들어졌는가?"를 이해하고, 그 분포를 따라 새로운 데이터를 직접 생성할 수 있습니다.
결국 생성형 모델은 "구분하는 AI"에서 "창조하는 AI"로의 패러다임 전환을 의미합니다.
가장 대표적인 생성형 모델이 바로 GAN(Generative Adversarial Network)입니다. GAN은 이름 그대로 "서로 경쟁하며 발전하는 두 개의 네트워크"로 구성됩니다.
생성기(Generator): 진짜처럼 보이는 데이터를 만들어내는 역할
판별기(Discriminator): 입력된 데이터가 진짜(실제 데이터)인지 가짜(생성된 데이터)인지 판별
이 두 모델이 적대적(Adversarial)으로 학습하면서 생성기는 점점 더 사실적인 데이터를 만들어내게 됩니다.
쉽게 말하면, "위주지폐범(생성기)"과 "경찰(판별기)"의 경쟁 구조입니다. 위조지폐범은 들키지 않기 위해 더 정교하게 만들고, 경찰은 더 예리하게 잡아내려고 합니다. 그 반복 끝에 진짜와 거의 구별되지 않는 결과가 나옵니다.
- GAN의 작동 구조 요약
1. 생성기(G):
랜덤 노이즈(잠재변수, latent variable)를 입력받음
이를 통해 "그럴듯한" 이미지나 데이터 생성
2. 판별기(D):
입력이 진짜 데이터인지, 생성된 가짜인지 판별
판별 결과를 바탕으로 두 모델 모두 갱신
3. 반복학습(Adversarial Training):
생성기: "판별기를 속이는 방향으로" 학습
판별기: "생성기를 더 잘 구별하도록" 학습
이 과정을 반복하며 두 모델은 함꼐 성장
결과적으로 생성된 데이터는 진짜와 거의 차이가 없어집니다.
- 확장형 GAN: DCGAN과 Conditional GAN
DCGAN (Deep Convolutional GAN): 합성곱 신경망(CNN)을 활용해 이미지 품질을 개선하는 구조입니다. 예를 들어, "침실(Bedroom)"이미지를 완전히 새로 생성할 수 있습니다.
Conditional GAN(조건부 GAN): 단순히 "이미지 생성"이 아니라 무엇을 만들지(label)를 제어할 수 있습니다. 예를 들어, "고양이 사진 생성" vs "개 사진 생성"처럼 입력에 조건 벡터를 추가해 원하는 출력을 유도합니다.
- 스타일변환 GAN: CycleGAN
GAN은 단순히 이미지를 새로 만드는데서 끝나지 않습니다. 이미 존재하는 이미지를 다른 스타일로 변환하는 역할도 합니다. 그 대표적인 모델이 CycleGAN입니다.
예를 들어,
말 → 얼룩말
여름 → 겨울
사진 → 모네화풍
처럼 서로 다른 도메인 간의 이미지를 자연스럽게 바꾸는 작업이 가능합니다.
CycleGAN은 두 가지 변환기를 학습합니다.
말 → 얼룩말
얼룩말 → 말
그리고 "갔다가 다시 돌아왔을 때 원본과 얼마나 일치하는가"를 평가하는 Cycle Consistency Loss를 사용해 변환과정의 일관성을 유지합니다.
- 로봇 분야 응용 예시
GAN 계열 모델은 로봇 비전에서도 유용합니다.
예를 들어,
시뮬레이션 이미지 → 실제 카메라 이미지로 변환
실제 촬영 이미지 → 시뮬레이터 환경 형태로 정규화
이렇게 스타일을 통일하면, 로봇이 현실 환경에서도 안정적으로 인식 및 작동할 수 있습니다.
요약하자면, GAN은 "진짜 같은 데이터를 만들어내는 경쟁 학습 구조"이며, 지금의 생성형 AI 흐름으로써, 이미지생성, 스타일 변환, 합성 데이터 생성의 뿌리라고 할 수 있습니다.
VAE(Variational Autoencoder)는 GAN과 함께 대표적인 딥러닝 기반 생성모델 중 하나로, "확률적으로 데이터를 생성하는 오토인코더(autoencoder)" 구조입니다. VAE는 크게 두 부분으로 구성됩니다.
인코더(Encoder, 추론 모델): 입력 데이터를 잠재 변수(latent variable)로 요약
디코더(Decoder, 생성 모델): 잠재 변수를 바탕으로 데이터를 재구성 또는 생성
즉,
"입력 데이터를 잠재공간으로 요약하고, 그 요약에서 다시 원본 데이터를 복원하는 확률적 구조"
입니다.
- 학습의 핵심: ELBO(Evidence Lower Bound)
VAE는 다음의 ELBO식을 최대화하도록 학습합니다.
쉽게 말하면,
인코더는 데이터를 요약하고 (q_ϕ(z|x))
디코더는 그 요약으로 새 데이터를 복원한다 (p_θ(x|z))
- 잠재공간 (Latent Space)
VAE의 잠재공간은 연속적(Continuous)인 구조를 가집니다. 즉, 잠재 변수 z의 값이 조금 변하면, 출력 이미지나 데이터도 부드럽게 변화합니다. 이 덕분에 VAE는 단순한 '데이터 압축기'가 아니라 '데이터의 구조적 의미를 연속적으로 표현하는 모델'로 작동합니다.
예를 들어, 위 그림의 예시처럼
왼쪽(Frey Face): 얼굴의 표정/각도/조명이 자연스럽게 변화
오른쪽(MNIST 숫자): 숫자 9가 점진적으로 3이나 5로 변형
이건 VAE가 학습한 잠재 표현(latent representation)이 데이터 간의 관계를 연속적인 공간상에서 보존하고 있다는 뜻입니다.
- 학습과정의 주요 개념
1. 인코더 (추론 모델)
입력 x를 받아 잠재 변수 z의 분포 qϕ(z∣x)를 추정
주로 가우시안 분포(정규분포)로 모델링
2. 디코더 (생성 모델)
잠재 변수 z로부터 입력 데이터를 복원하는 확률분포 pθ(x∣z)를 생성
3. KL 발산 (KL Divergence)
qϕ(z∣x)와 사전분포 p(z)의 차이를 측정하는 손실 항
4. 재파라미터라이제이션 트릭 (Reparameterization Trick)
샘플링 과정이 역전파(Backpropagation)를 방해하지 않도록, 평균이 0이고 분산이 1인 가우시안 분포로 변환해 미분 가능하게 만드는 기법
이 트릭 덕분에 VAE는 확률적 샘플링을 포함한 모델임에도 End-to-End학습이 가능합니다.
- 출력 예시 및 응용
VAE는 단순한 이미지 복원뿐만 아니라, 새로운 데이터 생성이나 연속적 변화의 시각화에도 자주 쓰입니다.
Frey Face: 표정/조명/시선이 자연스럽게 변함
MNIST숫자: 숫자형태가 부드럽게 전환됨
이런 특성 덕분에, VAE는 로봇 비전이나 시뮬레이션에서도 센서 데이터의 잠재구조를 학습하거나 복잡한 환경의 연속적 상태 표현(state representation)을 학습하는데 활용됩니다.
- 변형 구조: Conditional VAE(CVAE)
Conditional GAN과 마찬가지로, VAE에서도 생성결과를 제어할 수 있는 확장 구조가 있습니다.
Conditional VAE(CVAE): 잠재변수 z에 라벨(label)이나 속성 벡터(attribute vector)를 함꼐 입력 → "원하는 조건에 맞는 데이터"를 생성 가능
예를 들어,
표정 라벨을 주면 "웃는 얼굴만 생성"
숫자 라벨을 주면 "7만 생성"
같은 방식으로 출력 제어가 가능합니다.
VAE는 데이터를 "요약해서 다시 만들어보는" 확률적 생성형 모델이며, 잠재 공간의 연속적 구조를 학습해 부드럽게 새로운 데이터를 생성할 수 있습니다.
최근 AI 이미지 생성의 주류는 단연 확산 모델(Diffusion Model)입니다. 이 모델은 '확산(diffusion)'이라는 물리현상에서 이름을 따왔습니다.
예를 들어, 컵에 잉크 한 방울을 떨어뜨리면 시간이 지날수록 잉크가 물 전체로 퍼집니다. 확산모델은 이 과정을 데이터에 '노이즈를 점진적으로 추가했다가, 다시 제거하는'형태로 구현합니다.
- 확산 모델의 기본개념
확산 모델은 두 단계로 구성됩니다.
ⓐ 정방향 과정 (Forward Diffusion)
원본 데이터(예: 이미지)에 랜덤 노이즈를 점진적으로 추가
단계가 진행될수록 데이터는 점점 무작위적(Gaussian Noise) 형태로 변함
최종적으로 완전히 랜덤한 노이즈로 변환됨
ⓑ 역확산 과정 (Reverse Diffusion)
완전히 노이즈화된 데이터에서 출발
조금씩 노이즈를 제거하면서 원본 데이터로 복원
이 과정을 학습함으로써, 노이즈로부터 '그럴듯한 데이터'를 생성할 수 있음
요약하자면 확산 모델은 '데이터를 망가뜨리는 법'을 먼저 배우고, 그걸 거꾸로 되돌리는 법을 학습하는 모델입니다.
- 확산 모델의 작동 원리
1. 정방향 과정
입력 이미지에 점진적으로 노이즈를 추가
최종적으로 완전한 랜덤 분포(가우시안 노이즈)에 수렴
2. 역방향 과정
노이즈로부터 역방향으로 진행하며 노이즈를 제거
각 단계에서 이전 상태의 노이즈를 예측하는 모델을 학습
이 구조는 확률적 생성 과정으로 매 단계에서 데이터를 조금식 복원하며 "점진적으로 생성"한다는 점이 핵심입니다.
- 대표모델: Stable Diffusion
가장 잘 알려진 확산 모델은 바로 Stable Diffusion입니다. 텍스트 프롬프트(예: 푸른 하늘을 나는 강아지")를 입력하면 그에 맞는 이미지를 생성합니다. 이 모델은 LAION이라는 대규모 이미지-텍스트 쌍 데이터셋으로 학습되었으며, "프롬프트 기반 이미지 생성"이라는 새로운 패러다임을 열었습니다.
예시 프롬프트 및 결과
"Latent Diffusion" 도로 표지판
"피카츄 스타일의 좀비"
"문어처럼 생긴 의자 수채화"
"햄버거를 먹는 다림쥐 그림"
이처럼 프롬프트(입력문장)을 통해 사용자는 자연어로 창작을 제어할 수 있습니다. 이 구조는 생성형 AI 서비스(Midjourney, DALL-E, Runway 등)의 핵심기반이기도 합니다.
- 확상 모델과 다른 생성 모델의 관계
확산 모델은 구조적으로 VAE(Variational Autoencoder)와도 연관이 있습니다. VAE가 잠재변수(latent variable)를 이용해 확률적 복원을 수행하듯, 확산 모델은 "노이즈의 연속적 제거"를 통해 잠재 공간을 탐색합니다.
즉, "확산모델 = VAE의 연속확률 버전 + 고해상도 복원능력을 강화한 구조" 라고 볼 수 있습니다.
- 로봇분야에서의 응용방법: Diffusion Policy
확산 모델은 이미지 생성뿐만 아니라, 로봇 제어 정책(Policy) 학습에도 적용되고 있습니다. 대표적인 예가 Diffusion Policy입니다.
입력: 로봇의 관찰 상태 (센서, 카메라 등)
출력: 그에 맞는 행동 (action)
학습 과정은 다음과 같습니다.
1. 랜덤한 초기 행동값(노이즈)에서 시작
2. 여러 단계의 "노이즈 제거 과정"을 거치며
3. 주어진 관찰 상태에서 맞는 최적의 행동을 생성
즉, 로봇이 행동을 생성하는 과정을 "노이즈 제거로 점차 정제하는 행동 분포"로 모델링한 것입니다.
이 방식은 연속적인 행동 공간을 다루는데 유리하며, 복잡한 물리환경에서도 안정적으로 동작할 수 있다는 장점이 있습니다.
확산 모델은 '노이즈를 제거하며 데이터를 복원하는 생성형 모델'로, Stable Diffusion처럼 텍스트로 이미지를 만들거나, 로봇의 행동을 연속적으로 학습하는데도 활용됩니다.
플로우 매칭(Flow Matching)은 확산모델 이후 새롭게 주목받는 차세대 생성 모델 접근법입니다. 핵심 아이디어는 '데이터의 분포를 사전 분포(prior distribution)로 부드럽게 변환하는 흐름(flow)을 학습한다'는 점입니다.
- 기본 개념
플로우 매칭은 말 그대로 데이터 분포와 잠재 변수 분포(latent prior) 사이를 잇는 흐름(Flow)을 찾는 과정입니다.
즉,
"어떻게 하면 복잡한 실제 데이터 분포를 정규분포처럼 단순한 형태로 자연스럽게 변환할 수 있을까?"
를 수학적으로 모델링하는 것입니다.
이 과정에서 학습의 목표는 데이터를 사전 분포로 옮기는데 필요한 '수용 비용(Transport Cost)'을 최소화하는 것입니다.
- 작동 원리
1. 데이터 분포(Real Distribution): 우리가 학습시키려는 실제 데이터의 분포
2. 사전 분포(Prior Distribution): 단순한 분포(예: 가우시안)
3. 흐름(Flow): 데이터를 사전분포로 매끄럽게 변환하는 경로
플로우 매칭은 이 흐름을 모델링하며, 각 지점에서의 미세한 변화율(velocity field)을 학습합니다.
학습된 모델은 결국, 데이터를 사전분포로 또는 그 반대로 자연스럽게 매핑(mapping)할 수 있게 됩니다. 이흐름의 품질은 수송 코스트(Transport Cost), 즉, 분포 간 '거리'를 얼마나 짧고 효율적으로 이동했는지로 평가됩니다.
- 직관적으로 보면
확산 모델은 데이터를 노이즈로 바꾸고, 다시 복원하는 과정을 단계적으로 수행합니다. 반면에 플로우 매칭은
"그 과정을 연속적인 미분 방정식 형태로 부드럽게 표현한다"
즉,
확산 모델이 랜덤 확률 과정(Stochastic Process)이라면,
플로우 매칭은 연속적 결정론적 과정(Deterministic Flow)에 가깝습니다.
덕분에 학습 효율이 높고, 추론 속도도 빠릅니다.
- 조건부 플로우 매칭 (Conditional Flow Matching)
플로우 매칭은 텍스트, 프롬프트, 이미지, 센서 데이터 등 특정 조건(Condition)에 따라 생성 방향을 제어할 수도 있습니다. 이를 조건부 플로우 매칭(Conditional Flow Matching)이라고 하며, 예를 들어 다음과 같은 식으로 응용됩니다.
"텍스트 프롬프트에 맞는 이미지 생성"
"로봇의 관찰 상태에 맞는 행동 생성"
즉, 확산 모델의 "노이즈 제거"과정을 더 수학적으로 매끄럽게 표현하는 구조라고 보면 됩니다.
- 로봇 분야에서의 응용
플로우 매칭은 Diffusion Policy와 유사하게, 로봇의 행동제어(Policy Learning)나 강화학습((RL)에도 활용됩니다.
로봇의 관찰 상태 → 플로우 매칭 모델의 입력
모델은 상태에 맞는 "행동 벡터"를 연속적으로 생성
이 과정에서 행동의 변화가 연속적이고 물리적으로 자연스럽게 유지됨
즉,
"확산 모델보다 빠르고, 더 안정적인 행동 생성 모델"로 평가되고 있습니다.
플로우 매칭은 확산 모델의 원리를 연속적 '흐름'으로 확장한 모델로 데이터 분포를 부드럽게 변환하며 빠르고 안정적인 생성이 가능한 차세대 생성 구조입니다.
©2024-2025 MDRULES.dev, Hand-crafted & made with Jaewoo Kim.
이메일문의: jaewoo@mdrules.dev
AI 에이전트 개발, 컨텍스트 엔지니어링 교육 컨설팅, 바이브코딩 강의 문의: https://bit.ly/4kjk5OB