콘텐츠로 이동
Data Prep
상세

Energy-Based Models (EBM)

데이터의 적합도를 에너지 함수(스칼라 값)로 표현하고, 낮은 에너지 = 높은 확률로 해석하는 모델링 프레임워크


개요

Energy-Based Models(EBM)은 입력 데이터에 스칼라 에너지 값을 할당하는 함수를 학습하는 모델이다. 관측된 데이터에는 낮은 에너지를, 관측되지 않은 데이터에는 높은 에너지를 부여하도록 학습한다. 확률적 생성 모델의 상위 개념으로, GAN, VAE, Diffusion 등 많은 생성 모델을 EBM 관점에서 이해할 수 있다.


이론적 기반

에너지 함수와 확률

Boltzmann 분포를 통해 에너지를 확률로 변환:

p(x) = exp(-E(x)) / Z

Z = integral of exp(-E(x)) dx    (분배 함수, partition function)
기호 의미
E(x) 에너지 함수 (스칼라)
p(x) 데이터 x의 확률
Z 정규화 상수 (분배 함수)

핵심 문제: Z는 일반적으로 계산 불가능(intractable). EBM의 모든 학습 방법은 Z를 우회하거나 근사하는 전략에 기반한다.

EBM vs 다른 생성 모델

모델 확률 모델링 정규화 필요 샘플링 밀도 추정
EBM 비정규화 에너지 Z 계산 불가 MCMC (느림) 비정규화 밀도
VAE 잠재변수 + ELBO 암묵적 잠재 샘플링 (빠름) ELBO 하한
GAN 암묵적 밀도 불필요 생성기 (빠름) 불가
Flow 변환 기반 자동 (Jacobian) 역변환 (빠름) 정확
Diffusion 점진적 노이즈 제거 불필요 반복 탈노이즈 (중간) 근사 가능

학습 방법

1. Contrastive Divergence (CD)

Hinton (2002)이 제안한 RBM 학습의 핵심 알고리즘:

gradient of log p(x) ~ <dE/dtheta>_data - <dE/dtheta>_model

CD-k:
1. 데이터에서 시작하여 k번 MCMC (Gibbs sampling) 실행
2. 양성 단계: 데이터의 에너지 그래디언트 계산
3. 음성 단계: k-step 샘플의 에너지 그래디언트 계산
4. 차이로 파라미터 업데이트
변형 k값 품질 속도
CD-1 1 근사적 빠름
CD-k k>1 개선됨 느림
PCD 연속 체인 더 정확 중간

2. Score Matching

Z 계산 없이 에너지 함수의 그래디언트(score)를 직접 학습:

Score: s(x) = -grad_x E(x) = grad_x log p(x)

Loss = E_data[ ||s_theta(x) - grad_x log p_data(x)||^2 ]
변형 특징 장점
기본 Score Matching Hessian 필요 이론적으로 정확
Denoising Score Matching 노이즈 추가 후 score 학습 계산 효율적
Sliced Score Matching 랜덤 방향 프로젝션 고차원 가능

중요: Diffusion Model은 Denoising Score Matching의 확장이다. 다양한 노이즈 레벨에서 score를 학습하면 diffusion process가 된다.

3. Noise Contrastive Estimation (NCE)

분류 문제로 변환:

"데이터"와 "노이즈"를 구분하는 분류기 학습:

log p(data|positive) = -E(x) - log Z
log p(noise|negative) = log p_noise(x)

이진 분류 학습 → Z가 자동으로 추정됨

4. Adversarial Training (대조 학습)

EBM을 판별기, 별도 생성기를 사용:

1. 생성기: 낮은 에너지 영역의 "가짜" 샘플 생성
2. EBM: 데이터는 낮게, 생성 샘플은 높게 에너지 할당
3. 반복하여 에너지 함수 정제

샘플링 방법

학습된 EBM에서 샘플을 생성하는 것이 핵심 도전:

방법 원리 속도 품질
Langevin Dynamics 그래디언트 + 노이즈로 에너지 하강 느림 높음
HMC 해밀토니안 역학 기반 중간 높음
Gibbs Sampling 조건부 분포 반복 샘플링 느림 변동
Amortized MCMC 생성기로 초기화 + 정제 빠름 중-높음

Langevin Dynamics (SGLD):

x_{t+1} = x_t - (epsilon/2) * grad_x E(x_t) + sqrt(epsilon) * z_t

z_t ~ N(0, I)
epsilon: 스텝 크기

주요 아키텍처

Restricted Boltzmann Machine (RBM)

구성 설명
가시층 (v) 관측 데이터
은닉층 (h) 잠재 특성
연결 가시-은닉 간만 (층 내 연결 없음)
E(v, h) = -b'v - c'h - v'Wh

Deep Energy Model (현대적 EBM)

E_theta(x) = f_theta(x)    -- 딥 네트워크가 스칼라 에너지 출력

f_theta: 임의의 신경망 (CNN, ResNet 등)
출력층: 단일 뉴런 (스칼라)
변형 에너지 네트워크 응용
IGEBM ResNet + SGLD 이미지 생성
JEM 분류기의 로짓 = -E(x,y) 분류 + 생성 동시
EBM-CD ConvNet + Contrastive OOD 탐지

응용 분야

1. Out-of-Distribution (OOD) 탐지

EBM의 가장 자연스러운 응용:

E(x)가 높으면 → 학습 분포 밖 (이상치)
E(x)가 낮으면 → 학습 분포 내 (정상)

장점: 확률 기반 접근 (VAE 등)보다 더 날카로운 경계

2. 분류 + 생성 통합 (JEM)

Joint Energy Model:

p(x, y) = exp(-E(x, y)) / Z

-- 분류: p(y|x) = exp(-E(x,y)) / sum_y' exp(-E(x,y'))
-- 생성: p(x) = sum_y exp(-E(x,y)) / Z
-- OOD: E(x) = -logsumexp_y(-E(x,y))

하나의 모델로 분류, 생성, OOD 탐지를 모두 수행

3. 강화학습

응용 방식
역강화학습 보상 함수를 EBM으로 학습
모델 기반 RL 환경 역학을 EBM으로
목표 조건부 정책 에너지 최소화 = 목표 달성

4. 구조 예측

태스크 에너지 함수 설계
단백질 접힘 E(구조) = 물리적 에너지 항
이미지 복원 E(x) = 복원 손실 + 자연 이미지 prior
텍스트 생성 E(x) = 유창성 + 일관성 + 제약

EBM과 Diffusion의 관계

Diffusion Model ~ 다중 스케일 Denoising Score Matching

1. 각 노이즈 레벨 sigma_t에서 score s(x, sigma_t) 학습
   = -grad_x E_sigma_t(x) 학습과 동치

2. 역확산(Reverse diffusion) = Langevin dynamics의 연속 시간 한계

따라서: Diffusion Model은 시간 조건부 EBM의 특수한 경우
측면 EBM Diffusion
이론 일반적 EBM의 특수 경우
학습 어려움 (Z 문제) 안정적 (MSE 손실)
샘플 품질 변동 높음
밀도 추정 비정규화 SDE로 가능

장점과 한계

장점

장점 설명
유연한 모델링 정규화 불필요, 임의 구조 가능
조합 가능 여러 EBM의 에너지를 합산
OOD 탐지 에너지 스코어로 자연스러운 이상 탐지
통합 프레임워크 분류, 생성, 추론을 하나의 관점으로

한계

한계 완화 방법
느린 샘플링 (MCMC) Amortized MCMC, Diffusion으로 전환
불안정한 학습 Score matching, NCE 활용
분배 함수 Z 비교 기반 학습 (대조학습)
고차원에서 어려움 잠재 공간 EBM
모드 커버리지 다중 체인, 템퍼링

참고

  • LeCun, Y. et al. (2006). "A Tutorial on Energy-Based Learning"
  • Grathwohl, W. et al. (2020). "Your Classifier is Secretly an Energy Based Model" (JEM)
  • Song, Y. & Ermon, S. (2019). "Generative Modeling by Estimating Gradients of the Data Distribution"
  • Du, Y. & Mordatch, I. (2019). "Implicit Generation and Modeling with Energy Based Models"

최종 업데이트: 2026-03-18