La regresión lineal se utiliza para aproximar la relación (lineal) entre una variable de respuesta continua y un conjunto de variables predictoras. Sin embargo, cuando la variable de respuesta es binaria (es decir, Sí/No), la regresión lineal no es adecuada. Por ello, se puede recurrir a un método análogo, la regresión logística, que es similar a la regresión lineal de muchas maneras
Requisitos previos
library(dplyr) - para la manipulación de datos
library(ggplot2) - graficar
library(rsample) - para dividir datos
Paquetes de modelado
library(caret) - para el modelado de regresión logística
Paquetes de interpretación de modelos
library(vip) - variable importancia
Para clasificar a un cliente como un defaulter de alto frente a bajo riesgo basado en su saldo, podríamos usar la regresión lineal; sin embargo, el trazado izquierdo de la Figura 5.1para saldos cercanos a cero prevemos una probabilidad negativa de incumplimiento; si prediéramos saldos muy grandes, obtendríamos valores mayores que 1. Estas predicciones no son sensatas, ya que, por supuesto, la verdadera probabilidad de impago, independientemente del saldo de la tarjeta de crédito, debe caer entre 0 y 1. Estas inconsistencias sólo aumentan a medida que nuestros datos se vuelven más esequilibrados y el número de valores atípicos aumenta. Contrasta esto con la línea de regresión logística que no es lineal (en forma de sigmoidal).
Para evitar que las insuficiencias del modelo lineal encajen en una respuesta binaria, debemos modelar la probabilidad de nuestra respuesta utilizando una función que da salidas entre 0 y 1 para todos los valores “de”. Muchas funciones cumplen con esta descripción. En la regresión logística, utilizamos la función logística.
La aplicación de una transformación logit da como resultado una ecuación lineal similar a la respuesta media en un modelo de regresión lineal simple. El uso de la transformación logit también resulta en una interpretación intuitiva para la magnitud de: las probabilidades (por ejemplo, de incumplimiento) aumentan significativamentepor cada aumento de una unidad.
Regresión logística simple
Ajustaremos dos modelos de regresión logística para predecir la probabilidad de deserción de un empleado. El primero predice la probabilidad de deserción en función de sus ingresos mensuales () y el segundo se basa en si el empleado trabaja horas extra o no (). La función se ajusta a modelos lineales generalizados, una clase de modelos que incluye tanto la regresión logística como la regresión lineal simple como casos especiales. La sintaxis de la función es similar, excepto que debemos pasar el argumento para decirle a R que ejecute una regresión logística en lugar de algún otro tipo de modelo lineal generalizado.
model1 <- glm(Attrition ~ MonthlyIncome, family = "binomial", data = churn_train)
model2 <- glm(Attrition ~ OverTime, family = "binomial", data = churn_train)
En segundo plano, utiliza la estimación ML para estimar los parámetros desconocidos del modelo. La intuición básica detrás del uso de la estimación de ML para ajustar un modelo de regresión logística es la siguiente: buscamos estimaciones para y tal que la probabilidad de deserción prevista para cada empleado se corresponda lo más cerca posible con el estado de deserción observado del empleado. En otras palabras, tratamos de encontrar y tal que al insertar estas estimaciones en el modelo para la (Ecuación (5.1)) se obtenga un número cercano a uno para todos los empleados que abandonaron, y un número cercano a cero para todos los empleados que no lo hicieron. Esta intuición se puede formalizar usando una ecuación matemática llamada función de verosimilitud.
Es más fácil interpretar los coeficientes usando una transformación:
exp(coef(model1))
##(Intercept) MonthlyIncome
## 0.3970771 0.9998697
exp(coef(model2))
## (Intercept) OverTimeYes
# 0.1126126 4.0812121
Por lo tanto, las probabilidades de que un empleado deserte aumentan significativamente por 0.9999 por cada dólar aumentan, mientras que las probabilidades de abandono aumentan multiplicativamente por 4.0812 para los empleados que trabajan en comparación con aquellos que no lo hacen. Muchos aspectos del resultado de la regresión logística son similares a los discutidos para la regresión lineal.
Interpretación de características
De manera similar a la regresión lineal, una vez que se identifica nuestro modelo de regresión logística preferido, debemos interpretar cómo las características influyen en los resultados. la importancia de la variable para los modelos de regresión logística se puede calcular utilizando el valor absoluto de la estadística para cada coeficiente. Para ello se utiliza:
vip(cv_model3, num_features = 20) – Esta ecuación extre nuestra 20 variables más significativas.
Reflexiones finales
La regresión logística proporciona una alternativa a la regresión lineal para problemas de clasificación binaria. la regresión logística adolece de los muchos supuestos involucrados en el algoritmo (es decir, relación lineal del coeficiente, multicolinealidad). Además, a menudo tenemos más de dos clases para predecir, lo que comúnmente se denomina clasificación multinomial. Aunque existen extensiones multinomiales de la regresión logística, los supuestos realizados solo aumentan y, a menudo, la estabilidad de las estimaciones de los coeficientes (y, por lo tanto, la precisión) disminuye.