Как определить относительную значимость переменной в логистической регрессии в терминах p?

11

Предположим, что модель логистической регрессии используется для прогнозирования того, будет ли покупатель онлайн покупать продукт (результат: покупка) после того, как он нажал на набор онлайн-рекламы (предикторы: Ad1, Ad2 и Ad3).

Результатом является двоичная переменная: 1 (купленная) или 0 (не приобретенная). Предикторами являются также двоичные переменные: 1 (нажата) или 0 (не нажата). Таким образом, все переменные находятся в одном масштабе.

Если полученные коэффициенты Ad1, Ad2 и Ad3 равны 0,1, 0,2 и 03, можно сделать вывод, что Ad3 важнее, чем Ad2, а Ad2 важнее, чем Ad1. Кроме того, поскольку все переменные имеют одинаковую шкалу, стандартизированные и нестандартизированные коэффициенты должны быть одинаковыми, и мы также можем сделать вывод, что Ad2 вдвойне важнее Ad1 с точки зрения его влияния на уровень logit (log-odds).

Но на практике нас больше интересует, как сравнивать и интерпретировать относительную важность переменных с точки зрения уровня p (вероятности покупки), а не логита (log-odds).

Таким образом, возникает вопрос: существует ли какой-либо подход для количественной оценки относительной важности этих переменных в терминах p?

xyhzc
источник
Я нашел эту статью полезной. В нем хорошо описаны шесть различных методов, которые можно использовать для определения важности предикторов из модели логистической регрессии, а также преимущества и недостатки, связанные с каждым методом.
gchaks

Ответы:

5

Для линейных моделей вы можете использовать абсолютное значение t-статистики для каждого параметра модели.

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

Если вы используете проверку R ( http://caret.r-forge.r-project.org/varimp.html ), если вы используете проверку Python ( http://scikit-learn.org/stable/auto_examples /ensemble/plot_forest_importances.html#example-ensemble-plot-forest-importances-py )

РЕДАКТИРОВАТЬ:

Поскольку у logit нет прямого способа сделать это, вы можете использовать ROC-кривую для каждого предиктора.

Для классификации анализ кривой ROC проводится для каждого предиктора. Для двух задач класса ряд предельных значений применяется к данным предиктора, чтобы предсказать класс. Чувствительность и специфичность вычисляются для каждого среза, и рассчитывается кривая ROC. Трапециевидное правило используется для вычисления площади под кривой ROC. Эта область используется в качестве меры переменной важности

Пример того, как это работает в R:

library(caret)
mydata <- data.frame(y = c(1,0,0,0,1,1),
                 x1 = c(1,1,0,1,0,0),
                 x2 = c(1,1,1,0,0,1),
                 x3 = c(1,0,1,1,0,0))

fit <- glm(y~x1+x2+x3,data=mydata,family=binomial())
summary(fit)

varImp(fit, scale = FALSE)
mike1886
источник
1
Спасибо за ваш ответ! да, это легко для линейной модели и случайного леса, у вас есть идеи, как это сделать в случае логистической регрессии? Большое спасибо!
xyhzc
Смотрите редактирование выше.
mike1886
Похоже, что вопрос о сравнениях на уровне соотношений до сих пор не получен. Даже если мы знаем, что AUC, скажем, .6 использует только x1, а .9 использует только x2, мы вряд ли можем сказать, что важность x2 поэтому на 50% выше. И я думаю, что это (1 - 10% / 40%) = 75% больше. Мы также не можем сделать что-то аналогичное, используя только чувствительность или специфичность. У меня также есть сомнения относительно применимости статистики Вальда здесь. Наиболее полезными могут быть объяснения стандартизированных коэффициентов (см. Онлайн-книгу Скотта Менарда).
rolando2
Спасибо rolando2! Все переменные в этом вопросе являются мерами в одних и тех же показателях, поэтому стандартизированные и нестандартизированные коэффициенты должны быть одинаковыми. Кроме того, хотя мы можем использовать стандартизированные коэффициенты для сравнения переменных на уровне logit (log-odds), как мы можем интерпретировать переменные на P (вероятность покупки онлайн-покупателей в этом случае)? большое спасибо!
xyhzc
1
Я не вижу ответа на вопрос.
HelloWorld
4

Поскольку вы специально просили интерпретацию по шкале вероятностей: в логистической регрессии предполагаемая вероятность успеха определяется как

π^(x)=exp(β0+βx)1+exp(β0+βx)

С перехватом, вектором коэффициента и вашими наблюдаемыми значениями. Таким образом, если ваши коэффициенты равны 0,1, 0,2 и 0,3 и предполагается, что нет перехвата (скорее всего, неправильный, но для простоты), вероятность покупки для человека, который нажал только на объявление 1:β0βx

exp(0.1)1+exp(0.1)=0.52

Человек, который нажал только на объявление 3:

exp(0.3)1+exp(0.3)=0.57

Однако, если человек нажал на объявление 1 или объявление 3, а также объявление 2 (если это сценарий с плацебо), вероятность становится

exp(0.1+0.2)1+exp(0.1+0.2)=0.57

exp(0.3+0.2)1+exp(0.3+0.2)=0.62

В этом случае изменение вероятности равно 0,05, но обычно это изменение не одинаково для разных комбинаций уровней. (Это легко увидеть, например, если вы используете тот же подход, что и выше, но с коэффициентами 0,1, 1,5, 0,3.) Таким образом, важность переменной на шкале вероятностей зависит от наблюдаемых уровней других переменных. Это может затруднить (невозможно?) Придумать абсолютную количественную меру важности переменных на шкале вероятностей.

Matt.135
источник
Спасибо за ваше объяснение! Тогда знаете ли вы, существует ли какой-либо косвенный метод количественной оценки относительной важности предикторов? mike1886 упомянул «анализ кривой ROC» в своем ответе, но у него есть некоторые проблемы, упомянутые rolando2. Большое спасибо!
xyhzc