Логистическая регрессия — это тип регрессионной модели, которую мы можем использовать для понимания взаимосвязи между одной или несколькими переменными-предикторами и переменной ответа, когда переменная ответа является двоичной.
Если у нас есть только одна предикторная переменная и одна переменная отклика, мы можем использовать простую логистическую регрессию , которая использует следующую формулу для оценки взаимосвязи между переменными:
log[p(X)/(1-p(X))] = β 0 + β 1 X
Формула в правой части уравнения предсказывает логарифмические шансы переменной ответа, принимающей значение 1.
Простая логистическая регрессия использует следующие нулевые и альтернативные гипотезы:
- Н 0 : β 1 = 0
- Н А : β 1 ≠ 0
Нулевая гипотеза утверждает, что коэффициент β 1 равен нулю. Другими словами, нет статистически значимой связи между предикторной переменной x и переменной ответа y.
Альтернативная гипотеза утверждает, что β 1 не равно нулю. Другими словами, существует статистически значимая связь между x и y.
Если у нас есть несколько переменных-предикторов и одна переменная ответа, мы можем использовать множественную логистическую регрессию , которая использует следующую формулу для оценки взаимосвязи между переменными:
log[p(X) / (1-p(X))] = β 0 + β 1 x 1 + β 2 x 2 + … + β k x k
Множественная логистическая регрессия использует следующие нулевые и альтернативные гипотезы:
- Н 0 : β 1 = β 2 = … = β k = 0
- H А : β 1 = β 2 = … = β k ≠ 0
Нулевая гипотеза утверждает, что все коэффициенты в модели равны нулю. Другими словами, ни одна из переменных-предикторов не имеет статистически значимой связи с переменной отклика y.
Альтернативная гипотеза утверждает, что не каждый коэффициент одновременно равен нулю.
В следующих примерах показано, как принять решение об отклонении или отказе от отклонения нулевой гипотезы как в моделях простой логистической регрессии, так и в моделях множественной логистической регрессии.
Пример 1: простая логистическая регрессия
Предположим, профессор хотел бы использовать количество часов обучения, чтобы предсказать экзаменационные баллы, которые получат студенты в его классе. Он собирает данные по 20 учащимся и использует простую модель логистической регрессии.
Мы можем использовать следующий код в R, чтобы соответствовать простой модели логистической регрессии:
#create data
df <- data.frame(result=c(0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1),
hours=c(1, 5, 5, 1, 2, 1, 3, 2, 2, 1, 2, 1, 3, 4, 4, 2, 1, 1, 4, 3))
#fit simple logistic regression model
model <- glm(result~hours, family='binomial', data=df)
#view summary of model fit
summary(model)
Call:
glm(formula = result ~ hours, family = "binomial", data = df)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.8244 -1.1738 0.7701 0.9460 1.2236
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -0.4987 0.9490 -0.526 0.599
hours 0.3906 0.3714 1.052 0.293
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 26.920 on 19 degrees of freedom
Residual deviance: 25.712 on 18 degrees of freedom
AIC: 29.712
Number of Fisher Scoring iterations: 4
#calculate p-value of overall Chi-Square statistic
1-pchisq(26.920-25.712, 19-18)
[1] 0.2717286
Чтобы определить, существует ли статистически значимая связь между учебными часами и экзаменационным баллом, нам необходимо проанализировать общее значение хи-квадрата модели и соответствующее значение p.
Мы можем использовать следующую формулу для расчета общего значения хи-квадрата модели:
X 2 = (Нулевое отклонение – Остаточное отклонение) / (Нулевое df – Остаточное df)
Значение p оказывается равным 0,2717286 .
Поскольку это p-значение не меньше 0,05, мы не можем отвергнуть нулевую гипотезу. Другими словами, не существует статистически значимой связи между количеством часов обучения и полученными экзаменационными баллами.
Пример 2: Множественная логистическая регрессия
Предположим, профессор хотел бы использовать количество часов обучения и количество сданных подготовительных экзаменов, чтобы предсказать экзаменационный балл, который студенты получат в его классе. Он собирает данные по 20 учащимся и использует модель множественной логистической регрессии.
Мы можем использовать следующий код в R, чтобы соответствовать модели множественной логистической регрессии:
#create data
df <- data.frame(result=c(0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1),
hours=c(1, 5, 5, 1, 2, 1, 3, 2, 2, 1, 2, 1, 3, 4, 4, 2, 1, 1, 4, 3),
exams=c(1, 2, 2, 1, 2, 1, 1, 3, 2, 4, 3, 2, 2, 4, 4, 5, 4, 4, 3, 5))
#fit simple logistic regression model
model <- glm(result~hours+exams, family='binomial', data=df)
#view summary of model fit
summary(model)
Call:
glm(formula = result ~ hours + exams, family = "binomial", data = df)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.5061 -0.6395 0.3347 0.6300 1.7014
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.4873 1.8557 -1.879 0.0602 .
hours 0.3844 0.4145 0.927 0.3538
exams 1.1549 0.5493 2.103 0.0355 \*
---
Signif. codes: 0 ‘\*\*\*’ 0.001 ‘\*\*’ 0.01 ‘\*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 26.920 on 19 degrees of freedom
Residual deviance: 19.067 on 17 degrees of freedom
AIC: 25.067
Number of Fisher Scoring iterations: 5
#calculate p-value of overall Chi-Square statistic
1-pchisq(26.920-19.067, 19-17)
[1] 0.01971255
Значение p для общей статистики хи-квадрат модели оказывается равным 0,01971255 .
Поскольку это p-значение меньше 0,05, мы отвергаем нулевую гипотезу. Другими словами, существует статистически значимая взаимосвязь между суммой часов обучения и сданных подготовительных экзаменов и полученной итоговой оценкой экзамена.
Дополнительные ресурсы
Следующие руководства предлагают дополнительную информацию о логистической регрессии:
Введение в логистическую регрессию
Как сообщить о результатах логистической регрессии
Логистическая регрессия против линейной регрессии: ключевые отличия