Deleting the "gender" column from your training data does not make a model fair. It just moves the bias somewhere nobody is checking.
A model learns from historical examples, so it treats "how it has always been done" as a rule. Bias, in this context, means exactly that: a systematic lean for or against a group.
It does not need the protected attribute (the one you are trying not to discriminate on, like gender or race) to reproduce the lean. It finds a proxy: a stand-in feature that carries the same information anyway. A club name. Where you live. Which school you went to.
Amazon's scrapped resume screener is the textbook case. Trained on ten years of resumes from a male-dominated industry, it taught itself to downgrade any resume containing the word "women's", as in "women's chess club captain" - nobody wrote that rule, the data implied it.
The mistake has a name, fairness through unawareness: the belief that a model cannot be biased about something it was never told.
So a real audit tests outputs, not inputs: not which columns went in, but whether the decisions differ across groups.
The model is not sexist. It is a mirror. Fairness work is deciding which reflections you refuse to ship.
And it is getting harder to test. Research on populations of LLM agents (models that talk to each other rather than each answering alone) found collective bias emerging from the group even when no agent showed bias individually. Fairness testing has to cover the whole system, not just the model inside it.
Quick check before you scroll: Why can a team of LLM agents produce a biased outcome even when each individual agent passes a bias check on its own?
Full breakdown + the answer: frankduah.me/learnings/2026-09-09-bias-and-fairness-in-ml-models
New here? I post a bite-size AI / ML concept like this every day - follow me for the daily drop, and it compounds fast. Why I do it: https://lnkd.in/gK8knHDH
#BiasAnd #AI #LLM #AIAgents #MachineLearning
The answer
Because bias can emerge from how agents interact and reinforce each other's outputs (the group dynamic), not just from any single model's weights - so testing each agent in isolation isn't enough; you have to test the whole pipeline.