· · 10 min read

I Audited an AI Triage Algorithm for Bias. Here's What I Found.

Bias in clinical AI gets talked about in the abstract a lot. I ran the numbers on a simulated triage system using real ICU data — and the gaps weren't where I expected them to be.

SK
Safiya Khan
Computer Science (AI) Student · CAPM®

Bias in clinical AI gets discussed constantly, almost always in the abstract. Papers describe it as a "known limitation." Conference panels agree it "needs more research." What is discussed far less often is what the bias actually looks like when you run the numbers on a real system yourself — which subgroups it affects, by how much, and whether the pattern matches what you expected going in. So I decided to stop reading about the problem and go find it.

I built an end-to-end fairness-auditing pipeline evaluating a simulated AI-assisted clinical triage system, trained and tested on the MIMIC-III Clinical Database Demo — an openly available, de-identified subset of real ICU admissions. The goal was straightforward to state and considerably harder to execute cleanly: quantify how the model's triage recommendations differed across demographic subgroups, and figure out whether those differences were large enough to matter clinically.

What I Actually Measured

"Bias" is not a single number, which is part of why it is so easy to gesture at vaguely and so hard to pin down precisely. I used Fairlearn to evaluate the model against two different fairness criteria: demographic parity, which asks whether positive triage outcomes are distributed proportionally across groups, and equalized odds, which asks a sharper question — are the model's error rates themselves consistent across groups, regardless of the base rate of the underlying condition.

That second criterion turned out to matter far more than the first. A model can look reasonably fair on demographic parity while still failing a specific group in a way that is clinically dangerous, if its false-negative rate is elevated precisely for that group. In triage, a false negative does not mean an inconvenience. It means someone who needed urgent attention was told they could wait.

"A model that is 'fair on average' can still be actively dangerous for the specific patient standing in front of it."

Where the Gaps Actually Were

Going in, I expected disparities to cluster around race and ethnicity — that is the axis most fairness literature focuses on, and for good historical reason. What I found was a more layered picture. There were meaningful gaps across ethnicity, as expected. But the largest and most consistent false-negative rate gap in my audit showed up along an axis I had weighted less heavily going in: age, specifically among older patients presenting with atypical or less textbook symptom profiles.

One honest caveat: the demo subset is small, so some subgroups contain only a handful of patients. These gaps are signals worth testing on the full credentialed dataset, not settled conclusions. That limitation is itself part of the lesson: fairness findings are only as reliable as the subgroup sample sizes behind them.

That is not a coincidence, and understanding why matters more than the number itself. Training data reflects who showed up, how they were coded, and how clinicians at the time documented their symptoms. Older patients are more likely to present with comorbidities that complicate a "clean" clinical picture, and a model trained to recognise the most common presentation pattern will systematically underweight the less common ones — even when the less common ones are not actually rare among the population the system is meant to serve.

Three findings from the audit:

01 — The largest false-negative rate gap was age-related, not the axis I expected going in

02 — Demographic parity alone was a poor proxy for clinical safety; equalized odds surfaced the real risk

03 — The disparity tracked training-data representation far more closely than any single protected attribute

What This Means for Deploying Clinical AI

The practical lesson is not "don't use AI in triage." It is that a single aggregate accuracy number is close to useless for deciding whether a clinical AI system is safe to deploy. Two systems with identical overall accuracy can have wildly different risk profiles depending on which patients their errors land on — and an institution adopting one without subgroup-level auditing has no way of knowing which one it bought.

It also means fairness auditing cannot be a one-time checkbox before launch. The demographic composition of a hospital's patient population shifts. A model audited and cleared against last year's data can quietly develop new gaps as the population it serves changes, without anyone noticing until the pattern shows up in outcomes.

The Conclusion I Keep Coming Back To

Auditing this system did not make me more cynical about AI in healthcare. If anything, it sharpened exactly what responsible deployment has to look like: subgroup-level evaluation as a standing requirement, not a one-time gate, and enough transparency about where a model's errors concentrate that clinicians using it know precisely where to apply extra scrutiny.

Bias in clinical AI is not an abstract research problem. It is a specific, measurable, and — if you are willing to look for it — findable pattern in the data. The uncomfortable part is not that it exists. It is how easy it is to miss if you only ever look at the average.

AI Ethics Fairlearn MIMIC-III Demo Clinical AI Bias Auditing Responsible AI
© 2026 Safiya Khan · safiyakhan.netlify.app ← Back to Blog