🧐  preview: 

∙ Generative Modeling?

주어진 dataset과 유사한 새로운 data를 생성하도록 모델을 훈련하는 기계학습의 한 분야.

train data를 생성모델로 train → random noise로 Sampling → sample 생성.
(cf. sample: data point 하나를 의미하며 각 sample은 많은 feature로 구성.)

생성모델은 deterministic이 아닌, stochastic해야한다.
즉, 매번 동일한 값을 출력하는 것이 아닌, 다양한 출력결과를 sampling 할 수 있어야한다.
p(x)를 추정(estimate)
생성모델링 목표: sample x를 관측할 확률을 모델링하는 것.​
이때, 생성모델을 훈련해 이 모델에서 sampling하여 원본 train dataset에 속할 가능성이 높은 image를 생성하는 것이 목표이다.



∙ Discriminative Modeling?

Generative Modeling의 반대개념.
sample과 label로 판별모델로 train predict
p(y|x)를 추정(estimate)
판별모델링 목표: sample x가 주어지면 label y의 확률을 모델링하는 것.​




∙ 생성모델링 Framework

∙ sample dataset X를 가지고

∙ sample이 알지 못하는 어떤 p_data분포로 생성되었다 가정.

∙ p_data를 흉내내는 생성모델 p_model을 만들자.
이를위해 p_model에서 sampling해 p_data에서 추출한 것 같은 sample을 생성.

∴ p_model의 ideal한 속성:
  - 정확도: 
    생성된 sample의 p_model이 높으면 p_data에서 추출한 것 같아야함.
  
  - 생성: 
    p_model에서 새로운 sample이 쉽게 sampling가능해야함.
  
  - 표현: 
    data의 다양한 high-level feature가 p_model로 어떻게 표현되는지 이해가능해야함.




∙ Representation Learning

"고차원 data의 표현(representation)"을 배운다는 것은 무슨 의미일까?
고차원 표본공간을 직접모델링❌
저차원의 잠재공간을 이용 → trainset의 각 sample을 표현 → 원본 공간의 point에 mapping
latent space의 각 point = 어떤 고차원 Image에 대한 표현.

즉, 수학적으로 Encoder-Decoder기법은 data가 놓여있는 고차원 비선형 manifold를 sampling가능한 단순한 Latent space로 변환한다.
cf) Manifold는 local로는 저차원의 euclidean distance로 볼 수 있는 고차원공간을 의미.

 


🔔 핵심 확률이론

∙ 표본공간(sample space): sample x가 갖는 모든 값의 집합.

∙ 확률밀도함수 p(x): point x를 0과 1사이 숫자로 mapping하는 함수
표본공간에 있는 모든 point에 대해 p(x) 적분 시, 1이 되면 잘 정의된 확률분포.
또한, pdata(x)는 하나이지만 pmodel(x)는 무수히 많이 존재.


∙ 모수 모델링(parametric modeling): 안정적인 pmodel(x) 찾기위한 기법.
유한개의 parameter θ를 사용해 기술가능한 밀도함수 pθ(x)의 한 종류.

parameter집합 θ의 likelihood함수: 𝐿(θ|x) = pθ(x)= x∈X pθ(x)
x가 주어졌을 때, θ의 타당성을 측정하는 함수
cf) Log Likelihood: 𝑙(θ|X)=∑x∈Xlog pθ(x)
이때, 모수모델링의 관심은 dataset X가 관측될 가능도를 최대화하는 parameter θ̂의 최적값을 찾는것.

∙MLE(Maximum Likelihood Estimation): θ̂ 추정 기법. θ̂ = argmaxx 𝑙(θ|x)
신경망은 보통 손실함수를 최소화
= NLL 최소화하는 parameter집합을 찾는 것
즉,  θ̂ = argminθ(- 𝑙(θ|x)) = argminθ(-𝑙ogpθ(X)

다만, 일반 고차원문제에서 pθ(X)를 직접 계산하긴 어렵기에
생성모델마다 다른방법으로 이를 해결한다.

 

 

 

 

 

 

 

 

 

 


생성모델 분류.

prev.

생성모델은 밀도함수 pθ(x)를 모델링하는 방식이 조금씩 다르다.
∙ 방식 ①: 명시적으로 밀도함수 모델링. (다만 밀도함수를 쉽게 다루기 위해=계산가능하도록 모델을 제약)
  -ex) VAE, Energy-based, Diffusion

 방식 ②: 다루기 쉬운 밀도함수의 근사치를 명시적으로 모델링.
  -ex) AR, Normalizing Flow

 방식 ③: Data를 직접생성하는 확률적과정으로 밀도함수를 암묵적으로 모델링
  -ex) GAN

Implicit Density model: 확률밀도 추정이 목적이 아니라 "data를 직접 생성하는 확률적 과정 생성"이 목적.

Emplicit Density model:
 - (다루기 쉬운) 밀도함수를 직접최적화하는 모델: 모델구조에 제약, 밀도함수가 쉽게 계산됨.
 - 밀도함수의 근사치로 최적화하는 모델: VAE, Energy-base, Diffusion

'Gain Study > Generation' 카테고리의 다른 글

[G]Part 2-5. Energy-based Model  (0) 2024.01.29
[G]Part 2-4. Normalizing Flows  (2) 2024.01.29
[G]Part 2-3. Auto Regressive Models  (0) 2024.01.26
[G]Part 2-2. GAN  (0) 2024.01.26
[G]Part 2-1. VAE  (2) 2024.01.25

+ Recent posts