생성 모델: Score Matching
ㅁ 생성 모델
ㅇ 정의:
생성 모델은 주어진 데이터 분포를 학습하여 새로운 데이터를 생성할 수 있는 모델을 의미한다. 주로 이미지 생성, 텍스트 생성, 음성 합성 등 다양한 분야에 활용된다.
ㅇ 특징:
– 데이터 분포를 명시적으로 또는 암묵적으로 학습.
– 샘플링 과정을 통해 새로운 데이터를 생성.
– 학습된 데이터의 품질에 따라 생성 데이터의 품질이 좌우됨.
ㅇ 적합한 경우:
– 새로운 데이터 생성이 필요한 경우.
– 데이터 증강, 시뮬레이션, 창의적 콘텐츠 생성.
ㅇ 시험 함정:
– 생성 모델과 판별 모델의 차이를 혼동할 수 있음.
– 생성 모델의 사용 사례를 잘못 이해하거나 일반화할 수 있음.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: 생성 모델은 데이터 분포를 학습하여 새로운 데이터를 생성할 수 있다.
– X: 생성 모델은 데이터 분포를 판별하여 분류 작업을 수행한다.
================================
1. Score Matching
ㅇ 정의:
Score Matching은 확률 밀도 함수의 로그 도함수를 추정하여 데이터 분포를 학습하는 기법이다. 주로 에너지 기반 모델(EBM)에서 사용된다.
ㅇ 특징:
– 데이터의 확률 밀도를 직접 추정하지 않고, 그 로그 도함수(스코어)를 추정.
– 확률 분포의 정규화 상수 계산이 필요하지 않음.
– 노이즈가 추가된 데이터에 대해 학습을 진행할 수 있음.
ㅇ 적합한 경우:
– 정규화 상수를 계산하기 어려운 복잡한 데이터 분포.
– 에너지 기반 모델(EBM) 학습.
ㅇ 시험 함정:
– Score Matching과 Maximum Likelihood Estimation(MLE)을 혼동할 수 있음.
– 로그 도함수와 확률 밀도 함수 자체를 동일시할 수 있음.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: Score Matching은 확률 밀도 함수의 로그 도함수를 추정하는 방법이다.
– X: Score Matching은 확률 밀도 함수 자체를 직접 추정한다.
ㅁ 추가 학습 내용
Score Matching과 Noise-Contrastive Estimation(NCE)의 차이점:
1. 목적:
– Score Matching은 확률 밀도의 점수 함수(로그 밀도의 기울기)를 직접 학습하여 데이터 분포를 모델링하는 데 초점을 맞춥니다.
– NCE는 데이터 분포와 노이즈 분포를 비교하여 확률 밀도를 상대적으로 추정하는 방법입니다. NCE는 데이터와 노이즈 간의 구분(classification)을 학습하는 과정을 통해 밀도를 간접적으로 추정합니다.
2. 접근 방식:
– Score Matching은 밀도의 점수 함수를 최소화하는 방식으로 작동하며, 이 과정에서 데이터의 2차 미분 정보를 사용합니다.
– NCE는 데이터와 노이즈 간의 비교를 통해 상대적 확률을 학습하며, 이를 위해 이진 분류 문제로 변환하여 최적화를 수행합니다.
3. 계산적 차이:
– Score Matching은 2차 미분을 포함하기 때문에 계산적으로 복잡할 수 있습니다.
– NCE는 상대적으로 계산이 단순하며, 샘플링된 노이즈 분포와의 비교를 통해 추정이 이루어집니다.
Score Matching과 Variational Inference의 차이점:
1. 목적:
– Score Matching은 점수 함수(로그 밀도의 기울기)를 학습하여 확률 분포를 직접 모델링합니다.
– Variational Inference는 복잡한 분포를 근사 분포로 대체하여 추론 문제를 해결하는 데 초점을 둡니다.
2. 접근 방식:
– Score Matching은 데이터 분포 자체를 모델링하며, 주어진 데이터 분포의 점수 함수를 최소화합니다.
– Variational Inference는 근사 분포와 실제 분포 간의 차이를 KL 발산으로 측정하고, 이를 최소화하여 근사 분포를 최적화합니다.
3. 활용 범위:
– Score Matching은 주로 비정규화된 확률 밀도 함수(non-normalized density)를 다룰 때 유용합니다.
– Variational Inference는 베이지안 추론에서 복잡한 사후 분포를 근사할 때 주로 사용됩니다.