[’23 ICML] TabDDPM: Modelling Tabular Data with Diffusion Models

This entry is part 1 of 3 in the series Tabular Dataset Generation

1. 들어가며

딥러닝이 다양한 분야에서 발전하면서, 데이터 생성(generation) 기법 또한 중요한 연구 주제로 자리 잡고 있습니다. 특히, Tabular 데이터는 금융, 의료, 마케팅, 공공 데이터 등에서 가장 흔하게 사용되는 데이터 형태이지만, 기존의 생성 모델들은 주로 이미지나 텍스트 데이터에 최적화되어 있어 Tabular 데이터 생성에는 여러 가지 한계를 가지고 있습니다.

Tabular 데이터는 연속형(continuous) 변수와 범주형(categorical) 변수가 혼합되어 있는 것이 특징이며, 이러한 특성 때문에 기존의 생성 모델들이 효과적으로 동작하기 어렵습니다. 이미지 데이터와 달리, Tabular 데이터는 개별 속성 간의 관계(correlation)를 보존하는 것이 중요하며, 특정한 변수 간의 의존성을 무시하면 현실적인 데이터를 생성하기 어려워집니다. 예를 들어, 신용카드 거래 데이터에서 고객의 연령과 신용 점수 간의 관계를 무시한 채 랜덤한 데이터를 생성하면, 현실적인 패턴을 반영하지 못하는 문제가 발생할 수 있습니다.

기존의 Tabular 데이터 생성 방식은 주로 GAN(Generative Adversarial Networks)이나 VAE(Variational Autoencoder)를 활용하는 접근법이었습니다. 대표적인 모델로는 CTGAN(Conditional Tabular GAN), TVAE(Tabular Variational Autoencoder), CTABGAN+ 등이 있으며, 이러한 모델들은 Tabular 데이터의 특성을 반영하기 위해 추가적인 기법을 적용하여 성능을 개선했습니다. 그러나, GAN 기반 방법들은 모드 붕괴(mode collapse) 현상으로 인해 데이터의 다양성을 충분히 확보하지 못하는 문제가 있으며, VAE 기반 방법들은 데이터의 분포를 일반적인 정규 분포에 근사하려는 제약이 있어 원본 데이터의 복잡한 분포를 반영하기 어려운 한계를 가지고 있습니다.

이러한 문제를 해결하기 위해 논문에서는 TabDDPM(Tabular Diffusion Probabilistic Model)을 제안했습니다. TabDDPM은 최근 주목받고 있는 Diffusion Model을 Tabular 데이터 생성에 적용한 모델로, 기존 방법들이 가지는 한계를 극복하면서도 보다 안정적이고 신뢰할 수 있는 데이터를 생성할 수 있도록 설계되었습니다. Diffusion Model은 이미지 생성 분야에서 특히 우수한 성능을 보이며, 데이터의 확률 분포를 점진적으로 학습하는 방식으로 동작합니다. TabDDPM은 이러한 Diffusion Model의 원리를 활용하여 연속형 변수와 범주형 변수를 각각의 특성에 맞게 변형하고, 보다 정밀한 데이터 생성을 가능하게 만들었습니다.

이번 포스팅에서는 TabDDPM이 기존 방법들과 어떻게 다른지, 그리고 어떤 방식으로 Tabular 데이터를 생성하는지를 살펴보겠습니다. 또한, 논문에서 수행한 실험을 분석하여 TabDDPM이 실제로 기존 모델보다 얼마나 효과적인 성능을 보이는지를 평가하고, 마지막으로 TabDDPM의 장점과 한계를 정리하며 마무리하겠습니다.

먼저, 기존 방법들이 Tabular 데이터 생성에서 가지는 한계를 살펴보겠습니다.

2. 기존 방법의 한계

Tabular 데이터는 연속형(continuous)과 범주형(categorical) 값을 동시에 포함하는 특징을 가지며, 이로 인해 데이터 생성(generation) 문제에서도 일반적인 이미지 또는 시계열 데이터 생성과는 다른 도전과제를 제공합니다. 기존의 Tabular 데이터 생성 방법들은 주로 Generative Adversarial Networks(GANs) 및 Variational Autoencoders(VAEs) 기반의 접근법을 사용해왔지만, 이러한 방법에는 여러 가지 한계가 존재합니다.

2.1 기존 Tabular 데이터 생성 방법 개요

Tabular 데이터 생성을 위한 기존 연구들은 크게 두 가지 접근 방식으로 나눌 수 있습니다.

첫 번째는 GAN 기반 접근 방식입니다. 대표적인 예로는 CTGAN(Conditional Tabular GAN) 및 TGAN(Tabular GAN) 등이 있으며, 이는 표 데이터에서 연속형 변수와 범주형 변수를 효과적으로 학습하기 위해 몇 가지 기법을 추가한 GAN 모델입니다. 예를 들어, CTGAN은 mode-specific normalization을 활용하여 연속형 변수를 보다 효과적으로 학습하고, Gumbel-softmax 기법을 활용하여 범주형 변수를 다룰 수 있도록 개선되었습니다.

두 번째는 VAE 기반 접근 방식입니다. TVAE(Tabular Variational Autoencoder) 같은 모델이 대표적인 예로, Variational Autoencoder를 활용하여 Tabular 데이터를 잠재 공간(latent space)으로 인코딩하고, 샘플링을 통해 새로운 데이터를 생성하는 방식입니다. VAE 기반 모델들은 데이터의 연속적 구조를 반영하는 데 강점이 있지만, 샘플링 과정에서의 분산이 크고, 범주형 변수를 다루는 데 한계가 있습니다.

이 외에도 Flow-based 모델이나 Autoregressive 모델을 활용한 접근법도 연구되었으나, 대부분 높은 계산 비용과 학습 안정성 문제를 가지고 있어 널리 사용되지 못했습니다.

2.2 기존 방법의 한계

기존 GAN 및 VAE 기반 방법들은 Tabular 데이터 생성에서 다음과 같은 한계를 가집니다.

첫째, 범주형 변수와 연속형 변수를 동시에 효과적으로 처리하기 어렵습니다. GAN과 VAE 모델은 대부분 연속 공간에서 동작하기 때문에, 범주형 변수 처리를 위해 추가적인 기법이 필요합니다. 예를 들어, Gumbel-softmax 변환이 자주 사용되지만, 이는 학습 과정에서 불안정성을 유발할 수 있으며, 생성된 데이터의 품질이 저하될 가능성이 있습니다.

둘째, 데이터의 복잡한 분포를 제대로 학습하지 못하는 경우가 많습니다. GAN 기반 모델들은 모드 붕괴(mode collapse) 문제를 가질 수 있으며, 이는 특정한 패턴의 데이터만 생성되도록 유도할 수 있습니다. VAE 모델은 데이터의 분포를 잠재 공간에서 정규 분포로 근사하는 방식이므로, 원본 데이터의 복잡한 분포를 온전히 반영하기 어려울 수 있습니다.

셋째, 소규모 데이터셋에서는 학습이 어려울 수 있습니다. Tabular 데이터는 이미지 데이터에 비해 일반적으로 샘플 수가 적고 고차원 특징을 가지는 경우가 많습니다. 하지만 GAN 및 VAE 모델은 일반적으로 많은 데이터가 필요하며, 특히 GAN 기반 모델은 훈련이 불안정하여 소규모 데이터셋에서는 성능이 급격히 저하될 수 있습니다.

넷째, 해석 가능성이 부족하고 특정 도메인에 대한 일반화가 어렵습니다. Tabular 데이터는 금융, 의료, 마케팅 등 다양한 도메인에서 활용되는데, 기존 생성 모델들은 특정 도메인에 과적합(overfitting)될 가능성이 있으며, 새로운 도메인으로 확장하는 데 어려움을 겪을 수 있습니다. 또한, GAN 모델들은 생성된 데이터의 품질을 평가하기 어렵고, 생성 과정이 직관적이지 않아 해석 가능성이 낮은 문제가 있습니다.

이러한 한계로 인해, Tabular 데이터 생성을 위한 새로운 접근 방식이 필요하다는 요구가 커지고 있습니다. 논문에서 제안하는 TabDDPM(Tabular Diffusion Probabilistic Model)은 이러한 기존 방법들의 한계를 극복하기 위해 Diffusion Model을 활용하는 새로운 접근 방식을 도입하였습니다. 다음 장에서는 TabDDPM의 핵심 개념과 차별점을 자세히 살펴보겠습니다.

3. 제안 방법 : TabDDPM

TabDDPM은 최근 강력한 성능을 보이고 있는 Diffusion Model을 Tabular 데이터에 적용한 모델로, 기존의 Diffusion Model이 이미지 생성에서 뛰어난 성능을 보였던 것처럼 Tabular 데이터 생성에서도 효과적인 결과를 보일 수 있도록 설계되었습니다. 핵심 아이디어는 연속형 변수는 Gaussian Diffusion을, 범주형 변수는 Multinomial Diffusion을 사용하여 노이즈를 추가하고 복원하는 과정을 통해 데이터를 생성하는 것입니다.

그림1. TabDDPM Architecture
그림1. TabDDPM Architecture

3.1 TabDDPM의 핵심 구조

TabDDPM은 연속형 변수와 범주형 변수를 동시에 효과적으로 처리할 수 있도록 Diffusion Model을 변형한 모델입니다. 기존의 Diffusion Model은 연속적인 이미지 데이터를 처리하는 데 최적화되어 있지만, Tabular 데이터는 범주형 변수와 연속형 변수를 함께 포함하고 있어 별도의 처리 방식이 필요했습니다. TabDDPM의 핵심은 변수 타입에 따라 Diffusion 방식을 다르게 적용하는 것입니다.

연속형 변수는 일반적인 Diffusion Model과 유사하게 Gaussian Noise를 추가하는 방식으로 Forward 과정이 진행됩니다. Reverse Diffusion 과정에서는 네트워크가 Gaussian 노이즈를 제거하는 방식으로 데이터를 복원하게 됩니다. 반면 범주형 변수는 연속적인 노이즈 추가 방식으로 처리할 수 없기 때문에, 대신 Multinomial Diffusion을 사용하여 변환됩니다. 원본 범주형 변수는 점진적으로 Uniform 분포로 변형되고, Reverse 과정에서 원래의 범주형 분포를 복원하는 방식으로 동작합니다. 이러한 방식으로 TabDDPM은 연속형과 범주형 변수를 각각의 특성에 맞게 Diffusion 과정을 거치도록 설계되었습니다.

3.2 TabDDPM의 학습 과정

TabDDPM의 학습 과정은 Forward Diffusion 과정과 Reverse Diffusion 과정으로 이루어집니다. Forward Diffusion 과정에서는 연속형 변수에는 Gaussian Noise를 추가하고, 범주형 변수에는 Multinomial Noise를 추가하는 방식으로 원본 데이터가 점진적으로 노이즈화됩니다. 이 과정을 여러 스텝에 걸쳐 반복하여 원본 데이터가 완전히 노이즈가 추가된 상태가 됩니다. Reverse Diffusion 과정에서는 학습된 네트워크를 이용해 노이즈가 있는 데이터를 점진적으로 복원하는 과정을 거칩니다. 연속형 변수는 Gaussian Noise 제거 과정을 거쳐 복원되며, 범주형 변수는 Multinomial Noise 제거 과정을 통해 원래의 범주형 데이터로 변환됩니다.

학습이 완료된 이후, 새로운 데이터를 생성하는 과정에서는 완전히 노이즈가 추가된 상태에서 Reverse Diffusion 과정을 실행하여 원본 데이터의 분포와 유사한 샘플을 생성하게 됩니다. 생성된 데이터는 원본 데이터와 유사한 통계적 특성을 가지도록 학습되며, 이는 기존의 GAN이나 VAE보다 더욱 안정적인 분포 근사가 가능하게 해줍니다.

3.3 핵심 아이디어만 쉽게 이해하기

단어들이 어려워서 그렇지 사실 핵심 내용은 아주 간단합니다.

그림2. TabDDPM Architecture 쉬운 그림
그림2. TabDDPM Architecture 쉬운 그림

기존 Numerical Value는 어쨌든 이미지와 동일한 프로세스를 처리해주면 됩니다. 결국 문제는 Categorical Value라는 거잖아요. 어려운 단어를 사용해서 표현했지만, 코드 단위에서 살펴보면 간단합니다. Numerical Value는 Quantile Transformer를 사용하여 Normalize 해줍니다. 이때 Quantile Transformer는 그냥 연속형 변수를 정규화해주는 함수라고만 알고 넘어가도 무리없습니다. 그리고 Categorical Value는 One Hot Encoding을 적용해줍니다. 그럼 위 그림처럼 모든 값들이 0~1 값으로 잘 Normalize 되었습니다. 이제 기존 DDPM과 동일한 프로세스를 적용해줄겁니다.

그림3. TabDDPM Reverse Process
그림3. TabDDPM Reverse Process

그런데 역시 Categorical Value를 어떻게 처리하느냐가 차이점인데요. 기존 Numerical Value는 MSE로 Diffusion Model을 학습하면 되구요, Categorical Value는 softmax처리 후 KL Divergence Loss로 학습해줍니다.

결국 Tabular Dataset Generation 모델의 핵심은 Numerical Value와 Categorical Value를 어떻게 동시에 처리해줄것이냐에 달려있습니다.

3.4 TabDDPM의 장점

TabDDPM은 기존 GAN 및 VAE 기반 모델들이 가지는 한계를 해결하면서, Diffusion Model의 강력한 데이터 학습 능력을 활용하여 더 높은 품질의 Tabular 데이터를 생성할 수 있도록 설계되었습니다.

기존 방법들이 범주형 변수와 연속형 변수를 동시에 처리하는 데 어려움을 겪었던 반면, TabDDPM은 Multinomial Diffusion을 활용하여 범주형 변수를 효과적으로 처리할 수 있도록 설계되었습니다. GAN 기반 방법들은 학습 과정에서 모드 붕괴(mode collapse) 문제를 겪는 경우가 많았지만, TabDDPM은 확률적인 노이즈 제거 과정을 학습하기 때문에 보다 안정적인 학습이 가능했습니다. 또한, VAE 기반 모델들은 잠재 공간을 정규 분포로 근사해야 하는 제약이 있었던 반면, TabDDPM은 Diffusion 과정에서 직접적으로 데이터의 확률 분포를 학습하기 때문에 더 정교한 분포 근사가 가능했습니다.

이 모델은 기존 방법들과 비교했을 때 상대적으로 적은 데이터에서도 안정적인 학습이 가능하다는 점에서도 장점을 가집니다. 기존의 GAN 기반 모델들은 대량의 데이터를 필요로 했지만, TabDDPM은 상대적으로 적은 데이터에서도 안정적으로 학습할 수 있어 현실적인 Tabular 데이터 생성에 보다 적합한 모델이 되었습니다.

4. 실험 결과

TabDDPM의 성능을 검증하기 위해 두 가지 실험을 수행했습니다. 첫 번째는 생성된 데이터의 분포를 시각적으로 비교하는 정성적 비교(Qualitative Comparison) 실험이며, 두 번째는 생성된 데이터를 활용하여 실제 머신러닝 모델을 학습시켰을 때의 성능을 평가하는 머신러닝 효율성(Machine Learning Efficiency) 실험입니다.

4.1 정성적 비교 (Qualitative Comparison)

TabDDPM의 데이터 생성 품질을 평가하기 위해 기존의 TVAE, CTABGAN+ 모델과 비교하는 실험을 진행했습니다. 실험에서는 실제 데이터와 유사한 크기의 데이터를 각 생성 모델을 통해 생성한 후, 개별 특성(feature)의 분포를 시각화하여 비교했습니다. 이 과정에서 특정한 수치형 및 범주형 특성을 선택하여 생성된 데이터가 실제 데이터와 얼마나 유사한지를 평가했습니다.

그림4. Qualitative Comparison
그림4. Qualitative Comparison

실험 결과, TabDDPM이 기존의 TVAE 및 CTABGAN+ 모델에 비해 더욱 현실적인 개별 특성 분포를 생성함을 확인할 수 있었습니다. 특히, 연속형 변수의 경우 보다 균일한 분포를 유지하였으며, 높은 카디널리티를 가진 범주형 변수에서도 더욱 신뢰할 수 있는 데이터를 생성했습니다. 또한, 혼합형 데이터(mixed-type data)의 경우에도 연속형과 범주형 변수를 함께 고려하여 보다 실제 데이터에 가까운 특성을 보였습니다. 추가적으로, Pearson 상관 계수 및 Theil’s U 통계를 이용하여 실제 데이터와 생성된 데이터 간의 상관 행렬을 비교한 결과, TabDDPM이 다른 생성 모델보다 실제 데이터의 상관 관계를 보다 정확히 반영하는 것으로 나타났습니다.

4.2 머신러닝 효율성 (Machine Learning Efficiency)

생성된 데이터가 실제 머신러닝 모델 학습에 얼마나 효과적인지를 평가하기 위해 TabDDPM과 기존 생성 모델들을 비교하는 실험을 진행했습니다. 실험에서는 각 생성 모델로부터 실제 학습 데이터와 동일한 크기의 합성 데이터를 생성한 후, 이를 이용해 머신러닝 모델을 학습시키고, 실제 테스트 데이터에서의 성능을 평가했습니다.

실험에서는 두 가지 프로토콜을 활용했습니다. 첫 번째는 다양한 머신러닝 모델(Decision Tree, Random Forest, Logistic Regression, Ridge Regression, MLP 등)을 학습시키고, 평균적인 머신러닝 효율성을 계산하는 방식입니다. 두 번째는 현재 테이블 데이터에서 가장 성능이 우수한 CatBoost 및 최적화된 MLP 모델을 활용하여 평가하는 방식입니다.

그림5. Machine Learning Efficiency
그림5. Machine Learning Efficiency

실험 결과, TabDDPM은 TVAE 및 CTABGAN+보다 대부분의 데이터셋에서 더 나은 머신러닝 효율성을 보여주었습니다. 특히, 기존 연구에서는 SMOTE 기법이 비교 대상에서 제외되는 경우가 많았으나, 본 연구에서는 SMOTE 기법이 GAN/VAE 기반의 방법보다 경쟁력 있는 성능을 보이는 경우가 많다는 점을 확인했습니다.

5. 마치며

이번 포스팅에서는 TabDDPM(Tabular Diffusion Probabilistic Model)에 대해 살펴보았습니다. 기존의 Tabular 데이터 생성 모델들은 GAN이나 VAE 기반 방식을 활용하여 데이터를 생성했지만, 이러한 접근법은 연속형 변수와 범주형 변수를 동시에 효과적으로 처리하는 데 한계를 가졌습니다. 또한, 모드 붕괴(mode collapse) 문제나 데이터의 복잡한 분포를 충분히 반영하지 못하는 문제로 인해, 생성된 데이터가 실제 데이터와의 유사성을 유지하는 데 어려움을 겪었습니다.

이러한 한계를 해결하기 위해 논문에서는 Diffusion Model을 활용하여 Tabular 데이터 생성 문제를 해결하는 TabDDPM을 제안했습니다. TabDDPM은 Diffusion Model의 강력한 데이터 분포 학습 능력을 기반으로 연속형 변수는 Gaussian Noise를 적용한 후 복원하고, 범주형 변수는 Multinomial Noise를 적용하여 점진적으로 원래의 분포를 복원하는 방식으로 동작합니다. 이를 통해 기존 모델들보다 더욱 안정적으로 학습이 가능하며, 소규모 데이터에서도 신뢰할 수 있는 데이터를 생성할 수 있습니다.

실험을 통해 TabDDPM의 성능을 정량적으로 평가한 결과, 기존의 TVAE, CTABGAN+ 등과 비교했을 때 더욱 실제 데이터에 가까운 개별 특성 분포를 생성할 수 있음을 확인했습니다. 또한, 머신러닝 효율성 평가 실험에서도 TabDDPM이 기존 생성 모델보다 더 높은 성능을 보였으며, 생성된 데이터를 활용한 머신러닝 모델 학습에서 기존 방법들보다 더욱 높은 신뢰도를 제공할 수 있음을 입증했습니다.

TabDDPM은 기존 방법들이 가졌던 범주형 변수 처리 문제, 데이터 분포 반영 문제, 학습 불안정성 문제를 효과적으로 해결하면서, Diffusion Model을 Tabular 데이터 생성 문제에 성공적으로 적용한 사례라고 볼 수 있습니다. 향후 연구에서는 더 다양한 데이터셋에서 TabDDPM을 검증하고, 데이터의 구조적 특성을 더욱 잘 반영할 수 있도록 개선하는 방향으로 연구가 진행될 가능성이 높습니다. 또한, 생성된 데이터의 프라이버시 보호나 도메인별 최적화 같은 실무적인 활용 방안도 추가적으로 연구될 필요가 있습니다.

6. 참고 자료

Series Navigation[24′ NeurIPS] ReMasker: Imputing Tabular Data with Masked Autoencoding >>
0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
Scroll to Top