逻辑回归算法为什么用的是sigmoid函数而不用阶跃函数?
在分类问题中,预测的变量 y y y是离散的值,考虑二分类任务输出标记 y ∈ { 0 , 1 } y \in \{ 0,1\} y∈{
0,1},而线性回归模型产生的预测值 z = w T x + b z = {w^T}x + b z=wTx+b是实数,我们需要将实数值 z z z转换为0/1值。最理想的是单位阶跃函数(unit-step function)
y = { 0 , z < 0 ; 0.5 , z = 0 ; 1 , z > 0 ; y =\begin{cases} {0,} & {z < 0;} \\ {0.5,} & {z = 0;} \\ {1,} & {z > 0;} \\ \end{cases} y=⎩⎪⎨⎪⎧0,0.5,1,z<0;z=0;z>0;
即若预测值 z z z大于0就判断为正例,小于0则判断为反例,预测值为临界值0则等于0.5。
显然这个单位阶跃函数不连续,阶跃函数虽然能够直观刻画分类的错误率,但是由于其非凸、非光滑的特点,使得算法很难直接对该函数进行优化。而sigmoid函数本身的特征(光滑无限阶可导),以及完美的映射到概率空间,就用于逻辑回归了。对率函数正是这样一个可替代单位阶跃函数的替代函数: y = 1 1 + e − z y = \frac{1}{
{1 + {e^{ - z}}}} y=1+e−z1
Sigmoid函数即形似S的函数,对率函数是Sigmoid函数最重要的代表,它将 z z z值转化为接近0或1的值,并且其输出值在 z = 0 z=0 z=0附近变化很陡。
把 z z z带入上述方程可得到: y = 1 1 + e − ( w T x + b ) y = \frac{1}{
{1 + {e^{ - ({w^T}x + b)}}}} y=1+e−(wTx+b)1
可做变换:
ln y 1 − y = w T x + b \ln \frac{y}{
{1 - y}} = {w^T}x + b ln1−yy=wTx+b
若将 y y y视为样本 x x x作为正例的可能性,则 1 − y 1-y 1−y是其反例的可能性,两者的比值 y 1 − y \frac{y}{
{1 - y}} 1−yy,反映了 x x x作为正例的相对概率,对概率取对数则得到“对数概率” ln y 1 − y \ln \frac{y}{
{1 - y}} ln1−yy。
逻辑回归为什么是线性模型?
考虑单调可微函数 g ( ⋅ ) g( \cdot ) g(⋅),令 y = g − 1 ( w T x + b ) y = {g^{ - 1}}({w^T}x + b) y=g−1(wTx+b) 得到这样的模型称为“广义线性模型”,其中的函数 g ( ⋅ ) g( \cdot ) g(⋅)称为“联系函数”。
而逻辑回归公式:
y = 1 1 + e − z = 1 1 + e − ( w T x + b ) y = \frac{1}{
{1 + {e^{ - z}}}}= \frac{1}{
{1 + {e^{ - ({w^T}x + b)}}}} y=1+e−z1=