一种基于聚类的多标签不平衡生物医学数据分类方法
技术领域
本发明涉及多标签技术领域,尤其涉及一种基于聚类的多标签不平衡生物医学数据分类方法。
背景技术
多标签学习可以称为监督学习的一个范式。不同于二分类问题,多标签学习允许样本有多个类别。但也不同于多分类问题,多标签学习允许一个对象同时属于多个类别。对于多标签样本数据分类表示为某一个样本数据含有多个标记的标签,整个样本数据集被标记成q维的多标签空间,每一个数据样本的特征向量表示为xi,标签向量标记为di={di1,di2,…,diq},其中dir∈{0,1},1≤r≤q,表示对于每一个样本数据,标签存在相同的标记,1为此样本数据含有这个标记的标签,0为此样本数据不含有这个标记的标签。多标签对于单标签的优势在于多标签考虑到了标签之间的关联性问题,对于一条数据来说,可以被标记多个标签属性。目前,多标签数据在当前的许多应用领域大量存在,比如生物医学、文本分类、图像分析和情感分析等。
由于数据量爆炸式的增长使数据集内部结构变得越来越复杂,数据类别分类不均导致了不平衡数据集的出现。对于多标签二分类问题,不平衡数据集中样本数量多的类别(本发明设其标签值为0)在数据集中占领支配地位,直接或间接影响分类系统对样本数量少的类别(本发明设其标签值为1)的决策和分类。不平衡数据分类问题旨在解决类别分布不平衡对分类系统的影响,从数据和算法两个方面提高分类系统对不平衡数据的分类能力。不平衡数据分类问题的难点在于数据不平衡导致传统机器学习算法性能下降,这是由于大多数传统的机器学习算法都假定数据集中不同类别基本趋于平衡,或者不同类别具有相同的错分代价。因为,这类算法在处理复杂的多标签不平衡数据分类问题时,构造的分类系统不能很好地拟合数据集的类别分布,进而导致了较差的分类效果。这种类别不平衡的情况广泛存在于各个应用领域,包括医疗数据分类、石油溢出探测和欺诈检测等等。生物医学数据分类是多标签不平衡数据分类的一个重要的研究点,这类数据由于数据样本本身比较少,或者收集某些类别的样本数据比较困难,甚至要付出高昂的成本,因而大部分数据集类别分布都不平衡。实际应用中,人们常常更关注不平衡数据集中的正类样本,因为这类样本分类错误后会产生更高的错分代价,生物医学数据正是如此,将疾病患者误诊为健康病例会耽误患者的治疗时间,有时甚至会付出生命的代价。目前,不平衡生物医学数据的处理方法主要通过将数据集划分为均衡的训练集和不平衡的测试集,从而一定程度上克服传统分类算法对负类的倾向性。
发明内容
有鉴于此,本发明的目的在于提供一种基于聚类的多标签不平衡生物医学数据分类方法,旨在解决大多数传统分类器在多标签不平衡生物医学数据分类性能方面存在误差的问题。本发明对数据进行有方向性的重采样,对于传统的重采样更加具有针对性,降低产生噪声数据的影响。
本发明的目的是通过以下技术方案来实现的,一种基于聚类的多标签不平衡生物医学数据分类方法,包括以下步骤:S101对标签不均衡的数据根据特征相似度和标签关联性定义关联矩阵;S102根据关联矩阵对数据进行聚类;S103对每个类簇中的不平衡标签进行有方向性的增加;S104对每个类簇中的数据用多标签分类器进行训练学习;S105根据投票原则把每个分类器的结果进行合并,预测出标签。
进一步,所述关系矩阵的定义包括以下子步骤:S1011根据传统的欧氏距离来计算样本数据特征之间的关联度定义特征相似度;S1012根据汉明距离来计算样本数据标签之间的关联度定义标签相似度;S1013通过特征相似度和标签相似度定义关联矩阵,根据如下公式(1)定义计算关联矩阵Lij;
其中,Lij表示为第i条样本数据和第j条样本数据在关系矩阵中对应的值,n、p、q代表测试样本个数,dnp表示的是第n条样本数据与第p条样本数据的特征相似度,ξnq表示的是第n条样本数据与第q条样本数据的标签相似度,W1和W2分别表示特征相似度和标签相似度的占有比的阈值。
进一步,在步骤S102中,采用层次聚类方式对数据进行聚类,当每个类簇中的标签满足一定结束条件时,聚类停止;结束的判断方法为:判断样本数据集的MeanIR是否大于1.5,并且样本数据个数大于生成数据个数占有整体的一个阈值限定T2;或者x是否大于S/T2,MeanIR表示的是样本数据的不平衡程度值,x表示某一个均衡标签的生成数据,S表示原来该簇的大小。
进一步,所述步骤S103具体包括以下子步骤:S1031根据不平衡多标签的定义公式,对于每个数据进行判断,判定哪些标签为不平衡标签,挑选出所有含有不平衡标签的数据集;
S1032在此数据集中随机选取一条数据;S1033根据欧氏距离找到最近的k条数据,对数据进行重采样;重采样的新数据特征由k+1个样本数据的每个特征分别求平均来产生,重采样的新数据标签由k+1个样本数据的每个标签根据多数投票原则产生。
进一步,对于一个新的测试样本数据,计算测试样本数据与每个簇类样本特征之间的距离,把这个距离作为下一步进行投票原则的权重(W1,W2,…,Wn/2),采用投票原则对测试数据的标签进行预测,具体步骤为:选取距离最近的前n/2个簇,把测试样本数据集放进距离最近的前n/2个簇训练学习的分类器中,对于每一个簇分类器输出一个结果,根据如下公式(8)来计算测试数据每个标签预测的值;
其中Φ(xi)表示根据每一个分类器预测出的标签,wi为权重,i表示第i条样本数据,n表示总共有多少个簇。
由于采用以上技术方案,本发明具有以下优点:
本发明主要解决多标签不平衡生物医学数据的分类问题,通过层次聚类方法对数据进行聚类,并且在聚类时考虑标签关联性来降低簇内标签的不平衡性,从而提高重采样方法生成新数据的可靠性,降低噪声数据的概率。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
图1为本发明实施例一提供的每个簇中结果集成过程流程图;
图2为本发明实施例一提供的一种基于聚类的多标签不平衡生物医学分类方法算法。
具体实施方式
下面将结合附图,对本发明的优选实施例进行详细的描述。
参考图1,图1为本实施例提供的一种基于聚类的多标签不平衡生物医学数据分类方法流程图,具体包括:
101:对生物医学数据根据特征相似度和标签关联性定义关联矩阵。
在不平衡多标签数据空间中定义一种新型的聚类方法,这种聚类方法在对生物医学样本数据进行聚类的时候,不仅考虑特征之间相似度,而且也考虑多标签空间的关联,然后通过特征之间的相似度和多标签空间的关联性建立关联定义关联矩阵。
所述关联矩阵是指综合考虑了特征相似度和标签关联性所得到的关联矩阵,定义过程包括具体以下三个方面:
1)采用传统的欧氏距离计算生物医学样本数据特征之间的关联度来定义特征相似度,具体见公式(1)所示:
dij表示第i条样本和第j条样本之间用欧式距离算取的特征相似度,xik表示第i条样本特征向量中第k个特征对应的值,xjk第j条样本特征向量中第k个特征对应的值。
2)采用传统汉明距离计算生物医学样本数据标签之间的关联度来定义标签相似度;
3)通过特征相似度和标签相似度定义的关联矩阵,根据如下公式定义计算关联矩阵Lij。例如对于第i条生物医学样本数据和第j条生物医学样本数据的关系定义为:
假定生物医学样本数据共有n条数据,其中,Lij表示为第i条生物医学样本数据和第j条生物医学样本数据在关系矩阵中对应的值,dij表示的是第i条生物医学样本数据和第j条生物医学样本数据的特征相似度,ξij表示的是第i条生物医学样本数据和第j条生物医学样本数据的标签相似度,n、p、q代表测试样本个数,dnp表示的是第n条样本数据与第p条样本数据的特征相似度,ξnq表示的是第n条样本数据与第q条样本数据的标签相似度,W1和W2分别表示生物医学样本数据特征相似度和生物医学样本数据标签相似度的占有比的阈值。
102:根据关联矩阵对数据进行聚类。
采用特征和标签之间关联性的新的聚类方法是在特定的样本数据分类目标下,衡量多标签空间中点与点之间的距离。因此,聚类方法可以在进行层次聚类时,既考虑特征的相似性,又考虑标签之间的关联性。这样可以使同一个类簇中的数据样本之间的特征和标签都有很大的相似性,同时对于每一个簇内的样本数据来说,生物医学样本数据的某些标签的不平衡性可能就可以不用考虑。之所以对数据进行聚类,主要是考虑到以下几方面的问题:
(1)存在一种情况:对于总体来说,某些标签为不平衡标签,但对数据进行聚类后,对于某个簇中,某些不平衡的样本数据的标签可能存在均衡的状态,就不用对这个标签进行重采样;
(2)聚类后可以降低标签的不平衡程度。整体来说,对于一个不平衡标签而言,如果在聚类时考虑标签的相似性,对数据样本进行聚类,根据聚类的个数n,最坏的情况就是对于每一个类簇中yi的分布和总体分布概率θ是一样的,即对公式(3)上下同除n,就会使公式(3)中的θ基本不产生变化;然而根据聚类,会使yi的分布概率与总体分布概率不一样,有些会高,有些会低,这样可以根据yi所在的不同簇的具体情况来进行重采样数据,这样使得进行重采样的数据更加具有针对性,而且针对重采样的目标更加的具体,降低引入噪声数据的概率;
θ=ζ(yi)/n (3)
其中n表示聚类的个数两者中的n是否表示一个意思,若表示同样的意思请统一说法,ζ(yi)表示样本数据中第i个标签yi为1的数量,θ表示在簇中,yi的分布概率。
(3)对于某一个类簇进行重采样的数据对其他簇中的样本数据不会造成其他影响。
所述根据102定义的关联矩阵对生物医学样本数据进行聚类,关联矩阵采用层次聚类的凝聚性聚类的方式对数据进行聚类,当每个类簇中的标签满足聚类的停止条件时停止;
聚类的停止条件为:判断该样本数据集的是否满足MeanIR>1.5并且样本数据个数大于生成数据个数占有整体的一个阈值限定T2,MeanIR表示的是样本数据的不平衡程度值;或者某一个均衡标签的生成数据x>原来该簇的大小S/生成数据个数占有整体的一个阈值限定T2。
所述的MeanIR的定义根据的具体公式如下所示公式(4)(5):
l表示标签集合L中某个标签值,l’表示标签集合L的一个特定值,L1表示标签集合的第一个标签值,L|L|表示标签集合的最后一个标签值,n表示本的个数,h(l′,Yi)表示判定第i个标签是否与第l’个标签相同,h(l,Yi)表示判定第i个标签是否与第l个标签相同,IRLBl(l)这个函数表示标签l的不平衡程度。
103:对每个类簇中生物医学样本数据的不平衡标签进行有方向性的增加:根据不平衡多标签的定义公式,对于每个数据进行判断,判定哪些标签为不平衡标签,挑选出所有含有不平衡标签的数据集,在此数据集中随机选取一条数据,然后根据KNN方法来对此条数据进行重采样。
所述的不平衡多标签的定义公式(4)(5)和公式(6)(7)。
IRLblσ表示不平衡程度,Y|Y|表示最后一个标签,|Y|表示是标签的个数,y表示的是一个变量,Y1表示第一个标签个数。
所述104中的具体过程:对103聚类后中簇内数据,根据公式(4)计算每一个标签的不平衡程度IRLBl(l),并根据公式(5)计算生物医学样本数据平均不平衡程度MeanIR,再根据公式(6)(7)计算生物医学样本数据的CVIR。之后,先找到MeanIR>1.5,CVIR>0.2,这说明这个数据集存在不平衡的标签,是含有不平衡标签的数据集,然后根据IRLBl(l)>MeanIR来确定哪些标签为不平衡的标签,对某个类簇中含有不平衡标签的数据进行有方向性的重采样,以降低簇类中的不平衡程度。比如对于含有q个标签{X,y1,y2,…,yq}的数据集的生成数据的处理步骤如下:其中X表示某个样本的特征向量
根据之前步骤所示,通过综合考虑生物医学样本数据的特征相似度和标签的关联性,计算出关联矩阵,然后把整体数据分成n个簇;
通过上述公式计算IRLBl(l)和MeanIR,发现标签yi=1,yj=1为该簇中的不平衡的标签;
挑选出所有含有yi=1,yj=1标签的数据集imbalaceBag,包括三种情况:{yi=1},{yj=1},{yi=1,yj=1},在数据集imbalaceBag随机选取一条数据,查看这条数据含有的不平衡标签的个数,对不平衡的标签有方向性的设置为1,然后选取离这条数据最近的k个样本数据,把这k+1个样本数据作为用重采样方法产生的新数据的父类数据,重采样的新数据特征由k+1个样本数据的每个特征分别求平均来产生,重采样的新数据标签由k+1个样本数据的每个标签根据多数投票原则产生。上述步骤主要考虑到使用k近邻方法生成数据不仅可以考虑到局部数据特征的相似性,而且还考虑到标签之间的关联性问题,使得重采样产生的数据的特征和标签更加的具有合理性。
所述104中的具体过程:对每个类簇中的数据用多标签分类器进行训练学习:把每个簇中的较均衡的样本数据,用多标签分类算法进行分类学习,本实例的基分类器选取的是决策树(C4.5)。
参考图1所示,图中每个分类器都由一个簇内的较均衡数据根据基分类器进行模型建立,然后形成分类器集群,如图所示分类器1,分类器2,…,分类器q。
本实例选取的基分类器是决策树(C4.5),即如图1所示,分类器1,分类器2,…,分类器q,为决策树(C4.5)分类器。
所述105中的根据投票原则是指根据每个测试样本中的数据对簇中的样本数据的距离作为权重,即对于一个新的测试样本数据,计算测试样本数据与每个簇类样本特征之间的距离,把这个距离作为下一步进行投票原则的权重(W1,W2,…,Wn/2)。
所述105中把每个分类器的结果进行合并,预测出标签的具体步骤是指:选取距离最近的前n/2个簇,把测试样本数据集放进去进行分类,对于每一个簇分类器输出一个结果,根据之前所定义的权重,根据如下公式(8)来计算测试数据每个标签预测的值。
其中Φ(xi)表示根据每一个分类器预测出的标签。
根据图1所示,对于每一个样本数据在分类器1,分类器2,…,分类器q中的预测的标签为{y1,y2,…,yq}。
本实例中对于生物医学样本数据在q个分类器中预测的标签为{y1,y2,…,yq}。根据之前记录的权重(W1,W2,…,Wn/2),选取权重最大的前n/2个簇,把测试的生物医学样本数据进行预测,预测的结果进行集成,即对每个预测出来的测试的生物医学样本数据的标签根据公式(8)进行计算。假如yi>T3(其中T3表示为1的概率阈值),则说明对于yi的预测结果为1,否则为0。
在步骤S101前还包括:对生物医学数据用归一化和降维等方式进行预处理。
所述对生物医学数据进行降维的方式采用皮尔逊系数。
所述对生物医学数据进行归一化的方式采用标准化归一方法。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。