为什么LR模型使用Sigmoid函数?

首先要说明的是,Sigmoid不是被选择出来的,而是被推导出来后给它署名Sigmoid.
逻辑回归模型是一种广义线性模型,而逻辑回归满足伯努利分布,伯努利分布是指数分布族的一种,而指数族分布有如下的形式:
p ( y ; η ) = b ( y ) exp ⁡ ( η T T ( y ) − a ( η ) ) p(y ; \eta)=b(y) \exp \left(\eta^{T} T(y)-a(\eta)\right)\\ p(y;η)=b(y)exp(ηTT(y)a(η))

  • η \eta η 是参数
  • T ( y ) T(y) T(y)是充分统计量(充分统计量就是可以确定一个分布的统计量,比如平均值和方差这两个充分统计量可以确定一个正态分布), (一般情况下 T ( y ) = y T(y)=y T(y)=y
  • a ( η ) a(\eta) a(η),是个归一化的常量,保证 ∑ p ( y ; η ) = 1 \sum p(y ; \eta)=1 p(y;η)=1

伯努利分布形式如下:
p ( y = 1 ; ϕ ) = ϕ ; p ( y = 0 ; ϕ ˙ ) = 1 − ϕ p(y=1 ; \phi)=\phi ; p(y=0 ; \dot{\phi})=1-\phi p(y=1;ϕ)=ϕ;p(y=0;ϕ˙)=1ϕ
根据伯努利分布的结果,逻辑回归的广义线性模型的形式可写为:
p ( y ; ϕ ) = ϕ y ( 1 − ϕ ) 1 − y p(y ; \phi)=\phi^{y}(1-\phi)^{1-y} p(y;ϕ)=ϕy(1ϕ)1y
我们现在的目标就是求 η \eta η的表达式:
写成如下的形式
p ( y ; ϕ ) = ϕ y ( 1 − ϕ ) 1 − y = exp ⁡ ( y log ⁡ ϕ + ( 1 − y ) log ⁡ ( 1 − ϕ ) ) = exp ⁡ ( ( log ⁡ ( ϕ 1 − ϕ ) ) y + log ⁡ ( 1 − ϕ ) ) \begin{aligned} p(y ; \phi) &=\phi^{y}(1-\phi)^{1-y} \\ &=\exp (y \log \phi+(1-y) \log (1-\phi)) \\ &=\exp \left(\left(\log \left(\frac{\phi}{1-\phi}\right)\right) y+\log (1-\phi)\right) \end{aligned} p(y;ϕ)=ϕy(1ϕ)1y=exp(ylogϕ+(1y)log(1ϕ))=exp((log(1ϕϕ))y+log(1ϕ))
让逻辑回归的表达式满足伯努利分布的指数分布族表达式,即(1)式子,即让:

b ( y ) exp ⁡ ( η T T ( y ) − a ( η ) ) = = exp ⁡ ( ( log ⁡ ( ϕ 1 − ϕ ) ) y + log ⁡ ( 1 − ϕ ) ) b(y) \exp \left(\eta^{T} T(y)-a(\eta)\right) ==\exp \left(\left(\log \left(\frac{\phi}{1-\phi}\right)\right) y+\log (1-\phi)\right) b(y)exp(ηTT(y)a(η))==exp((log(1ϕϕ))y+log(1ϕ))
那么:

  • b ( y ) = 1 b(y)=1 b(y)=1
  • T ( y ) = y T(y)=y T(y)=y
  • η = log ⁡ ( ϕ 1 − ϕ ) \eta=\log \left(\frac{\phi}{1-\phi}\right) η=log(1ϕϕ) (1)
  • a ( η ) = − log ⁡ ( 1 − ϕ ) \begin{aligned} a(\eta) &=-\log (1-\phi) \end{aligned} a(η)=log(1ϕ)

从(1)式子可以推出
ϕ = 1 ( 1 + e − η ) \phi=\frac{1}{ \left(1+e^{-\eta}\right)} ϕ=(1+eη)1
即Sigmoid函数的形式。

所以,LR是用Sigmoid 函数不是因为,LR选择了它当作越阶函数,而是根据线性模型和直属分布族的性质推导出了它。

参考资料

https://zhuanlan.zhihu.com/p/22876460

你可能感兴趣的:(机器学习)