logistic regression(二項 logistic 與 多項logistic )
邏輯斯蒂迴歸
- 基本思想
- 數學推導
- 基於R的案例
- 結論
基本思想
這一講給大家介紹一下,廣義線性迴歸模型當中的一個最為典型的模型,邏輯斯底迴歸(logistic regression)。估計大家都見過。我們最長用到的是二值邏輯斯底迴歸,多項邏輯斯底書裡邊介紹的少。今天我們重點說一下,二項邏輯斯底迴歸和多項邏輯斯底迴歸。我們先簡單聊聊傳統的線性迴歸,我們說線性迴歸就是
這就是邏輯斯蒂迴歸方程了。這樣呢,每個個體實際上現在與一個概率
一旦方程建立了,迴歸係數也已經求出,那麼我們需要了解迴歸係數的意義。在傳統迴歸當中,迴歸係數比較容易理解,比如一單位
係數的解釋是一個方面,另一個方面就是擬合優度(goodness of fit),我們傳統迴歸是根據
基於R的logistic regression
下面給大家帶來一個小小的案例
#廣義線性迴歸模型
#logistic 迴歸
#清楚空間變數
rm(list = ls())
#讀取資料
pass.df <- read.csv("D:/Rdata/data/rintro-chapter9.csv")
#檢視前五行
head(pass.df)
Channel Promo Pass
1 Mail Bundle YesPass
2 Mail Bundle YesPass
3 Mail Bundle YesPass
4 Mail Bundle YesPass
5 Mail Bundle YesPass
6 Mail Bundle YesPass
#檢視資料型別
str(pass.df)
'data.frame': 3156 obs. of 3 variables:
$ Channel: Factor w/ 3 levels "Email","Mail",..: 2 2 2 2 2 2 2 2 2 2 ...
$ Promo : Factor w/ 2 levels "Bundle","NoBundle": 1 1 1 1 1 1 1 1 1 1 ...
$ Pass : Factor w/ 2 levels "NoPass","YesPass": 2 2 2 2 2 2 2 2 2 2 ...
#進行迴歸
pass.m1 <- glm(Pass ~Promo, data=pass.df, family=binomial)
#檢視結果
summary(pass.m1)
Call:
glm(formula = Pass ~ Promo, family = binomial, data = pass.df)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.262 -1.097 1.095 1.095 1.260
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 0.19657 0.04912 4.002 6.28e-05 ***
PromoNoBundle -0.38879 0.07167 -5.425 5.81e-08 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 4375.0 on 3155 degrees of freedom
Residual deviance: 4345.4 on 3154 degrees of freedom
AIC: 4349.4
Number of Fisher Scoring iterations: 3
結論
這一節我們講了logistic regression,主要是從轉換的角度講的,首先是通過構造比例,也就是