一种用于蛋白质功能预测的层级多标签分类方法
技术领域
本发明涉及生物信息学及数据挖掘领域,尤其涉及一种用于蛋白质功能预测的层级多标签分类方法。
背景技术
蛋白质是生物细胞中除水之外含量最大的成分,是生物体内最主要的大分子物质之一。蛋白质是生命活动重要的物质基础,具有多种重要的生理功能,几乎一切生命现象都要通过蛋白质体现出来。因此明确蛋白质的生物学功能在理解有机体中的生物学进程、分析疾病机理、研制开发新药等诸多方面都有着十分重要的意义。
蛋白质由多种不同的氨基酸残基线性序列构成并折叠成特定的空间构象后,蛋白质就具有了相应的生物学活性和功能。蛋白质的功能存在不同水平上的描述,从生理学的角度蛋白质功能包括,酶催化、物质运载和储存、营养存储、运动协调、机械支持、免疫保护、信号接受与传导、生长和分化的控制作用;从生物化学的角度蛋白质功能主要包括结合功能、特异性地识别其它分子;催化功能(基本上活细胞中的每一个化学反应都是被催化的,大多数催化剂是酶蛋白)、开关功能(蛋白质是柔性分子,可以作为控制细胞过程的分子开关)、结构蛋白(作为活体中一些主要结构的元件);从理论预测研究的角度蛋白质功能包含亚细胞定位、翻译后修饰位点、信号肽剪切位点及其重新设计、信号锚、蛋白质的不同结合位点和激活位点、蛋白质的类别(是否是膜蛋白、酶)、蛋白质相互作用网络等。
目前,许多蛋白质的功能还处于未知状态,蛋白质功能注释存在着大量的工作要做。由于蛋白质功能预测问题可以转化为机器学习和数据挖掘领域中的分类问题,因此基于分类来进行功能预测也是目前的研究热点。
对于蛋白质功能预测来说,一般按照预先定义的注释方案对其功能进行分类。由于蛋白质功能注释方案带有层级结构的自然属性,比如按照FunCat注释方案,则符合树形图结构;按照GO注释方案,则符合有向无环图结构,因此这种层级结构是预定义的,并且是已知的。由于蛋白质功能预测的这些特点,蛋白质功能分类问题属于机器学习及数据挖掘领域中一类更具挑战性的问题——层级多标签分类问题(Hierarchical Multi-labelClassification,HMC)。
现有技术存在的问题:层级多标签分类问题兼具多标签分类(Multi-labelClassification)及层级分类(Hierarchical Classification)两种问题的特性,即在此类问题中,每个样本可以带有多个标签,各标签之间存在一个已知的预定义的层级结构关系,同时每个样本可以在任意一层具有两个或者两个以上的标签。经典的二分类算法或者平面多标签分类算法并不能直接用于解决这个问题。由于层级多标签分类问题兼具多标签及层级分类两个问题的难点,由此所产生的数据集不平衡问题、预测深度问题、多标签问题、层级约束问题以及预测结果一致性问题都要一一加以考虑。如何克服这些难点,设计有效的层级多标签分类算法是一项重要工作。
发明内容
本发明涉及到的理论知识
GO注释方案
GO注释方案是比较流行的功能分类方案。由于生物学研究的高度分散性,如何有效的组织生物学基本信息变得非常重要,GO注释方案就由此产生。GO注释方案通过专有生物名词对基因或者蛋白质进行注释,这些专有名词称为术语(terms)。在最顶层,GO注释方案是一个仅由三个独立的功能本体组成的分类系统,即细胞组分(Cellular Component),分子功能(Molecular Function)和生物过程(Biological Process)。每个本体是一个能描述成有向无环图的层次结构,其中的每个节点对应一个功能,也就是一个术语,每条有向边对应节点之间的隶属关系,图2为GO注释方案中生物过程本体的一部分示意图。
在GO结构图中,从上到下,术语对蛋白质功能的注释是逐渐详细的。术语越接近底部叶子节点,功能信息量越大,功能解释的越具体。GO注释方案满足TPR规则,一个术语注释了某一个基因或蛋白质,其父术语或者更上层的术语也可以注释这个基因或蛋白质。例如图2中的Response to stress(GO:0006950)注释了某蛋白质,其父术语节点Response tostimulus(GO:0050896)同样可以注释这个蛋白质。
由于GO注释方案的设计目标是创建一个通用的多维功能本体,这个特点可以保证GO注释方案的广泛应用,而与正在研究的生物体无关,这使得GO注释方案成为一种很好的基因或蛋白质功能注释和功能预测方案。
分类问题可以分为训练和预测两个阶段,在训练过程中得到所需的分类器,在预测过程中使用分类器对未知数据进行预测,并进行相应的预处理工作。
本申请为解决现有分类方法用于预测蛋白质功能时,存在数据集不平衡问题、多标签问题和层级约束问题,而提出一种用于蛋白质功能预测的层级多标签分类方法。
一种用于蛋白质功能预测的层级多标签分类方法,按以下步骤进行:
针对蛋白质功能预测的层级多标签分类方法分为训练和预测两个阶段:
一、训练阶段
在训练阶段针对类标签层级结构中的每个节点的数据集采用一个SVM分类器进行训练,得到一组SVM分类器,这组分类器被称为基础分类器,其中SVM为支持向量机;
一.一、将已知功能的蛋白质作为训练样本,构成训练集,并将每个蛋白质表示成一个多维的向量,向量中的每个元素都被称为一个属性;
该向量中的内容是真实实验结果的数字化表示,这些实验结果都取自标准的生物学数据库中;
在机器学习领域中,属性是指研究对象的性质或者特性,它因对象而异,或者随时间变化;一个研究对象可能具有多种性质或者特性,所以一个对象可能具有多种不同的属性;在实际操作中,我们采用一定的规则将对象的属性与数值或者符号值相关联,这个数值或者符号值就称为该属性的值;针对不同对象来说,同一个属性可能具有不同的值;因此每一个对象可以用一个多维向量进行表示;
本发明以蛋白质为研究对象,研究对象的属性为蛋白质中含有各种氨基酸的数量、蛋白质分子重量和所编码的蛋白质的氨基酸比例等情况;
每个蛋白质可以具有多种功能,也就是说在分类时,一个蛋白质可以看作为一个样本,每个样本可以具有多个类标签,这些类标签就是GO注释方案中的各个术语,也就是GO注释方案中的各个节点;作为现有的数据来说,一组蛋白质可以看作是一组样本,我们知道这些蛋白质具有哪些功能,也就是说这些样本所具有的类标签也是已知的;对于未知的蛋白质样本来说,我们就是想得到其可能具有的功能类标签。
一.二、GO注释方案中的每个节点表示一个类标签,针对GO注释方案中的每个节点,首先将训练集中的各样本,按照改进的sibling原则构造正样本集和负样本集;
在分类问题中,对于某一个类标签来说,如果样本具有这个类标签,则称该样本为正样本,由正样本构成的样本集合称为正样本集;不具有这个类标签的样本称为负样本,由负样本构成的集合称为负样本集;如果正样本的数量远少于负样本的数量,我们称此问题为不平衡数据集问题、正负样本集不平衡问题或者样本不平衡问题。
一.三、采用混合采样技术,即采用少类样本过采样与多类样本欠采样相结合的方式解决数据集不平衡问题。
一.四、针对GO注释方案中的每个节点,对相应的数据集进行样本的属性选择,选择对该节点的功能进行分类时贡献较大的属性。
一.五、针对GO注释方案中的各个节点,采用SVM分类器对各个节点的数据集进行训练,得到一组SVM分类器。
二、预测阶段
未知样本是指功能未知的蛋白质样本,按照表示训练样本的方式,将每个未知样本表示成一个多维向量;
在预测阶段首先使用训练阶段获得的这组基础分类器得出未知样本的初步结果,而后采用带权重的TPR算法对结果进行处理,得到满足层级约束条件的最终结果;
二.一、在训练阶段,每个节点对应一个分类器,GO注释方案中所有节点得到一组分类器;使用训练阶段得到的一组SVM分类器对未知样本进行分类预测,得到一组初步SVM分类结果。
二.二、使用Platt提出的sigmoid方法来将这组SVM分类结果转化为后验概率值。
二.三、使用针对有向无环图层级结构的带权重的TPR集成算法,在保证最终的预测结果满足有向无环图层级约束要求的前提下,实现蛋白质功能的预测。
本发明包括以下有益效果:
1、本发明所提出的层级多标签分类方法可以用于GO注释方案的蛋白质功能预测问题,实现对蛋白质功能的预测,给出一个蛋白质可能具有的多个功能的预测结果,解决了蛋白质功能预测中的多标签问题;
2、本发明所提出的方法,采用针对有向无环图层级结构的带权重的TPR集成算法,可以解决现有蛋白质功能预测方法对蛋白质进行预测时所出现的预测结果不满足层级约束的问题;
3、本发明所采用的正负样本集构造方法以及混合采样技术可以解决采用GO注释方案对蛋白质功能预测时所存在的数据集不平衡问题;
4、本发明所述方法解决了现有层级多标签分类方法用于预测蛋白质功能时,存在由于高通量实验所产生的大量数据得不到及时有效处理的问题;
5、本发明所述方法为生物实验验证提供相应依据和方向,使得生物实验可以有目的地进行,大大缩短蛋白质功能注释所需的时间,节省相应实验成本,压缩开支,对于蛋白质组学的研究也有着非常深远的实际应用意义;
6、本发明所述方法对于网页分类领域的相关问题也具有一定的借鉴意义。
附图说明
图1为本发明所述方法的流程框图;
图2为GO注释方案中生物过程本体的一部分示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合图1和具体实施方式对本发明作进一步详细的说明。
具体实施方式一、本实施方式所述的一种用于蛋白质功能预测的层级多标签分类方法,按以下步骤进行:
针对蛋白质功能预测的层级多标签分类方法分为训练和预测两个阶段:
一、训练阶段
在训练阶段针对类标签层级结构中的每个节点的数据集采用一个SVM分类器进行训练,得到一组SVM分类器,这组分类器被称为基础分类器,其中SVM为支持向量机;
一.一、将已知功能的蛋白质作为训练样本,构成训练集,并将每个蛋白质表示成一个多维的向量,向量中的每个元素都被称为一个属性;
该向量中的内容是真实实验结果的数字化表示,这些实验结果都取自标准的生物学数据库中;
在机器学习领域中,属性是指研究对象的性质或者特性,它因对象而异,或者随时间变化;一个研究对象可能具有多种性质或者特性,所以一个对象可能具有多种不同的属性;在实际操作中,我们采用一定的规则将对象的属性与数值或者符号值相关联,这个数值或者符号值就称为该属性的值;针对不同对象来说,同一个属性可能具有不同的值;因此每一个对象可以用一个多维向量进行表示;
本发明以蛋白质为研究对象,研究对象的属性为分子重量和所编码的蛋白质的氨基酸比例;
每个蛋白质可以具有多种功能,也就是说在分类时,一个蛋白质可以看作为一个样本,每个样本可以具有多个类标签,这些类标签就是GO注释方案中的各个术语,也就是GO注释方案中的各个节点;作为现有的数据来说,一组蛋白质可以看作是一组样本,我们知道这些蛋白质具有哪些功能,也就是说这些样本所具有的类标签也是已知的;对于未知的蛋白质样本来说,我们就是想得到其可能具有的功能类标签。
一.二、GO注释方案中的每个节点表示一个类标签,针对GO注释方案中的每个节点,首先将训练集中的各样本,按照改进的sibling原则构造正样本集和负样本集;
在分类问题中,对于某一个类标签来说,如果样本具有这个类标签,则称该样本为正样本,由正样本构成的样本集合称为正样本集;不具有这个类标签的样本称为负样本,由负样本构成的集合称为负样本集;如果正样本的数量远少于负样本的数量,我们称此问题为不平衡数据集问题、正负样本集不平衡问题或者样本不平衡问题。
一.三、采用混合采样技术,即采用少类样本过采样与多类样本欠采样相结合的方式解决数据集不平衡问题。
一.四、针对GO注释方案中的每个节点,对相应的数据集进行样本的属性选择,选择对该节点的功能进行分类时贡献较大的属性。
一.五、针对GO注释方案中的各个节点,采用SVM分类器对各个节点的数据集进行训练,得到一组SVM分类器。
二、预测阶段
未知样本是指功能未知的蛋白质样本,按照表示训练样本的方式,将每个未知样本表示成一个多维向量;
在预测阶段首先使用训练阶段获得的这组基础分类器得出未知样本的初步结果,而后采用带权重的TPR算法对结果进行处理,得到满足层级约束条件的最终结果;
二.一、在训练阶段,每个节点对应一个分类器,GO注释方案中所有节点得到一组分类器;使用训练阶段得到的一组SVM分类器对未知样本进行分类预测,得到一组初步SVM分类结果。
二.二、使用Platt提出的sigmoid方法来将这组SVM分类结果转化为后验概率值。
二.三、使用针对有向无环图层级结构的带权重的TPR集成算法,在保证最终的预测结果满足有向无环图层级约束要求的前提下,实现蛋白质功能的预测。
本实施方式包括以下有益效果:
1、本实施方式所提出的层级多标签分类方法可以用于GO注释方案的蛋白质功能预测问题,实现对蛋白质功能的预测,给出一个蛋白质可能具有的多个功能的预测结果,解决了蛋白质功能预测中的多标签问题;
2、本实施方式所提出的方法,采用针对有向无环图层级结构的带权重的TPR集成算法,可以解决现有蛋白质功能预测方法对蛋白质进行预测时所出现的预测结果不满足层级约束的问题;
3、本实施方式所采用的正负样本集构造方法以及混合采样技术可以解决采用GO注释方案对蛋白质功能预测时所存在的数据集不平衡问题;
4、本实施方式所述方法解决了现有层级多标签分类方法用于预测蛋白质功能时,存在由于高通量实验所产生的大量数据得不到及时有效处理的问题;
5、本实施方式所述方法为生物实验验证提供相应依据和方向,使得生物实验可以有目的地进行,大大缩短蛋白质功能注释所需的时间,节省相应实验成本,压缩开支,对于蛋白质组学的研究也有着非常深远的实际应用意义;
6、本实施方式所述方法对于网页分类领域的相关问题也具有一定的借鉴意义。
具体实施方式二、本实施方式是对具体实施方式一所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤一.二中所述按照改进的sibling原则构造正样本集和负样本集的具体过程如下:
针对GO注释方案中的每个节点,在训练集中,将属于该节点的样本作为正样本,将属于该节点的兄弟节点的样本作为初始负样本,同时在初始负样本集中剔除同时属于正样本集中的样本,并将其作为最终负样本集,即负样本集;其中,如果一个节点没有兄弟节点,则向上溯源选择属于其父节点的兄弟节点的样本作为负样本;
具体的符号表示:
Tr+(cj)=*(cj)
其中,Tr表示包含所有样本的训练集;节点cj代表对应的类标签;Tr+(cj)表示节点cj的正样本集,表示同时属于节点cj和其兄弟节点的正样本集,也就是这些样本同时具有cj和其兄弟节点的类标签;Tr-(cj)表示节点cj的负样本集;*(cj)表示节点cj对应的具体样本构成的集合;表示兄弟节点;↑表示父节点,↓表示子节点;表示祖先节点,表示后代节点;\表示从一个样本集合中剔除某些样本。
具体实施方式三、本实施方式是对具体实施方式一或二所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤一.三中所述少类样本过采样方法的具体过程如下:
本发明所述少类样本过采样方法为层级SMOTE少类样本过采样方法;
设X为含有n个样本的训练集,X={x1,x2,…,xn},样本标签数共有m个,即共有m个节点,对于一个节点i(1≤i≤m)来说,正样本集即少类样本,也就是具有该节点所表示功能的样本,该样本的集合标记为POS;负样本集即多类样本,也就是不具有该节点所表示功能的样本,标记NEG;POS中共有pn个样本,记为POS={xpos1,xpos2,…xpospn};NEG中共有nn个样本,记为NEG={xneg1,xneg2,…xnegnn};其中pn+nn=n,如果那么我们认为样本集是不平衡的,其中η为不平衡度量值;
如果i为叶子节点:
第一步,计算希望新建多少个少类样本Op,其中Op可有该式计算得出,Op=nn×μ-pn,μ为代价敏感参数;
第二步,计算一个向量S,S={s1,s2,…,spn},其中s1,s2,…,spn是随机选取的一系列整数,并且满足
第三步,对于每一个样本xposj∈POS,从POS中该样本的近邻样本中选取sj个样本;
第四步,对每个样本xposj∈POS,计算该样本与其sj个近邻样本之间的差异度值diff,f={1,2,…,sj},而后将该组差异度值与一个随机数rf相乘,0<rf<1,f={1,2,…,sj};
第五步,对每个样本xposj∈POS,得到其sj个新生成的样本synstheticf,synstheticf=xposj+rf×diff,f={1,2,…,sj};
如果i为非叶子节点:
第一步,计算希望新建多少个少类样本Op,其中Op可有该式计算得出,Op=nn×μ-pn,μ为代价敏感参数;
第二步,选取其所有子节点的新建样本synstheticf为其新建样本,并将该集合标记为Pchild;
第三步,如果|Pchild|≥Op,则在Pchild集合中随机选取Op个样本最为该节点的新建样本;其中,|Pchild|表示集合Pchild中所包含样本的个数;
第四步,如果|Pchild|<Op,则还需生成Op-|Pchild|个样本,此时参照i为叶子节点情况时的相关步骤,生成剩余样本,将两类样本组合,得到最终的新建样本集合。
具体实施方式四、本实施方式是对具体实施方式一或二所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤一.三中所述多类样本欠采样方法的具体过程如下:
本发明所述多类样本欠采样方法为改进的OSS多类样本欠采样方法;
OSS算法是基于Tmoek链,即Tmoek Link的理论提出的,Tmoek link是指x1和x2是分属不同类别的两个样本,d(x1,x2)表示它们之间的距离,如果不存在一个样本x3使得d(x1,x3)<d(x1,x2)或者d(x2,x3)<d(x1,x2),则称(x1,x2)之间构成了一个Tmoek Link;
改进的OSS多类样本欠采样方法
定义x1是Tmoek Link中的一个正样本即少类样本,定义x2是与x1距离最近的正样本,定义d(x1,x2)为他们之间的距离,定义M为与样本x1的距离小于d(x1,x2)的负样本即多类样本的数量,定义t(c)为决定属于类别c的两个正样本间的距离是否可以被接受的阈值,也就是这两个正样本之间可以存在多少负样本,其中,μ表示在每对正本样本对之间的负样本数量的平均值,σ表示一个偏差值,为取整符号,当M<t(c)时,两个正样本之间的负样本将从样本集中删除,达到多类样本欠采样的目的。
具体实施方式五、本实施方式是对具体实施方式一至四之一所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤一.四的具体过程为:
一.四.一、采用C4.5决策树算法中的信息增益的概念计算各属性的信息增益,同时算出各属性所占有的增益比率;
针对某一节点来说,设D为样本集,Gain(R)为信息增益,Gainratio为针对属性R的信息增益比率,则其计算公式为:
Gain(R)=Info(D)-InfoR(D)
其中,pi表示属于类别i的样本在样本集中所占的比例,m为样本集所含有的类别个数,Info(·)表示样本集的熵值,即将样本集不同的类别分开需要的信息量;k表示属性R有k种不同的取值,Dj是由属性R取值为j的样本组成的样本集,InfoR(·)表示样本集针对属性R的熵值,也就是按照属性R进行分类后,将样本集不同的类别分开还需要的信息量;SplitInfoR(·)表示针对属性R的分裂信息;||表示集合中所包含样本的个数;
一.四.二、针对某一个节点来说,在得到各属性的信息增益比率值后,选择样本对分类结果贡献较大的属性,并剔除无关属性,信息增益比率的值越大表示对分类结果贡献约大;为了选取合适数量的样本属性,使之既不损失大量的样本信息,同时具有足够数量的属性,引入两个条件——最小信息增益比率值以及最少属性数量比率值;选择最终的属性组合的具体操作过程为:
设每个样本xj都能够用一个n维向量表示,即含有n个属性,这些属性表示为(a1,…,an);对于节点i来说,最小信息增益比率值设为gi,0<gi≤1;最少属性数量比率值设为qi,0<qi≤1;
首先,根据最少属性数量比率值qi计算最少属性数量值Qi=n×qi;
然后,将各属性按照信息增益比率的值从大到小排列,从信息增益比率值最大的属性开始,当前面的几个信息增益比率值的总和大于等于最小信息增益比率值gi时,同时判断这些属性的数量是否大于最少属性数量值Qi,如果不满足,则继续从剩余的属性中选取信息增益比率值最大的属性,直至属性的数量大于等于最少属性数量值Qi;然后将满足这两个条件的属性选择出来,将剩余的属性作为无关属性剔除;此过程保留信息增益比率值大的属性,即选择样本对分类结果贡献较大的属性;
步骤一.四.二的举例说明:
第一种情况:
现假设n=10,即有10个属性,对于节点i,设定gi=0.95,qi=0.25,此时Qi=10×0.25=2.5≈3;
对于节点i,每个属性的信息增益比率值为{0.4,0.3,0.1,0.1,0.05,0.01,0.01,0.01,0.01,0.01},所有信息比率值相加和为1;此时我们选择前5个属性值,那么这5个属性值的信息增益比率值的和为0.95,已经等于gi,即满足了最小信息增益比率值要求;同时所选择的属性值数量为5,大于最少属性数量值Qi=3,故此时选择前面5个属性值代表样本,丢弃后面5个属性;在此操作后,样本由10维向量变为5维向量;
第二种情况:
现假设n=10,即有10个属性,对于节点i,设定gi=0.95,qi=0.25,此时Qi=10×0.25=2.5≈3;
对于节点i,每个属性的信息增益比率值为{0.8,0.15,0.01,0.02,0.01,0.01,0,0,0,0},所有信息比率值相加和为1;此时我们选择前2个属性值,那么这2个属性值的信息增益比率值的和为0.95,即满足了最小信息增益比率值要求;但是,所选择的属性值数量为2,小于最少属性数量值Qi=3,故此时选择前面3个属性值代表样本,丢弃后面7个属性;在此操作后,样本由10维向量变为3维向量;
一.四.三、步骤一.四.一和步骤一.四.二所述过程是针对GO注释方案中一个节点进行属性选择的过程;重复步骤一.四.一及一.四.二,对GO注释方案中的所有节点进行属性选择。
具体实施方式六、本实施方式是对具体实施方式一至五之一所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤二.二的具体过程如下:
设X为含有n个样本的训练集,样本标签数共有m个,即共有m个节点;X={x1,x2,…,xn};Y={y11,y12,…,y1m…yn1,yn2,…,ynm}为与各样本对应的真实的类标签,也就是GO注释方案中的各节点;xj为训练集中的一个样本,yji为该样本xj对于节点i的类标签,yji=1表示该样本属于节点i,yji=-1表示该样本不属于节点i;
对于节点i,将该节点的SVM对于一个样本xj的输出值hi(xj)转换为概率值公式为A、B为将结果进行转化的两个系数,hi(xj)为SVM给出的样本xj的分类结果。
具体实施方式七、本实施方式是对具体实施方式六所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤二.二的具体过程所述系数A、B求解过程如下:
对于节点i,A、B的值可以通过对训练集求解下式获得:
其中N+为样本集中属于节点i的样本的数量,N-为样本集中不属于节点i的样本的数量。
具体实施方式八、本实施方式是对具体实施方式一至七之一所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,步骤二.三的具体过程为:
步骤二.三.一、在有向无环图结构中一个节点可能含有多个父节点,因此从根节点到达一个节点可能存在多条路径;针对这种情况,我们定义一个节点所属的层级为根结点到达此节点的最大路径所决定的,因此有向无环图结构具有多少层级取决于有向无环图中的具有最长路径的节点;定义r为有向无环图中的根结点,节点i为有向无环图中的任意一个节点(非根节点),p(r,i)表示从根节点r到节点i的一条路径,l(p(r,i))表示该路径的长度;ψ(i)为决定节点i所处层级的函数,如下所示:
根据ψ(i)得出GO注释方案中每个节点所处的层级,定义根结点为第0层,而后为1层、2层,直至GO注释方案的最底层级;
步骤二.三.二、针对GO注释方案自下而上过程,一个样本在每个节点的预测结果取决于该节点基础分类器的预测结果和其子节点预测为正类的结果;一个样本其是否具有节点i所代表的功能不仅取决于该节点分类器给出的结果,还取决于该节点的子节点分类器所给出的结果;
对于一个样本xj,从GO注释方案中处在最底层的节点开始,逐层向上进行处理,计算各个节点分类器给出的结果和子节点分类器所给出的结果的综合结果;具体过程为:
对于GO注释方案中的一个节点i来说,φi表示结果预测为正类的节点i的所有子节点构成的集合;为综合子节点分类器结果后给出的节点i的分类结果;则的计算公式为:
其中,ω为权重参数,权重参数ω用来平衡基础分类器和子节点对最终结果的贡献大小,该值可以设置为0.5,也可是根据实际情况进行调整;通过这个步骤,下方的正类预测结果逐层传递到上层相应节点;
步骤二.三.三、针对GO注释方案自上而下过程,它的主要目标是将经过自下而上过程后,将上层节点判断为负类的结果传递给相应的下层节点;它也采用逐层传递的方式,修改各层节点的预测值,最终根据相应阈值和最终得到的针对各节点的预测值,得到最终预测结果;具体内容为:
对于一个样本xj,最终计算结果为
其中,par(i)表示节点i的父节点;
自下而上过程中,目的是根据各节点的分类器结果计算即综合子节点结果的一个结果;自上而下过程,则是根据计算最终计算结果是该样本属于节点i的概率值,一个数,大于等于0,小于等于+1;大于等于0.5,说明样本属于该节点,小于0.5说明不属于该节点;
步骤二.三.四、对于一个样本xj来说,节点i的最终计算结果为GO注释方案中的标签数共有m个,也就是说共有m个节点;则对于一个样本xj来说,最终计算结果为
步骤二.三.五、对于一个样本xj,如果大于等于0.5,则预测为正类,即该样本属于节点i,带有节点i表示的类标签;如果小于0.5,则预测为负类,即该样本不属于节点i,不带有节点i表示的类标签;即样本xj的类标签最终预测结果Yji表示为
步骤二.三.六、最终得到一个样本xj属于GO注释方案中哪几个点,即样本xj带有哪几个类标签;关于样本xj的所有类标签的最终预测结果Yj可以表示为Yj={Yj1,…,Yji,…,Yjm},实现样本xj的标签预测,即实现对基因功能的预测。
具体实施方式九、本实施方式是对具体实施方式五所述的一种用于蛋白质功能预测的层级多标签分类方法的进一步说明,
步骤一.四.二所述的最小信息增益比率值gi和最少属性数量值Qi的具体数值需要在训练时进行多次训练,选取准确度最高的的值进行设定;具体过程如下:
首先根据经验选择最小信息增益比率值gi以及最小属性数量值Qi的初始值;然后继续进行步骤一.五、二.一、二.二和二.三;完成该过程后,根据预测结果的准确度,调整gi、Qi,再次重复步骤一.五至步骤二.三;多次之后,选取预准确度最高的情况来设定这两个值的具体数值。