Интерпретируемость модели

Справедливое и объяснимое машинное обучение

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

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

- Хранитель [1]

Вступление

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

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

Предвзятость

В машинном обучении термин систематическая ошибка обычно ассоциируется как разница между правильными значениями, которые мы пытаемся предсказать, и прогнозами, сделанными нашей моделью. Однако в когнитивной науке термин «предвзятость» может иметь много других значений. Вот несколько примеров когнитивных искажений [2]:

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

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

Например, представим, что мы обучили модель, чтобы классифицировать, поражен ли кто-то заболеванием или нет, и достигли точности классификации около 80%. На этом этапе, чтобы убедиться, что наша модель действительно справедлива, мы более подробно рассмотрим, как изменится точность, если мы рассмотрим сначала только женщину, а затем только мужчин. Рассматривая только женщину, мы получаем около 95% точности, тогда как считая только мужчин, мы получаем около 55% точности! Чтобы попытаться понять, почему существует такая большая разница в производительности, мы могли бы попытаться изучить наши данные обучения. После тщательного анализа мы затем замечаем, что около 75% наших обучающих данных содержали выборки только о пациентах-женщинах, и поэтому наша модель в целом придавала этим выборкам больший вес, чтобы в конечном итоге максимально снизить нашу ошибочную классификацию. Таким образом, выполнение этого типа анализа помогло нам понять, что, хотя наша модель в целом показала хорошие результаты, ее не следует использовать в медицинских учреждениях для постановки диагноза пациентам-мужчинам. Фактически было бы «несправедливо» использовать эту модель для диагностики как мужчин, так и женщин, учитывая разницу в точности для каждой подгруппы. Чтобы продвинуть этот анализ еще дальше, следует учитывать полученные матрицы путаницы и метрики точности / отзыва для оценки влияния ложноположительных / отрицательных оценок.

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

Таким образом, алгоритмы уменьшения смещения могут применяться на трех возможных этапах рабочего процесса Data Science: предварительная обработка (для обучающих данных), в процессе обработки (при обучении модели). , постобработка (на прогнозируемых этикетках). Вот некоторые из наиболее распространенных алгоритмов уменьшения смещения для каждого из этих этапов [3]:

  • Предварительная обработка: переоценка, устранение несопоставимых воздействий, изучение справедливых заявлений.
  • In-Processing: Adversarial Debiasing, Prejudice Remover, Meta Fair Classifier.
  • Постобработка: отклонение классификации опционов и калиброванных уравненных коэффициентов.

Все эти различные подходы затем могут быть реализованы на Python с использованием библиотеки AI Fairness 360.

Объяснимый ИИ

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

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

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

Тогда создание объяснимых моделей может принести пользу:

  • Пользователи / клиенты: почему мне было отказано в ссуде? Почему мне предложили это лечение?
  • Регулирующие органы / правительства: предоставляют доказательства справедливости модели.
  • Специалисты по данным / разработчики: насколько хорошо наша модель действительно работает? как это можно улучшить?

В настоящее время используются разные подходы к Объясняемому ИИ, некоторые из основных примеров:

  • SHAP (аддитивные объяснения Шепли): направлен на объяснение прогноза модели путем измерения того, какой вклад каждая функция внесла в прогноз (чем больше абсолютное значение значения Шепли и тем более важным считается свойство быть).
  • LIME (локальные интерпретируемые независимые от модели объяснения): в основном используется при работе с сильно нелинейными моделями. LIME направлена ​​на линеаризацию нелинейных пространств путем разделения исходного пространства признаков на различные линейные подсекции, чтобы сделать модель объяснимой с помощью линейной модели на локальной основе.
  • Важность функции на основе дерева: вычислите среднее уменьшение примесей для дерева (или леса деревьев), вызванное каждой входной функцией. Согласно этому принципу, функции, которые разделяют узлы ближе к верхним из трех, будут иметь больший вес при создании прогноза модели.
  • Графики частичной зависимости (PDP): суммируют взаимосвязь между набором входных переменных и прогнозами нашей модели. Таким образом можно визуально понять, как прогноз модели зависит от различных входных переменных.
  • Графики индивидуального условного ожидания (ICE): помогает нам понять прогнозы отдельных наблюдений, моделируя то, что произошло бы, если бы входные данные были немного изменены.

Некоторые из наиболее часто используемых библиотек Python для выполнения задач объяснимого ИИ: AI Explainability 360 (AIX360) и Captum.

Контакты

Если вы хотите быть в курсе моих последних статей и проектов, подписывайтесь на меня на Medium и подпишитесь на мой список рассылки. Вот некоторые из моих контактных данных:

Библиография

[1] Взгляд Guardian на машинное обучение: решать должны люди. От редакции. Доступ по адресу: https://www.theguardian.com/commentisfree/2016/oct/23/the-guardian-view-on-machine-learning-people-must-decide

[2] Stanford CS224N: НЛП с глубоким обучением | Зима 2019 | Лекция 19 - Предвзятость в AI. Stanfordonline. Доступ на: https://www.youtube.com/watch?v=XR8YSRcuVLE&ab_channel=stanfordonline

[3] Справедливый и объяснимый ИИ. Маргрит Гренендейк. Доступ по адресу: https://margriet-groenendijk.gitbook.io/trusted-ai-workshop/