逻辑斯谛回归(logistic regression)是经典的分类方法。
最大熵是概率模型学习的一个准则,将其推广到分类问题得到最大熵模型(maximum entropy model)。
逻辑斯谛回归模型与最大熵模型都属于对数线性模型。
首先我们来弄清楚这两个模型,然后理解它们学习的算法。
一、逻辑斯谛回归模型
1.逻辑斯谛分布
先来看逻辑斯谛回归的基础——逻辑斯谛分布。
很简单,分布函数和密度函数如下:
其中,
它们对应的图形如下:
稍微有点相关知识,这一块很好理解。上图的分布函数属于逻辑斯谛函数,其图形是一条"S"形曲线(sigmoid curve)。该曲线以点
逻辑斯谛分布函数有什么特点呢?
"S"曲线在中心附近增长速度较快,在两端增长速度较慢。形状参数
2.二项逻辑斯谛回归模型
二项逻辑斯谛回归模型(binomial logistic regression model)是一种分类模型,并且还是一种二类分类模型。
模型由条件概率分布P(Y|X)表示,形式为参数化的逻辑斯谛分布。(就是说,模型最终是要计算出新的实例分为两类的概率分别是多少,比较两个概率的大小,将新的实例分到概率大的那一类去;参数化,即输入的新的实例是一个含多个特征的特征向量,对应一个能更好地分类的系数向量。)
二项逻辑斯谛回归模型的条件概率分布如下:
其中,
用上面的条件概率分布就能进行分类了,到底是怎么分类的呢?
仔细看,P(Y=1|x)的图形(想象一下)很像前面说的逻辑斯谛分布函数的图形,P(Y=0|x)的图形则刚好和P(Y=1|x)的图形走势相反。这是其一,还有,我们假设
即逻辑斯谛回归通过比较两个条件概率值得大小,将实例x分到概率值较大的那一类。
将权值向量和输入向量加以扩充,仍记作
到现在,逻辑斯谛回归模型都是通过比较两个概率值得大小来分类的,我们能不能整合成一个值,通过这一个值得大小就能进行分类呢?
能,这里我们要学习一个新的概念——几率(odds) (话说,我第一次接触这个概念,之前以为几率就是概率,现在才明白)。
定义:几率是指该事件发生的概率与该事件不发生的概率的比值。即事件发生概率如果是p,那么该事件的几率为
从这个几率的概念推广一个概念叫——对数几率(log odds)或logit函数:
对逻辑斯谛回归而言,对数几率为:
这就是为什么我们在前面说"逻辑斯谛回归模型属于对数线性模型"的原因,因为在逻辑斯谛回归模型中,输出Y=1的对数几率是输入x的线性函数。
3.模型参数估计
参数估计就是估计出权值向量
给定训练数据集
设:
这里的
我们知道似然函数为:
取对数得到对数似然函数为:
对
怎么来求这个极大值呢?我们已经在高等数学中学过了,差不多就是对各个参数求偏导并令其等于0。
逻辑斯谛回归学习中通常采用的方法是梯度下降法和拟牛顿法。
假设我们通过上面的两个方法得到了参数
至此,我们已经得到了逻辑斯谛回归模型,到目前它只是个二项分类模型。
4.多项逻辑斯谛回归
上面介绍的是二项逻辑斯谛回归模型,用于二类分类。我们可以将其推广为多项逻辑斯谛回归模型(multi-nominal logistic regression model),用于多类分类。
假设离散型随机变量Y的取值集合为
这里,
二项逻辑斯谛回归的参数估计法也可以推广到多项逻辑斯谛回归上。