本文主要对回归分析解读,包括一元线性回归,多元线性回归和逻辑回归.
1 回归分析
“回归”最早由英国生物学家高尔顿在研究孩子身高与其父母身高关系时提出。研究发现,父母个子高,其子代一般也高,但不如父母那么高;父母个子矮,其子女一般也矮,但没有父母那么矮。下一代身高有向中间值回归的趋势,这种趋于中间值的趋势被称为“回归效应”,而他提出的这种研究两个数值变量关系的方法称为回归分析。
回归的意义:
研究一个因变量对若干自变量的依存关系;实质是由自变量去估计因变量的均值。
2 一元线性回归模型
2.1 数学模型
2.1.0 一般方程
Y
i
=
β
0
+
β
1
X
i
+
u
i
Y_i=\beta_0+\beta_1X_i+u_i
Yi=β0+β1Xi+ui
其中,
变量 | 注释 |
---|---|
X i X_i Xi | 自变量,解释变量 |
Y i Y_i Yi | 因变量,被解释变量 |
β 0 , β 1 \beta_0,\beta_1 β0,β1 | 回归系数 |
u i u_i ui | 为影响 Y i Y_i Yi的其他因素,是随机误差项 |
2.1.2 随机误差项假定
假定1:在
X
i
X_i
Xi一定的情况下,
u
i
u_i
ui的平均值为零,即
E
(
u
i
)
=
0
E(u_i)=0
E(ui)=0.
假定2:每个
X
i
X_i
Xi对应的随机误差项
u
i
u_i
ui具有相同的常数方差,称为同方差性,
V
a
r
(
u
i
)
=
σ
u
2
Var(u_i)=\sigma_{u}^2
Var(ui)=σu2.
假定3:
u
i
u_i
ui服从正态分布,
u
u
u~
N
(
0
,
σ
2
)
N(0,\sigma^2)
N(0,σ2).
假定4:任意两个
X
i
X_i
Xi与
X
j
X_j
Xj对应的随机项
u
i
u_i
ui与
u
j
u_j
uj之间是独立不相关的,即
C
o
v
(
u
i
,
u
j
)
=
0
Cov(u_i,u_j)=0
Cov(ui,uj)=0,称为无序列性或无自相关.
假定5:自变量
X
X
X是一组确定性变量,随机扰动项
u
i
u_i
ui与自变量
X
i
X_i
Xi无关,即
C
o
v
(
u
i
,
X
i
)
=
0
Cov(u_i,X_i)=0
Cov(ui,Xi)=0.
2.1.3 总体回归方程
E
(
Y
i
)
=
β
0
+
β
1
X
i
E(Y_i)=\beta_0+\beta_1X_i
E(Yi)=β0+β1Xi
每个Y值与X在一条直线附近波动,考虑所有Y的取值,其均值E(Y)与X在一条直线上.
2.1.4 样本回归方程及模型
样本回归方程
Y
i
^
=
β
0
^
+
β
1
^
X
i
\hat{Y_{i}}=\hat{\beta_0}+\hat{\beta_1}X_i
Yi^=β0^+β1^Xi
样本回归模型
Y
i
=
β
0
^
+
β
1
^
X
i
+
e
i
Y_i=\hat{\beta_0}+\hat{\beta_1}X_i+e_i
Yi=β0^+β1^Xi+ei
其中,
变量 | 注释 |
---|---|
β 0 ^ , β 1 ^ \hat{\beta_0},\hat{\beta_1} β0^,β1^ | 分别为 β 0 , β 1 \beta_0,\beta_1 β0,β1的估计值 |
e i e_i ei | 残差项,也称拟合误差,是 u i u_i ui的估计值 |
2.2 最小二乘法
2.2.1 基本思路
对模型 Y i = β 0 + β 1 X i + u i Y_i=\beta_0+\beta_1X_i+u_i Yi=β0+β1Xi+ui通过样本值求 β 0 \beta_0 β0, β 1 \beta_1 β1的估计值 β 0 ^ , β 1 ^ \hat{\beta_0},\hat{\beta_1} β0^,β1^,即求解样本回归方程:
Y i ^ = β 0 ^ + β 1 ^ X i \hat{Y_{i}}=\hat{\beta_0}+\hat{\beta_1}X_i Yi^=β0^+β1^Xi
2.2.2 拟合准则
问题:如果不加限制,通过样本点
(
X
i
,
Y
i
)
(X_i,Y_i)
(Xi,Yi)可以拟合出多条直线.
解决方案:拟合参差
e
i
e_i
ei最小,即
∑
e
i
2
(
m
i
n
)
\sum{e_i^2{}}(min)
∑ei2(min),通过计算确定一元线性回归模型
Y
i
=
β
0
+
β
1
X
i
+
u
i
Y_i=\beta_0+\beta_1X_i+u_i
Yi=β0+β1Xi+ui参数估计值
β
0
^
,
β
1
^
\hat{\beta_0},\hat{\beta_1}
β0^,β1^.
2.2.3 推导过程
二元函数求极值.
令
F
(
β
0
^
,
β
1
^
)
=
∑
e
i
2
=
∑
(
Y
i
−
Y
i
^
)
2
=
∑
(
Y
i
−
β
0
^
−
β
1
^
X
i
)
2
F(\hat{\beta_0},\hat{\beta_1})=\sum{e_i^2}=\sum{(Y_i-\hat{Y_i})^2}=\sum{(Y_i-\hat{\beta_0}-\hat{\beta_1}X_i)^2}
F(β0^,β1^)=∑ei2=∑(Yi−Yi^)2=∑(Yi−β0^−β1^Xi)2.
分别对
β
0
^
,
β
1
^
\hat{\beta_0},\hat{\beta_1}
β0^,β1^求偏导
∂
F
(
β
0
^
,
β
1
^
)
∂
β
0
^
=
∂
∑
(
Y
i
−
β
0
^
−
β
1
^
X
i
)
2
∂
β
0
^
=
∑
(
Y
i
−
β
0
−
β
1
X
i
)
=
0
∂
F
(
β
0
^
,
β
1
^
)
∂
β
1
^
=
∂
∑
(
Y
i
−
β
0
^
−
β
1
^
X
i
)
2
∂
β
1
^
=
∑
(
Y
i
−
β
0
−
β
1
X
i
)
X
i
=
0
\frac{\partial{F(\hat{\beta_0},\hat{\beta_1})}}{\partial{\hat{\beta_0}}}= \frac{\partial{\sum{(Y_i-\hat{\beta_0}-\hat{\beta_1}X_i)^2}}}{\partial{\hat{\beta_0}}}=\sum(Y_i-\beta_0-\beta_1X_i)=0\\ \frac{\partial{F(\hat{\beta_0},\hat{\beta_1})}}{\partial{\hat{\beta_1}}}=\frac{\partial{\sum{(Y_i-\hat{\beta_0}-\hat{\beta_1}X_i)^2}}}{\partial{\hat{\beta_1}}}=\sum(Y_i-\beta_0-\beta_1X_i)X_i=0 \begin{matrix} \end{matrix}
∂β0^∂F(β0^,β1^)=∂β0^∂∑(Yi−β0^−β1^Xi)2=∑(Yi−β0−β1Xi)=0∂β1^∂F(β0^,β1^)=∂β1^∂∑(Yi−β0^−β1^Xi)2=∑(Yi−β0−β1Xi)Xi=0
求解
{
β
0
^
=
∑
Y
i
−
β
1
X
i
n
β
1
^
=
1
n
∑
X
i
∑
Y
i
−
∑
X
i
Y
i
1
n
(
∑
X
i
)
2
−
∑
X
i
2
)
\begin{matrix} \begin{cases} \hat{\beta_0}=\frac{\sum{Y_i-\beta_1Xi}}{n}\\ \hat{\beta_1}=\frac{\frac{1}{n}\sum{X_i}\sum{Y_i}-\sum{X_iY_i}}{\frac{1}{n}(\sum{X_i})^2-\sum{X_i}^2)} \end{cases} \end{matrix}
{β0^=n∑Yi−β1Xiβ1^=n1(∑Xi)2−∑Xi2)n1∑Xi∑Yi−∑XiYi
解得
{
β
1
^
=
∑
(
X
i
−
X
‾
)
(
Y
i
−
Y
‾
)
∑
(
X
i
−
X
‾
)
2
β
0
^
=
Y
‾
−
β
1
^
X
‾
\begin{matrix} \begin{cases} \hat{\beta_1}=\frac{\sum(X_i-\overline{X})(Y_i-\overline{Y})}{\sum(X_i-\overline{X})^2}\\ \hat{\beta_0}=\overline{Y}-\hat{\beta_1}\overline{X} \end{cases} \end{matrix}
{β1^=∑(Xi−X)2∑(Xi−X)(Yi−Y)β0^=Y−β1^X
其中,
变量 | 注释 |
---|---|
X ‾ = 1 n ∑ X i , Y ‾ = 1 n ∑ Y i \overline{X}=\frac{1}{n}\sum{X_i},\overline{Y}=\frac{1}{n}\sum{Y_i} X=n1∑Xi,Y=n1∑Yi X ‾ , Y ‾ \overline{X},\overline{Y} X,Y | 分别为 X , Y X,Y X,Y的均值. |
∑ ( 1 n ∑ X i ) 2 = n [ ( 1 n ) 2 ( ∑ X i ) 2 ] \sum{(\frac{1}{n}\sum{X_i})^2}=n[(\frac{1}{n})^2(\sum{X_i})^2] ∑(n1∑Xi)2=n[(n1)2(∑Xi)2] | 平均平方值 |
3 多元线性回归模型
3.1 数学模型
3.1.0 一般方程
Y
=
β
0
+
β
1
X
1
+
β
2
X
2
+
⋯
+
β
m
X
m
+
u
Y=\beta_0+\beta_1X_1+\beta_2X_2+\cdots+\beta_mX_m+u
Y=β0+β1X1+β2X2+⋯+βmXm+u
其中,
变量 | 注释 |
---|---|
X 1 , X 2 , ⋯   , X n X_1,X_2,\cdots,X_n X1,X2,⋯,Xn | 自变量,解释变量 |
Y Y Y | 因变量,被解释变量 |
β 0 \beta_0 β0 | 常数项,如偏置 |
β 1 \beta_1 β1 | 偏回归系数,如权重 |
u u u | 为影响 Y Y Y的其他因素,是随机误差项 |
d d d | 为分类数量或属性数量 |
- 写成矩阵形式:
Y = [ Y 1 Y 2 ⋮ Y n ] = [ 1 X 11 ⋯ X 1 d 1 X 21 ⋯ X 2 d ⋮ ⋮ ⋮ 1 X n 1 ⋯ X n d ] [ β 0 β 1 β 2 ⋮ β d ] + [ u 1 u 2 ⋮ u n ] Y=\begin{bmatrix} Y_1\\ Y_2\\ \vdots\\ Y_n \end{bmatrix} =\begin{bmatrix} 1 & X_{11} & \cdots & X_{1d}\\ 1 & X_{21} & \cdots & X_{2d}\\ \vdots & \vdots & &\vdots & \\ 1 & X_{n1} & \cdots & X_{nd}\\ \end{bmatrix} \begin{bmatrix} \beta_0\\ \beta_1\\ \beta_2\\ \vdots\\ \beta_d \end{bmatrix} +\begin{bmatrix} u_1\\ u_2\\ \vdots\\ u_n \end{bmatrix} Y=⎣⎢⎢⎢⎡Y1Y2⋮Yn⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡11⋮1X11X21⋮Xn1⋯⋯⋯X1dX2d⋮Xnd⎦⎥⎥⎥⎤⎣⎢⎢⎢⎢⎢⎡β0β1β2⋮βd⎦⎥⎥⎥⎥⎥⎤+⎣⎢⎢⎢⎡u1u2⋮un⎦⎥⎥⎥⎤
将误差项
u
u
u与偏置项
β
0
\beta_0
β0合并为一个参数,将矩阵写为:
Y
=
[
Y
1
Y
2
⋮
Y
n
]
=
[
1
X
11
⋯
X
1
d
1
X
21
⋯
X
2
d
⋮
⋮
⋮
1
X
n
1
⋯
X
n
d
]
[
β
0
β
1
β
2
⋮
β
d
]
Y=\begin{bmatrix} Y_1\\ Y_2\\ \vdots\\ Y_n \end{bmatrix} =\begin{bmatrix} 1 & X_{11} & \cdots & X_{1d}\\ 1 & X_{21} & \cdots & X_{2d}\\ \vdots & \vdots & &\vdots & \\ 1 & X_{n1} & \cdots & X_{nd}\\ \end{bmatrix} \begin{bmatrix} \beta_0\\ \beta_1\\ \beta_2\\ \vdots\\ \beta_d \end{bmatrix}
Y=⎣⎢⎢⎢⎡Y1Y2⋮Yn⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡11⋮1X11X21⋮Xn1⋯⋯⋯X1dX2d⋮Xnd⎦⎥⎥⎥⎤⎣⎢⎢⎢⎢⎢⎡β0β1β2⋮βd⎦⎥⎥⎥⎥⎥⎤
其中,
变量 | 注释 |
---|---|
X i = ( X i 1 ; X i 2 ; ⋯   ; X i d ) X_i=(X_{i1};X_{i2};\cdots;X{id}) Xi=(Xi1;Xi2;⋯;Xid) | 列向量 |
β ∗ = ( β 0 ; β 1 ; ⋯   ; β d ) \beta^*=(\beta_0;\beta_1;\cdots;\beta_d) β∗=(β0;β1;⋯;βd) | 列向量 |
自变量矩阵:
X
=
[
1
X
1
T
1
X
2
T
⋮
⋮
1
X
n
T
]
X=\begin{bmatrix} 1&X_1^{T}\\ 1&X_2^{T}\\ \vdots&\vdots\\ 1&X_n^{T} \end{bmatrix}
X=⎣⎢⎢⎢⎡11⋮1X1TX2T⋮XnT⎦⎥⎥⎥⎤
X
1
T
X_1^{T}
X1T为向量转置
则有:
Y
=
X
β
∗
Y=X\beta^*
Y=Xβ∗
3.1.2 假设条件
假设1:
Y
Y
Y与
X
1
,
X
2
,
⋯
 
,
X
n
X_1,X_2,\cdots,X_n
X1,X2,⋯,Xn具有线性关系
假设2:各观测值
Y
i
(
i
=
1
,
2
,
⋯
 
,
n
)
Y_i(i=1,2,\cdots,n)
Yi(i=1,2,⋯,n)相互独立
假设3:参差
u
u
u服从正态分布,即
u
u
u~
N
(
0
,
σ
2
)
N(0,\sigma^2)
N(0,σ2).
3.1.3 总体回归方程
E
(
Y
)
=
β
0
+
β
1
∗
X
1
+
β
2
∗
X
2
+
⋯
+
β
n
∗
X
m
E(Y)=\beta_0+\beta_1^*X_1+\beta_2^*X_2+\cdots+\beta_n^*X_m
E(Y)=β0+β1∗X1+β2∗X2+⋯+βn∗Xm
每个Y值与X在一条直线附近波动,考虑所有Y的取值,其均值E(Y)与X在一条直线上.
3.1.4 样本回归方程及模型
-
样本回归方程
Y ^ = β 0 ∗ ^ + β 1 ∗ ^ X 1 + β 2 ∗ ^ X 2 + ⋯ + β n ∗ ^ X n \hat{Y}=\hat{\beta_0^*}+\hat{\beta_1^*}X_1+\hat{\beta_2^*}X_2+\cdots+\hat{\beta_n^*}X_n Y^=β0∗^+β1∗^X1+β2∗^X2+⋯+βn∗^Xn -
样本回归模型
Y = β 0 ∗ ^ + β 1 ∗ ^ X 1 + β 2 ∗ ^ X 2 + ⋯ + β n ∗ ^ X n + e Y=\hat{\beta_0^*}+\hat{\beta_1^*}X_1+\hat{\beta_2^*}X_2+\cdots+\hat{\beta_n^*}X_n+e Y=β0∗^+β1∗^X1+β2∗^X2+⋯+βn∗^Xn+e
即:
e = Y − Y ^ e=Y-\hat{Y} e=Y−Y^
其中,
变量 | 注释 |
---|---|
β 0 ^ , β 1 ^ , ⋯   , b e t a m ^ \hat{\beta_0},\hat{\beta_1},\cdots,\hat{beta_m} β0^,β1^,⋯,betam^ | 分别为 β 0 , β 1 , ⋯   , β m \beta_0,\beta_1,\cdots,\beta_m β0,β1,⋯,βm的估计值 |
e e e | 残差项,也称拟合误差,是 u u u的估计值 |
- 矩阵形式
Y ^ = X β ∗ ^ \hat{Y}=X\hat{\beta^*} Y^=Xβ∗^
其中, β ∗ ^ = ( β 0 ^ ; β 1 ^ ; ⋯   ; β d ^ ) \hat{\beta^*}=(\hat{\beta_0};\hat{\beta_1};\cdots;\hat{\beta_d}) β∗^=(β0^;β1^;⋯;βd^).
3.2 建立回归方程
3.2.1 原理及原则
同2.2.1及2.2.2.
3.2.2 推导过程
【二元函数求极值】
令
F
(
β
0
^
,
β
1
,
⋯
 
,
β
m
^
^
)
=
∑
e
i
2
=
∑
(
Y
−
Y
^
)
2
=
∑
(
Y
−
β
0
^
−
β
1
^
X
i
−
⋯
−
β
m
^
)
2
F(\hat{\beta_0},\hat{\beta_1,\cdots,\hat{\beta_m}})=\sum{e_i^2}=\sum{(Y-\hat{Y})^2}=\sum{(Y-\hat{\beta_0}-\hat{\beta_1}X_i-\cdots-\hat{\beta_m})^2}
F(β0^,β1,⋯,βm^^)=∑ei2=∑(Y−Y^)2=∑(Y−β0^−β1^Xi−⋯−βm^)2.
分别对
β
0
^
,
β
1
^
,
⋯
 
,
β
m
^
\hat{\beta_0},\hat{\beta_1},\cdots,\hat{\beta_m}
β0^,β1^,⋯,βm^求偏导
{
∂
F
(
β
0
^
,
β
1
,
^
⋯
 
,
β
m
^
)
∂
β
0
^
=
∂
∑
(
Y
i
−
β
0
^
−
β
1
^
X
i
−
⋯
−
β
m
^
X
m
)
2
∂
β
0
^
=
0
∂
F
(
β
0
^
,
β
1
^
)
∂
β
2
^
=
∂
∑
(
Y
i
−
β
0
^
−
β
1
^
X
i
−
⋯
−
β
m
^
X
m
)
2
∂
β
2
^
=
0
⋮
∂
F
(
β
0
^
,
β
1
^
)
∂
β
m
^
=
∂
∑
(
Y
i
−
β
0
^
−
β
1
^
X
i
−
⋯
−
β
m
^
X
m
)
2
∂
β
m
^
=
0
\begin{matrix} \begin{cases} \frac{\partial{F(\hat{\beta_0},\hat{\beta_1,}\cdots,\hat{\beta_m})}}{\partial{\hat{\beta_0}}}=\frac{\partial{\sum{(Y_i-\hat{\beta_0}-\hat{\beta_1}X_i-\cdots-\hat{\beta_m}X_m)^2}}}{\partial{\hat{\beta_0}}}=0\\ \frac{\partial{F(\hat{\beta_0},\hat{\beta_1})}}{\partial{\hat{\beta_2}}}=\frac{\partial{\sum{(Y_i-\hat{\beta_0}-\hat{\beta_1}X_i-\cdots-\hat{\beta_m}X_m)^2}}}{\partial{\hat{\beta_2}}}=0\\ \vdots \\ \frac{\partial{F(\hat{\beta_0},\hat{\beta_1})}}{\partial{\hat{\beta_m}}}=\frac{\partial{\sum{(Y_i-\hat{\beta_0}-\hat{\beta_1}X_i-\cdots-\hat{\beta_m}X_m)^2}}}{\partial{\hat{\beta_m}}}=0 \end{cases} \end{matrix}
⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧∂β0^∂F(β0^,β1,^⋯,βm^)=∂β0^∂∑(Yi−β0^−β1^Xi−⋯−βm^Xm)2=0∂β2^∂F(β0^,β1^)=∂β2^∂∑(Yi−β0^−β1^Xi−⋯−βm^Xm)2=0⋮∂βm^∂F(β0^,β1^)=∂βm^∂∑(Yi−β0^−β1^Xi−⋯−βm^Xm)2=0
若
(
X
T
X
)
k
×
k
(X^{T}X)_{k\times{k}}
(XTX)k×k是满秩矩阵,其逆存在,解得
β
^
=
(
X
T
X
)
−
1
X
T
Y
\hat{\beta}=(X^{T}X)^{-1}X^{T}Y
β^=(XTX)−1XTY
其中,
X
T
X^{T}
XT是
X
X
X的转置矩阵.
以上,完成多元线性回归分析.
3.2.3 矩阵形式推导
- 平方误差
F ( β 0 ∗ ^ , β 1 ∗ ^ , ⋯   , β m ∗ ^ ) = e 2 = ( Y − X β ∗ ^ ) T ( Y − X β ∗ ^ ) F(\hat{\beta_0^*},\hat{\beta_1^*},\cdots,\hat{\beta_m^*})={e^2}=(Y-X\hat{\beta^*})^{T}(Y-X\hat{\beta^*}) F(β0∗^,β1∗^,⋯,βm∗^)=e2=(Y−Xβ∗^)T(Y−Xβ∗^) - 参数说明
矩阵 | 维度 |
---|---|
Y | n×1 |
X | n×(d+1) |
β ∗ ^ \hat{\beta^*} β∗^ | (d+1)×1 |
( Y − X β ∗ ^ ) T (Y-X\hat{\beta^*})^{T} (Y−Xβ∗^)T | 1×n |
Y − X β ∗ ^ Y-X\hat{\beta^*} Y−Xβ∗^ | n×1 |
F | 1×1 |
- 极小值求解
∂ F ∂ β ∗ ^ = ∂ [ ( Y − X β ∗ ^ ) T ( Y − X β ∗ ^ ) ] ∂ β ∗ ^ = ( − X ) T ( Y − X β ∗ ^ ) + ( Y − X β ∗ ^ ) T ( − X ) = 2 X T ( X β ∗ ^ − Y ) \frac{\partial F}{\partial \hat{\beta^*}} =\frac{\partial [(Y-X\hat{\beta^*})^{T}(Y-X\hat{\beta^*})]}{\partial \hat{\beta^*}}\\ =(-X)^T(Y-X\hat{\beta^*})+(Y-X\hat{\beta^*})^T(-X)\\ =2X^T(X\hat{\beta^*}-Y) ∂β∗^∂F=∂β∗^∂[(Y−Xβ∗^)T(Y−Xβ∗^)]=(−X)T(Y−Xβ∗^)+(Y−Xβ∗^)T(−X)=2XT(Xβ∗^−Y)
令 ∂ F ∂ β ∗ ^ = 0 \frac{\partial F}{\partial \hat{\beta^*}}=0 ∂β∗^∂F=0,则有
X T X β ∗ ^ − X T Y = 0 X^TX\hat{\beta^*}-X^TY=0 XTXβ∗^−XTY=0
当 X T X X^TX XTX满秩或正定时,有
β ∗ ^ = ( X T X ) − 1 X T Y \hat{\beta^*}=(X^TX)^{-1}X^TY β∗^=(XTX)−1XTY
4 逻辑回归
逻辑回归(logistic Regression):研究因变量为二分类或多分类观察结果与影响因素(自变量)之间关系的多变量分析方法,机器学习中的sigmoid,属于概率型非线性回归模型,但是,其计算方法是以线性回归为基础的,本质是线性回归,因为他只能发现变量间的线性关系.
4.1 逻辑回归模型
l ( x ) = 1 1 + e − x l(x)=\frac{1}{1+e^{-x}} l(x)=1+e−x1
4.2 逻辑回归分析分类
按数据类型
- 非条件逻辑回归分析(成组数据)
- 条件逻辑回归分析(配对-对照数据)
按因变量个数
- 二分类逻辑回归分析
- 多分类逻辑回归分析
4.3 二分类逻辑回归分析
设因变量
Y
Y
Y是一个二分类变量,取值为0或1.影响
Y
Y
Y取值的
m
m
m个自变量分别为
X
1
,
X
2
,
⋯
 
,
X
m
X_1,X_2,\cdots,X_m
X1,X2,⋯,Xm.在
m
m
m个自变量(暴露因素)作用下
Y
=
1
Y=1
Y=1发生的概率为
P
=
P
(
Y
=
1
∣
X
1
,
X
2
,
⋯
 
,
X
m
)
P=P(Y=1|X_1,X_2,\cdots,X_m)
P=P(Y=1∣X1,X2,⋯,Xm)
logistic回归模型为
P
=
1
1
+
e
β
0
+
β
1
X
1
+
β
2
X
2
+
⋯
+
β
m
X
m
P=\frac{1}{1+e^{\beta_0+\beta_1X_1+\beta_2X_2+\cdots+\beta_mX_m}}
P=1+eβ0+β1X1+β2X2+⋯+βmXm1
Y
=
0
Y=0
Y=0发生的概率为
1
−
P
=
e
β
0
+
β
1
X
1
+
β
2
X
2
+
⋯
+
β
m
X
m
1
+
e
β
0
+
β
1
X
1
+
β
2
X
2
+
⋯
+
β
m
X
m
1-P=\frac{e^{\beta_0+\beta_1X_1+\beta_2X_2+\cdots+\beta_mX_m}}{1+e^{\beta_0+\beta_1X_1+\beta_2X_2+\cdots+\beta_mX_m}}
1−P=1+eβ0+β1X1+β2X2+⋯+βmXmeβ0+β1X1+β2X2+⋯+βmXm
logit变换(分对数变换)后,logistic回归模型为
log
i
t
(
p
)
=
ln
(
P
1
−
P
)
=
β
0
+
β
1
X
1
+
β
2
X
2
+
⋯
+
β
m
X
m
\log it(p)=\ln(\frac{P}{1-P})=\beta_0+\beta_1X_1+\beta_2X_2+\cdots+\beta_mX_m
logit(p)=ln(1−PP)=β0+β1X1+β2X2+⋯+βmXm
回归系数
β
j
\beta_j
βj的意义
当各种暴露因素为0时,
log
i
t
(
p
)
=
ln
(
P
1
−
P
)
=
β
0
+
β
1
X
1
+
β
2
X
2
+
⋯
+
β
m
X
m
\log it(p)=\ln(\frac{P}{1-P})=\beta_0+\beta_1X_1+\beta_2X_2+\cdots+\beta_mX_m
logit(p)=ln(1−PP)=β0+β1X1+β2X2+⋯+βmXm
=
β
0
+
β
1
×
0
+
β
2
×
0
+
⋯
β
m
×
0
=\beta_0+{\beta_1}\times{0}+{\beta_2}\times{0}+\cdots\beta_m\times{0}
=β0+β1×0+β2×0+⋯βm×0
=
β
0
=\beta_0
=β0
流行病学常用指标优势比(odds ratio,OR)或比数比,定义为:暴露人群发病优势与非暴露人群发病优势之比,即
X
i
X_i
Xi的优势比为
O
R
=
P
1
1
−
P
1
P
0
1
−
P
0
OR=\frac{\frac{P_1}{1-P_1}}{\frac{P_0}{1-P_0}}
OR=1−P0P01−P1P1
ln
(
O
R
)
=
log
i
t
(
P
1
1
−
P
1
)
−
log
i
t
(
P
0
1
−
P
0
)
\ln(OR)=\log it(\frac{P_1}{1-P_1})-\log it(\frac{P_0}{1-P_0})
ln(OR)=logit(1−P1P1)−logit(1−P0P0)
=
log
i
t
[
p
(
1
)
]
−
log
i
t
[
p
(
0
)
]
=\log it[p(1)]-\log it[p(0)]
=logit[p(1)]−logit[p(0)]
=
β
0
+
β
i
X
i
(
X
i
=
1
)
−
(
β
0
+
β
i
X
i
(
X
i
=
0
)
)
=\beta_0+\beta_iX_i(X_i=1)-(\beta_0+\beta_iX_i(X_i=0))
=β0+βiXi(Xi=1)−(β0+βiXi(Xi=0))
=
β
j
=\beta_j
=βj
当
β
j
=
0
\beta_j=0
βj=0时,
O
R
=
1
OR=1
OR=1,表示因素
X
j
X_j
Xj对疾病的发生不起作用;
当
β
j
>
0
\beta_j>0
βj>0时,
O
R
>
1
OR>1
OR>1,表示因素
X
j
X_j
Xj是一个危险因素;
当
β
j
=
0
\beta_j=0
βj=0时,
O
R
<
1
OR<1
OR<1,表示因素
X
j
X_j
Xj是一个保护因素;
由于
O
R
OR
OR值与模型中的常数项
β
0
\beta_0
β0无关,因此
β
0
\beta_0
β0在危险因素分析中常被视为无效参数.
4.4 logistic回归模型
【数据】
训练数据集:
x
=
x
1
,
x
2
,
⋯
 
,
x
m
x = {x_1,x_2,\cdots,x_m}
x=x1,x2,⋯,xm
数据分类:
y
=
y
1
,
y
2
,
⋯
 
,
y
n
y = {y_1,y_2,\cdots,y_n}
y=y1,y2,⋯,yn
构建逻辑回归模型:
f
(
β
)
f(\beta)
f(β)
【对于二分类】
{
p
(
y
=
1
∣
x
,
β
)
=
1
1
+
e
−
β
T
x
p
(
y
=
0
∣
x
,
β
)
=
e
−
β
T
x
1
+
e
−
β
T
x
=
1
−
p
(
y
=
1
∣
x
,
β
)
=
p
(
y
=
1
∣
x
,
−
β
)
\begin{cases} p(y=1|x,\beta)=\frac{1}{1+e^{-\beta ^Tx}}\\ p(y=0|x,\beta)=\frac{e^{-\beta ^Tx}}{1+e^{-\beta ^Tx}}=1-p(y=1|x, \beta)=p(y=1|x,-\beta) \end{cases}
⎩⎨⎧p(y=1∣x,β)=1+e−βTx1p(y=0∣x,β)=1+e−βTxe−βTx=1−p(y=1∣x,β)=p(y=1∣x,−β)
为方便表示,约定如下:
h
β
(
x
)
=
g
(
β
T
x
)
=
1
1
+
e
−
β
x
g
(
z
)
=
1
1
+
e
z
h_{\beta}(x)=g(\beta ^Tx)=\frac{1}{1+e^{-\beta x}}\\ g(z)=\frac{1}{1+e^z}
hβ(x)=g(βTx)=1+e−βx1g(z)=1+ez1
则有:
p
(
y
∣
x
,
β
)
=
p
(
y
=
1
∣
x
,
β
)
y
[
1
−
p
(
y
=
1
∣
x
,
β
)
]
1
−
y
=
[
h
β
(
x
)
]
y
[
1
−
h
β
]
1
−
y
p(y|x, \beta)=p(y=1|x, \beta)^y[1-p(y=1|x, \beta)]^{1-y} \\=[h_{\beta}(x)]^y[1-h_{\beta}]^{1-y}
p(y∣x,β)=p(y=1∣x,β)y[1−p(y=1∣x,β)]1−y=[hβ(x)]y[1−hβ]1−y
其中
y
=
0
o
r
1
y=0or 1
y=0or1.
4.5 logistic回归模型参数估计:最大似然估计
logistic回归模型参数估计采用最大似然估计,建立似然函数与对数似然函数,求使对数似然函数最大时的最大值,其估计值即为最大似然估计值.
建立样本似然函数
L
(
β
∣
x
,
y
)
=
∏
i
=
1
n
p
(
y
∣
x
,
β
)
=
[
h
β
(
x
)
]
y
i
[
1
−
h
β
]
1
−
y
i
=
P
i
Y
i
(
1
−
P
i
)
1
−
Y
i
(
i
=
1
,
2
,
⋯
 
,
n
)
L(\beta|x, y)=\prod_{i=1}^{n}p(y|x,\beta)=[h_{\beta}(x)]^{y_i} [1-h_{\beta}]^{1-y_i}\\=P_{i}^{Y_i}(1-P_i)^{1-Y_i}(i=1,2,\cdots,n)
L(β∣x,y)=i=1∏np(y∣x,β)=[hβ(x)]yi[1−hβ]1−yi=PiYi(1−Pi)1−Yi(i=1,2,⋯,n)
其中,
P
i
P_i
Pi表示第
i
i
i个观察对象处于暴露条件下
Y
=
1
Y=1
Y=1时发生的概率.
根据最大似然原理,似然函数
L
L
L应取最大值,对数似然函数为
l
(
β
)
=
ln
L
(
β
)
=
∑
i
=
1
m
[
y
i
ln
[
h
β
(
x
)
]
+
(
1
−
y
i
)
ln
[
1
−
h
β
]
]
=
∑
i
=
1
m
[
Y
i
ln
P
i
+
(
1
−
Y
i
)
ln
(
1
−
P
i
)
]
l(\beta)=\ln L(\beta)=\sum_{i=1}^{m}[y_i\ln [h_{\beta}(x)]+(1-y_i)\ln [1-h_{\beta}]]\\=\sum_{i=1}^{m}[Y_i\ln P_i+(1-Y_i)\ln (1-P_i)]
l(β)=lnL(β)=i=1∑m[yiln[hβ(x)]+(1−yi)ln[1−hβ]]=i=1∑m[YilnPi+(1−Yi)ln(1−Pi)]
其中,
对参数
β
j
(
j
=
1
,
2
,
⋯
 
,
m
)
\beta_j(j=1,2,\cdots,m)
βj(j=1,2,⋯,m),令
ln
L
\ln L
lnL的一阶导数为零,即
∂
ln
L
∂
β
j
=
0
\frac{\partial{\ln L}}{\partial{\beta_j}}=0
∂βj∂lnL=0,利用Newton-Raphson迭代方法接方程组,求得
β
j
\beta_j
βj的估计值
b
j
b_j
bj和
b
j
b_j
bj的渐进标准误差
S
b
j
S_{b_j}
Sbj.
4.6 梯度下降
【目标函数】
l
(
β
)
=
ln
L
(
β
)
=
∑
i
=
1
m
[
y
i
ln
[
h
β
(
x
)
]
+
(
1
−
y
i
)
ln
[
1
−
h
β
]
]
l(\beta)=\ln L(\beta)=\sum_{i=1}^{m}[y_i\ln [h_{\beta}(x)]+(1-y_i)\ln [1-h_{\beta}]]
l(β)=lnL(β)=i=1∑m[yiln[hβ(x)]+(1−yi)ln[1−hβ]]
【导数(梯度)】
∂
l
(
β
)
∂
β
j
=
∂
∑
i
=
1
m
[
y
i
ln
[
h
β
(
x
i
)
]
+
(
1
−
y
i
)
ln
[
1
−
h
β
(
x
i
)
]
]
∂
β
j
=
[
y
i
h
β
(
x
i
)
−
(
1
−
y
i
)
1
1
−
h
β
(
x
i
)
]
∂
(
h
β
(
x
i
)
)
∂
β
j
=
[
y
i
g
(
β
T
x
i
)
−
(
1
−
y
i
)
1
1
−
g
(
β
T
x
i
)
]
∂
(
g
(
β
T
x
i
)
)
∂
β
j
=
[
y
i
g
(
β
T
x
i
)
−
(
1
−
y
i
)
1
1
−
g
(
β
T
x
i
)
]
[
e
−
β
T
x
i
(
1
+
e
β
T
x
)
2
]
∂
β
T
x
i
∂
β
j
=
[
y
i
g
(
β
T
x
i
)
−
(
1
−
y
i
)
1
1
−
g
(
β
T
x
i
)
]
[
g
(
β
T
x
i
)
(
1
−
g
(
β
T
x
i
)
)
]
∂
β
T
x
i
∂
β
j
=
[
y
i
−
g
(
β
T
x
i
)
]
x
i
j
\frac{\partial l(\beta)}{\partial \beta_j}=\frac{\partial \sum_{i=1}^{m}[y_i\ln [h_{\beta}(x_i)]+(1-y_i)\ln [1-h_{\beta}(x_i)]]}{\partial \beta_j}\\ =[\frac{y_i}{h_{\beta}(x_i)}-(1-y_i)\frac{1}{1-h_{\beta}{(x_i)}}]\frac{\partial(h_{\beta}(x_i))}{\partial \beta_j}\\ =[\frac{y_i}{g(\beta^T x_i)}-(1-y_i)\frac{1}{1-g(\beta^T x_i)}]\frac{\partial(g(\beta^T x_i))}{\partial_{\beta_j}}\\ =[\frac{y_i}{g(\beta^T x_i)}-(1-y_i)\frac{1}{1-g(\beta^T x_i)}][\frac{e^{-\beta^{T}x_i}}{(1+e^{\beta^{T}x})^2}]\frac{\partial \beta^Tx_i}{\partial \beta_j}\\ =[\frac{y_i}{g(\beta^T x_i)}-(1-y_i)\frac{1}{1-g(\beta^T x_i)}][g(\beta^Tx_i)(1-g(\beta^Tx_i))]\frac{\partial \beta^Tx_i}{\partial \beta_j}\\ =[y_i-g(\beta^Tx_i)]x_{ij}
∂βj∂l(β)=∂βj∂∑i=1m[yiln[hβ(xi)]+(1−yi)ln[1−hβ(xi)]]=[hβ(xi)yi−(1−yi)1−hβ(xi)1]∂βj∂(hβ(xi))=[g(βTxi)yi−(1−yi)1−g(βTxi)1]∂βj∂(g(βTxi))=[g(βTxi)yi−(1−yi)1−g(βTxi)1][(1+eβTx)2e−βTxi]∂βj∂βTxi=[g(βTxi)yi−(1−yi)1−g(βTxi)1][g(βTxi)(1−g(βTxi))]∂βj∂βTxi=[yi−g(βTxi)]xij
迭代公式:
β
j
+
1
=
β
j
+
η
[
y
i
−
g
(
β
T
x
i
)
]
x
i
j
\beta_{j+1}=\beta_j+\eta[y_i-g(\beta^Tx_i)]x_{ij}
βj+1=βj+η[yi−g(βTxi)]xij
其中:
(
l
o
g
a
x
)
′
=
1
x
ln
a
(
a
x
)
′
=
a
x
ln
a
g
(
β
T
x
i
)
=
1
1
+
e
−
β
T
x
i
e
−
β
T
x
(
1
+
e
β
T
x
)
2
=
1
1
+
e
β
T
x
(
1
−
1
1
+
e
β
T
x
)
=
g
(
β
T
x
i
)
(
1
−
g
(
β
T
x
i
)
)
η
:
l
e
a
r
n
i
n
g
−
r
a
t
e
(log_ax)'=\frac{1}{x\ln a}\\ (a^x)'=a^x\ln a\\ g(\beta^Tx_i)=\frac{1}{1+e^{-\beta^Tx_i}}\\ \frac{e^{-\beta^{T}x}}{(1+e^{\beta^{T}x})^2}=\frac{1}{1+e^{\beta^{T}x}}(1-\frac{1}{1+e^{\beta^{T}x}})\\=g(\beta^Tx_i)(1-g(\beta^Tx_i))\\ \eta:learning_-rate
(logax)′=xlna1(ax)′=axlnag(βTxi)=1+e−βTxi1(1+eβTx)2e−βTx=1+eβTx1(1−1+eβTx1)=g(βTxi)(1−g(βTxi))η:learning−rate
5 交叉熵
5.1 交叉熵函数
交叉熵函数即待优化的目标函数,来自最大似然估计,计算估计值与真实值的偏差,检验并选择最优结果.
l
(
β
)
=
ln
L
(
β
)
=
−
1
m
∑
i
=
1
m
[
y
i
ln
[
h
β
(
x
)
]
+
(
1
−
y
i
)
ln
[
1
−
h
β
]
]
l(\beta)=\ln L(\beta)=-\frac{1}{m}\sum_{i=1}^{m}[y_i\ln [h_{\beta}(x)]+(1-y_i)\ln [1-h_{\beta}]]
l(β)=lnL(β)=−m1i=1∑m[yiln[hβ(x)]+(1−yi)ln[1−hβ]]
5.2 梯度
梯度用于优化迭代时使用.
对参数
β
j
\beta_j
βj求导,获取导数(梯度):
∂
l
(
β
)
∂
β
j
=
−
1
m
∂
∑
i
=
1
m
[
y
i
ln
[
h
β
(
x
i
)
]
+
(
1
−
y
i
)
ln
[
1
−
h
β
(
x
i
)
]
]
∂
β
j
=
−
1
m
[
y
i
h
β
(
x
i
)
−
(
1
−
y
i
)
1
1
−
h
β
(
x
i
)
]
∂
(
h
β
(
x
i
)
)
∂
β
j
=
−
1
m
[
y
i
g
(
β
T
x
i
)
−
(
1
−
y
i
)
1
1
−
g
(
β
T
x
i
)
]
∂
(
g
(
β
T
x
i
)
)
∂
β
j
=
−
1
m
[
y
i
g
(
β
T
x
i
)
−
(
1
−
y
i
)
1
1
−
g
(
β
T
x
i
)
]
[
e
−
β
T
x
i
(
1
+
e
β
T
x
)
2
]
∂
β
T
x
i
∂
β
j
=
−
1
m
[
y
i
g
(
β
T
x
i
)
−
(
1
−
y
i
)
1
1
−
g
(
β
T
x
i
)
]
[
g
(
β
T
x
i
)
(
1
−
g
(
β
T
x
i
)
)
]
∂
β
T
x
i
∂
β
j
=
−
1
m
[
y
i
−
g
(
β
T
x
i
)
]
x
i
j
\frac{\partial l(\beta)}{\partial \beta_j}=-\frac{1}{m}\frac{\partial \sum_{i=1}^{m}[y_i\ln [h_{\beta}(x_i)]+(1-y_i)\ln [1-h_{\beta}(x_i)]]}{\partial \beta_j}\\ =-\frac{1}{m}[\frac{y_i}{h_{\beta}(x_i)}-(1-y_i)\frac{1}{1-h_{\beta}{(x_i)}}]\frac{\partial(h_{\beta}(x_i))}{\partial \beta_j}\\ =-\frac{1}{m}[\frac{y_i}{g(\beta^T x_i)}-(1-y_i)\frac{1}{1-g(\beta^T x_i)}]\frac{\partial(g(\beta^T x_i))}{\partial_{\beta_j}}\\ =-\frac{1}{m}[\frac{y_i}{g(\beta^T x_i)}-(1-y_i)\frac{1}{1-g(\beta^T x_i)}][\frac{e^{-\beta^{T}x_i}}{(1+e^{\beta^{T}x})^2}]\frac{\partial \beta^Tx_i}{\partial \beta_j}\\ =-\frac{1}{m}[\frac{y_i}{g(\beta^T x_i)}-(1-y_i)\frac{1}{1-g(\beta^T x_i)}][g(\beta^Tx_i)(1-g(\beta^Tx_i))]\frac{\partial \beta^Tx_i}{\partial \beta_j}\\ =-\frac{1}{m}[y_i-g(\beta^Tx_i)]x_{ij}
∂βj∂l(β)=−m1∂βj∂∑i=1m[yiln[hβ(xi)]+(1−yi)ln[1−hβ(xi)]]=−m1[hβ(xi)yi−(1−yi)1−hβ(xi)1]∂βj∂(hβ(xi))=−m1[g(βTxi)yi−(1−yi)1−g(βTxi)1]∂βj∂(g(βTxi))=−m1[g(βTxi)yi−(1−yi)1−g(βTxi)1][(1+eβTx)2e−βTxi]∂βj∂βTxi=−m1[g(βTxi)yi−(1−yi)1−g(βTxi)1][g(βTxi)(1−g(βTxi))]∂βj∂βTxi=−m1[yi−g(βTxi)]xij
5.3 信息熵
H
(
p
,
q
)
=
−
∑
x
p
(
x
)
log
q
(
x
)
H(p,q)=-\sum_xp(x)\log q(x)
H(p,q)=−x∑p(x)logq(x)
其中
x
∈
[
0
,
1
]
x\in[0,1]
x∈[0,1],按照分类取值,如样本分为三类,则
x
x
x可能取值[1, 0, 0],[0.4, 0.2, 0.4].
6 总结
(1) 回归:研究变量间的关系,即自变量估计因变量;
(2) 回归分为线性回归和非线性回归,其中,线性回归的目标函数(优化函数)使用均方差构建;非线性回归的目标函数(优化函数)使用概率模型最大似然估计构建;逻辑回归理论上也是线性回归,只能发现变量间的线性关系;
(3) 交叉熵为非线性回归,使用最大似然估计构建目标函数;
(4) 优化目标函数分为传统优化和现代优化,传统优化的特点是预先设置误差点,满足误差,即停止迭代;现代优化,属于模糊优化,不设置误差范围,只设定迭代轮数,迭代结束评价模型:构建回归模型
→
\to
→构造目标函数
→
\to
→设置误差范围
→
\to
→选择优化算法
→
\to
→迭代优化至满足误差要求;
(5) 交叉熵用于计算估计值(预测值)和实际值的偏离程度,选择最优的分类.
(6) 逻辑回归优缺点
优点 | 缺点 | 建议 |
---|---|---|
输入变量可连续可离散 | 只能发现变量间的线性关系 | 提前去除无关变量 |
模型简单直观,容易解释 | 输入变量间应相互独立 | 去除相关性较高的变量 |
不容易产生过拟合 | / | 离散化变量 |
(7) 正因为sigmoid(逻辑回归)只能发现变量间的线性关系,所以激活函数很少用,一般用Relu.
【参考文献】
[1]https://www.cnblogs.com/sparkwen/p/3441197.html
[2]https://wenku.baidu.com/view/771515f7f705cc17552709c9.html
[3]https://blog.csdn.net/jasonzzj/article/details/52017438