细讲逻辑斯蒂回归与朴素贝叶斯、最大熵原理的爱恨交织(二)

第二节 —— 统计回归分析中的逻辑斯蒂


逻辑斯蒂分布

设X是随机变量。逻辑分布指满足如下累计分布函数和概率密度函数的分布:

F ( x ) = P ( X ≤ x ) = 1 1 + e − ( x − μ ) s F(x) = P(X \leq x) = \frac{1}{1+e^{ \frac{-(x- \mu )}{s}}} F(x)=P(Xx)=1+es(xμ)1

f ( x ) = F ′ ( x ) = e − ( x − μ ) s s ( 1 + e − ( x − μ ) s ) 2 f(x) = F'(x) = \frac{e^{ \frac{-(x- \mu )}{s}}}{s(1+e^{ \frac{-(x- \mu )}{s}})^2} f(x)=F(x)=s(1+es(xμ))2es(xμ)


μ \mu μ:位置参数,决定函数图像沿x轴方向的位移
s s s:形状参数,决定函数图像的高矮胖瘦
大家可以用几何画板画一下 μ \mu μ s s s取不同值时的图像,直观的理解一下这两个参数的作用。

F ( x ) F(x) F(x)是以点 ( μ , 1 2 ) (\mu,\frac{1}{2}) (μ,21) 中心对称的曲线。它越靠近中心增长越快。 s s s越小,在中心附近的增长越快。

特别地,当 μ \mu μ=0, s s s=1 时, F ( x ) = 1 1 + e − x = σ ( x ) F(x) = \frac{1}{1+e^{-x}} \color{red}= \sigma(x) F(x)=1+ex1=σ(x)

逻辑斯蒂分布有和广泛的而应用。它最早来源于生长曲线的需要,现在还用于经济(例如描述一个产品在广告上投入与最后销售额的关系)、人口统计等领域。


逻辑斯蒂回归

对一个二元分类问题建模。

假设一个工厂生产的产品:达标/不达标 ~ B e r n o u l l i ( p ) Bernoulli(p) Bernoulli(p), p是产品达标的概率。
其中这个p受工厂其他各项指标的影响,比如流水线个数,员工人数,已投入使用时长,当日温度等等。假如我们就把举例的这四个作为特征,也就是说每一条数据(代表一个工厂)的特征向量有四维。

x i ⃗ = { x i 1 x i 2 x i 3 x i 4 } \vec{x_i} = \left\{ \begin{matrix} x_{i1}\\x_{i2}\\x_{i3}\\x_{i4} \end{matrix} \right\} xi =xi1xi2xi3xi4

角标的含义: x i j x_{ij} xij代表第 i 条数据的第 j 维。整个数据集的sample总数是N(i = 1, 2, …, N)
逻辑斯蒂回归的dataset应该是这个亚子的:

Index(i) r i r_i ri n i n_i ni P i P_i Pi x i ⃗ \vec{x_i} xi
1 r 1 r_1 r1 n 1 n_1 n1 P 1 = r 1 n 1 P_1=\frac{r_1}{n_1} P1=n1r1 ( x 11     x 12     x 13     x 14 ) (x_{11} \ \ \ x_{12} \ \ \ x_{13} \ \ \ x_{14}) (x11   x12   x13   x14)
2 r 2 r_2 r2 n 2 n_2 n2 P 2 = r 2 n 2 P_2=\frac{r_2}{n_2} P2=n2r2 ( x 21     x 22     x 23     x 24 ) (x_{21} \ \ \ x_{22} \ \ \ x_{23} \ \ \ x_{24}) (x21   x22   x23   x24)
N r N r_N rN n N n_N nN P N = r N n N P_N=\frac{r_N}{n_N} PN=nNrN ( x N 1     x N 2     x N 3     x N 4 ) (x_{N1} \ \ \ x_{N2} \ \ \ x_{N3} \ \ \ x_{N4}) (xN1   xN2   xN3   xN4)

其中, P i P_i Pi的计算方法就是从这个工厂的产品中抽出n个然后检测出当中有r个达标,用 r n \frac{r}{n} nr 作为该工厂产品Bernoulli分布的 p . 刚才我们讲p受工厂的四个特征影响,那么我们的目标就是让p用 x ⃗ \vec{x} x 来表示。

Goal: Regress P i P_i Pi on x i ⃗ \vec{x_i} xi

第一个当然想到的是直接把 P i P_i Pi 当做线性回归里面的 “y“

⇒ M o d e l : P i = β 0 + β 1 x i 1 + . . . + β 4 x i 4 + ϵ i \Rightarrow Model: P_i=\beta_0 + \beta_1x_{i1} + ... + \beta_4x_{i4} + \epsilon_i Model:Pi=β0+β1xi1+...+β4xi4+ϵi

不过这个不太行,因为 0 ≤ P i ≤ 1 0\leq P_i \leq1 0Pi1,而 x i ⃗ T β ⃗ \vec {x_i}^T \vec{\beta} xi Tβ 可能落在这个区间外。这样用 x i ⃗ T β ⃗ \vec {x_i}^T \vec{\beta} xi Tβ 表示 P i P_i Pi 就没有意义。


Idea: Do transformation on P i P_i Pi(统计学中 logistic regression 的精髓呀呀呀!)

⇒ M o d e l : l o g ( P i 1 − P i ) = β 0 + β 1 x i 1 + . . . + β 4 x i 4 + ϵ i \Rightarrow Model: log(\frac{P_i}{1-P_i})=\beta_0 + \beta_1x_{i1} + ... + \beta_4x_{i4} + \epsilon_i Model:log(1PiPi)=β0+β1xi1+...+β4xi4+ϵi

⇔ M o d e l : l o g ( P i 1 − P i ) = x i ⃗ T β ⃗ + ϵ ⃗ \Leftrightarrow Model: log(\frac{P_i}{1-P_i})=\vec {x_i}^T \vec{\beta} + \vec \epsilon Model:log(1PiPi)=xi Tβ +ϵ

⇔ F i t t e d   m o d e l : l o g ( P i ^ 1 − P i ^ ) = x i ⃗ T β ⃗ ^ \Leftrightarrow Fitted \ model: log(\frac{\hat{P_i}}{1-\hat{P_i}})=\vec {x_i}^T \hat{\vec{\beta}} Fitted model:log(1Pi^Pi^)=xi Tβ ^

有 ^ 符号的代表是根据样本数据算出来的参数estimates。对上式做一点变形:

F i t t e d   m o d e l : P i ^ = e x p ( x i ⃗ T β ⃗ ) 1 + e x p ( x i ⃗ T β ⃗ ) = 1 1 + e x p ( −   x i ⃗ T β ⃗ ) = σ ( x i ⃗ T β ⃗ ) Fitted \ model: \hat{P_i} = \frac{exp(\vec {x_i}^T \vec{\beta})}{1+exp(\vec {x_i}^T \vec{\beta})} = \frac{1}{1+exp(- \ \vec {x_i}^T \vec{\beta})} \color{red}= \sigma(\vec {x_i}^T \vec{\beta}) Fitted model:Pi^=1+exp(xi Tβ )exp(xi Tβ )=1+exp( xi Tβ )1=σ(xi Tβ )


Index(i) r i r_i ri n i n_i ni P i P_i Pi y = l o g ( P i 1 − P i ) y=log(\frac{P_i}{1-P_i}) y=log(1PiPi) x i ⃗ \vec{x_i} xi
1 r 1 r_1 r1 n 1 n_1 n1 P 1 = r 1 n 1 P_1=\frac{r_1}{n_1} P1=n1r1 l o g ( P 1 1 − P 1 ) log(\frac{P_1}{1-P_1}) log(1P1P1) ( x 11     x 12     x 13     x 14 ) (x_{11} \ \ \ x_{12} \ \ \ x_{13} \ \ \ x_{14}) (x11   x12   x13   x14)
2 r 2 r_2 r2 n 2 n_2 n2 P 2 = r 2 n 2 P_2=\frac{r_2}{n_2} P2=n2r2 l o g ( P 2 1 − P 2 ) log(\frac{P_2}{1-P_2}) log(1P2P2) ( x 21     x 22     x 23     x 24 ) (x_{21} \ \ \ x_{22} \ \ \ x_{23} \ \ \ x_{24}) (x21   x22   x23   x24)
N r N r_N rN n N n_N nN P N = r N n N P_N=\frac{r_N}{n_N} PN=nNrN l o g ( P N 1 − P N ) log(\frac{P_N}{1-P_N}) log(1PNPN) ( x N 1     x N 2     x N 3     x N 4 ) (x_{N1} \ \ \ x_{N2} \ \ \ x_{N3} \ \ \ x_{N4}) (xN1   xN2   xN3   xN4)

具体在计算的时候,把上面那个表格里每一行的 P i P_i Pi 都算一个相应的
l o g ( P i 1 − P i ) log(\frac{P_i}{1-P_i}) log(1PiPi),并把这个当成线性回归里面的 “y”,剩下的回归就都清楚啦~


下面简单说一下为什么要这么做 transformation。

在统计学中一个事件A的几率:odds = P ( A ) 1 − P ( A ) \frac{P(A)}{1-P(A)} 1P(A)P(A)

对数几率 = l o g ( P ( A ) 1 − P ( A ) ) log(\frac{P(A)}{1-P(A)}) log(1P(A)P(A))

对数几率这个函数叫做 l o g i t logit logit 函数: l o g i t ( y ) = y 1 − y logit(y) = \frac{y}{1-y} logit(y)=1yy

回到刚才的例子中,那么A =“达标”。 P i = P ( A   ∣   x i ⃗ ) P_i= P(A \ |\ \vec{x_i}) Pi=P(A  xi )

o d d s   o f   A   a t   x i ⃗ = P ( A   ∣   x i ⃗ ) 1 − P ( A   ∣   x i ⃗ ) = P i 1 − P i odds \ of \ A \ at \ \vec{x_i} = \frac{P(A \ |\ \vec{x_i})}{1-P(A \ |\ \vec{x_i})} = \frac{P_i}{1-P_i} odds of A at xi =1P(A  xi )P(A  xi )=1PiPi

l o g   o d d s   o f   A   a t   x i ⃗ = l o g ( P i 1 − P i ) = x i ⃗ T β ⃗ + ϵ ⃗ log\ odds\ of\ A\ at\ \vec{x_i} = log\Big(\frac{P_i}{1-P_i}\Big) = \vec {x_i}^T \vec{\beta} + \vec \epsilon log odds of A at xi =log(1PiPi)=xi Tβ +ϵ

于是,逻辑斯蒂回归用一句话概括就是: x ⃗ \vec{x} x 的线性函数去拟合了二元事件的对数几率。因此,逻辑斯蒂回归也叫作 “对数几率回归”。


广义线性

一般线性: y = β 0 + β 1 x i 1 + β 2 x i 2 + . . . + ϵ i = x i ⃗ T β ⃗ + ϵ ⃗ \color{#FF7256}y\color {black} = \beta_0 + \beta_1x_{i1} + \beta_2x_{i2} +... + \epsilon_i = \vec {x_i}^T \vec{\beta} + \vec \epsilon y=β0+β1xi1+β2xi2+...+ϵi=xi Tβ +ϵ

广义线性: t r a n s f o r m a t i o n   o f   y = β 0 + β 1 x i 1 + β 2 x i 2 + . . . + ϵ i = x i ⃗ T β ⃗ + ϵ ⃗ \color{#FF7256}transformation\ of\ y \color{black}= \beta_0 + \beta_1x_{i1} + \beta_2x_{i2} +... + \epsilon_i = \vec {x_i}^T \vec{\beta} + \vec \epsilon transformation of y=β0+β1xi1+β2xi2+...+ϵi=xi Tβ +ϵ

transformation 可以用 l o g ( y ) log(y) log(y) l o g i t ( y ) logit(y) logit(y) Φ − 1 ( y ) \Phi^{-1}(y) Φ1(y) 等等。 ← Φ − 1 是 正 态 分 布 的 累 计 分 布 函 数 的 反 函 数 \leftarrow \Phi^{-1} 是正态分布的累计分布函数的反函数 Φ1

在logistic regression中就是用的 l o g i t logit logit函数做的 transformation。所以,说白了logistic regression依然是Independent variable x ⃗ \vec{x} x 的线性模型,只是给Dependent variable 套了一层外衣。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值