Уяви систему, яка автоматично сортує заявки: одні пропускає далі, інші відхиляє. Її навчили на архіві минулих рішень, вона показує 82% точності — і здається, що робота закінчена. Але точність — це одне число на всіх, і всередині нього може ховатися стійка нерівномірність: одним групам модель відмовляє помилково частіше, ніж іншим.
Ця лекція — про те, як таку нерівномірність виміряти: через частоти помилок, порахованих окремо по групах. Основний інструмент — Equality of Odds, рівність шансів. Ми розберемо означення символ за символом і побачимо, де воно конфліктує з іншими розумними означеннями справедливості. Конфліктує — і це не недогляд, а математична необхідність.
01 / ДжерелоЗвідки береться упередженість
Модель нічого не вигадує: вона знаходить у даних закономірності й відтворює їх на нових прикладах. Тому питання «чому модель упереджена» зводиться до питання «що було в даних». Джерел зазвичай три.
Перше — історія. Мітки беруть із минулих рішень: кому видали кредит, кого запросили на співбесіду. Якщо рішення приймалися нерівномірно, ця нерівномірність записана в даних як звичайна закономірність. Модель не відрізняє «так було справедливо» від «так було» — вона вчиться передбачати те, що бачила.
Друге — вибіркове зміщення. Результат ми знаємо тільки для тих, кого свого часу прийняли. Якщо одну групу відхиляли частіше, даних про неї менше, і вони описують лише її «верхній зріз» — модель для цієї групи працюватиме гірше.
Третє — проксі-мітка. Потрібної величини в даних немає, тож її замінюють: замість «наскільки добре людина працюватиме» беруть «яку оцінку поставив керівник». Замінник корелює з ціллю, але не збігається з нею — і його викривлення модель успадкує повністю.
02 / ІлюзіяПастка «модель не бачить групи»
Найперша ідея, яка спадає на думку: просто не давати моделі ознаку групи. Немає стовпця — немає й дискримінації. Цей підхід має назву fairness through unawareness і майже ніколи не працює.
Причина проста: інші ознаки корелюють з групою. Поштовий індекс, назва школи, історія покупок — усе це може нести інформацію про групу. Така ознака називається проксі. Прибравши явний стовпець, ми не прибрали інформацію — лише позбавили себе можливості її виміряти.
Нижче — найпростіша демонстрація. Є «нейтральна» числова ознака Z, у якій
немає жодного слова про групу. Повзунок задає силу звʼязку між Z і групою, а
простий класифікатор — один поріг на Z — намагається групу вгадати.
Інтерактив 1 · Проксі-ознака відновлює групу
Розподіли «нейтральної» ознаки Z для двох груп. Пунктир — найкращий поріг, який відновлює групу.
Звідси парадоксальний на перший погляд висновок: щоб контролювати нерівномірність, ознаку групи треба знати — принаймні на етапі перевірки. Не щоб подавати її в модель, а щоб рахувати метрики окремо по групах.
03 / ІнструментTPR і FPR: на чому все тримається
Далі знадобиться лише один інструмент — матриця плутанини, порахована окремо для кожної
групи. Є справжня мітка Y (1 — «результат мав би бути позитивним») і рішення
моделі Ŷ. Чотири поєднання дають чотири клітинки:
| клітинка | Y | Ŷ | як це виглядає в житті |
|---|---|---|---|
| TP | 1 | 1 | правильно прийняли |
| FN | 1 | 0 | помилково відхилили |
| FP | 0 | 1 | помилково прийняли |
| TN | 0 | 0 | правильно відхилили |
Абсолютні числа між групами порівнювати не можна: більша група дасть більше помилок просто тому, що вона більша. Тому беруть частки — вони не залежать від масштабу:
TPR (він же чутливість) — яку частку тих, хто справді мав отримати позитивне рішення, модель пропустила. FPR — яку частку тих, хто не мав, вона пропустила все одно. Ключова деталь: обидві величини рахуються всередині свого справжнього класу, тому не залежать від того, скільки в групі тих і тих.
Майже всі класифікатори видають не «так/ні», а число — оцінку ймовірності s.
Рішення зʼявляється лише тоді, коли обрано поріг t: приймаємо,
якщо s ≥ t. Поріг — не частина навченої моделі, а окреме рішення людини.
04 / СпостереженняОдин поріг на всіх
Ось синтетичний приклад, з яким працюватимемо далі: дві групи й одна модель, що видає
скор для кожної людини. Чотири ряди на картинці — чотири «мішки» точок: у групі A окремо
ті, хто має Y=1, і ті, хто має Y=0, і те саме для групи B.
Бірюзові точки — прийняті при поточному порозі, сірі — відхилені.
Частка бірюзових у ряді «Y = 1» — це і є TPR цієї групи, у ряді «Y = 0» — FPR. Тягни єдиний спільний поріг і дивись на різниці.
Інтерактив 2 · Спільний поріг для обох груп
Кожна крапка — одна людина, розташована за скором моделі. Поріг однаковий для всіх.
Порухавши повзунок, легко переконатись: одна з різниць іноді проходить через нуль — але обидві одночасно не виходять на нуль ніде, крім країв шкали.
05 / ОзначенняЩо саме вимагає Equality of Odds
Тепер означення читається майже без зусиль. Позначимо через A належність до
групи, через Y — справжню мітку, через Ŷ — рішення моделі.
Критерій Equality of Odds вимагає:
P(Ŷ = 1 | …) — ймовірність, що модель ухвалить позитивне рішення. Але не
для всіх підряд, а за двох умов одразу.
Y = y: беремо лише людей із заданим справжнім результатом. Це принципово —
ми не вимагаємо однакової частки від усієї групи, а порівнюємо людей, які
однакові за суттю справи.
A = a проти A = b: серед цих однакових за міткою людей
порівнюємо дві групи й вимагаємо, щоб частки збіглися.
«Для всіх y» означає дві окремі рівності. При y = 1 частка позитивних
рішень — це TPR, при y = 0 — FPR. Отже:
Ось і все означення: однаковий шанс бути прийнятим для тих, хто на це заслуговує, і однаковий шанс помилково пройти для тих, хто ні. Оскільки FNR = 1 − TPR, рівні TPR автоматично дають і рівні частки помилкових відмов.
Ідеальної рівності не буває, тому міряють розриви:
Чим ближче розрив до нуля, тим ближче модель до критерію. Зазвичай домовляються про
допуск ε: розрив менший за ε вважають прийнятним.
06 / ВтручанняДва пороги: вирівнюємо шанси
Якщо спільний поріг дає різні шанси, найпростіше втручання — дозволити порогам відрізнятися. Це і є post-processing: саму модель ми не чіпаємо, працюємо лише з її виходом.
Тепер повзунків два. Спробуй звести обидва розриви до нуля одночасно, не забуваючи дивитись на точність. Кнопка знизу перебере всі пари порогів і візьме ту, що дає найменший EO-розрив, а серед однаково справедливих — найточнішу.
Інтерактив 3 · Окремий поріг для кожної групи
Ті самі дані. Два незалежні пороги — і видно, скільки коштує вирівнювання.
07 / ВиродженняЛіниві розвʼязки
Рухаючи повзунки, ти майже напевно натрапив на дві позиції, де обидва розриви рівно нульові. Перша: обидва пороги на нулі — приймаємо всіх, TPR = 1 і FPR = 1 в обох групах. Друга: обидва пороги на одиниці — не приймаємо нікого, TPR = 0 і FPR = 0 скрізь.
Формально критерій виконано ідеально, практично це порожні розвʼязки: модель не робить різниці ні між ким. Такі точки називають лінивими (lazy solutions) — і саме через них не можна оптимізувати лише розрив справедливості.
08 / ГеометріяПогляд через ROC
Є спосіб побачити відразу всі можливі пороги. ROC-крива групи — це траєкторія точки (FPR, TPR), коли поріг рухається від 1 до 0. Побудуємо її окремо для кожної групи — і умова Equality of Odds стане геометричною: потрібна пара порогів, за якої точка групи A і точка групи B збігаються, адже збіг означає одночасну рівність і FPR, і TPR. Можливо це лише там, де криві перетинаються.
Інтерактив 4 · Дві ROC-криві й точка перетину
Рухай пороги — точки біжать по своїх кривих. EO виконано лише там, де вони зійшлися.
Останній випадок трапляється, коли модель для однієї групи слабша — наприклад, через меншу кількість даних. Тоді точну рівність шансів можна отримати лише «зіпсувавши» кращий класифікатор до рівня гіршого. Це ситуація, коли правильна відповідь лежить не в оптимізації, а в поверненні до збору даних.
09 / ПослабленняEqual opportunity
Дві рівності одночасно — вимога сувора, тому часто беруть половину означення. Якщо
залишити тільки y = 1, отримаємо equal opportunity
(рівність можливостей):
Сенс: серед тих, хто справді заслуговує позитивного рішення, шанс отримати його не залежить від групи — тобто однакова частка помилкових відмов. Це природна вимога там, де основна шкода — саме відмова: не дали кредит платоспроможному, не призначили обстеження хворому.
Дзеркальний варіант — залишити тільки y = 0, тобто вимагати рівних FPR
(predictive equality). Він доречний там, де шкода — навпаки, помилкове включення:
хибне спрацювання системи контролю.
10 / КонкурентиПаритет і каліброваність
Equality of Odds — не єдине означення. Є щонайменше два інші, кожне звучить розумно, і кожне вимірює зовсім інше.
Демографічний паритет
Найпрямолінійніша ідея: частка позитивних рішень має бути однаковою в обох групах.
Відмінність від EO принципова: тут немає умови на Y — ми
взагалі не питаємо, який результат був справжнім, лише рахуємо, скільки прийнято. Слабке
місце очевидне: якщо частки тих, хто має Y=1, у групах різні, паритет змушує
систему приймати різні за суттю рішення, щоб зійшлися підсумкові цифри.
Каліброваність
Третій критерій говорить не про рішення, а про сам скор. Модель калібрована
всередині групи, якщо її число читається буквально: серед людей зі скором 0.7 справді
близько 70% мають Y=1.
Близький родич каліброваності, який зручніше міряти вже після рішення, — predictive parity: однакова точність позитивних рішень.
Це вимога з боку того, хто читає результат: якщо система сказала «так», відповідь має означати одне й те саме незалежно від групи.
| критерій | що зрівнює | умовно на | вразливість |
|---|---|---|---|
| EO | TPR і FPR | мітку Y | ліниві розвʼязки |
| equal opp. | лише TPR | Y = 1 | мовчить про хибні прийняття |
| паритет | частку прийнятих | нічого | ігнорує справжній результат |
| PPV | точність «так» | рішення Ŷ = 1 | залежить від базових ставок |
11 / КонфліктТеорема про несумісність
Найважливіший результат теми — негативний. Роботи Клайнберга, Мулленатана й Рагавана та, незалежно, Чулдечової (2016–2017) показують: якщо базові ставки груп різні і класифікатор не ідеальний, то виконати одночасно каліброваність, рівність TPR і рівність FPR неможливо. Не «складно» і не «дорого» — математично неможливо.
Побачити чому найпростіше через одну тотожність. Позначимо базову ставку групи
p = P(Y = 1); тоді точність позитивних рішень розкладається так:
Чисельник — прийняті правильно, знаменник — усі прийняті. А тепер головне: у
правій частині стоять рівно три величини — p, TPR і FPR. Якщо EO
виконано, TPR і FPR однакові в обох групах, отже PPV лишається функцією тільки
базової ставки. І якщо p у групах різні, PPV неминуче різний — виходу з цього
рівняння немає.
Далі — та сама демонстрація на числах. Поріг групи A зафіксовано в точці перетину ROC-кривих; рухаючи поріг групи B, дивись, як три розриви обнуляються в трьох різних місцях.
Інтерактив 5 · Три критерії на тих самих даних
Три криві розривів як функції порогу групи B. Нуль у кожної свій.
12 / ПричинаБазові ставки — корінь конфлікту
Та сама формула підказує, коли конфлікту немає: коли p в обох групах
однакове. Тоді EO автоматично тягне за собою рівність PPV, і критерії перестають сперечатись.
Перевіримо це прямо. Ставка групи A закріплена на 0.50, ставку групи B рухаєш повзунком. Пороги зафіксовано в точці, де EO виконано, — і вони лишаються придатними при будь-якій базовій ставці, бо ROC-криві від неї не залежать. Дивимось, що при цьому робить PPV.
Інтерактив 6 · Що робить різниця базових ставок
Пороги весь час тримають EO. Дві криві — точність рішень «так» у кожній групі.
13 / ПлатаЦіна справедливості й способи її платити
Обмеження звужує множину допустимих розвʼязків, а найкращий розвʼязок із меншої множини не може бути кращим за найкращий із більшої. Тому точність під обмеженням справедливості завжди менша або дорівнює точності без нього. Наскільки менша — питання емпіричне. Заплатити цю ціну можна двома способами:
Модель уже навчена й не змінюється; працюємо тільки з її виходом, підбираючи групові пороги. Саме це робив Інтерактив 3.
Плюси: не потрібні ні доступ до навчання, ні сирі дані. Мінуси: потрібна ознака групи на етапі рішення — а це часто заборонено.
Записуємо справедливість як обмеження прямо в задачу оптимізації:
Розриви — розривні функції параметрів, тому на практиці їх замінюють гладкими
наближеннями і додають як штраф до втрат; ε задає строгість вимоги.
Плюси: ознака групи не потрібна під час роботи. Мінуси: дорожче й складніше, результат треба перевіряти після кожного перенавчання.
Є й третій шлях, найменш ефектний і найчастіше найкорисніший: виправити дані. Зібрати більше прикладів для недопредставленої групи, переглянути спосіб отримання міток. Красивої формули він не дає, зате лікує причину, а не симптом.
14 / ПрактикаДе це важить насправді
Вибір критерію залежить від того, яка помилка в задачі болючіша й для кого:
| сфера | Y = 1 означає | болюча помилка | типовий критерій |
|---|---|---|---|
| кредит | позика буде повернена | відмова платоспроможному | equal opportunity (рівні TPR) |
| найм | кандидат підходить | відсів придатного | equal opportunity + аудит паритету |
| медицина | потрібне втручання | пропущений випадок | рівні FNR, каліброваність |
| правосуддя | подія станеться | хибне спрацювання | predictive equality (FPR) |
| модерація | контент порушує правила | видалення нормального | рівні FPR по мовах |
Останній рядок варто прочитати уважно: «групою» не обовʼязково є демографічна категорія. Це може бути мова, регіон, тип пристрою, рідкісний підклас. Уся математика вище працює для будь-якого розбиття вибірки — тому групові метрики показують ще й те, де модель просто тихо не працює.
Підсумок
- Одне число точності приховує структуру помилок: рахуй TPR і FPR окремо по групах.
- Прибрати ознаку групи недостатньо — проксі відновлюють її, а разом з нею й усі зміщення.
- Equality of Odds — дві рівності одночасно, TPR і FPR, обчислені всередині справжніх класів; послаблення — equal opportunity.
- Ліниві розвʼязки задовольняють критерій ідеально й не варті нічого: справедливість читається лише в парі з якістю.
- Три критерії несумісні при різних базових ставках і неідеальному класифікаторі. Це теорема, а не проблема реалізації.
- Тому справедливість — це вибір означення, зроблений явно й обґрунтований предметно. Код рахує розрив; яке число прийнятне — не до коду.
Далі в темі
Теорію прочитано. Тепер закріпи її на практиці.