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

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

Группа исследователей искусственного интеллекта хотела протестировать свое последнее программное обеспечение, поэтому они обучили его на изображениях хаски и волков до такой степени, что он мог отличать одних от других. Получилось очень хорошо, до такой степени, что все время получалось правильно.
Однако затем он ошибся и опознал хаски как волка. Когда ученые-компьютерщики выяснили почему, выяснилось, что они обучали систему на изображениях волков в снегу и лаек на другой местности. Это означало, что когда ему показывали изображение хаски в заснеженном поле, он видел снег и отвечал «волк», потому что на всех остальных картинках со снегом были волки.
На самом деле, они построили ИИ. инструмент, обнаруживший снег!

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

Как работает ЛАЙМ

LIME объясняет отдельные экземпляры в наборе данных. Вот набор шагов, которые выполняет LIME:

  1. Создайте новый набор данных, изменив параметры экземпляра, который необходимо объяснить.
  2. Обученный классификатор машинного обучения используется для прогнозирования класса каждого экземпляра в новом сгенерированном наборе данных.
  3. Подбирается более простая модель (например, линейная регрессия), которая используется для объяснения прогнозов классификатора в новом сгенерированном наборе данных.
  4. Вычислить веса (важность) сгенерированных экземпляров. Это гарантирует, что линейная модель является точной на местном уровне, и объясняет экземпляр, который необходимо объяснить достаточно хорошо.

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

  • [ШАГ 1]Предположим, у нас есть набор данных с двумя объектами x1 и x2, а цвет представляет класс (красный = class1 и зеленый = class2)

  • [ШАГ 2]Мы хотим объяснить экземпляр (синяя точка с x1 = 0,8 и x2 = -0,7)

  • [ШАГ 3]Исправьте x1 и x2 экземпляра (синяя точка) и используйте классификатор для классификация

  • [ШАГ 4]Вычислите веса (обратно пропорциональные расстоянию от синей точки) экземпляров вокруг экземпляра «синей точки». Точки рядом с синей точкой имеют большой вес, а точки вдали от экземпляра имеют низкий вес.
  • [ШАГ 5]Попробуйте, наконец, подобрать модель линейной регрессии для этих экземпляров.

При линейной регрессии коэффициент линейной регрессии получается [-1,37295625, -0,61209681]. Это говорит о том, что увеличение значений x1 и x2 будет склоняться к предсказанию красной области.

Приложения

LIME можно использовать во многих областях, таких как НЛП, компьютерное зрение и наборы табличных данных. Модели НЛП широко используются в инвестиционной индустрии для выяснения настроений компании в отчете о прибылях и убытках, чтобы предсказать будущий рост и будущие прогнозы цен на акции. Я провел классификатор LIME по тексту отчета о доходах Google за первый квартал 2022 года (источник: пестрый дурак). Я использовал обычно используемый классификатор TextBlob, чтобы определить тональность текста.

Классификации из TextBlob были следующими:
1. Сильно отрицательный, 2: слабо отрицательный, 3: нейтральный, 4: слабо положительный, 5: сильно положительный.

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

Не инвестиционный совет: отчет о доходах Google был сильно положительным в 2021 году по сравнению со слабо положительными в 2022 году, и можно увидеть влияние на цены акций 🙂

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

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

Будьте внимательны при использовании LIME

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

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

Заключение

Объяснимость в машинном обучении — это растущая потребность в промышленности, и это только начало. Есть несколько других алгоритмов, которые помогают укрепить доверие к моделям. SHAP и Permutation Feature Importance обычно используются вместе с LIME.

Это так прекрасно, как ПРОСТЫЕ линейные модели могут быть использованы для объяснения ВСЕГО во Вселенной.

Я буду рад обсудить интерпретируемость подробнее, пожалуйста, оставьте комментарий к этой статье или свяжитесь с linkedin.