- PVSM.RU - https://www.pvsm.ru -

Заметки Дата Сатаниста: честность модели

Один из ключевых фундаментальных принципов обработки данных, согласно GDPR, это право человека на объяснение принятого решения и честность этого решения [1].

И сегодня мы поговорим о том, что же такое честность модели машинного обучения.

Заметки Дата Сатаниста: честность модели - 1


Картинка взята отсюда [2]

И разберем на простом примере выдачи кредитов: какие проблемы могут возникнуть, какие подходы к ним бывают и что из этого обычно получается.

Задача: по данным пользователя выдать решения и вероятности того, что не произойдет дефолта кредита. Причем таким образом, чтобы наши модели машинного обучения не попали под раздачу со всеми законами о дискриминации.

Заметки Дата Сатаниста: честность модели - 2

Самый важный вывод из всей статьи (бесплатно и без смс):

Честность модели всегда контекстуальна, определяется задачей и людьми вовлеченными в процесс.

Следствие: если спросить мнение пяти экспертов по этому вопросу, то вполне можно получить пять разных мнений.
Вывод: всё очень сложно.

Разбираем на примере

Здесь и далее мы следуем работе гугла по честности регрессионной модели [3], оценивающей вероятность дефолта кредита (у них там все интерактивно).

Два сценария: идеальный и реалистичный

Потенциально, у нас две ситуации: когда группа дефолта (которая не выплатила кредит) и группа успешно успешно выплатившая не пересекаются — то есть классификатор успешно отделяют обе группы. Т.е. если человек в группе дефолта, то вероятность выплаты кредита меньше 0.5, и наоборот для второй группы.

Очевидно, что такой идеальный сценарий в жизни никогда не реализуется и идеальных классификаторов в жизни не существует, а значит куда более реалистичен второй сценарий (на картинке справа):

Заметки Дата Сатаниста: честность модели - 3

Граница решения и профит модели

Соответственно и что же мы делаем в такой ситуации? Для каждого клиента (из прошлого, по которому мы знаем правильный ответ) модель дает вероятность успешной выплаты кредита — так же мы знаем, кто выплатил, а кто нет. Создателям модели известны риски ложноположительных и ложноотрицательных предсказаний (domain knowledge).

Далее, двигая границу мы будем получать разные результаты по профиту всего процесса — и можем обнаружить положение дающее максимальный профит.

Заметки Дата Сатаниста: честность модели - 4

Смещение границ решения под нужное определение честности

Далее представим, что у нас есть группа, с которой мы подозреваем происходит что-то неладное — определений честно много разных и мы обсудим их ниже. Сейчас важно, что они определяются через true positive, true negative, etc. То есть через предсказания модели и их отношением с настоящими метками класса.

Как правило, все определения — это форма равенства определенных показателей в духе, равенства true positive rate. И движением границ, мы с одной стороны двигаем профит (как правило вниз), с другой приближаемся к нужным границам определения честность (как правило там задают некоторый отрезок допустимых значений).

Заметки Дата Сатаниста: честность модели - 5

Типы метрик

Тут мы расскажем кратко о типах метрик, подробнее можно прочитать в работе гугла [4].

  1. Независящий от групп (Group unaware): Никаких границ, система считает, что нужно давать кредит — значит достойны, а если система не считает, что нужно — значит так честно, ибо ваши данные хуже вписываются в то, что мы верим, кредитоспособный клиент.
  2. Групповые границы (Group thresholds): Второй эксперт вообще не согласен с первым. Так как есть исторические перекосы в данных, то например, женщины могут выглядеть менее кредитоспособными, чем мужчины. Например, у них может быть куда больше перерывов в работе из-за декрета, но машине все равно почему у вас был перерыв — она может посчитать вам это в минус. Поэтому мы поправим границы, чтобы это поправить.
  3. Демографический паритет (Demographic parity): Не-не, скажет третий, вот если у нас 30% заявок от женщин, то и 30% кредитов должно пойти им.
  4. Равные возможности (Equal opportunity): Четвертый скажет, что это чушь — потому что у них по-прежнему разные риски и с чего бы должны быть равные пропорции? Должно быть так: равные пропорции среди тех, кто их исторически выплатил. То есть, если 90% среди выплативших мужчин получили кредиты, то и 90% среди выплативших женщин должны их получить. (Если вы запутались, то модели строятся на исторических данных, где мы знаем правильные ответы.)
  5. Равная точность (Equal accuracy): Эксперт номер пять скажет, что четвертый на правильном пути, но не до конца: ибо оно не учитывает тех, кому их не выдали! А значит, что метрика должна учесть точность в целом, а не только положительные примеры.

Если посадите этих экспертов в одному комнату, то даже к утру они не договорятся и будут спорить о том, какое определение правильное и находить контрпримеры к определениям друг друга, показывающих их несостоятельность.

Помимо того, что определения разные в игру вступают еще и внешние факторы, которые и без всяких “что если”, влияют на выбор метрики: социо-экономический контекст, расчет реальных последствий для конкретной имплементации системы в обществе итд.

Невозможно следовать всем метрикам честности

Даже двум! Рассмотрим контр пример, подробнее об этом можно прочитать здесь [5].

Возьмем базовый уровень заражения по двум группам (base rate):

Заметки Дата Сатаниста: честность модели - 6

Как бы мы не смещали показатели для обеих групп, если базовые уровни отличаются, то выравнять сразу две метрики честности становится невозможно.

Заметки Дата Сатаниста: честность модели - 7

Вывод: должна быть выбрана метрика честности, которая является оптимальной для данного контекста и задачи.

Еще пара нюансов

Нельзя просто удалить показатели, которые мы считаем чувствительными, например, если вы удалите нужную переменную — есть шанс, что система сможет ее “аппроксимировать” при принятии решения и тем не менее учесть.

Например, если исторические данные о том, за кем вы замужем/женаты показывают, что как правило мужчина старше, то это очень простая линейная метрика, которая может понять пол человека при подаче на кредит исходя из данных о его семье (которые вполне могут быть валидной частью анализа данных и построения модели).

Выводы

Честность модели — это вещь непростая и контекстная.

Невозможно удовлетворять все метрикам честности одновременно (даже двум математически нельзя).

В центре дизайна модели и метрик честности должны стоять люди, эксперты, которые должны принять решение о том, что и как должно мониториться в системе принятия решений.

Ссылки по теме:

  1. research.google.com/bigpicture/attacking-discrimination-in-ml [3]
  2. research.google/teams/brain/pair [6]
  3. pair-code.github.io/what-if-tool/ai-fairness.html [4]
  4. pair.withgoogle.com/explorables/measuring-fairness [7]
  5. Context-conscious fairness in using machine learning to make decisions [8]
  6. Inherent Trade-Offs in the Fair Determination of Risk Scores [9]

Другие заметки Дата Сатаниста:

  1. Что может пойти не так с Data Science? Сбор данных [10]
  2. Заметки Дата Сайентиста: как измерить время забега марафона лежа на диване [11]
  3. Заметки Дата Сайентиста: маленькие утилиты — большая польза [12]
  4. Заметки Дата Сайентиста: персональный обзор языков запросов к данным [13]
  5. Заметки Дата Сайентиста: на что обратить внимание при выборе модели машинного обучения — персональный топ-10 [14]
  6. Заметки Дата Сайентиста: с чего начать и нужно ли оно? [15]


Заметки Дата Сатаниста: честность модели - 8 [16]

Заметки Дата Сатаниста: честность модели - 9

Автор: paramonov_ruvds

Источник [17]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/analiz-danny-h/358102

Ссылки в тексте:

[1] это право человека на объяснение принятого решения и честность этого решения: https://www.europarl.europa.eu/RegData/etudes/BRIE/2019/640163/EPRS_BRI(2019)640163_EN.pdf

[2] отсюда: https://towardsdatascience.com/a-tutorial-on-fairness-in-machine-learning-3ff8ba1040cb

[3] работе гугла по честности регрессионной модели: https://research.google.com/bigpicture/attacking-discrimination-in-ml

[4] подробнее можно прочитать в работе гугла: https://pair-code.github.io/what-if-tool/ai-fairness.html

[5] подробнее об этом можно прочитать здесь: https://pair.withgoogle.com/explorables/measuring-fairness

[6] research.google/teams/brain/pair: https://research.google/teams/brain/pair/

[7] pair.withgoogle.com/explorables/measuring-fairness: https://pair.withgoogle.com/explorables/measuring-fairness/

[8] Context-conscious fairness in using machine learning to make decisions: https://www.semanticscholar.org/paper/Context-conscious-fairness-in-using-machine-to-make-Lee/009342f38491dafe445850fb6adc15d603a32fa9

[9] Inherent Trade-Offs in the Fair Determination of Risk Scores : https://arxiv.org/pdf/1609.05807.pdf

[10] Что может пойти не так с Data Science? Сбор данных: https://habr.com/ru/company/ruvds/blog/510944/

[11] Заметки Дата Сайентиста: как измерить время забега марафона лежа на диване: https://habr.com/ru/company/ruvds/blog/512884/

[12] Заметки Дата Сайентиста: маленькие утилиты — большая польза: https://habr.com/ru/company/ruvds/blog/514990/

[13] Заметки Дата Сайентиста: персональный обзор языков запросов к данным: https://habr.com/ru/company/ruvds/blog/515820/

[14] Заметки Дата Сайентиста: на что обратить внимание при выборе модели машинного обучения — персональный топ-10: https://habr.com/ru/company/ruvds/blog/517830/

[15] Заметки Дата Сайентиста: с чего начать и нужно ли оно?: https://habr.com/ru/company/ruvds/blog/519522/

[16] Image: http://ruvds.com/ru-rub?utm_source=habr&utm_medium=article&utm_campaign=Sergei&utm_content=zametki_data_satanista_chestnost_i_modeli#order

[17] Источник: https://habr.com/ru/post/524084/?utm_source=habrahabr&utm_medium=rss&utm_campaign=524084