Введение

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

Несмотря на ограждения, системы машинного обучения, включая ChatGPT, находятся в стадии разработки. Модели машинного обучения могут давать предвзятые результаты по многим причинам, одна из которых заключается в том, что модели можно обучать на наборах данных, которые могут отражать социальные предрассудки и содержать предубеждения. Кроме того, модели, которые, как правило, имеют самую высокую прогностическую точность, часто создают проблемы с точки зрения интерпретируемости. Их обычно называют «черными ящиками» из-за присущей им сложности, что затрудняет понимание их процессов принятия решений. Однако инструменты объяснимости, такие как значения Шепли, могут помочь уменьшить предвзятость в моделях машинного обучения.

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

Что такое ценности Шепли?

Значения Шепли — это понятие из теории кооперативных игр, введенное Ллойдом Шепли в 1953 году. С тех пор значения Шепли широко используются в различных областях, включая экономику, политологию и машинное обучение.

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

[Значения Шепли] являются полезными показателями для определения того, насколько важна функция или какой вклад она вносит в решение, которое собирается принять модель машинного обучения. Это очень хорошая методология, довольно интуитивно понятная, единственным недостатком которой является сложность ее вычисления. — Кайл Полич, Data Skeptic

Как ценности Шепли могут помочь уменьшить предвзятость в моделях машинного обучения?

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

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

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

Реальные примеры того, как ценности Шепли уменьшают предвзятость:

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

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

Одним из примеров государственного учреждения, которое извлекает выгоду из ценностей Шепли, является Департамент доходов штата Аризона. Департамент доходов штата Аризона полагается на интегрированную налоговую систему GCOM RevHub для оценки рисков, выявления проблем, анализа социальных сетей, выбора аудита и оптимизации сборов. Непреднамеренные предубеждения, встроенные в модели, могут привести к несправедливому обращению с некоторыми налогоплательщиками и могут привести к юридическим и этическим проблемам. Предвзятость модели в отношении определенной группы налогоплательщиков может привести к более строгому контролю и штрафам, в то время как к другим группам относятся более снисходительно. Эти проблемы могут в конечном итоге подорвать авторитет и доверие к налоговой системе и государственному органу. RevHub использует прозрачность, обеспечиваемую ценностями Shapley, чтобы гарантировать, что предвзятость не будет непреднамеренно встроена в их модели.

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

Пример кода:

Чтобы продемонстрировать, как значения Шепли могут быть реализованы в машинном обучении с помощью Python, мы будем использовать библиотеку SHAP (Shapley Additive exPlanations), популярный объяснимый инструмент искусственного интеллекта для вычисления значений Шепли и интерпретации прогнозов моделей машинного обучения.

Мы будем использовать модифицированную модель случайного леса, чтобы предсказать, не выполнит ли заявитель свои обязательства по кредиту. (Здесь «0» будет означать, что лицо выплатило кредит, а «1» означает, что лицо не выполнило своих обязательств). Затем мы будем использовать значения Шепли через библиотеку SHAP для расчета влияния каждой функции в модели.

Ограничения:

Как ранее отмечал Полич, вычисление значений Шепли требует значительных вычислительных ресурсов. Вычислительная проблема возрастает по мере увеличения количества признаков и размера набора данных. Хотя библиотека SHAP может помочь с вычислительной реализацией и затратами, создание значений SHAP может занять больше времени, чем обучение модели. Тем не менее, в настоящее время ведутся разработки, направленные на сокращение времени расчета и различные методы для компенсации затрат, такие как использование подвыборки набора данных в качестве входных данных, а не всего набора данных.

Вывод:

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

Ресурсы:

https://shap.readthedocs.io/en/latest/example_notebooks/api_examples/plots/waterfall.html

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9044362/

https://www.mdpi.com/1999-4893/15/11/431/pdf