高斯判别分析
机器学习
CS229
0未完成
前言
高斯判别分析(GDA)是生成学习算法中的一种(虽然名字中有判别两字),在本模型中,我们假设符合多元正态分布,在介绍高斯判别分析之前,先简要介绍下多元正态分布。
多元正态分布
在多元正态分布是正态分布在多维变量下的扩展,其均值,协方差矩阵,与正态分布的表达式相似,多元正态分布的形式如下(表示行列式):
其中,将
的多元正态分布称为标准正态分布,同样我们可以知道当
为对角矩阵,同时相应位置的值越大,那么其图像就应该越“矮胖”;相应位置的值越小,其图像就应该越“瘦小”(从方差的角度很容易理解)。
以上三幅图的协方差矩阵如下,很显然,这与我们之前的想象是相同的。
以上三幅图则是去掉了
是对角矩阵的条件,对应的图像也发生了巨大的变化,它们的协方差矩阵如下,协方差越大,则表明了它们之间的相关性越强,如果协方差与两者标准差之积相等(也就是相关系数为1),那么图像就应该是条线。
高斯判别分析模型
高斯判别分析模型适用于连续随机值的分类问题。这个模型的基本假设是目标值服从伯努利分布,条件概率服从正态分布,如下:
写成概率模式则是:
虽然上述表达式中存在
和
,但一般来说它们是具有同一个协方差的,所以说对于高斯判别是模型一共有四个参数,
、
、
以及
。跟往常一样,我们还是采用最大似然估计来求解模型:
还是原来的方法,这里有四个参数,那我们就分别对这四个参数求偏导数,很显然我们的结论是:
下面对上面这几个式子进行一下简单的推导:
然后很显然就可以推导出上述的式子一了。
同样根据对称性可以求得
的值(
关于矩阵的导数还一脸懵逼,过程待补充,先抄上)。最后就是对
求偏导数,很显然最后一项可以忽略不计,那么先将前两项改写:
在这个基础上,我们对上式求关于的偏导数,进而有:
上式在推导过程中用到了两个公式:
以下是一个二维高斯判别模型的示例,它们都的协方差矩阵都是
,但是它们的均值不等,分别是
和
,同样在图中的分界线表示
。
GDA模型与logistics模型的联系
我们使用进行拟合,对于我们可以进行归一化操作,可以得到:
实际上可以通过简单的转换转换成逻辑回归模型的形式:
推导过程如下:
而对于
则有:
那么,只需令:
其中
是关于
的函数。由此可见,逻辑回归模型比高斯判别分析模型更加普适,在建模上更加具有鲁棒性,而高斯判别模型则是逻辑回归模型的一种特殊形式。
当数据服从高斯分布的时候,采用高斯判别分析模型效果会更好,这主要是由于使用了更多的信息进行建模,如果不服从高斯分布,往往逻辑回归构建的模型更加健壮一些。
补充
从直观的讲,假设两个类的高斯分布协方差矩阵不同,一般都会更加合理(混合高斯模型),而且可以推导出上面简洁的结果。
假定两个类具有不同的协方差矩阵,那么会有下面两点影响:
- 当样本不充分是,使用不同的协方差矩阵会导致算法稳定性不够;过少的样本设置会协方差矩阵不可逆,从而使整个过程都无法进行。
- 使用不同的协方差矩阵,最终分界线不会是线性的,同样也就无法推导出相应的逻辑回归形式了。
参考
机器学习实现与分析之五(高斯判别分析)
生成学习、高斯判别、朴素贝叶斯—斯坦福ML公开课笔记5
CS229机器学习笔记(四)-生成学习算法, 朴素贝叶斯, 多项式事件模型