2020. 12. 21. 01:46ㆍDeep Learning/Paper Review

Single-Image Super-Resolution(SISR)은 저해상도(Low-Resolution, LR)의 이미지를 입력으로 받아 고해상도(High-Resolution, HR)의 이미지로 복원하는 것을 목표로 하는 기술입니다. 이때 LR 이미지와 HR 이미지 사이의 관계는 일대다 관계입니다. 서로 다른 이미지라도 다운스케일링을 통해 같은 이미지가 되는 경우가 생기기 때문입니다. 이러한 특성 때문에 SISR은 여러 개의 미지수를 포함하는 하나의 방정식을 푸는 것처럼 가능한 답이 여러 개가 나올 수 있는 ill-posed problem으로 분류됩니다.
SISR은 고해상도 이미지를 필요로 하는 곳이라면 어디든 활용될 수 있습니다. 이번 포스트에서는 그 중에서 얼굴에 대한 SISR에 대해 집중적으로 다뤄볼 예정입니다. 이 분야는 특별히 face hallucination이라고도 불리는데, 드라마나 영화에서 카메라 속 작은 얼굴을 확대하고 복원해 신원을 확인하는 장면으로 많이들 익숙할 바로 그 기술입니다.
SISR 연구에도 딥러닝이 적용되기 시작한 것은 2015년에 발표된 SRCNN1이라는 논문의 등장 이후입니다. 이를 위해선 주로 LR 이미지로부터 복원된 SR 이미지와 원본 HR 이미지 사이의 픽셀 단위 평균 거리(pixel-wise average distance)를 최소화하는 방향으로 모델을 학습시키는 방식이 사용됐습니다. 이를 위해선 입력되는 LR 이미지와 그에 해당하는 ground truth HR 이미지로 이루어진 짝이 반드시 필요하기 때문에, 딥러닝 기반의 SISR 모델들은 거의 대부분이 지도 학습(supervised learning) 기반이었습니다.
하지만 이러한 방식은 여러 단점이 존재했습니다. 우선 이 방식은 작은 영역에서 픽셀값이 크게 변하는(분산이 큰) 영역, 예를 들어서 디테일한 질감이나 사물의 모서리와 같은 부분을 복원하는데 있어서 취약하기 때문에 이러한 부분들이 뭉개져서 보였을 뿐더러, 그만큼 결과물이 인위적으로 만들어진 티가 강하게 났습니다. 또한 복원된 이미지를 다시 다운스케일링 했을 때 입력된 이미지와 동떨어진 결과가 나온다는 점에서 제대로 된 복원이 이루어졌다고 말하기도 힘들었습니다.
이번 포스트에서는 2020년 CVPR에서 소개된 논문인 PULSE: Self-Supervised Photo Upsampling via Latent Space Exploration of Generative Models에 대해 살펴보면서 이 논문에서 제안하는 새로운 모델이 기존에 있던 이러한 문제점들을 어떻게 해결하였는지에 대해 이야기해보도록 하겠습니다.
Introduction

이 논문의 저자들은 입력으로 받은 LR 이미지를 그에 대응하는 HR 이미지로 출력하는 모델을 학습시키는 기존의 틀을 깨고 새로운 방식으로 SISR 문제를 해결하려 했습니다. 무려 입력 LR 이미지로부터 그에 해당하는 HR 이미지를 모델의 학습 없이 바로 탐색하는 방식입니다. 마치 암호를 해독하기 위해 기존에 알고 있는 여러 개의 암호문-평문 짝을 사용해 암호 체계를 분석하기보다 정답이 되는 평문 자체를 한 번에 찾는다는 것과 같이 들립니다. 이게 과연 가능한 방법일까요?
이를 위해서는 우선 진짜같은 이미지를 만들도록 학습된 GAN(Generative Adversarial Network) 기반의 생성 모델이 필요합니다. 이 모델은 일정 길이의 벡터를 입력으로 받은 뒤 이를 일정 크기의 이미지로 변환하여 출력시키는 매핑 함수와도 같은 역할을 합니다. 여기서 입력 벡터들은 잠재 벡터(latent vector), 그리고 잠재 벡터들이 존재하는 공간을 잠재 공간(latent space)이라고 부르기로 합니다. 여기서 잠재 벡터와 그에 해당하는 이미지는 일대일 대응이기 때문에 잠재 벡터를 탐색하는 건 이미지를 탐색하는 것과 같습니다.

저자들은 실험에 쓰일 생성 모델로 StyleGAN2을 채용했습니다. 이 모델은 512차원의 잠재 벡터를 입력으로 받고 18개의 층으로 구성된 CNN(Convolutional Neural Networks)을 거쳐 1024$\times$1024 해상도의 이미지를 출력하는 구조입니다. 고해상도의 얼굴 이미지로 미리 학습된 StyleGAN이 만들어내는 얼굴 이미지의 특성이 굉장히 다양하고, 그만큼 잠재 공간이 풍성하다는 장점 때문에 이 모델이 채택됐다고 합니다.
저자들은 StyleGAN을 이용해 다음과 같은 조건을 만족하는 이미지에 해당하는 잠재 벡터를 탐색하는 방법을 제시합니다.
-
자연스럽고 실제와 같은 이미지일 것(lies on the natural image manifold)
-
다운스케일링 후 이미지가 기존의 LR 이미지로 복원될 것(downsamples correctly to the original low-resolution image)
이 조건들을 모두 만족한다면 기존의 LR 이미지에 대한 SR 결과물이 될 수 있다는 것이 이 논문의 핵심 아이디어입니다. 눈치 채셨겠지만 이 조건들을 만족하는 이미지를 찾을 수만 있다면 앞서 말씀드린 기존의 지도 학습 기반 모델들이 가지고 있던 두 가지 문제점을 각각 해결할 수 있습니다. 종합적으로 저자들은 이 논문이 다음과 같은 contribution을 가지고 있다고 주장합니다.
-
기존의 SISR 모델들이 가지고 있던 단점을 극복하는 새로운 접근법을 제시함
-
생성 모델의 잠재 공간 탐색을 토안 새로운 접근법은 추가적인 학습을 필요로 하지 않음
-
Gaussian prior를 활용해 잠재 공간을 효율적으로 탐색하는 새로운 방법을 제시함
Method
LR 이미지 $I_{LR} \in \mathbb{R}^{m \times n}$에 대해 SISR 모델을 매핑 함수 $SR: \mathbb{R}^{m \times n} \rightarrow \mathbb{R}^{M \times N}$로 표현한다면, 우리는 SISR이 이루어지는 과정을 다음과 같은 함수식의 형태로 나타낼 수 있습니다.
$$I_{SR} = SR \left( I_{LR} \right)$$
기존 방식의 SISR 모델들은 앞서 말했듯 ground truth HR 이미지 $I_{HR} \in \mathbb{R}^{M \times N}$에 대해 다음과 같이 $l^p$ norm을 이용하여 픽셀 단위 평균 거리를 계산해 이를 최소화하는 방향으로 학습을 진행했습니다.
$$L = \lVert I_{SR} - I_{HR} \rVert_p^p$$

이를 이용한 새로운 손실 함수를 정의하기에 앞서, 우선 저자들이 제시한 조건을 만족하는 이미지들이 포함되는 잠재 공간 상의 영역(manifold)에 대해 생각해봅시다. 먼저 첫 번째 조건을 만족하는, 즉 자연스럽고 실제와 같은 이미지들의 영역을 $\mathcal{M}$이라고 합시다. 마찬가지로 다운스케일링을 통해 원래의 이미지 $I_{LR}$로 돌아갈 수 있는 이미지의 영역을 $\mathcal{R}$이라고 합시다. 잠재 벡터와 생성된 이미지는 일대일 대응이면서 잠재 공간은 연속적이기 때문에, 두 영역 $\mathcal{M}$과 $\mathcal{R}$은 무한히 많은 이미지를 포함하게 됩니다. $\mathcal{M} \cap \mathcal{R}$ 역시 마찬가지일 것이고, 저자들이 제시한 두 가지 조건을 모두 만족하는 이미지는 여기에 포함되어 있을 것입니다. 연속적인 영역인 $\mathcal{M} \cap \mathcal{R}$에 있는 이미지들에 대한 픽셀 단위 평균 거리는 다음과 같은 적분식으로 계산할 수 있습니다.
$$\int_{\mathcal{M} \cap \mathcal{R}} \lVert I_{HR} - I_{SR} \rVert_p^p dP(I_{HR})$$
이 때 $P(\cdot)$는 주어진 영역에 포함된 어떤 이미지에 대한 확률 분포를 나타냅니다. 즉, 이 적분식은 주어진 두 가지 조건을 모두 만족하는 $I_{HR}$들과 $I_{SR}$ 사이의 $l_p$ 거리의 가중합으로 볼 수 있습니다. 또한 $I_{SR}$이 $\mathcal{M} \cap \mathcal{R}$ 내에 있는 모든 $I_{HR}$의 $l_p$ 평균일 때 최소화된다는 것을 직관적으로 알 수 있습니다. 따라서 $p=2$일 때 optimal solution은 다음과 같이 $I_{HR}$의 픽셀 단위 평균 거리의 형태로 주어집니다.
$$I_{SR} = \int_{\mathcal{M} \cap \mathcal{R}} I_{HR} dP(I_{HR})$$
하지만 이렇게 손실 함수를 정의해도 결국 픽셀 단위 거리를 기반으로 하고 있기 때문에 높은 분산을 가지는 영역을 복원하는 데 있어서 취약하다는 약점은 여전히 갖고 있게 됩니다. 이와 같은 이유로 저자들은 기존의 프레임워크를 유지한 채 사소한 부분들을 바꾸는 것은 큰 의미가 없고, 문제 자체를 재정의할 필요가 있다고 주장했습니다.
이들이 주장하는 새로운 방법은 앞서 말씀드렸다시피 자연스러워 보이면서 다운스케일링을 통해 원래의 LR 이미지가 될 수 있는 이미지 $I_{SR}$을 직접 찾는 것입니다. 이를 위해서는 해당 조건들에 대응되는 이미지들의 영역 $\mathcal{M}$과 $\mathcal{R}$을 먼저 살펴볼 필요가 있습니다.
우선 $\mathcal{R}$은 원래 정의에 의하면 다운스케일링 함수 $DS: \mathbb{R}^{M \times N} \rightarrow \mathbb{R}^{m \times n}$로부터 $\mathcal{R} = \{I \in \mathbb{R}^{M \times N} \vert DS(I)=I_{LR}\}$로 정의될 수 있을 것입니다. 여기서 대부분의 SISR 데이터셋이 다운스케일링 방식으로 bicubic 보간법을 쓰는 만큼 $DS$도 bicubic 다운스케일링으로 정의됩니다. 이렇게 정의된 $\mathcal{R}$은 주어진 잠재 공간에서 다운스케일링을 통해 원래의 LR 이미지와 '완벽하게' 일치하게 되는 이미지의 영역을 의미하지만, 사실 이 기준은 너무 엄격한 점이 없지 않아 있습니다. 따라서 이 논문에서는 $\mathcal{R}$의 정의를 다음과 같이 바꿔 다운스케일링을 통해 원래의 LR 이미지와 '어느 정도' 일치하게 되는 이미지들의 영역 정도로 완화하기로 했습니다.
$$\mathcal{R}{\epsilon} = \{I \in \mathbb{R}^{M \times N} \vert \lVert DS(I)-I_{LR} \rVert_p^p \leq \epsilon \}$$
다시 말해, 우리가 찾아야 할 답은 $I_{SR} \in \mathcal{M} \cap \mathcal{R}_{\epsilon}$입니다. 이 영역은 특별히 feasible solutions라고 부르며, 적어도 하나 이상의 이미지를 포함한다는 것이 보장되어 있습니다. 왜냐하면 원래의 HR 이미지는 당연히 실제와 같으면서 다운스케일링 시 원래의 LR 이미지와 일치하게 되기 때문에 $\mathcal{M} \cap \mathcal{R}_{\epsilon}$에 속할 수 밖에 없기 때문입니다.
이제 feasible solutions에서 $I_{SR}$을 탐색하려면 correctness라는 개념에 대해 생각해봐야 합니다. SISR 문제에서 correctness는 이미지가 모델에 의해 얼마나 잘 복원됐는지를 나타내는 수치로, SISR 문제의 핵심적인 목표라고 볼 수 있습니다. 기존 방식에서는 픽셀 단위 거리가 correctness의 기준이 되었다면, 본 모델에서는 생성된 SR 이미지가 얼마나 기존의 LR 이미지에 대응되는지가 기준이 됩니다. 이를 수식으로 표현한 downscaling loss는 다음과 같이 정의됩니다.
$$L_{DS}(I_{SR}, I_{LR}) = \lVert DS(I_{SR}) - I_{LR} \rVert_p^p$$
이제 $\mathcal{M}$에 해당하는 공간에서 이 downscaling loss를 최소화는 방향으로 탐색을 진행하면 이론상으로 $\mathcal{M}$에 포함되면서 downscaling loss가 특정값 이하인 영역, 즉 feasible solutions를 찾을 수 있습니다. 이 때, 탐색은 경사 하강법(gradient descent)을 통해 생성 모델의 입력 잠재 벡터를 업데이트하는 것을 의미합니다. 기존의 SISR 모델들이 신경망의 패러미터들을 업데이트했던 것을 생각하면 확실히 다른 방식이라는 것을 알 수 있습니다.
말은 쉽게 했지만 전제조건부터가 현실성이 없습니다. '자연스럽고 실제와 같이 보인다'는 기준 자체가 굉장히 주관적이면서 수식으로 표현할 수도 없기 때문에, 분석적으로 잠재 공간 내의 어떤 잠재 벡터 $z$가 $\mathcal{M}$에 속한다는 것을 판정하는 것은 굉장히 어렵습니다. 만약 항상 진짜와 같은 결과만 뽑아내는(즉, 항상 $\mathcal{M}$에 포함된 이미지만 생성하는) 이상적인 생성 모델 $G$가 있다면 우리는 다음과 같은 조건만 만족하는 잠재 벡터 $\mathcal{z} \in \mathrm{R}^d$를 찾으면 될 것입니다.
$$\lVert DS(G(z)) - I_{LR} \rVert_p^p \leq \epsilon$$
하지만 이상은 어디까지나 이상일 뿐, 이는 시도조차 할 수 없는 전혀 현실적이지 못한 방법입니다. 그렇다고 잠재 공간 전체에서 탐색을 진행하기에는 이러한 생성 모델들의 잠재 공간이 굉장히 고차원이기 때문에(StyleGAN의 경우 512차원) 제대로 된 탐색은 엄두조차 내지 못할 것입니다. 그나마 현실적인 방법이 있다면 그럴싸한 이미지들을 생성할 수 있는 잠재 벡터 $z$가 많이 분포되어 있는 영역을 대략적으로나마 추정하여 활용하는 방법입니다. 본 논문에서는 이러한 방법을 확률론적인 관점에서 고민했습니다.
이 문제는 정말 간략하게 표현하자면 LR 이미지 $I_{LR}$이 주어졌을 때, 그에 해당하는 잠재 벡터 $z$를 찾는 문제가 됩니다. 다시 말해 확률 $P(z \vert I_{LR})$을 최대화하는 $\hat{z}$를 찾는 것과 같습니다. 이는 아래와 같은 최대 사후 확률(Maximum A Posteriori, MAP) 문제를 푸는 것으로 볼 수 있습니다.
$$\hat{z}_{MAP} = \arg\max_z P(z \vert I_{LR})$$
이 식은 Bayes' theorem을 통해 다음과 같이 전개할 수 있습니다.
$$\hat{z}_{MAP} = \arg\max_z P(z \vert I_{LR}) \\ = \arg\max_z \frac{P(I_{LR} \vert z)P(z)}{P(I_{LR})}$$
여기서 $P(I_{LR})$은 상수이기 때문에 생략해도 무방합니다. 이제 $\log$를 씌워서 다시 계산해봅시다.
$$\hat{z}_{MAP} = \arg\max_z P(I_{LR} \vert z)P(z) \\ = \arg\max_z \log(P(I_{LR} \vert z)P(z))$$
여기서 더 진행하기 위해서는 사전 확률(prior) $P(z)$를 알아야 합니다. 다행스럽게도 StyleGAN의 경우 잠재 벡터를 평균이 0이고 분산이 1인 정규분포에서 샘플링하여 입력한다고 명시되어 있습니다. 즉, 다음과 같이 평균이 0이고 분산이 1인 정규분포를 따르는 사전 확률(prior) $P(z)$를 적용시키면 됩니다.
$$P(z) = \frac{1}{\sqrt{2\pi}}\exp(-\frac{z^2}{2})$$
이러한 Gaussian prior를 이용하면 위의 최대 사후 확률 문제를 다음과 같이 다시 표현할 수 있습니다.
$$\hat{z}_{MAP} = \arg\max_z P(z \vert I_{LR}) \\ = \arg\max_z \log P(I_{LR} \vert z) + \log P(z) \\ = \arg\max_z \log P(I_{LR} \vert z) + \log\frac{1}{\sqrt{2\pi}} - \frac{z^2}{2}$$
이 식에서 주목해야 할 부분은 $-\frac{z^2}{2}$입니다. 이 부분은 linear regression에서의 L2 정규화와 같은 역할을 하게 되어 잠재 벡터 $z$를 작은 값을 가지도록 유도하게 됩니다. 다시 말해 $\hat{z}$는 잠재 공간에서 원점에 가까운 쪽에 존재할 확률이 높아지게 됩니다. 더 정확하게 말하자면, 적용된 Gaussian prior의 분산이 512개의 방향에 대해 모두 일정하므로 원점을 중심으로 가지면서 일정한 반지름을 가지는 512차원의 초구체(hypersphere) 내부에 해당하는 영역에 $\hat{z}$가 존재할 확률이 높을 것입니다.
이제 우리는 비효율적으로 잠재 공간 전체를 탐색하는 대신 원점으로부터 일정 거리 내의 영역만 탐색해보면 된다는 것을 알았습니다. 여기서 더 나아가볼까요? $N(0, 1)$에서 샘플링되는 $d$차원 잠재 벡터 $z$의 원점으로부터의 평균 거리 $E(|z|^2)$는 다음과 같이 계산할 수 있습니다.
$$E(|z|^2) = \sum_{i=1}^dE(z_i^2) \\ = d \times E(z_1^2) = d \times Var(z) = d$$
이를 통해 잠재 벡터는 원점으로부터 평균적으로 $\sqrt{d}$만큼 떨어져 있다는 것을 알 수 있습니다. 다시 말해, $\hat{z}$를 찾기 위해선 $\sqrt{d}$의 반지름을 갖는 구의 표면으로부터 일정한 거리 안에 있는 영역만 생각하면 될 것입니다. 잠재 공간 전체를 살펴봐야 했던 아까와 비교하면 정말 장족의 발전입니다.
놀라운 건 여기서 탐색 범위를 더 줄일 수 있다는 것입니다. Gaussian Annulus Theorem3이라는 이론에 의하면 상당히 많은 비중의 샘플이 구의 표면으로부터 타이트한 범위 내에 몰려 있게 된다고 합니다. 본 논문에서는 이를 활용하여 탐색할 범위를 과감하게 구의 표면으로 단순화해버렸습니다. 이젠 아예 $d$차원 공간이었던 탐색 범위를 $d-1$차원의 공간으로 줄여버린 것입니다. 지금까지의 과정을 통해 우리는 전체 잠재 공간 $\mathcal{L}$을 다음과 같이 획기적으로 줄일 수 있었습니다.
$$\mathcal{L} = \mathrm{R}^d \rightarrow \mathcal{L}' = \sqrt{d}S^{d-1}$$
여기서 $S^{d-1}$는 $d$차원 유클리드 공간에서의 unit sphere의 표면을 나타냅니다. 상당히 멀리 돌아서 왔지만, 정리하자면 본 논문이 제시한 방법은 이런 식으로 새롭게 정의된 잠재 공간 $\mathcal{L}'$에서 downscaling loss $L_{DS}(I_{SR}, I_{LR}) = \lVert DS(G(z)) - I_{LR} \rVert_p^p$를 최소화하는 $\hat{z}$를 탐색하는 것입니다.
Experiments
이제 이렇게 고생해서 알아낸 탐색법이 실제로 좋은 결과를 내는지 알아봅시다. 우선 실험에 쓰일 생성 모델로는 FFHQ 데이터셋을 통해 학습된 StyleGAN 모델이 채택되었습니다. 잠재 벡터 $z$는 $N(0, 1)$에서 무작위로 샘플링되었으며, 여기에 100번의 spherical gradient descent를 수행하여 downscaling loss가 최소화하는 방향으로 탐색이 진행되도록 하였습니다. 이 때의 학습률은 0.4였다고 하며, $\mathcal{R}$을 정의하는 패러미터 $\epsilon$은 $10^{-3}$으로 설정되었습니다. 이렇게 하면 NVIDIA V100 GPU 하나를 이용했을 때 평균적으로 5초만에 하나의 결과를 낼 수 있었다고 합니다.

성능 평가에는 CelebA4의 HQ 버전 데이터셋이 사용되었고 $64\times$, $16\times$, $8\times$ 총 세 가지 배율에 대해서 실험이 진행되었습니다. 기존의 SOTA 모델은 $8\times$ 배율까지만 지원했기 때문에 $16\times16$ 이미지를 $128\times128$로 업스케일링하는 게 최선이었지만, 본 논문이 제시한 모델인 PULSE는 무려 $1024\times1024$까지 가능했습니다.
시각적으로 비교해보면, 확실히 기존의 SOTA 모델들에 비해 PULSE의 결과물이 훨씬 정교하고 그럴싸해 보입니다. 거기에다가 업스케일링된 결과물을 다시 다운스케일링해도 입력된 LR 이미지와 크게 다르지 않다는 것 또한 확인할 수 있습니다. 이러한 분석은 PULSE가 앞서 말했던 저자들이 제시한 두 가지 조건을 모두 만족한다는 걸 보여줍니다.
| HR | Nearest | Bicubic | FSRNet | FSRGAN | PULSE | |
| MOS | 3.74 | 1.01 | 1.34 | 2.77 | 2.92 | 3.60 |
정성적인 평가 뿐만 아니라 정량적인 평가 결과도 준비되어 있습니다. $16\times16\rightarrow128\times128$의 경우에서 결과물을 주관적으로 평가할 때 주로 쓰이는 MOS(Mean Opinion Score)를 비교해보면 PULSE의 결과물이 원본 이미지에 거의 근접한 수치를 나타낸다는 것을 확인할 수 있습니다. 이는 많은 사람들로부터 PULSE의 결과물이 실제 이미지와 거의 구분할 수 없다고 평가받았다는 것을 의미합니다.
| HR | Nearest | Bicubic | PULSE | |
| NIQE | 3.90 | 12.48 | 7.06 | 2.47 |
마찬가지로 $128\times128\rightarrow1024\times1024$의 경우에서 각 모델의 결과물의 NIQE(Naturalness Image Quality Evaluator) score를 계산하여 성능을 평가하였습니다. 이는 낮을수록 더 좋은 모델이라는 것을 보여주는데, PULSE는 심지어 원본 이미지보다도 더 낮은 NIQE를 보여줬습니다. 그만큼 PULSE가 뛰어난 성능을 보여준다는 것을 의미합니다.

또한 bicubic 다운스케일링 뿐만 아니라 여러 방식의 열화가 적용되는 다운스케일링에 대해서도 PULSE는 괜찮은 결과를 보여줬습니다. 비록 다시 bicubic 다운스케일링 시켰을 때의 모습은 어쩔 수 없이 원래의 LR과 꽤나 달라졌지만, 결과물만 보면 매우 깔끔하게 나오기 때문에 PULSE가 여러 가지 노이즈에 상당한 강인함(robustness)을 가지고 있다는 것을 확인할 수 있습니다.
Discussion


PULSE를 토대로 개발된 얼굴 복원 프로그램인 Face-Depixelizer가 2020년 6월에 공개되었고, 신기하리만치 진짜 같은 결과가 나와 많은 이들을 놀라게 했습니다. 이에 따라 커뮤니티의 많은 사람들이 다양한 이미지들을 입력하며 그 결과를 공유하게 되었는데, 이에 따라 예상치 못한 논란거리도 생겨났습니다.
가장 크게 논란이 된 것은 위와 같이 명백히 백인이 아닌 사람(오바마 전 미국 대통령)의 사진이어도 백인의 얼굴로 복원하는 편중된 경향성을 보인다는 것이었습니다. 안 그래도 정치적 올바름에 대한 이야기가 끊임없이 오고 가는 요즘 같은 시대에 이와 같은 결과가 나오자 상당히 큰 논란이 되어 이에 대한 기사까지 나올 지경이었습니다.
논란이 계속되면서 개발자가 인종차별주의자다, 윤리의식이 부족하다 등의 말이 오갔지만 사실 그런 문제는 아니고, 이는 StyleGAN의 학습에 사용된 데이터셋의 인종 구성이 편중돼서 일어나는 문제일 뿐입니다. 비단 face hallucination 뿐만 아니라 face recognition을 비롯한 여러 가지 얼굴에 관련된 분야에서 이미 주된 문제점으로 자주 언급되었던 사항이지만, 아무래도 Face-Depixelizer가 널리 알려지면서 이 분야를 잘 모르는 사람들에게도 이러한 문제가 알려지게 되자 비로소 사회적인 논란으로 이어지게 된 것 같습니다.
| Black | East Asian | Indian | Latino & Hispanic | Middle Eastern | Southeast Asian | White |
| 79.2% | 87.0% | 87.4% | 90.2% | 87.0% | 87.4% | 83.4% |
사실 본 논문에서도 이러한 편중된 경향성에 대한 이야기는 충분히 다루어집니다. 인종별로 복원된 이미지를 다시 다운스케일링 시켰을 때 원래의 이미지로 올바르게 돌아간 비율을 정리한 결과를 위의 표에서 확인할 수 있습니다. 확실히 인종별로 비율 격차가 상당한 것이 보입니다.
실제로 StyleGAN은 72.6%의 비율로 백인의 얼굴을 생성하고 아시아인과 흑인의 비율은 13.8%, 10.1%밖에 되지 않는다고 합니다. 이와 같은 문제점 때문에 비단 PULSE 뿐만 아니라 FFHQ로 사전학습된 StyleGAN을 기반으로 하는 모든 응용 분야에 비슷한 문제들이 발생한다고 알려져 있습니다. 가장 확실한 해답은 역시 인종이 골고루 분포된 데이터셋을 통해 학습을 진행하는 것이라고 생각합니다.
또한 이 기술이 악용의 소지가 있다는 점이 문제점으로 지적받기도 합니다. 신원 보호를 위해 모자이크 혹은 블러 처리가 된 얼굴이 너무 쉽게 복원될 수 있다는 이야기입니다. 하지만 이러한 지적은 논점을 벗어났다고 할 수 있는 게, 애초에 PULSE의 목적은 원래의 얼굴을 복원하는 게 아니라 잠재 공간에 있는 얼굴들 중 입력된 LR 이미지에 해당하는 이미지를 찾는 것에 있습니다. 결과물이 LR 이미지와 같은 사람인지는 고려하지 않는다는 것이지요.
그래도 논란이 될까봐 이 논문의 Github repository에서는 이러한 내용을 다음과 같이 최상단에 강조까지 해놨습니다.
We have noticed a lot of concern that PULSE will be used to identify individuals whose faces have been blurred out. We want to emphasize that this is impossible - PULSE makes imaginary faces of people who do not exist, which should not be confused for real people. It will not help identify or reconstruct the original image.
PULSE의 성능이 뛰어난 건 맞지만, 그 결과는 어디까지나 StyleGAN을 통해 만들어낸 가상의 얼굴 중 하나일 뿐입니다. 앞서 봤듯이 하나의 사진으로부터 여러 얼굴들이 나올 수 있는 것도 이러한 이유 때문입니다. 따라서 (현재로서는) PULSE가 악용될 만한 소지는 전혀 없다고 할 수 있습니다.
Conclusion

PULSE는 지금까지 나왔던 어떠한 face hallucination 모델들과 비교해봐도 정성적으로나 정량적으로나 상당히 좋은 결과를 내는 훌륭한 모델입니다. 이러한 큰 발전을 이룰 수 있었던 건 역시 기존의 틀을 벗어난 새로운 방법을 찾아냈기 때문이라고 생각합니다. 기존의 SISR 모델들처럼 픽셀 단위 거리를 최소화하는 방향으로 모델을 학습시킨다는 프레임워크를 유지한 채 네트워크의 구조를 조금만 고치거나, 손실 함수을 재정의하는 것에 그쳤다면 이만큼의 발전은 이루지 못했을 것입니다.
이번 포스트에서는 얼굴 이미지에 대한 이야기만 다뤘지만, 생성 모델이 만들 수 있는 이미지의 영역은 학습할 때 쓰이는 데이터셋에 따라 다양합니다. PULSE 또한 마찬가지로 얼굴 뿐만 아니라 다양한 영역에서의 SISR에 적용될 가능성이 있습니다. 특히 StyleGAN의 등장 이후로 생성 모델의 잠재 공간을 탐색하는 방법에 대한 연구가 여러모로 활발하게 진행되고 있어서 PULSE는 더욱 더 주목할 만한 모델이라고 생각합니다.
- Dong, Chao, et al. "Image super-resolution using deep convolutional networks." IEEE transactions on pattern analysis and machine intelligence 38.2 (2015): 295-307. [본문으로]
- Karras, Tero, Samuli Laine, and Timo Aila. "A style-based generator architecture for generative adversarial networks." Proceedings of the IEEE conference on computer vision and pattern recognition. 2019. [본문으로]
- www.inf.fu-berlin.de/lehre/WS17/SemAlg/notes/02_highdim2.pdf [본문으로]
- Liu, Ziwei, et al. "Large-scale celebfaces attributes (celeba) dataset." Retrieved August 15 (2018): 2018. [본문으로]
'Deep Learning > Paper Review' 카테고리의 다른 글
| Alias-Free Generative Adversarial Networks (0) | 2021.09.07 |
|---|---|
| Perceptual Image Super-Resolution with Progressive Adversarial Network (0) | 2021.02.19 |
| Image Processing Using Multi-Code GAN Prior (0) | 2020.12.27 |