Search
Duplicate

AI/ GAN Objective

GAN Objective

암시적 모델은 MLE를 사용할 수 없지만, 샘플링 절차를 제공하므로 모델의 샘플만 사용하는 학습 원리를 사용한다. 다음 조건을 만족하는 목적 D(p,q)\mathcal{D}(p^*,q)을 찾을 수 있다.
1.
학습 데이터 분포에 대한 보장 arg minqD(p,q)=p\argmin_q \mathcal{D}(p^*,q) = p^*
2.
데이터와 모델 분포의 샘플을 사용해서만 평가될 수 있음
3.
평가하는데 계산적으로 저렴함
많은 분포 거리와 다이버전스가 다음을 만족하도록 정의되기 때문에 첫 번째 요구를 쉽게 만족한다.
D(p,q)0D(p,q)=0p=q\mathcal{D}(p^*,q) \ge 0\\ \mathcal{D}(p^*,q) = 0 \Leftrightarrow p^* = q
그러나 많은 분포의 거리와 다이버전스는 다른 두 가지 요구를 만족하지 못한다. 그것은 KL Divergence 같이 샘플만 사용해서 평가할 수 없거나, Wasserstein distance와 같이 계산이 까다롭다. 이 도전을 극복하는 주요 접근은 discriminator 또는 critic DD라 부르는 비교 모델을 도입하고 다음과 같은 최적화를 통해 원하는 수량을 근사하는 것이다.
D(p,q)=arg maxDF(D,p,q)\mathcal{D}(p^*,q) = \argmax_D \mathcal{F}(D,p^*,q)
여기서 F\mathcal{F}는 샘플을 통해서만 pp^*qq에 의존하는 함수이다. 논의한 사례의 경우, 모델과 critic은 각각 파라미터 θ\boldsymbol{\theta}ϕ\boldsymbol{\phi}로 파라미터화 한다. 분포나 함수를 최적화하는 대신 파라미터에 대해 최적화한다. critic의 경우 이것은 최적화 문제 arg maxϕF(Dϕ,p,qθ)\argmax_{\boldsymbol{\phi}}\mathcal{F}(D_{\boldsymbol{\phi}},p^*,q_\theta)를 발생시킨다. 모델 파라미터 θ\boldsymbol{\theta}의 경우 정확한 목적 D(p,qθ)\mathcal{D}(p^*,q_\theta)DϕD_{\boldsymbol{\phi}}를 사용하여 제공되는 다루기 용이한 근사로 교체된다.
F(Dϕ,p,qθ)\mathcal{F}(D_{\boldsymbol{\phi}},p^*,q_\theta)를 모델과 unknown 데이터 분포의 샘플만 사용하여 추정할 수 있도록 보장하는 편리한 접근은 두 분포를 기대값에서만 의존하도록 하는 것이다.
F(Dϕ,p,qθ)=Ep(x)f(x,ϕ)+Eqθ(x)g(x,ϕ)\mathcal{F}(D_{\boldsymbol{\phi}},p^*,q_\theta) = \mathbb{E}_{p^*(\bold{x})}f(\bold{x},\boldsymbol{\phi}) + \mathbb{E}_{q_\theta(\bold{x})}g(\bold{x},\boldsymbol{\phi})
여기서 ffggF\mathcal{F}를 정의하는 실수값 함수이다. 암시적 생성 모델의 경우에 샘플링 경로 x=Gθ(z),zq(z)\bold{x} = G_{\boldsymbol{\theta}}(\bold{z}), \bold{z} \sim q(\bold{z})를 사용하도록 다음과 같이 재작성될 수 있다.
F(Dϕ,p,qθ)=Ep(x)f(x,ϕ)+Eq(z)g(Gθ(z),ϕ)\mathcal{F}(D_{\boldsymbol{\phi}},p^*,q_\theta) = \mathbb{E}_{p^*(\bold{x})}f(\bold{x},\boldsymbol{\phi}) + \mathbb{E}_{q(\bold{z})}g(G_{\boldsymbol{\theta}}(\bold{z}),\boldsymbol{\phi})
이것은 몬테 카를로 추정을 사용하여 추정될 수 있다.
F(Dϕ,p,qθ)1Ni=1Nf(x^i,ϕ)+1Mi=1Mg(Gθ(z^i),ϕ)x^ip(x)z^iq(z)\begin{aligned} \mathcal{F}(D_{\boldsymbol{\phi}},p^*,q_\theta) &\approx {1\over N} \sum_{i=1}^N f(\hat{\bold{x}}_i,\boldsymbol{\phi}) + {1\over M}\sum_{i=1}^M g(G_{\boldsymbol{\theta}}(\hat{\bold{z}}_i),\boldsymbol{\phi}) \\ \hat{\bold{x}}_i &\sim p^*(\bold{x}) \\ \hat{\bold{z}}_i &\sim q(\bold{z}) \end{aligned}
두 분포 pp^*qθq_\theta를 비교하는 한 가지 방법은 그들의 밀도 비율 r(x)=p(x)qθ(x)r(\bold{x}) = {p^*(\bold{x}) \over q_\theta(\bold{x})}를 계산하는 것이지만 암시적 모델의 밀도를 평가할 수 없기 때문에 다른 방법을 사용해야 한다. 다행히 밀도 추정을 이항 분류 문제로 변환하는 트릭을 사용하여 다음처럼 작성할 수 있다.
p(x)qθ(x)=D(x)1D(x){p^*(\bold{x}) \over q_\theta(\bold{x})} = {D(\bold{x}) \over 1-D(\bold{x})}
여기서 D(x)D(\bold{x})는 샘플이 pp^*에서 온 것인지 qθq_{\boldsymbol{\theta}}에서 온 것인지를 구분하도록 학습되는 discriminator 또는 critic이다.
파라메트릭 분류에 대해 파라미터 ϕ\boldsymbol{\phi}를 사용하여 판별기 Dϕ(x)[0,1]D_{\boldsymbol{\phi}}(\bold{x}) \in [0,1]을 학습할 수 있다. 확률적 분류에 관한 지식과 통찰을 사용하여 임의의 proper scoring 규칙을 최소화하면 파라미터를 학습할 수 있다. 베르누이 log 손실(또는 이항 교차 엔트로피 손실)에 대해 다음 목적을 얻을 수 있다.
V(qθ,p)=argmaxϕEp(xy)p(y)[ylogDϕ(x)+(1y)log(1Dϕ(x))]=argmaxϕEp(xy=1)p(y=1)logDϕ(x)+Ep(xy=0)p(y=0)log(1Dϕ(x))=argmaxϕ12Ep(x)logDϕ(x)+12Eqθ(x)log(1Dϕ(x))\begin{aligned} V(q_\theta,p^*) &= \arg\max_{\boldsymbol{\phi}}\mathbb{E}_{p(\bold{x}|y)p(y)}[y \log D_{\boldsymbol{\phi}}(\bold{x}) + (1-y)\log (1-D_{\boldsymbol{\phi}}(\bold{x}))] \\ &= \arg\max_{\boldsymbol{\phi}}\mathbb{E}_{p(\bold{x}|y=1)p(y=1)} \log D_{\boldsymbol{\phi}}(\bold{x}) + \mathbb{E}_{p(\bold{x}|y=0)p(y=0)} \log (1-D_{\boldsymbol{\phi}}(\bold{x})) \\ &= \arg\max_{\boldsymbol{\phi}}{1\over2}\mathbb{E}_{p^*(\bold{x})}\log D_{\boldsymbol{\phi}}(\bold{x}) + {1\over2}\mathbb{E}_{q_{\boldsymbol{\theta}}(\bold{x})}\log(1-D_{\boldsymbol{\phi}}(\bold{x})) \end{aligned}
같은 절차를 Brier score나 Exponential loss와 같은 다른 proper scoring 규칙으로 확장할 수 있다.
최적 판별기 DDp(x)p(x)+qθ(x){p^*(\bold{x}) \over p^*(\bold{x}) + q_\theta(\bold{x})}이다. 왜냐하면
p(x)qθ(x)=D(x)1D(x)D(x)=p(x)p(x)+qθ(x){p^*(\bold{x}) \over q_\theta(\bold{x})} = {D^*(\bold{x}) \over 1 - D^*(\bold{x})} \Rightarrow D^*(\bold{x}) = {p^*(\bold{x}) \over p^*(\bold{x}) + q_\theta(\bold{x})}
최적 판별기를 scoring 규칙에 대입하면 목적 VV를 Jensen-Shannon divergence의 최소화로 해석할 수 있음을 보일 수 있다.
V(qθ,p)=12Ep(x)[logp(x)p(x)+qθ(x)]+12Eqθ(x)[log(1p(x)p(x)+qθ(x))]=12Ep(x)[logp(x)p(x)+qθ(x)2+]+12Eqθ(x)[log(qθ(x)p(x)+qθ(x)2)]log2=12DKL(pp+qθ2)+12DKL(qθp+qθ2)log2=JSD(p,qθ)log2\begin{aligned} V^*(q_\theta,p^*) &= {1\over2} \mathbb{E}_{p^*(\bold{x})}\left[\log {p^*(\bold{x}) \over p^*(\bold{x}) + q_\theta(\bold{x})}\right] +{1\over2}\mathbb{E}_{q_{\theta}(\bold{x})}\left[\log \left(1-{p^*(\bold{x})\over p^*(\bold{x}) + q_\theta(\bold{x})}\right)\right] \\ &= {1\over2}\mathbb{E}_{p^*(\bold{x})}\left[\log {p^*(\bold{x}) \over {p^*(\bold{x}) + q_\theta(\bold{x}) \over 2}}+\right] + {1\over2} \mathbb{E}_{q_{\theta}(\bold{x})} \left[\log\left({q_\theta(\bold{x}) \over {p^*(\bold{x}) + q_\theta(\bold{x})\over 2}} \right) \right] -\log 2 \\ &= {1\over2} D_\text{KL}\left(p^* \|{p^* + q_\theta \over 2} \right) + {1\over2} D_\text{KL}\left(q_\theta\|{p^* + q_\theta \over 2} \right) -\log 2 \\ &= \text{JSD}(p^*,q_\theta) - \log 2 \end{aligned}
여기서 JSD는 Jensen-Shannon divergence를 나타낸다.
JSD(p,qθ)=12DKL(pp+qθ2)+12DKL(qθp+qθ2)\text{JSD}(p^*,q_\theta) = {1\over2}D_\text{KL}\left(p^*\|{p^* + q_\theta \over 2} \right) + {1\over2} D_\text{KL}\left(q_\theta\|{p^* + q_\theta \over 2} \right)
이것은 최적의 이항 분류와 분포 다이버전스 사이의 연결고리를 확립한다. 이항 분류를 사용함으로써 샘플만 사용하여 분포 다이버전스를 계산할 수 있었다. 이는 암시적 생성 모델을 학습하는데 필요한 중요한 속성이다. 앞서 표현된 대로, 까다로운 추정 문제 —JSD 다이버전스를 추정하는 최적화 문제— 를 그 발산을 근사할 수 있는 분류기를 어떻게 학습할 것인가로 전환시켰다.
생성 모델의 파라미터 θ\boldsymbol{\theta}를 학습하여 다이버전스를 최소화하기를 원한다.
minθJSD(p,qθ)=minθV(qθ,p)+log2=minθ12Ep(x)logD(x)+12Eqθ(x)log(1D(x))+log2\begin{aligned} \min_{\boldsymbol{\theta}} \text{JSD}(p^*,q_\theta) &= \min_{\boldsymbol{\theta}} V^*(q_\theta,p^*) + \log 2 \\ &= \min_{\boldsymbol{\theta}} {1\over2} \mathbb{E}_{p^*(\bold{x})} \log D^* (\bold{x}) +{1\over 2} \mathbb{E}_{q_\theta(\bold{x})} \log(1-D^*(\bold{x})) + \log 2 \end{aligned}
최적 분류기 DD^*에 접근할 수 없고 VV를 최적화 하여 얻어진 neural 근사 DϕD_{\boldsymbol{\phi}}에만 접근할 수 있기 때문에, min-max 최적화 문제를 발생한다.
minθmaxϕ12Ep(x)[logDϕ(x)]+12Eqθ(x)[log(1Dϕ(x))]\min_{\boldsymbol{\theta}}\max_{\boldsymbol{\phi}} {1\over2}\mathbb{E}_{p^*(\bold{x})}[\log D_{\boldsymbol{\phi}}(\bold{x})] + {1\over2} \mathbb{E}_{q_\theta(\bold{x})}[\log(1-D_{\boldsymbol{\phi}}(\bold{x}))]
이 방정식에서 생성 절차를 교체하여 암시적 생성 모델의 잠재 변수 z\bold{z}의 측면에서 목적을 얻을 수 있다.
minθmaxϕ12Ep(x)[logDϕ(x)]+12Eq(z)[log(1Dϕ(Gθ(z)))]\min_{\boldsymbol{\theta}}\max_{\boldsymbol{\phi}} {1\over2}\mathbb{E}_{p^*(\bold{x})}[\log D_{\boldsymbol{\phi}}(\bold{x})] + {1\over2} \mathbb{E}_{q(\bold{z})}[\log(1-D_{\boldsymbol{\phi}}(G_{\boldsymbol{\theta}}(\bold{z})))]
이것은 원본 GAN 논문에서 제안된 정의를 복구한다. GAN의 핵심 원칙은 판별기(이 경우에 이항 분류기)를 학습하여 모델과 데이터 분포 사이의 거리나 발산을 근사한 다음 이 발산이나 거리의 근사를 최소화하도록 생성 모델을 학습시키는 것이다.
위에 사용된 베르누이 scoring 규칙 외에도 min-max 최적화를 통해 생성 모델을 학습하는데 다른 scoring 규칙이 사용되었다. 판별기 최적성 조건에서 위에 표시된 것과 유사한 인수를 통해 Pearson χ2\chi^2 발산을 최소화하는 것에 해당하는 것으로 볼 수 있는 Brier scoring 규칙은 LS-GAN으로 이어졌다. hinge scoring 규칙이 대중화되었으며, 판별기 최적성 조건에서 total variational 거리를 최소화하는 것에 해당한다.
proper scoring 규칙과 distributional 발산을 연결하면 판별기와 생성기의 용량이 무한한 경우 위의 학습 기준에 대한 수렴 보장을 구성할 수 있다. 분포 발산의 최소화가 실제 데이터 분포이므로 판별기가 최적이고 생성기의 용량이 충분하면 데이터 분포를 학습할 수 있다. 그러나 실제에서 판별기가 최적인 경우가 드물기 때문에 이 가정은 성립하지 않는다.

Other Objectives

GAN에 대해 다양한 목적 함수를 유도할 수 있다. 각 항목에 대한 자세한 내용은 <Probabilistic Machine Learning: Advanced Topics> 참조.
ff-divergence를 이용하여 분포 발산 측정을 직접 측정하는 경우 ff-GAN으로 이어진다.
Integral Probability Metric(IPM)을 이용하면 Wasserstein GAN으로 이어진다.
IPM 대신 Moment Matching을 이용하는 방법도 있다.
Maximum Mean Discrepancy(MMD)를 이용하면 Generative Matching Network(GMN)으로 이어진다.

참고