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