逻辑回归原理总结

线性回归模型中,拟合函数$h(x)$输出一组连续型标签值。当标签是离散型变量,或者说想做分类任务,可通过引入联系函数(link function), 得到一个“广义线性模型”实现分类。

二分类模型

对于二分类模型,Sigmoid函数正是这样一个联系函数:

$y=\frac{1}{1+e^{-h(x)}}$ 1-1

注:Sigmoid函数是指形似S型的函数,自变量趋近于正无穷时,因变量无限趋近于1,自变量趋近于负无穷时,因变量无限趋近于0,但不能取到0和1这两个值。与感知机相比,Sigmoid 神经元经过修改,使其权重和偏差的微小变化仅导致其输出发生微小变化。有时也将Sigmoid函数称为逻辑函数。

 

若将$y$视为样本$x$作为正例的可能性,则$1-y$是其反例可能性,两者的比值称为"几率(odds)",反映了$x$作为正例的相对可能性,对几率取对数则得到"对数几率"(log odds)

$ln{\frac{y}{1-y}}=ln{\frac{\frac{1}{1+e^{-\theta^Tx}}}{1-\frac{1}{1+e^{-\theta^Tx}}}}=ln{\frac{1}{e^{-\theta^Tx}}}=\theta^Tx$      1-2

从上面式子可以看到,线性回归中用到Sigmoid函数其实就是对数几率函数,对线性回归模型的预测结果取对数几率使其结果无限逼近0和1。因此,对应的模型称为“对数几率回归”(logistic regression)。我们平时提到的逻辑回归,指的就是对数几率回归。其数学目的是求解能够让模型对数据拟合程度最高的参数$\theta$,以此构建预测函数$y$,然后将特征矩阵输入预测函数来计算逻辑回归的结果。

逻辑回归的损失函数

逻辑回归的损失函数是由极大似然估计推导而来的。

具体推导过程:假设有两个标签0和1(二分类问题),若将1-1式中的$y$视为类后验概率估计$p(y=1|x)$,带入1-2式中,可得

$p(y=1|x)=\frac{1}{1+e^{-\theta^Tx}}$   1-3

$p(y=0|x)=\frac{e^{-\theta^Tx}}{1+e^{-\theta^Tx}}$   1-4

1-3和1-4合并可改写为:

$p(y|x)=p(y=1|x)^{y}(1-p(y=1|x))^{1-y}$   1-5

似然函数为:

$L(\theta)=\prod\limits_{j=1}^{m}p(y=1|x^{(j)})^{y^{(j)}}(1-p(y=1|x^{(j)}))^{1-y^{(j)}} $    1-6

对似然函数取对数后再乘以$-\frac{1}{m}$,即得损失函数:

$J(\theta)=-\frac{1}{m}lnL(\theta)=-\frac{1}{m}\sum\limits_{j=1}^m(y^{(j)}lnp(y=1|x^{(j)})+(1-y^{(j)})ln(1-p(y=1|x^{(j)})))$    代数式1-7

多分类模型

对于多分类问题,最经典的拆分策略有三种:OvO (one vs. one,一对一)、OvR (one-vs-rest,一对其余)和MvM (many vs. many, 多对多)。对于N个类别的多分类学习,

  • OvO是指将N个类别两两配对,产生$N(N-1)/2$个二分类任务。
  • OvR是指在N个类别的多分类学习中,每次将一个类的样本作为正例,其他类的所有样本都作为反例来训练N个分类器。
  • MvM是指每次将若干个类作为正类,若干个其他类作为反类。

总结

对于逻辑回归,虽然名字中有“回归”二字,实际上却是一种分类学习方法。

逻辑回归既可以用来处理二分类问题,也可以用来做多分类。在二分类中,使用Sigmoid函数作为联系函数;在多分类中,采用Softmax函数作为联系函数。

对数几率回归的优点:

  • 对线性关系的拟合效果非常好
  • 计算快,优于SVM和随机森林
  • 输出结果不仅预测出类别,还可得到近似概率预测
  • 抗噪能力强
posted @ 2023-04-23 21:56  yayagogogo  阅读(72)  评论(0编辑  收藏  举报