[이론 정리] Generative model

2023. 3. 23. 10:30AI/이론 정리

생성 모델.

 

면적이 256인 이미지를 만든다고 생각해보자. 하나의 픽셀이 다른 픽셀과 모두 연관되어 있다고 한다면 필요한 파라미터의 개수는 $2^{256}-1$개이다. 여기서 알 수 있듯이 모두 연관되어 있다고 가정하게 되면 파라미터의 개수는 너무 많아지게 되고 이는 모델 성능의 저하로 이어지게 된다. 따라서 파라미터의 개수를 줄여야 한다.

 

그렇다면 서로의 픽셀에 하나도 영향을 주지 않는다고 가정해보자. 그렇게 되면 필요한 파라미터의 개수는 256개 즉 픽셀 수만큼만 필요하게 된다. 그러나 서로 연관이 안되어 있다고 하면 생성을 할 수가 없다. 왜냐하면 결국 이미지는 관계에 의해 생성이 되는 시퀀셜 데이터이기 때문이다.

 

이를 보완하기 위해 조건부 독립이 도입되었고 이는 각 픽셀이 오직 그 전 픽셀에만 영향을 받는다고 가정한다. 그렇다면 하나의 픽셀은 자기 자신과 그 전 픽셀에 대해서만 값을 알면 되기 때문에 파라미터의 개수는 $2n-1$만큼이 필요하다. 이를 위해서는 1차원의 시퀀스를 만들어 줘야 한다. 왜냐하면 그 전 픽셀이 현재 픽셀에 영향을 미치기 때문이다. 이 모델이 바로 autoregressive model이다. 이때 확률까지 계산해주는 모델이 NADE이다. 

 

Autoregressive model의 장점은 sampling하기가 쉽고 새로운 입력이 주어졌을 때 결과값의 확률을 구할 수 있고 continuos input으로까지 확장이 가능하다는 점이다. 단점은 시퀀셜 데이터이기 때문에 병렬화를 시킬 수 없어 느리다는 점이다. 

 

Maximum Likelihood Learning을 사용하는 생성 모델

 

MLL을 위해 ERM(Empirical Risk Minimization)을 사용한다. Likelihood를 최대화하기 위해서는 KL-divergence를 최소화해야한다.

 

VAE(Variational Autoencoder)

latent variable model로 posterior distribution과 비슷하게 variational distiribution으로 근사하다. encoder가 variational distribution을 학습한다. ELBO(Evidence Lower Bound)를 최대화하여 좋은 근사를 할 수 있다.

 

GAN(Generative Adversarial Network)

Generator는 Discriminator가 틀리도록 유도하며 Discriminator는 맞추도록 학습한다.

 

Diffusion Model

noise로부터 이미지를 만든다. 시간이 오래 걸리지만 사용하는 이유는 퀄리티가 좋기 때문이다. Forward process는 이미지를 노이즈로 바꾸고 Reverse process는 노이즈를 이미지로 바꾼다. 또한 이미지의 특정 영역에 대해서만 생성이 가능하다.야