6.3 分类问题
分类问题的任务:
输入:N个独立同分布(i.i.d)的训练样本(xi,yi)∈X×C,i=1,2,…,N
目标函数:f∈F
损失函数:L(f;x,y)=I{f(x=y}
期望风险:∫I{f(x=y}dP(x,y)=P(f(x)=y)
对于二分类问题,y仅有两个取值-1和1,则其目标为求解一个w用于预测y,例如
理论上,对于使用y=−1或y=1的所有样本,都应该有:
因此,一些方法会试图最小化分错的样本,即最小化:
其中,TM为错分样本的集合
一些常见的分布
伯努利分布
单个二进制变量x∈{0,1}的分布由单个连续参数β∈[0,1]控制:
二项式分布
给出N个服从伯努利分布的样本中观察到m次x=1的概率:
多项式分布
多项式分布是二次分布的推广,变量可以取K个状态,第K个状态被观测到了mk次的概率为:
多变量正态分布
对于x∼N(μ,Σ),有
其中,∣Σ∣为协方差矩阵的行列式,此分布的图像如下图所示:

6.3.1 Logistic 回归
Logistic回归属于判别式模型
Logistic回归使用Logistic函数估计后验概率:
上式中的g(x)=1+e−z1即为Logistic函数,它是一个经典的Sigmoid函数
其图像为:
Logistic函数具有以下特性:
z→∞时,g(z)→1
z→−∞时,g(z)→0
取值在0到1之间
g′(z)=g(z)(1−g(z))
一、使用最大似然估计求解Logistic回归
对于二分类问题,可以假设样本的输出服从伯努利分布(0-1分布),则对于y=0和y=1可以统一表达为:
则可以得到其似然函数和对数似然函数为:
梯度为:
则可以使用梯度下降法更新参数:
二、多类Logistic回归
思路是使用softmax函数取代logistic sigmoid:
而对于y,使用一个K维的独热表示的向量来代替,它满足:
同样的,对于样本的概率分布,采用广义伯努利分布表示:
这样就可以写出似然函数:
其中,μik为softmax函数:
那么,最优化问题就可以写成最小化对数似然函数:
上式中的E即为交叉熵损失函数。
对于这个损失函数,采用梯度下降法更新,梯度为:
6.3.2 高斯判别分析(GDA)
GDA属于生成式模型
GDA使用多变量正态分布对p(x∣y)进行建模:
则对数似然函数为:
使用MLE,估计各参数为:
GDA与LR的区别
GDA有很强的模型假设:当假设是正确时,处理数据的效率更高
LR假设很弱:对偏离假设的情况更具鲁棒性
实际中,LR更常用
在GDA中,特征向量x中的元素是连续的实数
若特征向量中元素是离散的:p(x1,…,xD∣y)
6.3.3 朴素贝叶斯(NB)
NB属于生成式模型
假设给定y时,特征分量xj相互独立:
那么对于给定的训练数据(xi,yi),i=1,…,N,对数似然为:
使用MLE,估计各参数为:
基于此,即可做出预测:
平滑
对于给定的训练集{x1,…,xN},利用最大似然估计可以估计变量x取每个值的概率:
然而,如果训练集中某个类别的数据没有涵盖x的第m个取值的话,就无法估计相应的条件概率,从而导致模型可能会在测试集上产生误差
对此,可以使用Laplace平滑,在各个估计中加入平滑项:
NB与LR的区别
渐进比较
当模型假设正确:NB与LR产生相似的分类器
当模型假设不正确
LR不假设条件具有独立性,偏差较小
LR的表现优于NB
非渐进比较
参数估计的收敛性
NB:O(logN)
LR:O(N)
本节绘图代码
最后更新于