首页 > 代码库 > 特征选择(四)-分散度
特征选择(四)-分散度
度量类别可分离性的量主要有:
欧氏距离(正态分布,协方差相等,且为单位阵)
是最简单的一种描述方法。它把两个类别中心之间的欧式距离作为两个不同类别间不相似性的度量。
马氏(Mahalanobis)距离(正态分布,协方差相等)
它用来描述两个具有相同的协方差矩阵C,不同的期望值和的类别之间的不相似性,具体表达式是:
Mahalanobis距离
巴氏(Bhattacharyya)距离(正态分布,协方差不等)
它描述了两个协方差矩阵和期望值都不相同的类别之间的不相似性:
Bhattacharyya距离
本节介绍分散度(广义距离),之所以是广义距离,因为其不满足三角不等式。
设有未知模式x,可能来自第i类,也可能来自第j类,并且概率密度分布分别为:
在贝叶斯决策中,对数似然比是用来决定最后分类的指标
绘制似然比的密度函数可见,如果密度函数期望值相隔越远,分类器效果会更好。
如图1所示。
图1
因此可以用两个期望值之差来表示两个类别间的差异:
这就是分散度的定义了。
正态分布下的分散度公式
在两个类别都具有正态分布时,分散度可以有明确的表达式,概率密度分别为:
对数似然比为:
可以得到正态分布下的分散度为:
这个式子是配凑出来的,为了分离出两个重要的指标:
前一部分是由协方差不等引起的分散,后面一部分是由期望不等引发的分散。
1. 等协方差时
分散度蜕化成了马氏距离。
2.等期望时
当两个类别协方差距离不同时期望值之差的影响可以用一个等效的协方差矩阵来计算。
Bhattacharyya距离的计算中,是用算术平均作为这个等效协方差矩阵:
而在分散度的计算中,则是用它们的几何平均作为这个等效协方差矩阵:
分散度的性质
其中:
由此可知
1.
2.对称性
3.若各个分量独立,则分散度为各个分量分散度之和。
4.若各个分量不独立,则加一个分量,分散度只增不减。
如何将分散度应用与特征选择?
分散度特征选择优于聚类变换和最优描述的K-L变换。下面分三种情况讨论。
其一:简单从n个特征中挑选m个
这种方式直接挑就好了,不用做任何坐标变换。
首先,假设有n维、M类,先分别求出其对应的M个期望和协方差矩阵。
由于分散度只能计算2个类之间的关系,因此要重复计算次。
把最小的找出来,相对应于最近的2类。
因为如果最近的2类都能分开,其他的类别分开也就不成问题了。如图2所示。
图2
其次,看看要求是什么,要从原来的n维降到多少维,例如要想降到k维,则咱们继续排列组合了。
把所有的降维组合列出来,共有多种。
再来计算所有组合情况下,降维后的分散度。取
取分散度最大的k个维度保留下来,因为这些维度的对分类的效果最好。
但是如果发现分散度已经很小了,那么就要降低要求了,少降几维。
如果分散度下降不多,那么其他的维度直接扔掉就好,不用可惜。
这个方法特点就是特别方便,而且还很有效,对于正态分布是这样的,如图3所示。
图3
其二:正态分布、各类的协方差相等
此时使用了分散度分类方法,本质是把坐标转到C的特征向量位置后进行降维。
同时,分散度蜕化成为了Mahalanobis距离
取协方差矩阵的特征向量和特征值,取其中m个特征向量,构成变换矩阵:
变换之后的马氏距离变为
又有
则得到
取大的即可。
注意观察此式:
如果不考虑分子。那么就等同于越小那么区分度越大,等同于与聚类变换。
2.
为在方向上投影长度的平方。
举个例子,如图4所示。
图4
两中心距离为,从这个例子可以看出分散度优于聚类变换。
其三:最佳变换阵A的求法
前面讨论的所有降维方法都有一个问题,不知道大家是否发现了。
当我们从n维降到m时,都是直接扔掉不要的向量。剩下的分量都没动,这不科学啊。
3为直角坐标系降1维后,一定是平面直角坐标系么?就不能降成2为斜角坐标系么?
这说明,降维后,可以用新的基向量来张成新的空间了。
原来,一般的问题是这样的:寻找A的原则是寻找一个矩阵A,使得降为m维后,分散度为最大。即
直接上结论,这个A矩阵应当满足下式:
即为满足G矩阵为零矩阵,这个方程只能用数值方法求解,没有解析解。
其中的各个参数含义如下:
①和是的特征值和特征向量,而且已进行了归一;
②和是的特征值和特征向量,且已进行了归一;
③和是的特征值和特征向量,且已进行了归一;
仅讨论两种最特殊的情况:
1.协方差相等,期望不等
可以降到1维都不减少分散度。
其中a是的非零特征值对应的特征向量。
2.期望相等,协方差不等
其中变换矩阵由中任取m来构成。
但是为了 保证分散度最大,应当取中使得
最大的m个特征值构成A.