[논문]
- Modeling Tabular Data Using Conditional GAN
- NIPS 2019
- Citations: 1,760
- https://arxiv.org/abs/1907.00503
- CTGAN, TVAE는 대표적인 synthetic data를 생성하는 deep generative model
- GTGAN, TVAE 모두 “Modeling Tabular Data Using Conditional GAN [2019]”에서 소개됨
Tabular data challenges
- discrete, continuous column들을 동시에 생성하기 어려움
- discrete column에는 softmax, continuous column에는 tanh
- 각 column의 값이 multi-modal non-Gaussian values
- non-gaussian: [-1, 1] normalize 어려움 → tanh 이용시 gradient vanishing problem 발생
- multi-modal: 특정 mode만 생성하는 mode collapse 발생
- categorical columns에서 높은 imbalanced class problem
- major한 class만 생성하는 mode collapse 발생
⇒ 이를 해결하기 위해 추가적인 전처리 과정 필요
- Mode-specific normalization ⇒ non-Gaussian & multimodal distribution 해결
- Conditional generator, Training-by-sampling ⇒ imbalanced discrete columns 해결
- CTGAN에 적용, 하지만 TVAE에는 적용 X
Mode-specific Normalization
- 각 continuous column을 독립적으로 normalization
- 각 value → mode의 위치를 나타내는 one-hot vector & normalized value의 scalar
processing step
- Variational Gaussian mixture model(VGM)을 이용하여 mode의 개수($m_i$) estimate & Gaussian mixture model에 fit
- 학습된 Gaussian mixutre model
- $P_{C_i}(C_{i,j}) = \sum_{k=1}^{m_i}\mu_kN(\eta_k,\phi_k)$, $C_i$: $i^{th}$ column, $\mu_k$: $k^{th}$ weight, $\eta_k$: $k^{th}$ mode\
- 각 mode의 probability density 계산
- $p_k = \mu_kN(\eta_k, \phi_k)$, k = 1, … , $m_i$
- mode들 중 한개를 sample하여 normalization 후 $c_{i,j}$ ⇒ $\alpha_{i,j}, \beta_{i,j}$로 변환
Conditional vector, Training-by-sampling
- discrete한 column 중 $D_i$ 1개 randomly select ⇒ $D_i$의 category 중 log frequency ratio를 이용하여 1개 select
- select된 category를 이용하여 conditional vector 생성 후, Generator에 input
- real data 중 condition에 만족하는 row를 train data로 설정하여 학습 진행 (Training-by-sampling)
⇒ Only CTGAN
TVAE
[Row data Transform]
- encoder의 input $r_j$의 dimension: 2$N_c$ + $N_d$
- decoder의 input: z ~ $N_{|z|}$($\mu$, $\sigma$I)
- encoder, decoder 모두 fully-connected hidden layers 적용 ⇒ column들의 correlations capture 용이
VAE
[논문 리뷰] VDM survey: Understanding diffusion models: A Unified Perspective (1)
[논문 리뷰] VDM survey: Understanding diffusion models: A Unified Perspective (1)
Diffusion model 공부를 시작할 때, 관련 논문을 먼저 보는 것보다 해당 survey논문을 보는 것이 이해하기 편했음해당 논문은 Class conditional diffusion model까지 수식적으로 잘 정리되어 있는 논문해당 논
kongshin00.tistory.com
VAE structure
- Encoder: x (data) → z (latent variable) convert하는 $q_{\phi}(z|x)$ 학습
- Decoder: z (latent variable)→ x (reconstruced data) convert하는 $p_{\theta}(x|z)$ 학습
- Likelihood-based generative model 중 하나
- Log-likelihood $log(p(x))$를 maximize하는 방향으로 parameter($\phi$, $\theta$)를 update
⇒ 실제 data의 distribution을 알 수 없기 때문에 ELBO를 maximize
ELBO
- A lower bound of the evidence , evidence = $logp(x)$
⇒ Maximized ELBO = Maximized likelihood