2、逻辑(logistics)回归
逻辑回归可以进行二分类和多分类,下面分别进行讨论:
1)二项逻辑回归(二分类)
假如我们现在需要对一类物品进行二分类,首先根据物品的多个特征,然后将物品的多个特征进行线性组合,这和我们上面讨论的多元线性模型有点类似。只是我们现在不是需要拟合平面(空间)上的点,而是需要将平面(空间)上的不同类别的点区分开来。
多元线性模型为:h(x)=a0+a1x1+a2x2+…+anxn
我们可以直接使用多元线性模型来对物品进行分类,通过设置一个阀值,然后将所有h(x)大于阀值的样本分为一类,其他的分为另一类。但这种方式存在一个问题,由于h(x)的值是任意大小的,阀值的选择是一件困难的事情,若我们对其进行归一化处理,则阀值的选择就相对简单很多。
设阀值为:t,则
为了方便表述,设:
在此我们使用sigmoid函数对其进行归一化。
此时,若我们使用平方最小误差函数来估算参数,由于归一化后的函数为非凸函数,故而不能使用梯度下降法来找到其最小值。但我们使用极大似然估计的方法估计模型参数。
由于是二分类,可以设:
所以似然函数为:
对数似然函数:
对L(a)求极大值,得到a的估计值。为了能使用梯度下降算法,我们在对数似然函数前面加上负号,这样就可以求其最小值:
每次让参数a向对数似然函数的负梯度方向移动一小步。
//推导过程很简单,感兴趣的可以去看参考文献[2]
最后,对a的值进行更新:
2)多项逻辑回归
上面介绍了二项逻辑回归,多分类的逻辑回归有点类似,假如类别共有K类,对于前面的k-1类使用下式进行计算:
对于第K类:
总结
逻辑回归虽然有回归二字,但是它并不能处理回归问题,其主要用来进行二分类,当然也能进行多分类。其主要过程是将输入线性加权后再归一化到(0,1)这个区间内,其归一化使用sigmoid函数。
参考文献:
[1] https://www.cnblogs.com/liuwu265/p/4709101.html
[2] 李航,统计学习方法。