Google I/O — это обертка! Наверстать упущенное в сеансах TensorFlow Просмотреть сеансы

Показатели справедливости: размышления об оценке справедливости

Заинтересованы в использовании бета-версии индикаторов справедливости?

Прежде чем вы это сделаете, мы просим вас прочитать следующее руководство.

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

Имейте в виду, что количественная оценка — это только часть оценки более широкого пользовательского опыта. Начните с размышлений о различных контекстах , в которых пользователь может познакомиться с вашим продуктом. Каковы различные типы пользователей, которых должен обслуживать ваш продукт? На кого еще может повлиять этот опыт?

Рассматривая влияние ИИ на людей, важно всегда помнить, что человеческие общества чрезвычайно сложны! Понимание людей и их социальной идентичности, социальных структур и культурных систем — каждая из этих огромных областей открытых исследований сама по себе. Добавьте к этому сложности межкультурных различий по всему миру, и даже закрепиться в понимании социального воздействия может быть непросто. По мере возможности мы рекомендуем консультироваться с экспертами в соответствующей области, среди которых могут быть социологи, социолингвисты и культурные антропологи, а также представители населения, в отношении которого будут применяться технологии.

Одна модель, например модель токсичности, которую мы используем в нашем примере colab , может использоваться во многих различных контекстах. Например, модель токсичности, развернутая на веб-сайте для фильтрации оскорбительных комментариев, сильно отличается от модели, развернутой в примере веб-интерфейса, где пользователи могут ввести предложение и посмотреть, какую оценку дает модель. В зависимости от варианта использования и того, как пользователи воспринимают предсказание модели, ваш продукт будет иметь разные риски, эффекты и возможности, и вы можете захотеть оценить различные проблемы справедливости.

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

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

  • Руководство People + AI по проектированию искусственного интеллекта, ориентированного на человека: это руководство — отличный источник вопросов и аспектов, которые следует учитывать при разработке продукта на основе машинного обучения. Хотя мы создали это руководство с расчетом на дизайнеров, многие из принципов помогут ответить на вопросы, подобные тому, который мы поставили выше.
  • Наши извлеченные уроки справедливости . В этом выступлении на Google I/O обсуждаются уроки, которые мы извлекли из нашей цели — создавать и разрабатывать инклюзивные продукты.
  • Ускоренный курс ML: Справедливость : Ускоренный курс ML включает 70-минутный раздел, посвященный выявлению и оценке проблем справедливости.

Итак, зачем смотреть на отдельные срезы? Оценка по отдельным срезам важна, поскольку сильные общие показатели могут скрыть низкую производительность для определенных групп. Точно так же хорошие показатели по определенной метрике (точность, AUC) не всегда означают приемлемую производительность по другим метрикам (коэффициент ложноположительных и ложноотрицательных результатов), которые одинаково важны для оценки возможностей и вреда для пользователей.

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

На какие группы я должен нарезать?

В общем, хорошей практикой является разделение по как можно большему количеству групп, на которые может повлиять ваш продукт, поскольку вы никогда не знаете, когда производительность может отличаться для одной из других. Однако, если вы не уверены, подумайте о разных пользователях, которые могут взаимодействовать с вашим продуктом, и о том, как это может на них повлиять. В частности, обратите внимание на срезы, связанные с чувствительными характеристиками, такими как раса, этническая принадлежность, пол, национальность, доход, сексуальная ориентация и статус инвалидности.

Что делать, если у меня нет данных, помеченных для срезов, которые я хочу исследовать?

Хороший вопрос. Мы знаем, что многие наборы данных не имеют достоверных меток для отдельных атрибутов идентичности.

Если вы оказались в таком положении, мы рекомендуем несколько подходов:

  1. Определите, есть ли у вас атрибуты, которые могут дать вам некоторое представление о производительности в разных группах. Например, география , хотя и не эквивалентна этнической принадлежности и расе, может помочь вам выявить любые несопоставимые закономерности в производительности.
  2. Определите, существуют ли репрезентативные общедоступные наборы данных, которые могут хорошо соответствовать вашей проблеме. На сайте Google AI вы можете найти ряд разнообразных и всеобъемлющих наборов данных, в том числе Project Respect , Inclusive Images и Open Images Extended .
  3. При необходимости используйте правила или классификаторы, чтобы пометить данные объективными поверхностными атрибутами. Например, вы можете пометить текст в зависимости от того, есть ли в предложении идентификационный термин. Имейте в виду, что у классификаторов есть свои проблемы, и, если вы не будете осторожны, вы также можете ввести еще один уровень систематической ошибки. Четко определите, что на самом деле классифицирует ваш классификатор. Например, классификатор возраста на изображениях на самом деле классифицирует воспринимаемый возраст . Кроме того, по возможности используйте поверхностные атрибуты, которые можно объективно идентифицировать в данных. Например, не рекомендуется создавать классификатор изображений для расы или этнической принадлежности, потому что это не визуальные черты, которые можно определить в изображении. Классификатор, скорее всего, выявит прокси или стереотипы. Вместо этого создание классификатора по оттенку кожи может оказаться более подходящим способом маркировки и оценки изображения. Наконец, обеспечьте высокую точность классификаторов, маркирующих такие атрибуты.
  4. Найдите более репрезентативные данные с пометкой

Всегда обязательно оценивайте несколько разнообразных наборов данных.

Если ваши оценочные данные неадекватно отражают вашу пользовательскую базу или типы данных, которые могут встретиться, вы можете получить обманчиво хорошие показатели справедливости. Точно так же высокая производительность модели в одном наборе данных не гарантирует высокой производительности в других.

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

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

Когда я протестировал достаточно фрагментов и как узнать, какие фрагменты нужно тестировать?

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

Для начала мы рекомендуем продумать ваш конкретный вариант использования и различные способы взаимодействия пользователей с вашим продуктом. Как у разных пользователей может быть разный опыт? Что это означает для срезов, которые вы должны оценивать? Сбор отзывов от разных пользователей также может выявить потенциальные фрагменты для определения приоритетов.

Какие показатели выбрать?

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

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

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

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

Критические показатели справедливости для классификации

Размышляя о модели классификации, подумайте о влиянии ошибок (разницах между фактической меткой «наземной истины» и меткой из модели). Если некоторые ошибки могут представлять больше возможностей или вреда для ваших пользователей, убедитесь, что вы оцениваете частоту этих ошибок среди групп пользователей. Эти коэффициенты ошибок определены ниже в метриках, которые в настоящее время поддерживаются бета-версией индикаторов справедливости.

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

Показатели, доступные сегодня в индикаторах справедливости

Примечание. Существует множество ценных показателей справедливости, которые в настоящее время не поддерживаются в бета-версии индикаторов справедливости. Поскольку мы продолжаем добавлять новые показатели, мы продолжим добавлять рекомендации по этим показателям здесь. Ниже вы можете получить доступ к инструкциям по добавлению собственных показателей в индикаторы справедливости. Кроме того, обращайтесь по адресу tfx@tensorflow.org , если есть метрики, которые вы хотели бы увидеть. Мы надеемся сотрудничать с вами, чтобы развивать это дальше.

Положительная ставка/отрицательная ставка

  • Определение: процент точек данных, которые классифицируются как положительные или отрицательные, независимо от достоверности.
  • Относится к: демографическому паритету и равенству результатов, когда они равны между подгруппами.
  • Когда использовать эту метрику: Справедливые случаи использования, когда важно иметь равные конечные проценты групп.

Истинный положительный показатель / ложноотрицательный показатель

  • Определение: процент положительных точек данных (как указано в основной истине), которые правильно классифицированы как положительные, или процент положительных точек данных, которые неправильно классифицированы как отрицательные.
  • Относится к: равенству возможностей (для положительного класса), когда они равны между подгруппами
  • Когда использовать эту метрику: Справедливые случаи использования, когда важно, чтобы один и тот же % квалифицированных кандидатов получил положительную оценку в каждой группе. Это чаще всего рекомендуется в случаях классификации положительных результатов, таких как заявки на получение кредита, поступление в школу или то, подходит ли контент для детей.

Истинный отрицательный показатель / ложноположительный показатель

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

Точность и AUC

  • Относится к: прогнозируемому паритету, когда он равен в подгруппах
  • Когда использовать эти показатели: Случаи, когда точность задачи является наиболее важной (не обязательно в заданном направлении), например, идентификация лица или кластеризация лиц.

Ложная скорость обнаружения

  • Определение: Процент отрицательных точек данных (помеченных в основной истине), которые неправильно классифицированы как положительные, из всех точек данных, классифицированных как положительные. Это также обратная сторона PPV.
  • Относится к: прогнозируемому паритету (также известному как калибровка), когда он равен в подгруппах
  • Когда использовать эту метрику: случаи, когда доля правильных положительных прогнозов должна быть одинаковой для всех подгрупп.

Частота ложных пропусков

  • Определение: Процент положительных точек данных (помеченных в основной истине), которые неправильно классифицированы как отрицательные, из всех точек данных, классифицированных как отрицательные. Это также является обратным значением NPV.
  • Относится к: прогнозируемому паритету (также известному как калибровка), когда он равен в подгруппах
  • Когда использовать эту метрику: случаи, когда доля правильных отрицательных прогнозов должна быть одинаковой для всех подгрупп.

Примеры показателей, которые следует выбрать

  • Систематические сбои в обнаружении лиц в приложении камеры могут негативно сказаться на работе определенных групп пользователей. В этом случае ложноотрицательные результаты в системе обнаружения лиц могут привести к отказу продукта, а ложноположительные результаты (обнаружение лица, когда его нет) могут слегка раздражать пользователя. Таким образом, оценка и минимизация частоты ложноотрицательных результатов важны для этого варианта использования.
  • Несправедливая пометка текстовых комментариев от определенных людей как «спам» или «высокая токсичность» в системе модерации приводит к тому, что некоторые голоса замолкают. С одной стороны, высокий уровень ложных срабатываний приводит к несправедливой цензуре. С другой стороны, высокий уровень ложноотрицательных результатов может привести к распространению токсичного контента от определенных групп, что может нанести вред как пользователю, так и репрезентативному ущербу для этих групп. Таким образом, важно учитывать обе метрики в дополнение к метрикам, которые учитывают все типы ошибок, такие как точность или AUC.

Не видите нужных показателей?

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

Заключительные заметки

Разрыв в метрике между двумя группами может быть признаком того, что ваша модель может иметь несправедливые перекосы . Вы должны интерпретировать свои результаты в соответствии с вашим вариантом использования. Тем не менее, первый признак того, что вы можете несправедливо относиться к одной группе пользователей, — это когда показатели между этой группой пользователей и вашим общим показателем значительно различаются. Обязательно учитывайте доверительные интервалы при рассмотрении этих различий. Если у вас слишком мало выборок в определенном срезе, разница между показателями может быть неточной.

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

Оценки справедливости должны проводиться на протяжении всего процесса разработки и после запуска (не за день до запуска). Точно так же, как улучшение вашего продукта — это непрерывный процесс, который можно корректировать на основе отзывов пользователей и рынка, обеспечение честности и справедливости вашего продукта требует постоянного внимания. По мере изменения различных аспектов модели, таких как обучающие данные, входные данные из других моделей или сам дизайн, показатели справедливости, вероятно, изменятся. «Очистить планку» один раз недостаточно, чтобы гарантировать, что все взаимодействующие компоненты останутся неизменными с течением времени.

Для редких вредоносных примеров следует проводить состязательное тестирование. Оценки справедливости не предназначены для замены состязательного тестирования. Дополнительная защита от редких целевых примеров имеет решающее значение, поскольку эти примеры, вероятно, не проявятся в данных обучения или оценки.