Causal ML · Generative models · 2023

Fair Image Generation of Minority Groups

Using a causal SCM inside a bidirectional GAN to synthesise under-represented groups and de-bias a classifier.

Course research project · Columbia
PyTorchBiGAN / DEARStructural Causal ModelsCelebADisentanglement

The question

Image classifiers inherit the biases of their training data. On CelebA, a well-known correlation is that women are far more likely to be smiling than men — so a naive classifier learns to lean on gender as a shortcut for smiling. The research question I set out to test:

Can a structural causal model (SCM), used to disentangle a protected attribute in the latent space of a bidirectional generative model, generate new images of the under-represented group well enough to correct that bias downstream?

The approach

I built on DEAR (weakly-supervised disentangled generative causal representation learning), which embeds an SCM over the latent variables of a bidirectional GAN so that latent factors map to semantically meaningful, causally-structured attributes. The pipeline:

  1. Inject a known bias into the CelebA training distribution (the smiling/gender correlation) so I had ground truth to measure against.
  2. Learn a disentangled, causal latent representation so I could intervene on one attribute while holding others fixed.
  3. Generate counterfactual minority-group samples — e.g. smiling men — by intervening in latent space rather than hunting for rare real examples.
  4. Re-train the supervised classifier on the augmented set and measure whether the gender shortcut weakened.
The appeal of the causal framing is intervention: instead of resampling scarce real data, you can ask the generator a counterfactual — "this person, but smiling" — and hold everything else constant.

What I learned

This was my deepest dive into the seam between causal inference and deep generative modelling, and it taught me how hard honest disentanglement is. Reading DEAR closely — then bending its assumptions to a fairness setting — was a different kind of work from my from-scratch reimplementations: here the contribution was the experimental design and the causal framing, not the architecture. It's also the project that most shaped how I think about evaluation: a generative model that produces pretty samples can still be useless if the latent factors aren't actually doing what you claim.

Honest limitations

CelebA bias is a clean, almost toy setting; real-world protected attributes are messier and rarely binary. Disentanglement quality is also notoriously sensitive and hard to measure, so claims here should be read as directional evidence under a controlled bias, not a deployable de-biasing recipe. The full method, metrics, and figures are in the linked report.

What I took away

  • Causal structure in the latent space turns data augmentation into intervention — you generate the counterfactual you need.
  • The hard part of fairness work is honest measurement, not generation.
  • Reading and extending a research method is a distinct skill from reimplementing a known one.
← all projectsview the code ↗