Что за классы трансформируются в Uplift - моделировании
В Uplift-моделировании ключевая цель — не просто предсказать факт наступления события (например, покупку), а определить, какой эффект оказывает воздействие (treatment) на вероятность этого события. В связи с этим в uplift-задачах появляется альтернативная классификация наблюдений, не совпадающая с традиционной бинарной классификацией.
🔹 Стандартная классификация vs. Uplift-классы
В классической бинарной задаче (например, классификация «купит» или «не купит»), обучающая выборка делится на два класса — положительный и отрицательный.
В uplift-моделировании используется каузальная постановка, и наблюдения разбиваются на четыре поведенческих класса, основанных на сравнении поведения при наличии и отсутствии воздействия.
🔹 Четыре класса пользователей в Uplift-моделировании
-
Persuadables (убеждаемые)
-
Без воздействия (T=0): отказ (Y=0)
-
С воздействием (T=1): успех (Y=1)
-
👉 Это главная целевая аудитория.
-
Именно на этих пользователей воздействие оказывает положительный эффект.
-
Они покупают, только если мы воздействуем.
-
-
Sure Things (и так купят)
-
Без воздействия (T=0): успех (Y=1)
-
С воздействием (T=1): успех (Y=1)
-
Воздействие ничего не меняет: пользователь в любом случае совершает целевое действие.
-
Обычно воздействие на эту группу нежелательно (можно сэкономить ресурсы).
-
-
Lost Causes (бесполезно воздействовать)
-
Без воздействия (T=0): отказ (Y=0)
-
С воздействием (T=1): отказ (Y=0)
-
Эти пользователи не реагируют на воздействие вообще.
-
-
Do Not Disturb (реагируют негативно)
-
Без воздействия (T=0): успех (Y=1)
-
С воздействием (T=1): отказ (Y=0)
-
Воздействие оказывает отрицательный эффект.
-
Это особенно нежелательная группа: они могли бы купить, но из-за рассылки (или другого вмешательства) отказываются.
-
🔹 Почему важно различие между классами?
Uplift-модель направлена на оптимизацию воздействия, и знание этих классов позволяет:
-
Избегать трат на тех, кто и так совершит нужное действие (Sure Things);
-
Не раздражать клиентов, которых лучше не трогать (Do Not Disturb);
-
Не тратить ресурсы на безнадежные случаи (Lost Causes);
-
Фокусироваться на Persuadables — тех, на кого воздействие действительно влияет.
🔹 Проблема в том, что классы не наблюдаемы
В uplift-моделировании невозможно наблюдать одновременно отклик и с воздействием, и без воздействия на одного пользователя. Это классическая проблема противофактового анализа.
Пример:
-
Клиенту отправили письмо (T=1), и он купил (Y=1).
-
Мы не можем точно знать: купил бы он без письма?
Следовательно, поведенческий класс нельзя наблюдать напрямую, и модели обучаются косвенно — через сравнение treatment и control групп с помощью статистических или ML-методов.
🔹 Трансформация классов при обучении моделей
Поскольку реальные поведенческие классы (Persuadable, Lost Cause и т.д.) не видны, при построении uplift-моделей приходится использовать следующие подходы:
1. Преобразование таргета (Transformed Outcome)
-
Создаётся новый "псевдо-таргет", отражающий uplift-эффект.
-
Пример:
Zi=Yi⋅Tip−Yi⋅(1−Ti)1−pZ_i = \\frac{Y_i \\cdot T_i}{p} - \\frac{Y_i \\cdot (1 - T_i)}{1 - p}
где p=P(T=1)p = P(T=1) — вероятность попадания в treatment.
- Тогда можно обучать регрессионную модель предсказания uplift напрямую по ZiZ_i.
2. Формирование классов через объединение данных
Иногда используется многоцелевое обучение:
-
Модель получает на вход XiX_i и индикатор treatment TiT_i;
-
Выход — вероятности:
- P(Y=1∣X,T=1)P(Y=1 \\mid X, T=1)
- P(Y=1∣X,T=0)P(Y=1 \\mid X, T=0)
Тогда uplift рассчитывается как разность:
Uplift(x)=P(Y=1∣T=1,X=x)−P(Y=1∣T=0,X=x)\\text{Uplift}(x) = P(Y=1 \\mid T=1, X=x) - P(Y=1 \\mid T=0, X=x)
3. Модифицированные decision trees
В этих деревьях используется метрика, отличная от Gini/Entropy:
Например, разница между долей успеха в treatment и control группах в узле.
Каждый узел «делит» данные не для максимизации информации, а для максимизации uplift.
🔹 Как работают модели с неявными классами?
Uplift-модели не классифицируют напрямую на Persuadable/Sure Thing и т.д., потому что эти классы не наблюдаются.
Вместо этого:
-
Они оценочно приближают uplift;
-
Или косвенно обучаются на различиях в отклике между treatment/control при фиксированных признаках;
-
Или предсказывают два отклика, и uplift рассчитывается на уровне inference.
🔹 Сводка по классам и целям обучения
Поведенческий класс | Что делает модель |
---|---|
Persuadable | Предсказывает, что uplift > 0 |
--- | --- |
Sure Thing | Uplift ≈ 0 |
--- | --- |
Lost Cause | Uplift ≈ 0 |
--- | --- |
Do Not Disturb | Uplift < 0 |
--- | --- |
Модель не маркирует объекты явно в один из четырёх классов, но предсказывает uplift-эффект, по которому можно построить классификацию постфактум.
🔹 Как использовать полученные оценки uplift
После предсказания uplift-значения для всех объектов можно:
-
Отсортировать пользователей по убыванию uplift;
-
Отобрать top-K% с наибольшим ожидаемым эффектом;
-
Провести кампанию или воздействие только на эту группу;
-
Оценить прирост за счёт таргетирования — с помощью Qini-кривой или uplift@K.
Таким образом, классы типа Persuadable и т.п. — это теоретическая рамка, которая не задаётся явно при обучении, но служит для интерпретации результата uplift-моделирования и стратегического принятия решений.