在介绍Logistic Regression之前我们先简单说一下线性回归,,线性回归的主要思想就是通过历史数据拟合出一条直线,用这条直线对新的数据进行预测
线性回归的公式如下:
而对于Logistic Regression来说,其思想也是基于线性回归(Logistic Regression属于广义线性回归模型)。其公式如下:
被称作sigmoid函数,我们可以看到,Logistic Regression算法是将线性函数的结果映射到了sigmoid函数中。
sigmoid的函数图形如下:
![这里写图片描述](https://i-blog.csdnimg.cn/blog_migrate/4b9b29448e5175c42a72628117744b6b.gif)
可以看到,sigmoid的函数输出是介于(0,1)之间的,中间值是0.5,于是之前的公式
hθ(x)
h
θ
(
x
)
的含义就很好理解了,因为
hθ(x)
h
θ
(
x
)
输出是介于(0,1)之间,也就表明了数据属于某一类别的概率,例如 :
hθ(x)<0.5
h
θ
(
x
)
<
0.5
则说明当前数据属于A类;
hθ(x)>0.5
h
θ
(
x
)
>
0.5
则说明当前数据属于B类。
所以我们可以将sigmoid函数看成样本数据的概率密度函数。有了上面的公式,我们接下来需要做的就是怎样去估计参数
θ
θ
。
首先我们来看,
θ
θ
函数的值有特殊的含义,它表示
hθ(x)
h
θ
(
x
)
结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为:
根据上式,接下来我们可以使用概率论中极大似然估计的方法去求解损失函数,首先得到概率函数为:
因为样本数据(m个)独立,所以它们的联合分布可以表示为各边际分布的乘积,取似然函数为:
取对数似然函数:
给出损失函数
J(θ)=l(θ)
J
(
θ
)
=
l
(
θ
)
,对
J(θ)
J
(
θ
)
求偏导数
因为
所以
从而迭代至收敛即可: