|
‘NeurIPS 2021(Conference and Workshop on Neural Information Processing Systems 2021, 신경정보처리시스템학회)’은 1987년에 처음 시작된 학회로, AI와 머신러닝 분야의 가장 권위 있는 학회 중 하나입니다. 약 20%의 논문 승인율을 바탕으로 매우 높은 수준을 유지하고 있으며, NeurIPS에서 산출되는 연구 결과가 갖는 기술적 영향도가 높아 최신 연구 트렌드를 살펴볼 수 있습니다. LG AI연구원 Applied AI Research lab 연구원들이 지난 2021년 12월 온라인으로 개최되었던 ‘NeurIPS 2021’에서 소개된 의미 있는 논문을 소개합니다. - 1편: Generative model - Diffusion model Review - Applied AI Research lab 정혜민님 |
Introduction
Variational Autoencoder 기법은 비지도학습을 통해 데이터의 특징을 뽑아내는 방법으로 Anomaly Detection, Classification, Image Segmentation 등 다양한 분야에서 활용되고 있습니다.
이번 글에서는 NeurIPS 2021에서 발표된 Variational Autoencoder를 Clustering에 적용한 Deep Clustering 기법 두 가지를 이야기하려고 합니다. 이를 위해 먼저 Clustering의 개념에 대해 간단히 살펴보고, Deep Clustering의 기준 연구가 되는 Variational Deep Embedding(VaDE)[4]에 대해 설명 드리겠습니다. 이후, NeurIPS 2021에서 VaDE를 기반으로 발표한 ‘Multi-Facet Clustering Variational Autoencoder(2021)’, ‘Deep Conditional Gaussian Mixture Model for Constrained Clustering(2021)’ 논문들을 소개합니다.
Clustering Overview
Clustering 이란?
Deep Learning 기반의 Clustering 기법들을 살펴보기 전, 먼저 왜 Deep Learning이 Clustering에 사용되었는지 설명하기 위해 Clustering의 개념을 간단히 짚어보겠습니다. Clustering은 라벨을 사용하지 않고도, 관련 있는 데이터끼리 군집시키는 방법을 의미합니다. 가장 직관적인 Clustering 방법 중 하나가 바로 “생김새가 비슷한 데이터가 관련 있는 데이터”라고 생각하는 Similarity based Clustering 기법입니다. 가장 유명한 Clustering 방법은 Spectral Clustering으로 샘플간 Pairwise Distance를 측정하여, 유사한 형태를 가진 샘플끼리 모으는 방식입니다. Figure 1의 왼쪽 그림은 8개의 샘플간 거리를 Similarity 확인 공식 으로 계산한 후, 거리가 가까운 샘플끼리 묶는 Spectral Clustering의 동작방식을 보여주고 있습니다. 이러한 동작방식은 결과가 직관적이고 모든 데이터간 거리를 확인하다 보니 원형이 아닌 데이터의 군집도 잘 표현할 수 있다는 장점이 있습니다(Figure 1 (우) 참고). 다만, 모든 데이터간 거리를 전부 측정해야 하기 때문에 데이터가 N개 있으면 NxN Distance Matrix를 계산해야 한다는 것이 단점입니다. Figure 1은 8개의 샘플 간 Similarity 값을 색으로 표현했습니다. 두 샘플간 유사성이 높으면 높은 가중치를 가지고, 유사성이 낮으면 낮은 가중치를 가지고 있습니다.


Figure 1. (좌)Spectral Clustering의 동작방식[1] (우) 비선형 Cluster를 잘 형성하는 모습 확인됨
K-means Algorithms은 Computation Cost에 따른 Scalability 문제도 해결하고, 좋은 군집성능을 보였던 Algorithms입니다. 물론, 여전히 데이터가 많거나, 데이터 내에 missing 값이 있다면 Clustering에 문제를 겪는 어려움이 있지만, 현재 가장 많이 알려져 있고, 잘 사용되고 있는 Algorithm이라고 할 수 있습니다. K-means는 ‘K개의 군집을 설정하라’는 입력이 들어오면, 아래 Equation 1처럼, Random하게 Cluster의 중심값인 b를 잡고, 각 데이터(x)와 Cluster 중심(b) 간 거리를 가장 단축시켜주는 Cluster를 구성하게 됩니다. 좀 더 자세히 설명하자면, Equation 1은 n개의 데이터, k개의 Cluster, Binary값인 w(Cluster 존재 1, 아니면 0) 그리고 Cluster 중심값인 b를 이용하여 K-mean를 수행하는 최적화 식입니다 (K-means는 학습이 아닌 최적화를 통해 문제를 해결하므로 Algorithm으로 불립니다). 1개의 데이터는 1개의 Cluster에만 속해야 하므로, 모든 Cluster에 대한 w의 합은 1이라는 제약조건이 걸려 있습니다. 해당 최적화식은 w와 b라는 unknown variables이 포함되어 있으므로, 두 값을 동시에 최적화 진행하는 것은 불가능합니다. 따라서 1) Fix w, then b를 최적화 2) Fix b, then w를 반복 수행하면서 Cluster의 중심값(b) 및 데이터가 어느 Cluster에 소속되는지(w)를 계산하게 됩니다.

Equation 1. n개의 데이터에서 k개의 Cluster를 생성하는 K-means Clustering 공식
이때, Cluster의 중심값(b)은 Random하게 초기화 되므로, 어떤 초기값을 잡느냐가 Cluster를 원활히 형성하는데 중요한 요소로 작용하게 됩니다. 따라서, 현업에서 K-means를 이용해서 군집화를 수행할 때는 여러 번 수행 후 군집 내 데이터들이 잘 모여 있는지 평가하는 지표(ex. Silhouette Score [6])를 이용해 최적의 모델을 파악하기도 합니다. K-means Algorithm은 각 데이터포인트와 Cluster 중심 간의 거리를 Euclidean으로 측정하므로 원형의 형태로 Cluster가 잡히게 됩니다(참고 Figure 2(좌)). 이러한 특성으로 인해 군집 시 원형에 가까운 형태의 Cluster가 정답인 경우, 양질의 Cluster를 추출할 수 있는 방식입니다. 만약, 거리 Norm-1 형태로 계산한다면 K-median Algorithm이 되고, 제곱을 수행하지 않으므로 에러가 덜 크게 작용되어 Outlier에 조금 더 Robust한 Clustering을 수행할 수 있습니다.


Figure 2. (좌) K-means clustering 결과의 예제 (우) Gaussian Mixture(GMM) Model 결과의 예제
Gaussian Mixture Model(GMM)은 데이터들이 Gaussian Mixture로 구성되어 있다고 가정하고 Clustering을 수행합니다. K-means는 Equation 1과 같은 최적화식을 풀어서 각 데이터가 어떤 군집에 들어갈지 결정(1 또는 0)하는 반면, GMM은 학습을 통해 각 데이터가 각 군집에 들어갈 확률을 계산합니다.

Figure 3. Gaussian Mixture Model(GMM)의 Graphical Model
모든 데이터들이 Gaussian Mixture로 구성되어 있다는 것은 다시 말하자면, 모든 데이터 X는 Multivariate Gaussian으로 표현되는 Latent z를 이용하여 생성할 수 있다는 뜻입니다. Figure 3의 Graphical Model이 이 같은 내용을 설명하고 있는데요, GMM은 데이터 X가 발생할 확률을 Equation 2의 (1)과 같이 여러 Gaussian PDF의 합으로 표현합니다. 이때, πk는 Gaussian Distribution을 가지는 k 번째 군집이 선택될 확률입니다. GMM을 학습시킨다는 것은 주어진 데이터가 어떠한 Gaussian Distribution에서 생성되었는지 찾는 것이며, 이는 바로 Figure 3에 있는 μ,Σ,π을 학습하는 과정이라 생각할 수 있습니다. 가장 대표적인 GMM 학습방법으로는 EM Algorithm이 있습니다. 자세한 내용은 본 블로그에서는 생략하도록 하겠습니다.

Equation 2. Gaussian Mixture Model(GMM)의 기본 가정
딥러닝 기반 Clustering(Deep Clustering)
GMM은 데이터를 기반으로 학습을 통해 Cluster를 생성할 수 있다는 장점이 존재하지만, Figure 3에 표현된 것처럼, 학습된 확률분포에 기반하여 데이터 X를 만들어 내는 것(Generation Process)만 가능하다는 단점이 있습니다. 좀 더 자세히 이야기하면, GMM은 데이터(X)에서 데이터의 대표 특징인 Latent를 생성하는 부분이 부재하기 때문에 데이터의 특징을 제대로 반영한 군집을 형성하는 데 한계가 있다고 정리할 수 있습니다. 그렇다면, GMM의 장점을 그대로 계승하면서도 이와 같은 단점을 극복한다면 보다 좋은 성과를 낼 수 있겠죠? Figure 4의 Variational Autoencoder(VAE)[3]의 Graphical Model을 보시면 이 질문에 대한 해답이 보입니다.

Figure 4. Variational Autoencoder의 구조 및 Graphical Model
VAE는 비지도학습 기반의 딥러닝 모델로, 입력이 들어오면 인코더에서 Latent(z)를 추출(Inference Process)하고, 추출된 Latent z에서 디코더를 통해 데이터를 재건하는 과정(Generation Process)을 진행합니다. 이를 Graphical Model로 표현하면 Figure 4의 우측 모델처럼 표현되는데요, GMM과 매우 유사한 양상을 보입니다. 단지 차이가 있다면, 데이터, 즉 x에서 Latent z로 가는 화살표가 생겼다는 점입니다. 즉, 다시 말해 VAE를 활용한다면 데이터에서 스스로 특징을 추출할 수 있고 따라서 VAE와 GMM의 특징을 결합할 수 있다면, GMM의 장점은 살리고 단점은 제거한 모델이 탄생할텐데요, 바로 오늘 리뷰의 핵심이자 앞서 언급한 두 연구의 근간이 되는 Variational Deep Embedding[4] 입니다. 지금까지 이야기한 내용의 핵심을 아래 간단히 정리해보았습니다.
|
- Gaussian Mixture Model(GMM)은 학습된 확률분포에 기반하여 데이터 X를 만들어 내는 Generation Process만 존재 - 딥러닝 모델 중 Variational Autoencoder(VAE)는 Univariate Gaussian 분포를 가지는 Latent z를 비지도학습 방법으로 스스로 파악 가능 - GMM과 VAE를 결합하여 GMM의 단점을 제거한 모델이 두 연구의 근간이 되는 Variational Deep Embedding(VaDE) |
Variational Deep Clustering(VaDE)
VaDE와 VAE는 Latent를 뽑는 방식에 차이가 있습니다. VAE는 Univariate Gaussian을 Prior로 가지고 있는 Latent를 가정하고, 데이터에서 직접 Latent를 뽑습니다. Figure 4의 Graphical Model 및 VAE의 구조를 보더라도, 데이터에서 바로 z가 생성되고, z에서 다시 x가 재건되는 것을 알 수 있습니다. VAE는 재건된 X(=X’)와 입력값 X의 차이를 최소화하는 방향으로 학습이 진행됩니다.
VaDE는 VAE와 달리 데이터 X에서 Multivariate Gaussian을 Prior로 가지는 Cluster를 생성하고, 각 Cluster에서 Latent z를 생성합니다. 이후, 디코더를 통해 입력신호를 재건하는 과정은 VAE와 동일합니다(참고 Figure 5). 이렇게 말로 풀어내면 어렵거나 복잡해 보이지 않는 VaDE가 왜 연구적 가치를 가지게 되었을까요? 비록 데이터 X에서 Cluster c를 바로 추출할 수는 없지만, VaDE는 이를 수학적으로 대체할 수 있는 방안을 제시하기 때문입니다.

Figure 5. Variational Deep Embedding (VaDE)의 구조 및 Graphical Model
Variational Deep Embedding(VaDE)의 연구적 가치
Figure 6 좌측에 그려져 있는 VAE와 VaDE의 Graphical Model 및 우측의 ELBO(Evidence Lower Bound)를 비교해 보시면 두 모델의 차이를 한눈에 알 수 있습니다. 참고로 ELBO는 최대화되는 방향으로 학습이 되어야 합니다.

Figure 6. VAE와 VaDE의 차이점
Figure 6의 우측의 식과 좌측의 그림은 사실 같은 이야기를 하는 것인데요, 잘 학습된 VAE가 X에서 추출된 Latent z를 활용해 Generation Process를 수행할 경우, 이 때 재건된 X는 원본과 유사합니다. 이 부분이 Figure 6 우측 VAE의 ELBO식의 첫번째 Term입니다. 다만, 추출된 Latent z는 우리가 가정한 prior distribution p(z), Gaussian과 유사한 분포를 가져야 하므로, 이것을 표현한 것이 두번째 KL Divergence Term입니다. Figure 6 VAE의 Graphical Model을 보면 Generation과 Inference 두 부분만 존재하므로, VAE의 ELBO는 단지 2개의 Term만 가지고 있는 것이죠.
VaDE의 경우, Cluster C를 데이터 X에서 추출해야 하므로, VaDE의 ELBO에 주황색으로 강조된 마지막 Term이 추가됩니다. 이 Term이 q(c|x)인데요, 왼쪽 Graphical Model을 보면, 데이터 X에서 Cluster C로 연결 화살표가 없습니다. 즉, 데이터에서 C는 구조적으로 추출하기 불가능한 상황이어서 학습이 불가능한 것이 난제였고, VaDE는 수학적인 Derivation을 통해 Equation 3과 같이, q(c|x)는 데이터에서 추출해낸 z에서 Cluster C가 생성될 확률의 평균으로 계산될 수 있음을 증명했습니다. 이러한 증명을 통해 우리는 VaDE를 VAE에 기반해 구현할 수 있게 된 것입니다.
Equation 3. VaDE는 데이터에서 Cluster에 포함될 확률을 뽑아내는 것이, 결국 z에서 c를 뽑아낼 평균과 approximate하게 동일함을 증명
아래 VAE를 활용하여 VaDE가 나오기까지의 과정을 정리해 두었습니다.
|
- VaDE는 데이터에서 비지도학습으로 Latent z 와 Cluster c를 추출해야 함 - VaDE Graphical Model에 따르면, x ↔ z 만 연결되어 있고, x → c의 연결은 없으므로, VaDE의 ELBO는 풀 수 없음 - x → c 확률을 z → c의 확률을 이용해 풀 수 있음을 수학적으로 증명한 것이 Variational Deep Embedding(VaDE) |
Variational Deep Embedding (VaDE)의 구조
VaDE를 설명하기에 앞서, VaDE는 기본적으로 VAE를 변형한 것이므로 VAE의 구조를 먼저 살펴보겠습니다. VAE는 데이터 X에서 Univariate Gaussian의 특성을 지니는 Latent z를 Encoder를 통하여 생성합니다. 이때, z가 Gaussian Distribution의 특징을 지니는 것은 Sampling을 통해 보장할 수 있는데, 이는 backpropagation을 지원하지 않는 연산이므로 Reparameterization Trick(Figure 7 아랫 부분에 N(0,I) 부분)을 이용해 Gaussian 분포를 가지는 z를 생성합니다. 이후, Decoder는 해당 z를 이용해 입력값을 복원하게 됩니다.

Figure 7. VAE의 상세 구조 및 Graphical Model
Figure 6에 그려진 VaDE의 ELBO를 보면 X에서 C를 생성해야 하지만, VaDE는 Equation 3과 같은 수학적 추론을 통해 아래 Figure 8과 같이 구현될 수 있습니다. Latent z 생성 후 해당 값을 활용하여 Cluster에 대한 인자들을 학습하는 부분이 포함된 것이 VAE와의 유일한 차이라고 할 수 있습니다. 해당 구조를 살펴보면, VaDE는 수학적인 derivation을 통해 단지 Clustering에 관련된 부분만 붙여서 End-to-End Deep Learning 기반의 Clustering을 수행할 수 있는 기초를 마련했다는 점에서 의의가 있음을 다시 알 수 있습니다.

Figure 8. VaDE의 상세 구조. VAE에 Clustering에 관한 부분만이 붙어 있다.
Variational Deep Embedding(VaDE)의 성능
결론적으로 VAE는 Latent가 Univariate Gaussian임을 가정했고, VaDE는 Latent가 Gaussian Mixture Model로 구성되었다 가정한 것입니다. 각 Cluster 별로 다른 특징을 지닐 수 있으므로 GMM으로 구성된 Cluster들이 더 다양한 특징을 포함할 것으로 추정할 수 있는데요, 이 부분은 실험 결과로 확인할 수 있습니다. Figure 9는 VAE와 VaDE의 군집 성능을 비교한 것입니다. MNIST의 경우 군집간 거리가 더 멀고, 오른쪽 결과처럼 서로 다른 Latent 공간의 Cluster를 합쳐 Decoder에 보내는 경우 두 특징을 합친 이미지가 생성되는 것을 알 수 있습니다.

Figure 9. VaDE의 성능
이제 VaDE를 기반으로 NeurIPS 2021에서 발표된 Deep Clustering 관련 연구를 살펴보겠습니다. 이 다음 소개할 논문은 ‘Multi-Facet Clustering Variational Autoencoder(2021)’와 ‘Deep Conditional Gaussian Mixture Model for Constrained Clustering(2021)’ 입니다.
Multi-Facet Clustering Variational Autoencoders(MFC-VAE)
MFC-VAE는 한 마디로 VaDE를 확대한 연구입니다. Variational Deep Embedding(VaDE)는 K개의 Cluster를 생성합니다. 즉, Figure 10의 좌측에 있는 데이터를 군집화 한다면, VaDE는 Figure 10의 우측처럼 동일 특성을 지닌 데이터끼리 군집을 생성할 것입니다. 사실 Figure 10의 좌측 데이터는 Figure 11에서 보여주듯이 “세모, 원형, 네모” 또는 “빨강, 파랑, 녹색”의 그룹처럼 다양한 방식으로 군집화 할 수 있지만, VaDE의 경우 1개의 모델은 1개의 특징으로만 군집을 형성할 수 있습니다.

Figure 10. 여러 데이터셋이 섞여 있는 상태에서 VaDE는 위와 같이 동작
이번에 살펴볼 MFC-VAE는 데이터가 다양한 방식(Multi-Facet)으로 군집화 될 수 있는 경우, 이를 한 번에 학습할 수 있는 방법입니다.

Figure 11. Multi-Facet의 예제
이를 조금 더 구조적으로 설명해 보겠습니다. Figure 5에 설명되어 있는 VaDE는 데이터에서 K개의 Cluster를 추출합니다. MFC-VAE의 경우 Figure 12에 그려져 있는 것처럼, Cluster들의 그룹을 Facet으로 정의하고, 각각 K개의 Cluster로 구성된 L개의 Facet을 학습을 통해 파악할 수 있도록 VaDE를 확대했습니다. Graphical Model을 보면 조금 더 이해가 쉬우실 텐데요, Multi-Facet Clustering 은 L개의 Facet을 데이터에서 만들어내고, 각 Facet이 별도로 Cluster를 만들어 내는 것을 알 수 있습니다. Figure 12 오른쪽의 Graphical Model을 보면, Cluster 생성 관련 부분이 L개로 표현되어 있습니다. MFC-VAE는 VaDE와 동일하게 데이터 X에서 Cluster C로의 연결이 없는데요, 이를 수학적으로 전개해서, VaDE의 ELBO에서 단지 Facet의 개수만큼 관련 인자를 Summation하면 된다는 식으로 전개를 성공한 것이 본 연구의 Contribution 입니다.

Figure 12. MFC-VAE의 개념과 Graphical Model
아래 Figure 13에 VaDE와 MFC-VAE ELBO식을 전재해 놓았습니다. Figure 13의 VaDE ELBO는 Figure 6에 있는 VaDE ELBO의 KL Divergence Term을 전개한 버전입니다. 그 위에 MFC-VAE의 ELBO식이 전개되어 있는데요, Clustering에 관련된 인자가 있는 부분에 Facet의 개수만큼 Summation이 붙어 있는 것을 알 수 있습니다. 물론, 4번째 Term인 q(z|x) 에도 Summation이 붙어 있는데요, 이는 Equation 3에 언급되어 있는 것처럼, Cluster 관련 인자가 결국 Latent z에서 생성되기 때문입니다.

Figure 13. MFC-VAE 와 VAE ELBO 식의 차이
이 수식으로 인해, 우리는 Figure 14와 같이 MFC-VAE의 구조를 VaDE로 변경하여 구현할 수 있게 되었습니다. Figure 14에 보시면, Encoder가 Base Encoder와 각 Facet에 해당하는 Encoder 2개로 나뉘어 있는데요, Figure 13의 MFC-VAE ELBO식에서 각 Facet이 독립적으로 Summation이 되므로, 독립성을 보장하기 위해 각 Facet별로 Encoder를 생성하게 되었다고 볼 수 있습니다. 같은 맥락으로 각 Facet의 특징은 대응되는 Decoder에 의해 취합되고, 각 Facet에서 나온 정보는 사실은 동일한 입력 x에서 만들어진 것이므로 base decoder로 취합되는 구조로 구현되었습니다.

Figure 14. MFC-VAE의 Detailed Architecture 및 동작원리
Multi-Facet Clustering Variational Autoencoders의 성능
결론적으로, MFC-VAE는 End-to-End로 학습을 수행하면서 여러 특징을 가진 Facet을 만들어 낼 수 있다는 점에서 의미 있는 연구입니다. Figure 15는 여러 다른 데이터셋을 MFC-VAE로 Clustering 한 결과를 정리해 놓았습니다. 현재 실험은 2개의 Facet에 대한 성능을 평가했습니다. 모양을 중시하는 Facet에서는 같은 모양들끼리 Cluster를 구성하였고, 색을 중시하는 Facet에서는 같은 색상끼리 Cluster를 구성한 것을 볼 수 있습니다. 본 연구는 이론적으로 탄탄하게 관련 내용을 전개했으나, Facet의 개수를 2개까지만 실험한 점에서 reviewer들이 poster로 발표하였습니다. 하지만, 이론적으로 잘 정리가 되었으므로, 보다 많은 Facet에 대해서도 잘 동작할 것으로 예상합니다.

Figure 15. MFC-VAE의 Clustering 성능
Deep Conditional Gaussian Mixture Model for Constrained Clustering
이제 Deep Conditional Gaussian Mixture Model 관련 연구에 대해 알아보겠습니다. 이 연구를 진행한 저자들의 경우 독일의 병원과 초음파 이미지를 이용해서 조산가능성을 파악하는 연구를 진행했는데요. Clustering을 진행한 결과, 서로 다른 카테고리에 있는 초음파 이미지가 같은 Cluster에 포함되는 것을 발견했습니다. 사실, 병원데이터처럼 서로 관련된 데이터들에 대한 Domain Knowledge가 있는 경우 이러한 지식을 Clustering을 수행할 때 넣을 수 있으면 Clustering의 정확도가 올라갈 수 있습니다. 이번에 소개할 DC-GMM은 VaDE가 Domain Knowledge를 어떻게 적용할 수 있을지 유도한 연구입니다.
다시 VaDE 구조로 돌아가 이야기를 시작해볼까요? VaDE는 입력 데이터에서 Cluster를 추출하고, 각 Cluster의 정보를 이용해서 Laten를 생성한 후 재건하는 순서로 동작합니다. 즉, Cluster를 추출하는 부분에 Domain Knowledge를 적용해야 할 텐데요. DC-GMM은 Figure 16과 같이 W라는 Domain Knowledge를 Cluster 생성부분에 적용했습니다. 저자는 Figure 16 상단처럼 서로 관련 있는 데이터는 Must-link로 설정하고 관련성이 없는 경우 Cannot-link로 설정했습니다. 구현상, W는 N개의 데이터에 대한 NxN Matrix로 표현이 가능하며, 각 데이터 간에 관련성이 있으면 양수, 없으면 음수, 모르겠으면 0으로 표현합니다. 본 연구가 NeurIPS 2021에 발표될 수 있었던 것은 VaDE의 ELBO에 Domain Knowledge W를 잘 녹였기 때문입니다.

Figure 16. DC-GMM의 동작원리 및 Graphical Model
Figure 17의 VaDE와 DC-GMM의 ELBO를 비교해 보면, 데이터 생성부분은 동일하고 Cluster를 생성할 때 Domain Knowledge를 적용하는 부분(ELBODC-GMM에서 줄이 쳐져 있는 부분)만이 상이한 것을 볼 수 있습니다. DC-GMM은 이런 ELBO를 학습이 가능하도록 전개했는데, 바로 Figure 17의 전개식에 이에 해당합니다. 마지막 하단에 초록색 네모로 강조되어 있는 부분을 제외하면, VaDE의 ELBO와 동일합니다.

Figure 17. VaDE와 DC-GMM ELBO식의 차이
강조되어 있는 부분은 결국 Latent에서 Cluster를 생성할 때 Domain Knowledge를 적용해야 한다는 부분이고, 이때 Domain Knowledge W는 값이 상수로 들어 있는 Scalar Matrix이므로 이를 밖으로 빼낼 수 있으며, 이렇게 되면 VaDE와 DC-GMM의 ELBO는 수식상으로는 동일해지는데요, 다만 Domain Knowledge에 해당하는 상수 값이 결과에 영향을 미치게 됩니다. 결국 Figure 18에 있는 것처럼 기존 VaDe(참고 Figure 8)에서 마지막에 Loss 계산 시에만 Domain Knowledge를 넣어주는 식으로 저자는 Domain Knowledge를 녹여서 Clustering을 수행하였습니다.

Figure 18. DC-GMM의 Detailed Architecture
DC-GMM의 성능
마지막으로 결과를 살펴보면, DC-GMM은 VaDE보다 보다 정확하게 Clustering을 수행했다는 결과를 보이고 있습니다. 아래 실험결과는 백인, 황인, 인디언을 성별로 나눈 얼굴데이터 세트인데요, 20,000여 장의 데이터에서 임의로 추출한 6,000장에 대해서는 서로 관련성을 각각 +1, -1, 0으로 기입해서 학습한 결과입니다. 각 Row가 결과인데, 관련 있는 얼굴끼리 잘 모여 있음을 알 수 있습니다.

Figure 19. DC-GMM의 성능
이 연구에서 한가지 우려되는 사항은 Domain Knowledge Matrix W를 만드는 것인데요, 우선은 Figure 20에서 실험적으로 15% 정도의 데이터에 대해서만 Pairwise 관련성 정보를 넣어도 기본 성능보다 4%p의 정확도 손실만이 있다는 것을 보여주었습니다. 다만, 본 학회의 reviewer들은 NxN Matrix를 만드는 것이 부담이라는 점에서 포스터로 본 연구를 선정한 것입니다. 하지만, 일반적인 기업의 경우 해당 매트릭스를 생성하는데 부담이 크지 않기 때문에 충분히 활용 가능할 것으로 보입니다.

Figure 20. DC-GMM. 20000장 중 6000장에 대해 관련 이미지간 라벨링 수행 시 Clustering 정확도가 향상되는 것 발견
Conclusion
지금까지 Deep Learning 기반의 Clustering이 왜 등장하게 되었는지, 그리고 해당 기법은 Variational Autoencoder를 어떻게 활용하였는지, 마지막으로 NeurIPS 2021에 발표된 두 가지 딥러닝 기반의 Clustering 연구를 살펴보았습니다. 비지도 학습을 통한 Clustering은 정답이 없기 때문에 그 결과에 대한 신빙성을 평가하기 어려워서, 정확도를 중요하게 여기는 산업 분야에서는 잘 활용이 되지 않는 경향이 있습니다. 특히 수요예측과 같이 정확도를 중요시하는 분야는 대표적으로 전형적인 지도학습을 활용하는 분야로써 Clustering을 활용하지 못하는 부분이 있어왔습니다. 하지만, 신제품을 출시하게 되면 얼마나 팔릴 것인지 수요를 예상하는 과제는 과거 판매정보의 부재로 인해 기존의 지도학습만으로는 풀기 어려운 난제였습니다. 이러한 부분에 Clustering을 적용해 기존 판매경향성, 고객 구매동향 등을 군집화하고 활용할 수 있다면 기존에 풀지 못한 문제를 풀 수 있는 실마리를 제공해 줄 수 있으리라 기대됩니다.