Перейти к основному содержимому

Зависимость прогноза от признаков

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

График частичной зависимости

График частичной зависимости (partial dependence plot, PDP) показывает влияние выбранного признака uu (например, первого) на прогноз модели f(x)=f([u,v])f\left(\mathbf{x}\right)=f\left([u,\mathbf{v}]\right), где вектором v\mathbf{v} обозначены все признаки, кроме выбранного (например, второй, третий и т.д.). Определим ожидаемое значение прогноза g(u)g\left(u\right), зафиксировав интересующий признак и усредняя по всем оставшимся:

gu(u)=Ev{f(u,v)}=f(u,v)dP(v)g_{u}\left(u\right)=\mathbb{E}_{\mathbf{v}}\left\{ f\left(u,\mathbf{v}\right)\right\} =\int f\left(u,\mathbf{v}\right)d\mathbb{P}\left(\mathbf{v}\right)

На практике распределение признаков неизвестно, поэтому используется численная оценка среднего по объектам выборке при фиксированном признаке uu:

g^u(u)=1Nn=1Nf(u,vn)\widehat{g}_{u}\left(u\right)=\frac{1}{N}\sum_{n=1}^{N}f\left(u,\mathbf{v}_{n}\right)

Рассмотрим задачу BikeSharing, в которой прогнозируется число арендованных велосипедов по характеристикам дня (дата, температура, влажность и т.д.). График частичной зависимости для этой задачи показан на рисунке ниже (источник) для вещественных признаков слева, а для категориального признака (season) справа.

PDP-plot.png

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

Зависимость от двух признаков

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

Преимущества и недостатки метода

График частичной зависимости PDP интуитивен и его легко реализовать. Также эту зависимость можно строить не для одного, а сразу для двух признаков.

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

В PDP предполагается, что интересуемый признак uu и остальные признаки v\mathbf{v} независимы, поскольку при построении графика значение интересуемого признака фиксируется, а остальные признаки берутся из выборки независимо. Если признаки сильно зависимы, это может приводить к появлению малореальных объектов. Например, при анализе данных пациентов больницы можно строить PDP для признака "рост". При этом скоррелированный признак "вес" будет браться независимо от роста, что будет приводить к пациентам с детским ростом и взрослым весом.

График индивидуальных условных ожиданий

График индивидуальных условных ожиданий (Individual Conditional Expectation, ICE) показывает зависимость отклика от интересуемого признака не усредняя по остальным объектам, а для каждого объекта в отдельности. Разобъём, как и раньше, вектор признаков x\mathbf{x} на интересующий признак uu и все остальные признаки v\mathbf{v}. ICE график представляет собой совокупность графиков зависимостей прогноза от признака для каждого объекта валидационной выборки n=1,2,...Nn=1,2,...N:

{gun(u)=f(u,vn)}n\left\{ g_{un}\left(u\right)=f\left(u,v_{n}\right)\right\} _{n}

и показан для задачи BikeSharing на рисунке ниже (источник):

ICE-plot.jpg

График ICE даёт более детальный взгляд: показывает влияние интересуемого признака на прогноз по каждому объекту в отдельности, что позволяет увидеть, например, ситуацию, когда для половины объектов признак имеет положительное влияние, а для половины - отрицательное.

Недостатком подходя является перегруженная графиками иллюстрация, на которой сложно выделить основные тенденции, поэтому часто строят графики сдвинутых индивидуальных условных ожиданий (Centered ICE plot, c-ICE) по объектам, центрируя, чтобы все графики выходили из одной точки:

{gun(u)=f(u,vn)f(u0,vn)}n,u0референсное значение пользователя\left\{ g_{un}\left(u\right)=f\left(u,v_{n}\right)-f\left(u_{0},v_{n}\right)\right\} _{n},\quad u_{0}-\text{референсное значение пользователя}

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

ICE-plot-centered.jpg

Усреднённая зависимость на графике (жёлтая), с точностью до сдвига, будет PDP-графиком.

Стоит отметить, что как графики ICE и c-ICE, точно так же, как PDP, опираются на предположение о независимости признака uu от всех остальных, поскольку используют сгенерированные объекты, где признаки меняются независимо. Это может приводить к появлению на графике результатов по несуществующим в природе объектам (тот же пример - вес и рост пациента связаны, а мы, варьируя рост, вес оставляем прежним).

Условный график

Условный график (marginal plot, M-plot) лишён недостатка PDP и ICE графиков, состоящего в усреднении по несуществующим малореальным объектам за счёт того, что там при каждом значении признака u происходит усреднение не по безусловному распределению оставшихся признаков P(v)P\left(v\right), а по условному P(vu)P\left(v|\mathbf{u}\right).

Приведём иллюстрацию (источник), на которой слева показано безусловное распределение P(x2)P\left(x^2\right), а справа - условное распределение P(x2x1)P\left(x^2|x^1\right).

conditional-unconditional-distribution.png

Формулой М-график запишется следующим образом:

gu(u)=1N(k)n:xnN(k)f(uk,vn),g_{u}\left(u\right)=\frac{1}{\left|N\left(k\right)\right|}\sum_{n:\mathbf{x}_{n}\in N\left(k\right)}f\left(u_{k},\mathbf{v}_{n}\right),

где анализируемый признак uu разбивается на полуинтервалы (uk1,uk],k=1,2,...K\left(u_{k-1},u_{k}\right], k=1,2,...K, а N(k)N\left(k\right) - множество объектов, для которых значение признака uu попало в kk-й интервал, N(k)\left|N\left(k\right)\right| обозначает мощность (число элементов) этого множества.

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

График аккумулированных локальных эффектов

График аккумулированных локальных эффектов (Accumulated Local Effects, ALE) повторяет методологию условного M-графика, но лишён его недостатка в том, что если два признака сильно скореллированы, то будет показан совокупный эффект этих признаков, а не чистый эффект одного из них. ALE-график покажет именно чистый эффект интересуемого признака. При этом усреднение также будет производиться только по реалистичным объектам. Формула для расчёта графика аккумулированных локальных эффектов следующая:

gu(u)=k=1K1N(k)n: xnN(k)[f(uk,vn)f(uk1,vn)],g_{u}\left(u\right)=\sum_{k=1}^{K}\frac{1}{\left|N\left(k\right)\right|}\sum_{n:~\mathbf{x}_{n}\in N\left(k\right)}\left[f\left(u_{k}, \mathbf{v}_{n}\right)-f\left(u_{k-1},\mathbf{v}_{n}\right)\right],

где обозначения такие же, как для условного графика.

Динамика зависимости от значения признака складывается из малых локальных изменений в областях полуинтервала значений признака u(uk1,uk]u\in\left(u_{k-1},u_{k}\right]. Формула показывает изменения прогноза только за счёт интересуемого признака uu, а прочие признаки не влияют, поскольку по ним происходит локальное усреднение вокруг значений интересуемого признака.

Итоговый ALE-график - это аккумулированная сумма таких малых изменений по аналогии того как разность значений функции в двух точках - интеграл от её производной между этими точками. Пример ALE-графика для задачи BikeSharing показан ниже (источник):

ALE-example.png

Зависимость от двух признаков

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