数据混淆度的计算方式

面对机器学习的分类问题时,研究数据混淆度所使用的方法主要有两类:1.基于几何统计的角度。2.基于信息论的角度。

几何统计的角度

1. 适用于连续数据集下的数据混淆度指标的算法
(1)最大Fisher判别率F1
F1是待分类的训练数据集当中各个属性的Fisher判别率最大的那个值。

f=(u1u2)2(α1)2+(α2)2

其中, u1,u2,α1,α2 分别指的是类别1和类别2的平均值与方差。上式中的f被定义为属性的特征维数。对于多维属性,选择f值最大的一个来代表F1。F1在一定意义上代表了数据的线性可分性。数值较
高的F1说明训练数据集当中至少有一个属性具有很好的线性可分度,不过,数值较低的F1也并不能够说明数据就一定具有非线性可分性。

(2)各个属性混叠区域的体积F2
该指标是两类条件分布的尾部混叠。对于每个特征,每个类的最大值和最小值,我们可以通过寻找测量这个,然后计算所跨越这两个类的值的范围内归一化的混叠区域的长度,再乘W从每个特征维度得到的比率,得到测量的混叠区域的体积(归一化的特征空间上的大小)。F2定义如下,假定 max(fi,Cj),min(fi,Cj) 为类别 Cj 中属性 fi 的最大值和最小值,则F2的计算式如下,

F2=iMINMAXiMAXMINiMAXMAXiMINMINi

其中,
MINMAXi=MIN(max(fi,C1),max(fi,C2))

MAXMINi=MAX(min(fi,C1),min(fi,C2))

MINMAXi=MAX(max(fi,C1),max(fi,C2))

MINMAXi=MIN(min(fi,C1),min(fi,C2))

i=1,2,…,d,d维问题。注意,只要有至少一个维度中的两类取值范围不混叠,那么体积为零。F2是通过不同类别属性取值的情况来衡量数据的混叠情况。低的F2值在一定层面反映了数据混叠轻微,可分性好。

(3)属性的特征效率F3
对于属性值过多的问题,需要引起注意的是如何找到那些具有判断力的信息用于分类。针对众多属性,选择对它们进行一一的考量,分别测得它们对分类贡献的有效性,也就是说具体求得每一个属性对分类的贡献率大小。
针对每一个属性,相同类别的点在每一类的所有取值范围内的任何一个区域发挥作用。假如不同类别的属性值存在重合的情况,那么该属性在此重合部分中的类别模糊性就需要重视起来

(4)最大Fisher判别率F1的方向矢量F1V
F1v计算方法的核也是寻找一个方向矢量,并且这个方向矢量能够分离两类不同的样本数据集,它实际上是对F1算法的补充。其针对于两种类别样本的计算公式如下所示

R(d)=[dT(u1u2)]2dTd=dTBdTdTdT

其中, dT 是待预测数据的方向向量; ui 是均值向量; =a1+(1a)2 。,其中0<=a<=1。 i 是类别 ci 的模式散布矩阵; B=(u1u2)(u1u2)T 是类间散布矩阵; d 的方向矢量计
算公式为
d=1Δ

其中, Δ=u1u2

不过,值得一提的是F1v的这种计算方法仅仅适应于两类别样本的问题。如果fisher判别率的值比较大表明这种方法能够找到一个方向矢量用于区分开隶属于不同种类的样本。

2. 适用于离散数据集下的数据混淆度指标的算法
(1)改进后的F1

F(tk)=(E(tk/P)E(tk/N))2D(tk/P)+D(tk/N)

其中,P,N分别代表的是两种类别, tk 是两种类别中某一个属性下的一个特征值。 E(tk/N) 分别是特征值在两种类别中出现的频率。 D(tk/P)D(tk/N) 分别是特征值 tk 在两种类别中的条件方差。其计算方法如下:
假设P类中有m个样本,对于第i个样本,若包含有特征值t_k,则令 dp,i(tk)=1
若未包含有特征值 tk ,则令 dp,i(tk)=0 。统计所有样本中 dp,i(tk)=1 的个数,假设个数
为ml。那么,

E(tk/P)=mlm

D(tk/P)=1mi=1m(dp,i(tk)1m)2

对于第N类样本,计算过程类同。

据于上述算法的思想,本文提出了一种F1的改进算法:假设P,N两类数据包含了al到an共n个属性。属性al中有b1个特征值,属性a2中有b2个特征值,属性an中有个特征值。则

F1=max(Fa11,Fa21,...,Fan1)

其中,
Fan1=p(1,a1)F(1,a1)+p(2,a1)F(2,a2)+...+p(bn,a1)F(bn,a1)

p(1,a1)是a1属性中第1个特征值在两类所有样本出现的概率。
Fan1 相当于在同一属性下,用不同特征值求得的F乘以该特征值出现的频率之后求和。由于特征值的F表征的是该特征值对类别的区分能力,因此 Fan1 就表征的是该属性对类别的区分能力。

你可能感兴趣的:(机器学习)