How Bias Launders Itself — Proxies Rebuild Locked Traits
delete the protected column and the model rebuilds it from postal codes, devices and receipts
Protected traits — locked
withheld from the model
🔒 ethnicity
🔒 age
🔒 gender
🔒 disability
🔒 beliefs / religion
kept out of training input —
the law says: do not use.
deleting the column changes nothing
if proxies rebuild it.
Proxy features — open
collected freely, looks neutral
◯ postal code
segregated areas → ethnicity
◯ IP address
neighbourhood + household
◯ device model
income bracket → age, class
◯ purchase history
lifestyle → beliefs, gender
each looks innocent alone —
together they rebuild
the locked column, cleanly.
strong
predictor of
Opaque model → Decisions
weights unreadable — bias hidden
scoring model v3.2
4.2M weights — no reason codes
auditors see inputs + outputs only
fair on paper, skewed in practice
scores
Decisions — the same people lose:
hire
loan
insure
fly
appeals go nowhere —
nobody can explain the score.
machine learning is like money laundering for bias
extrapolating a discriminatory past codifies and amplifies it —
the future needs moral imagination, not just historical data
past as training data → past as destiny, unless we intervene
neutral hiring / lending / insurance / travel examples — how bias launders itself