ISLR读书笔记六:逻辑斯蒂回归(logistic regression)

前言

之前几篇讲的线性回归处理的是回归问题,这一篇逻辑斯蒂回归(logistic regression)和下一篇线性判别分析(linear discriminant analysis)处理的是分类问题。
那么为什么不能用线性回归模型来解决分类问题呢?主要有以下三个原因:

  1. 假设因变量有三个类:狗、猪、人。将狗赋值为1,猪赋值为2,人赋值为3。这种赋值方式默认了狗、猪、人是有顺序的。而且狗与猪之间的差距=猪与人之间的差距=1,这显然是有问题的。
  2. 没有好的转换方法,可以将有三个及以上类的因变量转化为一个定量数据,用以进行线性回归。
  3. 对于0/1二分类问题,线性回归得到的数值可以看作是属于这个类的概率。即如果令 p ( X ) = P r ( Y = 1 ∣ X ) p(X)=Pr(Y=1|X) p(X)=Pr(Y=1X),那么可以用线性模型 p ( X ) = β 0 + β 1 X p(X) = \beta_0 +\beta_1X p(X)=β0+β1X 进行回归,得到的 p ( X ) p(X) p(X) 就是 Y Y Y 属于类1的概率。但问题是线性回归可能会产生 p ( X ) p(X) p(X) 小于0或者大于1的数。

逻辑斯蒂模型

逻辑斯蒂模型(logistic model)的出发点就是上面的第三个原因。对于0/1二分类问题, 利用逻辑斯蒂函数(logistic function)将 p ( X ) p(X) p(X) 的范围限制在 [ 0 , 1 ] [0,1] [0,1] 之间。
p ( X ) = e β 0 + β 1 X 1 + e β 0 + β 1 X p(X)=\frac{e^{\beta_0+\beta_1X}}{1+e^{\beta_0+\beta_1X}} p(X)=1+eβ0+β1Xeβ0+β1X
如果对上式做一个简单变换,可以得到:
p ( X ) 1 − p ( X ) = e β 0 + β 1 X \frac{p(X)}{1-p(X)}=e^{\beta_0+\beta_1X} 1p(X)p(X)=eβ0+β1X
p ( X ) 1 − p ( X ) \frac{p(X)}{1-p(X)} 1p(X)p(X)的数值称为胜算(odds)
如果对上式进行对数变换
l o g ( p ( X ) 1 − p ( X ) ) = β 0 + β 1 X log(\frac{p(X)}{1-p(X)})=\beta_0+\beta_1X log(1p(X)p(X))=β0+β1X
所以逻辑斯蒂回归可以看作是胜算(odds)的对数,对X的线性回归。

估计回归系数

系数 β 0 \beta_0 β0 β 1 \beta_1 β1 由极大似然(maximum likelihood)估计得来。似然函数(likelihood function)为: l ( β 0 , β 1 ) = ∏ i : y i = 1 p ( x i ) ∏ i ′ : y i ′ = 0 ( 1 − p ( x i ′ ) ) l(\beta_0,\beta_1) = \prod_{i:y_i=1}p(x_i)\prod_{i':y_{i'}=0}(1-p(x_{i'})) l(β0,β1)=i:yi=1p(xi)i:yi=0(1p(xi))
β ^ 0 \hat{\beta}_0 β^0 β ^ 1 \hat{\beta}_1 β^1 是使得上述似然函数最大的值。

预测

得到了 β ^ 0 \hat{\beta}_0 β^0 β ^ 1 \hat{\beta}_1 β^1 之后,就可以用
p ^ ( X ) = e β ^ 0 + β ^ 1 X 1 + e β ^ 0 + β ^ 1 X \hat{p}(X)=\frac{e^{\hat{\beta}_0+\hat{\beta}_1X}}{1+e^{\hat{\beta}_0+\hat{\beta}_1X}} p^(X)=1+eβ^0+β^1Xeβ^0+β^1X

多元逻辑斯蒂回归

l o g ( p ( X ) 1 − p ( X ) ) = β 0 + β 1 X log(\frac{p(X)}{1-p(X)})=\beta_0+\beta_1X log(1p(X)p(X))=β0+β1X 进行扩展,可以得到多元逻辑斯蒂回归(multiple logistic regression)
l o g ( p ( X ) 1 − p ( X ) ) = β 0 + β 1 X + ⋯ + β p X p log(\frac{p(X)}{1-p(X)})=\beta_0+\beta_1X+\cdots+\beta_pX_p log(1p(X)p(X))=β0+β1X++βpXp
代数变形一下,可以得到
p ( X ) = e β 0 + β 1 X + ⋯ + β p X p 1 + e β 0 + β 1 X + ⋯ + β p X p p(X)=\frac{e^{\beta_0+\beta_1X+\cdots+\beta_pX_p}}{1+e^{\beta_0+\beta_1X+\cdots+\beta_pX_p}} p(X)=1+eβ0+β1X++βpXpeβ0+β1X++βpXp
同样可以用极大似然估计的方法得到 β ^ 0 , β ^ 1 , ⋯   , β ^ p \hat{\beta}_0,\hat{\beta}_1,\cdots,\hat\beta_p β^0,β^1,,β^p

猜你喜欢

转载自blog.csdn.net/weixin_43084570/article/details/108864107
今日推荐