RSVP для вашего местного мероприятия TensorFlow Everywhere сегодня!
Эта страница переведена с помощью Cloud Translation API.
Switch to English

Что такое исправление модели?

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

  • Изменение входных данных: сбор дополнительных данных, генерация синтетических данных, настройка весов и частоты дискретизации различных срезов и т. Д. 1
  • Вмешательство в модель: изменение самой модели путем введения или изменения целей модели, добавления ограничений и т. Д. 2
  • Постобработка результатов: изменение выходных данных модели или интерпретация выходных данных для повышения производительности по всем показателям. 3

from tensorflow_model_remediation import min_diff
import tensorflow as tf

# Start by defining a Keras model.
original_model = ...

# Set the MinDiff weight and choose a loss.
min_diff_loss = min_diff.losses.MMDLoss()
min_diff_weight = 1.0  # Hyperparamater to be tuned.

# Create a MinDiff model.
min_diff_model = min_diff.keras.MinDiffModel(
original_model, min_diff_loss, min_diff_weight)

# Compile the MinDiff model normally.
min_diff_model.compile(...)

# Create a MinDiff Dataset and train the min_diff_model.
min_diff_model.fit(min_diff_dataset, ...)

Что такое MinDiff?

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

Обычно MinDiff применяется при попытке минимизировать разницу в частоте ложных срабатываний (FPR) или ложноотрицательных результатов (FNR) между фрагментом данных, принадлежащим к чувствительному классу, и более эффективным срезом. Для более подробного обсуждения показателей справедливости просмотрите литературу по этому вопросу. 4 5 6

Как работает MinDiff?

Учитывая два набора примеров из нашего набора данных, MinDiff штрафует модель во время обучения за различия в распределении оценок между двумя наборами. Чем менее различимы два набора, основанные на оценках прогноза, тем меньше будет применен штраф.

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

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

1 Чжан, Г., Бай, Б., Чжан, Дж., Бай, К., Чжу, К., Чжао, Т. (2020). Демографические данные не должны быть причиной токсичности: смягчение дискриминации в текстовых классификациях с помощью взвешивания экземпляров.
2 Прост, Ф., Цянь Х., Чен, К., Чи, Э., Чен, Дж., Бейтель, А. (2019). На пути к лучшему компромиссу между производительностью и справедливостью с сопоставлением распределения на основе ядра.
3 Алабдулмохсин, И. (2020). Справедливая классификация с помощью неограниченной оптимизации.
4 Дворк, К., Хардт, М., Питасси, Т., Рейнгольд, О., Земель, Р. (2011). Справедливость через осведомленность.
5 Хардт, М., Прайс, Э., Сребро, Н. (2016). Равенство возможностей в обучении с учителем.
6 Чулдечова, А. (2016). Справедливое предсказание с разрозненным воздействием: исследование систематической ошибки в инструментах прогнозирования рецидивов.

Ресурсы