逻辑回归概念
逻辑回归是一个非常经典,也是很常用的模型。看到逻辑回归这个名字,你以为这是一个“回归模型”,但是其实它是一个分类模型,是使用线性区分模型泛化感知器。
在逻辑回归中就是基于sigmoid函数构建的模型。sigmoid函数的数学定义如下:
σ ( x ) = 1 1 + e − x \sigma(x)=\cfrac{1}{1 +e^{-x}} σ(x)=1+e−x1
这一函数的图形如下:
图中我们可以直观地看到这个函数的一些特点:
- 中间范围内函数斜率最大,对应Y的大部分数值变化
- Y轴数值范围在 0~1 之间
- X轴数值范围没有限制,但当X大于一定数值后,Y无限趋近于1,而小于一定数值后,Y无限趋近于0
- 特别地,当 X=0 时,Y=0.5
我们假设:
(1)假设数据服从伯努利分布
(2)假设模型的输出值是样本为正例的概率
sigmoid函数可以将任意的实数映射为0到1之间的某个值。因此,逻辑回归的输出可以作为任何一个分类的后验概率。其对应的公式可以表示如下:
p ( C = 1 ∣ x ) = y ( x ) = σ ( w T x + b ) p(C=1| \ x)=y(x)=\sigma(w^Tx+b) p(C=1∣ x)=y(x)=σ(wTx+b)
p ( C = 0 ∣ x ) = 1 − p ( C = 1 ∣ x ) p(C=0|x)=1-p(C=1|\ x) p(C=0∣x)=1−p(C=1∣ x)
这两公式可以整合在一起,如下(没有什么特殊含义,就是归纳成一个式子): p ( C = t ∣ x ) = y t ( 1 − y ) 1 − t p(C=t|\ x)=y^t(1-y)^{1-t} p(C=t∣ x)=yt(1−y)1−t
这里 t ∈ { 0 , 1 } t\in \{0,1\} t∈{
0,1}.
对于这个函数:
P ( x ∣ θ ) P(x|θ) P(x∣θ)
输入有两个: x x x 表示某一个具体的数据; θ \theta θ表示模型的参数。
如果 θ \theta θ是已知确定的, x x x是变量,这个函数叫做概率函数(probability function),它描述对于不同的样本点 x x x,其出现概率是多少。
如果 x x x是已知确定的, θ \theta θ是变量,这个函数叫做似然函数(likelihood function), 它描述对于不同的模型参数,出现 x x x这个样本点的概率是多少。
y ( x ) y(x) y(x)的输入是一个样本,输出是这个样本属于各个类的概率。假设这个样本属于1类,那我是不是希望模型 y ( x ) y(x) y(x)输出的概率中认为样本属于1类的概率越大越好?换句话说就是,w,b各种可能的取值对应各种假设的模型。能让模型认为样本属于1类的概率最大的那种情况的参数是最好的,这就是极大似然法的动机。
我们选择了w,b的一种可能的取值然后确定了一个模型 y ( x ) y(x) y(x)。现在有N个样本,输入到模型 y ( x ) y(x) y(x)。那么会有N个值,这N个值表明了这些样本属于样本A的概率。他们同时发生的概率就是这些概率相乘。
这些样本都是自己有标签的。我们希望模型输出来他们属于它标签的那个类的概率尽可能的大。这个想法就是极大似然法的想法。那么现在问题来了,模型计算他们属于它标签的那个概率?
答:模型输出都是样本属于A的概率。逻辑回归只能分出两种类,要么是A要么不是A。现在我们知道了样本属于A的概率,那么样本属于B的概率=样本不属于A的概率。
举个例子:y(样本1)=0.2,然后样本1的标签是A,那么模型计算出来样本属于B的概率是1−f(样本1)=1−0.2。
基于前面的公式,用于评估模型参数的最大似然值的似然函数可以用下面的公式表示: L ( w , b ) = ∏ n = 1 N y n t n ( 1 − y n ) 1 −