TGViewer
Data Blog Data Blog @jdata_blog · 2.42K subscribers
Post #547 1.56K
Эффекты признаков, графические методы и мы (я) снова обновили табличку

Пока мы ловим приколы-юного-стартапера в виде «подбери платежный сервис и пойми, что не так», мы обновляем модули, и я enrich-y opensource. Сейчас на очереди был модуль про базовые эффекты объяснения: PDP, ICE, ALE и CP-профили. В сжатом формате: они позволяют оценить атрибуцию признака «шатая» его и смотря на картинку. И я собрала список либ (обновленный) и вот — несу для удобства.

Идеи каждого:


CP-профили (ceteris paribus) — берем объект, берем признак и меняем его по всему диапазону. Отвечает на вопрос: что будет с прогнозом вот этого x, если крутить один признак, а остальные держать неподвижно. Локальный ответ на «а если бы».


ICE — тот же расчёт, но по кривой на каждый объект.


PDP — берём один признак, прогоняем его по сетке значений для всех объектов сразу (остальные признаки не трогаем) и усредняем предсказания. Получается одна кривая: как модель реагирует на признак в среднем.


Если половина объектов реагирует вверх, а половина вниз, среднее будет плоским, поэтому PDP часто кладут на ICE.


ALE — продолжаем PDP — вместо усреднения по всей выборке считаем локальные приращения предсказания внутри узких интервалов признака и накапливаем их. Он — попытка бороться с корреляцией признаков и её влиянием на PDP.


Исторически эти методы R-центрированы. R — это язык программирования, если что (на нём когда-то писали лабы по статистике в универе и на курсах, если кто-то это делал — я с вами!). Причина скорее всего в том, что авторы методов писали на R.

Предостерегая вопрос «зачем нам методы из 2001» (сама им задавалась):

Во-первых, мы всё ещё работаем с табличными данными. Если (когда) возникает задача объяснения кому-то регулирующему, то эти варианты — очень human-friendly.

Во-вторых, семья методов — про функцию, про идеи. Мы эксплуатируем «вход, который можно покрутить, и выход, который можно измерить». Поэтому их можно, поняв, натянуть на LM-обвязку: как метрика качества зависит от числа retrieved документов, от длины промпта, от температуры, от количества few-shot примеров. Это прям PDP по гиперпараметру пайплайна, просто никто не называет это PDP.

В-третьих, механистическая интерпретируемость делает по сути то же самое. Activation patching — это «пошатать вход и посмотреть на выход», только шатают не признак, а скрытое состояние.

Здесь должна быть фраза про базу, я не придумала, так что посмотрим, что есть в Python:

scikit-learn — PDP, ICE и центрированный ICE из коробки (centered=True). Базовый минимум, как сейчас говорится, кажется.

effector — очень полный пакет по эффектам сегодня: PDP, ICE, ALE, RHALE, плюс региональные эффекты (ищет подгруппы, где эффект признака разный).

dalex — CP-профили (predict_profile), и PDP, и ALE.

alibi —PDP и оценка на основе PDP-based feature importance (PartialDependenceVariance).

PyALE / ALEPython — ALE второго порядка (взаимодействия). Умирающие, обновлялись два года назад.

Добавила в таблицу — теперь там 67 библиотек и фильтр по типу метода: Feature Effect / PDP / ICE / ALE / Regional Effects. Мёртвые лежат, под галочкой «show inactive», живых 44.

Табличка: xai-table.streamlit.app
И всем доброй ночи или отличного утра! 😌
GitHub GitHub - givasile/effector: Effector - a Python package for global and regional effect methods Effector - a Python package for global and regional effect methods - givasile/effector
  • 🔥 12
  • ❤ 7
More from @jdata_blog
  1. Sep 18, 2026А ещё вас стало невероятно сильно больше, и я безумно рада видеть новых людей (вы мой мале…
  2. Sep 18, 2026Третий момент, который мне прям вот захотелось записать-написать — это то, что надо это ло…
  3. Sep 18, 2026"AI решил выберите-проблему-математиков" Безумно обожаю, когда решаются какие-то сложные з…
  4. Sep 13, 2026Вебинар про объяснимость агентов и во что можно поиграть Как самый ответственный человек н…
  5. Sep 10, 2026Теперь официально: погнали пить кофе в Лондоне. 23 сентября выступаю на конференции Applie…
  6. Sep 4, 2026Вообще, я тут порефлексировала за лето, и поняла, что в канал надо постить кружки, чтобы о…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →