一类蛋白质二级结构智能预测模型构造技术转让专利

申请号 : CN200810116674.2

文献号 : CN101408911B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨炳儒

申请人 : 北京科技大学

摘要 :

本发明公开了一类蛋白质二级结构智能预测模型构造技术,利用多层递阶、逐步求精的结构模型集成。此模型CPM融合了原创型KAAPRO方法、新型同源性分析方法、改进型SVM方法等;CPM打破了传统的单一物化属性分析或单一结构序列分析的技术线路,而是采取了结构序列分析与物化属性分析相结合的优选线路,确保了模型整体的优化与预测精度的同时具有更好的普适性;CPM采用高起点的alpha/beta库挖掘;并以领域知识与背景知识贯穿;CPM能够很好地对偏alpha/beta型蛋白质的二级结构进行预测,取得86%的最高精度(同类最高达81%)。

权利要求 :

1.一类蛋白质二级结构智能预测模型构造方法,其特征在于:包括综合分析层、辅助判定层、核心判定层、结果优化层;

1)综合分析层:本层综合了新型同源性分析与优化的SVM类化分析;

新型同源性分析:在多序列匹配阶段,采取基于退火进化的多序列匹配算法,使得比对的结果具有更强的生物敏感性;在模型构建阶段,利用持续的双向隐马尔可夫模型和神经网络的混合建模方法;

优化的SVM类化分析:在SVM方法的改进中,采取轮转策略,即构造H/~H、E/~E、C/~C、H/E、H/C、E/C六个二分类器,根据样本与超平面的距离对目标样本判定;同时使用采样集建立模型,进而修正的策略;

新型同源性分析方法基于序列结构,优化的SVM类化分析方法针对氨基酸物化属性,因此本层同时综合了结构序列分析与物化属性分析结果,打破了传统的单一性分析的研究线路;

2)辅助判定层:本层采用优化的SVM二分类方法,以及对C库挖掘所得的关联规则集为基础的关联分类算法;模型以人工选取的方式对C数据库进行构造,具体方式为对RS126数据集分割窗口化,收集中间残基结构为C的记录组合而成;在此基础上,在KDD*过程模型的作用下,获得分类效果较好的规则集,该集合可有效分离数据中的C结构,以最大程度避免向核心判定层引入该结构,避免精度衰退;

3)核心判定层:本层的核心方式是原创性的基于KDTICM理论的KDD*模型与Maradbcm算法,以及改进的关联规则分类CBA方法;该层的主要特征包括两方面:其一使用可信度与支持度的测度来作为一个复合型度量;其二根据蛋白质生物数据的特性,使用内容分别相对偏向alpha、beta的蛋白质库;此两个数据库是以CATH分类为基础,以同源性小于30%为条件,选择α型、β型的蛋白质而构成;利用基于KDD*模型的Maradbcm算法对纯度较高的α蛋白质库与β蛋白质库进行关联规则的挖掘,由此获得的挖掘结果是精化的规则;其在保证本层预测精度的同时,为生物学家对二级结构折叠的进一步分析提供了依据;

4)结果优化层:本层主要设计倾向性因子、位能函数及合情推理三类方法,前两类方法属于生物信息学固有方法,其主要利用生物信息背景知识进行结构预测;合情推理方法是建立在二级结构具备的不同物化属性规律的基础上的;三种方法从不同角度对其下三层的结果加以优化,以最大程度地提高整体预测精度。

2.如权利要求1所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:新型同源性分析由两个步骤组成:第一步,多序列匹配过程,根据遗传算法容易导致早熟收敛问题,使得进化无法收敛到最优解的缺陷,而模拟退火具有概率突跳的双向搜索能力,既容易跳出局部极值的陷阱,又能确保搜索的全局优化性的优势,将模拟退火和遗传算法结合,提出了基于退火进化的多序列比对算法,提高了全局和局部意义上的搜索能力和效率,使二者在性能上互补长短;

第二步:模型建构过程,持续双向隐马尔可夫模型与神经网络的混合建模,在常规方法中利用标准双向隐马尔可夫模型与神经网络的混合建模方法有其自身的弊端,即模型中参数快速增长;采用持续的隐马尔可夫模型与神经网络的混合建模方法;

优化的SVM类化分析技术:

在SVM方法的改进中,采取轮转策略,即构造H/~H,E/~E,C/~C,H/E,H/C,E/C这六个二分类器,根据样本与这些超平面的距离对目标样本判定;同时使用采样集建立模型,进而修正的策略;在合成金子塔模型中,SVM在综合分析层需要进行三分类,再辅助判定层需要进行二分类;SVM在进行多分类时,方法是构造一系列的二分类器,再将这一系列的二分类器以某种方式组合起来,以达到多分类的目的。

3.如权利要求2所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:新型同源性分析实现步骤为:步骤1、设置遗传算法以及退火过程中涉及到的各控制参数、包括群体规模、交叉概率、初始温度和退火迭代次数;

步骤2、初始化程序中的各个变量;

步骤3、生成初始群体;

步骤4、选择被复制而直接进入下一代或参与交叉操作的个体;

步骤5、对选择的个体按照交叉概率实施交叉操作,生成新群体,并采用保优原则,生成的新个体目标函数值大于当前最优解,则新个体替换为当前最优解,否则保持不变;

步骤6、对新群体中的所有个体按照变异概率进行变异操作,同样采用保优原则;

步骤7、对变异操作生成的新群体中所有个体实施退火操作,实现新旧群体的更新;

步骤8、判断是否满足程序终止条件;若不满足程序终止条件,则按照定义的降温方式更度参数T;

如果满足程序终止条件,则终止进化,输出最优解;

其中,适应度函数的设计公式为:

f=SCORE(S1,S2,...,SN)=Σi=2NΣj=1i-1wijscore(Si,Sj)公式中的wij是序列Si和Sj的权值,表好似两个序列的进化关系;权值由系统进化树获得;

算法中的初始种群的选择,退火操作中接受性能较差的后代个体的概率为:其中Δf=fchild-fparent,采用的降温方式为:T=T0generation=1T×(generation-1)/generationgeneration=2.

4.如权利要求2所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:优化的SVM类化分析的实现步骤为:步骤1、计算出样本点到H/~H这个二分类器的最优超平面的距离;

步骤2、计算出样本点到E/~E这个二分类器的最优超平面的距离;

步骤3、计算出样本点到C/~C这个二分类器的最优超平面的距离;

步骤4、选择离H/~H,E/~E,C/~C中最优超平面最远的那个二分类器;

步骤5、若离H/~H最优超平面最远,则进行H/~H、E/C分类;若离E/~E最优超平面最远,则进行E/~E、H/C分类;若离C/~C最优超平面最远,则进行C/~C、H/E分类;

步骤6、进行剩余的工作,预测出样本所属类别;

针对大规模样本集的学习策略:

首先用一个小规模的样本集训练得到一个初始的分类器,然后用这个分类器对大规模训练集进行修剪,修剪后得到一个规模很小的约减集,再用这个约减集进行训练得到最终的分类器,具体的步骤如下:步骤1、从大规模样本集L中随机抽取一个小规模样本集S;

步骤2、然后用小规模样本集S训练得到初始的分类器,小规模样本集的规模依据两个条件来确定:1)保证使用它训练时代价不高;2)保证使用它训练出的分类器有一定的分类精度;

步骤3、用初始分类器修剪大规模样本集L;

步骤4、用约减集训练得到最终的分类器,具体方法是:设初始分类器的分类超平面为H,对于L的任意一个样本s,设s与H的距离为d;若1-ε<d<1+ε,则保留此样本,否则就删除它,其中0<ε<1为可以调整的阈值,阈值的调节具有两个功能:1)控制约减集的规模;2)影响最终的分类器的分类精度。

5.如权利要求1所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:核心判定层中的KDD*挖掘过程包括:

1)数据预处理:对真实数据库中的数据进行再加工,形成发掘数据库,并与所述的基础知识库在基于属性建库的构造下建立对应关系;

2)聚焦:由通过人机交互输入的内容来指导数据发掘的方向;

3)定向挖掘:启发型协调器搜索知识库中“知识结点”的不关联态,计算有向超图的可达矩阵来实现发现“知识短缺”,产生“创见意象”,从而启发与激活真实数据库中相应的“数据类”,以产生“定向发掘进程”,进而用规则强度阈值进行剪枝并由计算机自动完成聚焦;

4)求取假设规则:通过选定的知识发掘法,从发掘数据库中提取用户所需要的知识,并用特定的模式表达所提取的知识,主要通过可信度阈值来实现;

5)实时维护:当从真实数据库的大量数据中经聚焦而生成规则后,中断型协调器则用SQL语言或计算有向超图的可达矩阵,去搜索知识库中对应位置有无此生成规则的重复、冗余、矛盾、从属、循环等;若有,则取消该生成规则或相应处理后返回KDD的“始端”;若无,则继续KDD进程,即知识评价;

6)评价:对实时维护处理后并被选取的规则进行价值评定,将被接受的规则存入衍生知识库;

维护型协调器的主要功能是当从真实数据库的大量数据中经聚焦而生成感兴趣的与具有一定可信度的规则后,使KDD进程产生“中断”,而去定向搜索知识库中对应位置有无此生成规则的重复、冗余与矛盾;若有重复与冗余,则取消该生成规则或冗余规则而返回KDD的“始端”;若无,则继续KDD进程;对于矛盾的处理,采用约束规则的条件与根据其可信度或关联强度来裁决等方法;其主要功能有:1)重复的处理,重复是指两条知识表达方式、内容完全一致,若将重复的知识存入知识库中,必然导致知识库的庞大,从而使得对知识库的操作浪费大量的时间,这是不合理的;为此对重复的知识进行处理,当新知识的可信度大于旧知识的可信度时,则以新知识的可信度代替旧知识的可信度,其它的不变;否则扔掉新知识;2)矛盾的处理,矛盾是指由相同的前提推出相反的结论,或由相反的前提推出相同的结论;3)冗余的处理,冗余是指有些新产生的知识可以由知识库中固有的知识表达出来,像这样的知识都会造成知识库不必要的冗余,因而也必须加以解决;

启发型协调器的功能是在以属性为基础的知识库建库原则下,通过搜索知识库中“知识结点”的不关联态,以发现“知识短缺”,产生“创见意象”,从而启发与激活真实数据库中相应的“数据子类”,以产生“定向挖掘进程”;为了防止“海量定向挖掘”现象的产生,必须规定优先级,以定向挖掘较可信与关联性强的待定规则;

基于双库协同机制,这一构建KDD过程中的数据库与知识库本质联系的认知规律,利用新的知识发现结构模型KDD*,采用Maradbcm算法。

6.如权利要求5所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:启发型协调器算法实现步骤为:步骤1、搜索自关联强度大于某一阈值的语言变量值,形成结点集S;

步骤2、对结点集S中的结点进行组合,形成元组集合;

步骤3、搜索现有知识库,从元组中除去已在知识库中存在的元组;

步骤4、对剩余元组按关联强度排序,给出定向搜索的优先序;

步骤5、按优先级排序,并逐一扫描各元组,聚集到数据库相应入口,进行定向挖掘;并进行KDD进程。

7.如权利要求5所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:维护型协调器算法实现步骤为:步骤1、对挖掘出的知识逐一判断知识的可信度是否大于给定的阈值;若是,则进入步骤2;否则进入下一条知识的判断;

步骤2、对由步骤1得到的知识判断知识是否重复;若是,则转入步骤1;否则转入步骤3;

步骤3、对由步骤2得到的知识判断知识是否冗余;若是,则转入步骤1;否则转入步骤4;

步骤4、对由步骤1得到的知识判断知识是否矛盾;若是,则转入步骤1;否则将知识存入知识库;若所有的知识处理完,则算法终止;否则转入步骤1。

8.如权利要求5所述的一类蛋白质二级结构智能预测模型构造方法,其特征在于:基于KDD*过程模型的Maradbcm算法实现步骤为:设规则强度阈值为Min_Intensity,支持度阈值为Min_Sup,可信度阈值为Min_Con;

步骤1、数据预处理:这里主要是用户选择真实数据库,对于多值属性进行离散化;

步骤2、划分数据子库,依据子库建立数据子类结构,形成挖掘数据库;划分知识子库,依据知识子库建立知识结点,调用过程calculate_reach_matrix产生可达矩阵,从而形成挖掘知识库;

步骤3、调用过程Heuristic_Coordinator(K2)产生K2;

步骤4、m=2;

步骤5、对Km产生假设规则:对Km中的短缺知识ri:e1∧e2∧...∧ep→eq其中ri∈Km,进行定向挖掘,即对数据表table1,table2,...,tablep,tableq进行挖掘,计算Con(ri)和Intensity(ri),如果Con(ri)>Min_Con并且Intensity(ri)>Min_Intensity(ri),则转步骤6;否则,Km=Km-ri,转步骤8;

步骤6、对规则ri应用维护型协调器进行处理;即若Maintenance_Coordinator(ri)==0,则取消该生成规则或相应处理;转步骤8;若无,则转步骤7;

步骤7、对规则ri进行评价;若评价通过则入库;若m==2,调用过程Calculate_matrixl(s,t)(ri:(s→t))来调整超图的可达矩阵;否则调用过程Calculate_matrix2((f1,f2,...,fs),t)(ri:(f1∧f2∧...∧fs→t))来调整超图的可达矩阵;若评价没有通过,则删除该规则;

步骤8、Km是否结束;若结束,当m==2时调用X1(P),否则调用X2(P);调用过程Heuristic_Coordinator(Km,Km+1)来产生Km+1,转步骤9;若没结束,则转步骤5进行下一条规则的处理;

步骤9、m=m+1,若Km=φ或者m>M,其中M为预先给定的最大长度,转步骤10;否则,转步骤5;

步骤10、显示新产生的规则;

步骤11、结束;

过程calculate_reach_matrix

步骤1、知识库中所有的知识素结点的ID号,1,2,...n,组成一个矩阵Pn×n,用一个二维数组来表示Pn×n,其元素均为0,即P(i,j)=0,其中i,j=1,2,...,n;

步骤2、e:=1;

步骤3、读取知识库中第e条长度为2的规则re:pi→pj;

步骤4、矩阵P(H)的元素P(i,j)=1;

步骤5、Calculate_matrix1(j,i,n);//调用过程Calculate_matrix1步骤6、知识库中长度为2的规则是否读完?若没读完,则e:=e+1,转步骤3;否则转步骤7;

步骤7、e:=1;

步骤8、读取知识库中的第e条长度大于2的规则re:pf1∧pf2∧...pfj→pi;

步骤9、Calculate_matrix2((f1,f2,...,fj),i);//调用过程Calculate_matrix2,步骤10、知识库中长度大于2的规则是否读完?若没读完,则e:=e+1,转步骤8;否则结束;

过程X1(P)

步骤1、for i:=0 to n//可达矩阵的列数

步骤2、for j:=0 to n//可达矩阵的列数

         if(P(i,j)==1)Km=Km∪{i→j};

过程X2(P)//带有结点的规则

步骤1、for i:=n+1 to T//T为可达矩阵的行数

步骤2、for j:=0 to n//可达矩阵的列数

        if(P(i,j)==1)Km=Km∪{i→j};

过程Calculate_matrix1(j,i,n:integer)步骤1、for k:=1 to n

       P(j,k):=P(j,k)∨P(i,k)

步骤2、for m:=1 to n

         If P(m,j)=1 then

         for k:=1 to n

                P(m,k):=P(m,k)∨P(j,k)Procedure过程Calculate_matrix2((f1,f2,...,fj),i)//(j>1)步骤1、若虚结点pf1∧pf2∧...pfj不存在,则可达矩阵的后面加一行表示该结点步骤2、P(pf1∧pf2∧...pfj,i)=1;

步骤3、for s:=1 to n

P(pf1∧pf2∧...pfj,s):=P(pf1∧pf2∧...pfj,s)∨P(i,s)过程Procedure Heuristic_Coordinator(K2)该程序模块用以产生所有长度为2的短缺知识;

步骤1、把可达矩阵从数据表ReachMatrix中读出,把support(pi)>min_sup的知识素结点与全部知识合结点存入数组P中;

步骤2、K2=φ;

步骤3、for i:=0 to n//可达矩阵的列数

for j:=0 to n//可达矩阵的列数

if(P(i,j)=0 and attr(pi)≠attr(pj)and support(pipj)>min_sup)//attr(pi)为知识素结点pi所对应的属性,相同属性的不同程度词不能出现在同一规则中,对i,j对应的数据表tablei,tablej进行挖掘计算support(ri)K2=K2∪{i→j};

过程Procedure Heuristic_Coordinator(Kx-1,Kx),该程序模块用以由长度为x-1的短缺知识产生所有长度为x(x>2)的短缺知识;

步骤1、Kx=Ф;

步骤2、对于Kx-1中任意两规则fi1∧fi2∧...∧fix-1→j和gi1∧gi2∧...∧gix-1→i,若fi1=gi1,...,fix-1=gix-1且j≠i,则Kx=Kx∪{fi1∧fi2∧...∧fix-1∧i→j,fi1∧fi2∧...∧fix-1∧j→i};

步骤3、对所有ri∈Kx;

步骤4、若support(ri)<=min_sup,则对ri对应的数据表table1,table2,...,tablep,tableq进行挖掘;计算support(ri)

步骤5、Kx=Kx-ri。

说明书 :

技术领域

本发明涉及蛋白质二级结构预测技术,特别涉及一种基于合成金子塔模型(CPM,Compound Pyramid Model)的智能预测技术,具体说是一类全新的逐步求精、多层递阶的蛋白质二级结构预测模型-合成金子塔模型构造技术。

背景技术

一、蛋白质结构预测技术:
蛋白质结构预测是后基因组时代的一项重要任务。20世纪末至今,分子生物学和生物信息学(Bioinformatics)领域取了长足进展,人类基因组计划目前已基本完成对人类基因序列的测定工作,进而跨入后基因组时代。由于普遍认为蛋白质的结构决定其功能,同时蛋白质序列数据的飞速增长使已知的蛋白质序列和已知的蛋白质结构之间的差距不断增大,蛋白质的结构测定成为分子生物学和生物信息学领域最为关注的问题之一。
蛋白质是20种DNA编码的L型α氨基酸构成的具有空间构象和生物功能的大分子。人类对蛋白质的研究始于19世纪,对其认识历史是曲折的,期间出现过大量的错误理论,即使到今天人们对那些存在于生物体内的成千上万种功能和结构各异的蛋白质的认识还不够深刻。1952年丹麦生物化学家Linderstrom-Lang提出蛋白质一级结构、二级结构和三级结构的概念,才使蛋白质结构走上了正确道路。蛋白质的一级结构一般指构成蛋白质肽链的氨基酸残基的排列顺序,是蛋白质最基本的结构。它是由基因上遗传密码的排列顺序所决定的,各种氨基酸按遗传密码的顺序通过肽键连接起来。每一种蛋白质分子都有自己特有的氨基酸的组成和排列顺序。是一个没有空间概念的结构;这种氨基酸排列顺序决定它的特定的空间结构,也就是蛋白质的一级结构决定了蛋白质的二级三级等高级结构,这就是荣获诺贝尔奖的著名的Anfinsen原理。氨基酸在空间折叠为一定的三维空间结构,包括二级结构、三级结构,统称为蛋白质的高级结构。二级结构也称构象单元,是蛋白质复杂空间构象的基础,是多肽链骨架在局部形成的结构单元(DSSP方法将蛋白质二级结构分为H(α螺旋),G(310螺旋),I(π螺旋),E(扩展的β折叠),B(单个的β折叠),T(转角),S(bend)和coil(无规卷曲)共8种,二级结构预测问题中一般将转换为3类:H,G H;E,B转换成E;其他的转换成C。也即H代指α螺旋,E代指β折叠,C代指转角环形等)。这些构象单元在所有的蛋白质中普遍存在。不同数目、不同尺寸的二级结构和其它无规则段以不同的方式排布连接成完整的蛋白质空间结构,即蛋白质的三级结构。
蛋白质的三级结构预测大致有两种路线:其一是由蛋白质的一级结构直接预测;另一种是先根据蛋白质的一级结构预测二级结构,然后在二级结构的基础上再预测三级结构。由于沿后一种路线的研究,同时探索一二级与二三级之间的影响,可以揭示更深层次的生物学问题。因此,采用后一种路线将更具有理论意义。对这种路线,蛋白质的二级结构预测承上启下,起着关键性的作用。
蛋白质二级结构是确定蛋白质三维结构构象的重要一环。目前测定蛋白质二级结构的方法主要分为两类:其一是通过硬件手段,如X光射线、核磁共振与红外线方法;其二是利用多种智能算法对蛋白质二级结构进行预测。前者的优点是结果精确,缺点是消耗的物资、人力与时间都非常多,存在诸多局限。于是迫切需要一种不依赖晶体培养等而又简便易行的预测蛋白质结构的模型与方法。由此基于计算机程序的蛋白质二级结构预测已成为后基因组时代的一项重要任务。
基于计算机程序的蛋白质二级结构预测研究已经有30多年的历史,归纳各种不同的预测方法,大致可以分成三类:1)基于机器学习的方法(如SVM方法);2)使用多序列排列信息的方法(如BLAST方法);3)使用规则和统计结合的方法(如ILP方法,Chou-Fasman方法等)。然而近年来,蛋白质二级结构预测研究进展缓慢,虽然通过将机器学习与数据挖掘技术引入蛋白质结构预测中等教育取得了一定成果,然而预测精度一般较低(低于80%);同时当前所建立的模型与方法,无法完成揭示序列与空间构象的关系,成为本世纪初分子生物学和生物信息学领域中国际性的一大难题。
二、集成与混合预测模型技术:
目前在基于计算机程序的蛋白质二级结构预测领域,存在三大主流方法:基于机器学习的、多序列排列信息的以及使用规则和统计结合的方法。正如前文所述,这些方法都假定蛋白质的二级结构主要是由临近残基间的相互作用所决定的,然后通过对已知空间结构的蛋白质分子进行分析和归纳,制定出一套预测规则,并根据这些规则对其它结构未知的蛋白质分子的二级结构进行预测。这些方法各有侧重,多数方法只能在一小部分蛋白质中获得令人满意的预测准确度,普适性较弱,因此难以推广应用。
在最近的研究中,混合预测模型(Hybrid Prediction Model)与集成预测模型(EnsemblePrediction Model)被广泛应用于金融、生物、电信等多个领域。相对一般预测模型,混合预测模型与集成预测模型综合优化多个单一预测模型的结果,使预测结果的准确度大大超过单一模型。两者的区别在于:混合预测模型一般使用多类预测方法,而集成预测模型中只采用一种预测方法。
最近的研究结果表明:混合预测模型与集成预测模型通常可以获得更优的预测准确度,吸引了一些生物信息学家的注意,并建立了一些混合预测模型,如HYPROSP模型等。这些模型在一定程度上,提高了预测精度,一般可提高至80%左右,但仍然存在稳定性差的不足。然而这些方法的设计要不没有考虑各种方法结果的有机结合,要不没有结合氨基酸物化属性等领域知识,这些不足严重局限了模型整体预测精度。这主要是由于这些方法基本采用单一方法多次复用的形式,或利用神经网络对多方结果合成的形式,由于这类方法在整体设计中未考虑方法的层次链接,因此不能有效利用各个独立的预测子模型,合成金字塔模型则利用层次间的智能接口将各种子模型与方法有机融合,充分发挥各个预测子模型以及数据挖掘为主体的方法群的优势,使整体效果达到最优。
三、数据挖掘技术:
自二十世纪六十年代中期至今,在蛋白质二级结构预测的研究中,迫切需要提出一种新的、精度更高的预测模型与方法。由于数据挖掘(或知识发现)在处理海量数据方面具有得天独厚的优势,而且知识发现领域在处理生物序列信息和预测方面已有一些较为成熟的技术,故越来越多的学者逐渐利用数据挖掘的技术方法研究蛋白质的结构预测问题并取得了一定成果。
数据挖掘(知识发现)是国际学术前沿多学科交叉的新兴边缘学科,它是指从海量信息中发现新颖的、潜在有用、最终可被用户理解的知识。它融合了人工智能、机器学习、模式识别、统计学、数据库、计算机网络、自然语言处理等众多学科的内容,它是针对生成收集数据的能力迅猛发展,而对信息的处理仍然采用数据统计等传统的方法,这一矛盾而产生的,并迅速发展起来的。
通过数据挖掘(KDD,Knowledge Discovery in Database)过程,感兴趣的知识或高层信息可以从数据库相关数据集中抽取出来并从不同角度进行研究。目前绝大部分KDD的算法没有将KDD作为认知的复杂系统对其内在的规律性加以研究,且都没有深层次地考虑知识库,挖掘出来的许多假设规则与知识库中的已有知识是重复的和冗余的,甚至是不相容的,并且仅靠人机交互形成聚焦,而没有体现系统自身的认知自主性,因此对KDD定义中要求的新颖性和有效性就无法体现出来。为此,KDD*过程模型从知识发现、认知科学与智能系统交叉结合的角度,提出了双库协同机制。构建了将KDD与双库协同机制相结合的KDD*过程模型,从而改变了KDD固有的运行机制,在结构与功能上形成了相对于KDD而言的一个开放的、优化的扩体。双库协同机制的引入使得KDD在功能上得到了进一步的完善,KDD*过程模型的结构图如图1所示。

发明内容

一、本发明的目的在于,提供一类全新的逐步求精、多层递阶的蛋白质二级结构智能预测系统模型——合成金字塔模型构造技术,其集成与混合了由多种属原创型、新型与改进型方法组成的方法群,用以克服现有的蛋白质二级结构预测方法的不足,提高整体预测精度。
回顾蛋白质二级结构预测的发展,我们可以看到其预测精度长时间徘徊不前的主要原因是:1)目前的预测方法的实验色彩较浓,缺乏坚实的理论基础;2)除同源性信息外,绝大多数领域知识没有得到充分的利用;3)混合方法是未来发展的主流,但不同方法之间如何协同工作,优势互补,尚有待进一步的深入研究。同时发现其预测精度的每次大幅度提高的背后,都有预测模型与方法的质的变化。
本发明提出一种全新的逐步求精、多层递阶的智能预测系统模型——合成金字塔模型构造技术。该模型融合了原创型Maradbcm算法(基于KDTICM理论的KDD*过程模型的)、新型同源性分析方法、改进型CBA方法、SVM方法等多种方法。通过实验发现:合成金字塔模型及其集成与混合的各种方法,能够很好地对偏alpha/beta型蛋白质的二级结构进行预测,其中的关联分析模块在提高预测精度的同时,也在一定程度上揭示了氨基酸物化属性对蛋白质二级结构空间构象的影响关系。
二、本发明的技术方案为:一类逐步求精、多层递阶的智能预测系统模型构造技术,其模型由以下四个方法层构成。综合分析层;辅助判定层;核心判定层;结果优化层。
合成金子塔模型CPM各个层次各有侧重、功能独立且通过智能接口紧密衔接,故合成金字塔模型具有相对传统预测方法更高的预测准确度,同时具有更好的普适性,其模型架构如图2所示。
合成金子塔模型利用多层递阶的结构模型集成与混合了由多种属原创型、新型与改进型方法组成的方法群来预测蛋白质二级结构;合成金子塔模型CPM各个层次各有侧重、功能独立且通过智能接口紧密衔接,故合成金字塔模型具有相对传统预测方法更高的预测准确度,同时具有更好的普适性;CPM包括:综合分析层、辅助判定层、核心判定层、结果优化层;
1)综合分析层:本层综合了新型同源性分析与优化的SVM类化分析,其中同源性分析:在多序列匹配阶段,采取基于退火进化的多序列匹配算法,使得比对的结果具有更强的生物敏感性;在模型构建阶段,利用持续的双向隐马尔可夫模型和神经网络的混合建模方法;其中优化的SVM类化分析:在SVM方法的改进中,采取轮转策略,即构造H/~H,E/~E,C/~C,H/E,H/C,E/C这六个二分类器,根据样本与这些超平面的距离对目标样本判定;同时使用采样集建立模型,进而修正的策略;
同源性分析方法基于序列结构,SVM类化分析方法针对氨基酸物化属性,因此本层同时综合了结构序列分析与物化属性分析结果,打破了传统的单一性分析的研究线路;
2)辅助判定层:本层采用优化的SVM二分类方法,以及基于KDD*过程模型的Maradbcm算法,对C库挖掘所得的关联规则集为基础的关联分类算法;其中由于现实中C结构(转角、环形等结构)存在较少,且PDB数据库无法收集高纯度的训练数据,因此模型以人工选取的方式对C数据库进行构造,具体方式为对RS126数据集分割窗口化,收集中间残基结构为C的记录组合而成;在此基础上,在KDD*过程模型的作用下,获得分类效果较好的规则集,该集合可有效分离数据中的C结构,以最大程度避免向核心判定层引入该结构,避免精度衰退;
3)核心判定层:本层的核心方式是原创性的基于KDTICM理论的KDD*模型与Maradbcm算法,以及改进的关联规则分类CBA(Classification Based on Association)方法;该层的主要特征包括两方面:其一不单单使用可信度这个单一的度量,而是使用可信度与支持度的测度来作为一个复合型度量;其二根据蛋白质生物数据的特性,放弃了使用通用数据库来生成规则,而使用内容分别相对偏向alpha、beta的蛋白质库;此两个数据库是以CATH分类为基础,以同源性小于30%为条件,选择α型、β型的蛋白质而构成;利用基于KDD*模型的Maradbcm算法对纯度较高的α蛋白质库与β蛋白质库进行关联规则的挖掘,由此获得的挖掘结果是精化的规则;其在保证本层预测精度的同时,为生物学家对二级结构折叠的进一步分析提供了依据;
4)结果优化层:本层主要设计倾向性因子、位能函数及合情推理三类方法,前两类方法属于生物信息学固有方法,其主要利用生物信息背景知识进行结构预测;合情推理方法是建立在各种二级结构具备的不同物化属性规律的基础上的;三种方法从不同角度对其下三层的结果加以优化,以最大程度地提高整体预测精度。
值得注意的是,CPM利用基于知识发现的因果细胞自动机,结合内在机理,在氢键概率、炭环、疏水性、带电性、残基大小、脂肪、电量等物化属性中,最终选择与二级结构最为相关的氢键概率、疏水性、带电性、残基大小4个属性作为主要因素集,从而进行了参与物化属性的约简,降低了模型整体构造与算法的复杂性。
三、本发明技术方案的特征与优势:由所构造的合成金子塔模型的各层功能与方法的分析可知,具有以下特征与优势:
1)合成金字塔模型具有多层递阶、逐步求精和多维预测模型方法相融合的体系结构。
2)合成金字塔模型以数据挖掘(知识发现)为主体,构成了高内聚、低耦合的紧密协同、相互融合、无缝对接的方法群系统,分布与贯穿于整体模型的架构中。同时根据各层特定的功能需求与问题环境采用原理和特性各异的算法,以达到整体最优的效果。其中采用了基于发明人独立提出的原创性理论KDTICM涵盖的KDD*过程模型与Maradbcm算法,后者挖掘意外规则的特性对构造高准确度的关联分类器形成有效支撑;另外,采用了新型同源性分析方法、改进型SVM方法和CBA方法等。
3)打破了传统的单一物化属性分析或单一结构序列分析的技术线路,而是采取了结构序列分析与物化属性分析相结合的优选线路,确保了模型整体的优化与预测精度。
4)合成金字塔模型的辅助判定层与核心判定层的构造中,均以高纯度的训练数据为基础数据库(分别简称为α库、β库、c库)进行挖掘,打破了传统的从原始数据库直接进行挖掘的作法。这种“高起点”的作法,从本质上讲是对原始数据进行了预处理,确保了挖掘的精度与算法运行的简洁度.
5)合成金字塔模型整体架构贯穿了领域知识与背景知识。其各层的设计构造中均加入长程、全局以及进化信息;特别是在结果优化层中,引入传统生物信息学中的倾向性因子、位能函数等方法,这些信息与方法均源于蛋白质空间构象的领域知识。
6)合成金字塔模型采用独立提出的“因果细胞自动机”探究机理,对氨基酸各个物化属性与蛋白质二级结构空间构象的因果关系进行分析,形成了“蛋白质结构因素因果关系图”,在此基础上确定与蛋白质二级结构最为相关的重要物化属性,确保了模型整体的准确度与效率。
四、本发明技术方案的逻辑必然性分析:合成金字塔模型中各个层次功能独立,但同时紧密衔接,构成了一类逐步求精、多层递阶和多维预测模型方法相融合的体系结构。
其构建的初始点是采用决定其空间构象的结构序列分析与物化属性分析相结合的双重“选举”的技术路线,即以综合分析层作为基础,基本完成对部分特征明显的待测氨基酸二级结构的预测;其准确率通常可以达到90%以上,该层较高的预测精度是模型整体预测精度的重要保障。
辅助判定层与核心判定层,是合成金字塔模型中最为重要的部分。由于综合分析层只能对结构特征最为明显的部分氨基酸二级结构进行有效判定,因此留待辅助判定层与核心判定层解决的氨基酸通常不具备明显的结构特征,进而要求更为复杂、更高约束强度的方法来判定之。前者的任务是,强化综合分析层没有确定的预测结果,特别是涉及转角环形(Coil)的待预测氨基酸,经过SVM单分类及基于C库的CBA方法的双重校验,保证最少的转角环形被输送到核心判定层;后者的主要任务是预测结构特征最不为明显的氨基酸二级结构,虽然一般来讲这部分氨基酸数量相对较少,然而由于结构特征不明显,采用序列比对、同源性分析等方法很难获得较好的预测结果,因此合成金字塔模型另辟蹊径,利用基于KDD*模型的M算法,对α/β库进行挖掘,由于α/β库的构建采用了高纯度的方法,并且M算法本身具有挖掘意外规则的优势,因此挖掘所获得的关联规则集是精华的,即其区别于一般关联规则挖掘结果,该规则集具有较高的支持度与可信度,为关联分类奠定了较为坚实的基础。
结果优化层在合成金字塔模型中起到延伸与辅助的作用。由于其采用了合情推理、位能函数与倾向性因子等方法,可对尚难判定的构象加以判定,并对已得的预测结果进行修正,这是获得更高精度和全局优化的必由之路。由于这些方法内聚的知识是其它方法难以获得的,因此可以与其它三层形成有效互补;
上述分析说明:合成金子塔模型的构建完全符合系统论原理,其结构的合理性、协同性与优化组合性是十分明显的,是内在逻辑发展的必然。

附图说明

图1为KDD*的总体结构图;
图2为合成金字塔模型总体结构图;
图3为知识子库与数据子库的对应结构图,给出了知识子库中“知识结点”与相应数据子库中“数据子类结构”中的层之间的一一对应关系;
图4为同源分析的持续隐马尔可夫模型图;其中,三个椭圆表示三个隐藏状态,数字1,2,3与其后面括号中的状态相对应,后面的整数dm表示该状态持续的长度为m,即i,j,k可取整数1,2,3...。箭头表示状态转移方向,aij表示状态转移概率。
图5为SVM分类器的H/~H,E/C构造结构图;
图6为SVM分类器的E/~E,H/C构造结构图;
图7为SVM分类器的C/~C,H/E构造结构图;
图8为KDD*挖掘过程示意图;
图9为问题推理过程流程图;
图10为KDD*挖掘过程流程图;

具体实施方式

一、理论基础:
1、知识表示方法-语言场与语言值结构
定义1:C=,若满足下列条件:
(1)D为基础变量论域R上交叉闭区间的集合,D+为其对应开集;
(2)N≠Φ为语言值的有限集;
(3)≤N为N上的全序关系;
(4)I:N→D为标准值映射,满足保序性,即:n2∈N(n1≠n2∧n1≤N n2→I(n1)≤I(n2)),(≤为偏序关系);则称C为语言场。
定义2:对于语言场C=,称F=为C的语言值结构,如果:(1)C满足定义1;
(2)K为自然数;
(3)W:N→Rk满足:
n2∈N(n1≤N n2→W(n1)≤dicW(n2)>,
n2∈N(n1≠n2→W(n1)≠W(n2))。
其中,≤dic为[0,1]k上的字典序,即(a1,...。,ak)≤dic(b1,...。,bk)当且仅当存在h,使得当0≤j<h时aj=bj,ah≤bh。
2、挖掘库与知识率之间泛同伦关系的建立:
1)知识结点:
定义3:在相关于论域X的知识子库中,称按如下形式表达的知识为不确定性规则型知识:
(1)P(X)Q(X)
(2)
(3)
(4)
其中P(X),Pi(x),Q(X),Qj(X)分别为“属性词”(或“状态词”)+程度词”的形式。定义4:在定义3中,P(X)与Pi(x)称为知识始结点,Q(X)与Qj(X)称为知识终结点,并分别称为知识素结点;,,分两者统称为知识结点。
2)数据子类(结构):
定义5:对于论域X,在相应于知识子库的数据子库中,与每个知识素结点相应的结构S=称为数据子类结构。其中,U≠Φ,U={u1,u2,...},(ui是数据集,由下述的I形成),它是在特定的语言场与语言值结构下,表征相应于知识素结点“属性词”或“状态词”的数据集的类(称为数据子类);N≠Φ为语言值的有限集,它是刻划相应于知识素结点“程度词”的语言值的集合;
I:N→U,它是按语言值将数据集的类U进行划分的映射。在数据连续分布时,通常划分为若干交叉区间(即:
W:N→[0,1]K(k为正整数)满足:
n2∈N(n1≤N n2→W(n1)≤dicW(n2)),
n2∈N(n1≠n2→W(n1)≠W(n2))。
3)“知识结点”与“数据子类(结构)”的关系:
定义6:设X与Y是任意的拓扑空间,称连续映射

F:为X到Y的映射的泛同伦。(通常意义下同伦概念的扩展)。
定义7:设f,g为从拓扑空间X到Y的连续映射,若存在泛同伦F(x,t)=ft(x),使得对于任意点x∈X均有f(x)=F(x,(0,...,0)),g(x)=F(x,(1,...,1)),则称g泛同伦于f,并称F为连续映射f与映射g的泛同伦,记作f~g。
定义8:设给定两个拓扑空间,若至少存在一个空间到另一个空间的一个泛同伦等价的映射,则称这两个空间为同一泛同伦型的空间。
由上述分析可知:在把一个空间换成同一个泛同伦型的空间时,泛同伦类集合的结构并无改变,所以在同伦理论里,可以把同一泛同伦型的空间看做是相同的。给出了知识子库中“知识结点”与相应数据子库中“数据子类结构”中的层之间的一一对应关系,如图3所示。
3、广义细胞自动机
定义9:在离散化的欧几里德时空条件下,Ц=称为细胞自动机。其中,U是状态空间U,其元素u称为状态;T是时间序列,其元素t称为时刻;E是细胞集合,其元素e称为细胞(即空间区域);是映射集合,元素E*T□U称为赋态映射。
定义10:∏=<Ц,□>称为因果细胞自动机,若因果必然性规律满足下列三个条件:
(1)有限变化原理-自然界的因果必然性规律是构筑在适于描述任何时空区域的有限集合基础上,每个时空区域都可作为这些性质的描述对象;
(2)因果存在性原理-规律支配某时空区域,则对自动机大部分区域也适用(适于似决定论的细胞自动机);
(3)因果一致性原理-该规律不仅适于某时空区域,而且适于整个细胞自动机,即整个可达性时空区域(适于决定论的细胞自动机);
定义11:归纳逻辑因果模型是满足下列条件的语义结构X=
(1)S=(Sa,S1,......SM),Si为受因果必然性规律所支配的可能的因果世界,Sa为现实的世界;Si=(Vi1,Vi2,......),Vij表示组成Si的不同的历史,每个历史是不同时空段的世界。
(2)∏是满足定义10的因果细胞自动机;每个可能的因果世界都用相应的因果细胞自动机来描述。
定义12:Γ*=<∏*,→>称为广义细胞自动机,若因果必然性规律满足定义10,和下述条件:
(1)因果状(变)态原理-在连续、渐变的因果联系过程中,对于任意样本空间而言,细胞e在时刻t′的所有可能的状(变)态(作为结果)必然是由前一时刻t细胞e的邻域N(e)取“正”(如语言值“小”)与“反”(如语言值“不小”)两类状态作为原因所导致的。
(2)(变态与状态转换原理)当原因与结果所取变态与状态的语言场同构时,对于因果变态联系的规律同样适用于因果状态联系的规律,反之亦然。
4、知识短缺
启发型协调器的功能是模拟“创见意象”这一认知心理特征,从而实现系统自身发现知识短缺(短缺知识就是知识库中到当前为止还没有的知识)。在经典KDD进程中,系统的聚焦通常是由用户提供感兴趣方向,大量数据中的潜在有用的信息往往被用户忽略。为帮助KDD尽可能多的搜索到对用户有用的信息,以弥补用户或领域专家自身的局限性,提高机器的认知自主性,我们构造了启发型协调器。这样,知识发现系统在原有的用户聚焦的基础上,又增加了系统自身提供聚焦方向的功能。
那么何为“知识短缺”呢?我们要做如下的限定:
(1)短缺知识只考虑单个后件的规则;
(2)同一属性的属性程度词不同时出现在同一规则的前件和后件中;
(3)根据具体问题确定短缺知识最多的前件个数,因为前件个数过多势必造成规则难于理解。
(4)对某条规则e1∧e2∧...∧em→h,其规则长度为m+1:
(5)如果知识库中已有了A→B和B→C,则规则A→C就不是短缺的知识。
如何发现“知识短缺”呢?如果知识库中只考虑单前件和单后件的知识,我们可以把规则的前件和后件看作图的顶点,利用图论中求解可达关系的方法来发现“知识短缺”。但知识库中的规则很多都具有多个条件,为此,我们定义了有向超图来解决这个问题。
定义13:一个超图是一个二元组,其中V={p1,p2,...pn}是一个非空集合,它的元素称为有向图的顶点;E={e1,e2,...,em}是超边的集合,其中任意的ei(i=1,2,...,m)都是V的一个子集。
定义14:一个有向超图是一个二元组,其中V={p1,p2,...pn}是素知识结点的集合作为图的顶点,E={e1,e2,...,em}是知识库中规则所对应的有向边。如一条规则ri=p1∧p2∧...∧pk→pj,则有向边ei=<(p1,p2,...,pk),pj>是一个序偶,其第一个元素是V的一个子集,与规则的前件相对应,其第二个元素是V的一个元素,与规则的后件相对应。
定义15:我们称与同一条超边关联的顶点互相邻接;若两条超边有一公共顶点,则称这两条有向超边邻接。
我们使用关联规则的支持度(support)的概念来描述规则强度的客观方面。即规则A→B的支持度是数据库事务的集合中同时包含A和B的百分比。
定义16:感兴趣度(interestingness)是指对数据库中的各属性或属性程度词的感兴趣程度,也就是用户对知识库中知识素结点的感兴趣程度。在预处理阶段,首先由用户给出每个属性程度词的感兴趣度,即对知识素结点ek的感兴趣程度,记为Interestingness(ek),其值域为[0,1],该值越大,说明用户对该知识素结点越感兴趣。对于知识合结点F=e1∧e2∧...∧em,其感兴趣度为各知识素结点的感兴趣度的平均值,即
Interesting(F)=Σi=1mInterestingness(ei)/m
对于一条规则ri:F→h,它的感兴趣度为
Interestingness(ri)=[Σi=1mInterestingness(ei)+Interestingness(h)]/Len(ri)
其中,Len(ri)是规则ri的长度。
定义17:规则强度(Intensity)包含对规则的客观的支持度和主观的感兴趣度两方面。对规则ri:F→h,其规则强度为
Intensity(ri)=[Interestingness(ri)+support(ri)]/2
规则强度同时考虑了主观和客观两方面。一方面,即使支持度较小,只要用户对该规则特别感兴趣,则规则强度就不会太小,从而该知识还可以被聚焦;另一方面,如果用户对某一规则不太感兴趣,只有该规则具有很高的支持度才有可能被聚焦。
维护型协调器的功能是模拟“心理信息修复”这一认知心理特征,从而实现知识库的实时维护。由于维护型协调器对KDD过程的介入,可以在对于重复性、矛盾、冗余性给予准确定义的基础上,利用超图等理论工具,实时地、尽早地将重复、矛盾、冗余的知识进行处理,从而做到只对那些有可能成为新知识的假设进行评价,最大限度地减少了评价工作量;同时,可对知识库进行实时维护。在实际的专家系统中,最终成为新知识的假设占原假设的比例是很小的,大量假设会是重复和冗余的,因此维护型协调器的引入将提高KDD的效率。在这里,首先给出知识重复、矛盾和冗余的定义,然后给出维护型协调算法。
定义18:若在可达矩阵中p(fi1,fi2,...,fis),j)=1,则称知识R:fi1∧f12∧...∧fis→j是重复的。
定义19:知识R:fi1∧fi2∧...∧fis→j是矛盾的当且仅当在知识库中存在一个知识T:fi1,fi2,...,fis→i且attr(pi)=attr(ps)。
定义20:知识R:fi1∧fi2∧...∧fis→j是冗余的当且仅当在知识库中存在一个知识T:fi1,fi2,...,fis→i和知识K:i→j。
二、本发明的具体技术方案:
金子塔模型是一种全新的逐步求精、多层递阶的预测系统模型,其集成与混合了由多种属原创型、新型与改进型方法组成的方法群。其模型共有四层,分别为综合分析层、辅助判定层、核心判定层、结果优化层,每层中集成了多个方法。其中综合分析层中集成了同源性分析与优化的SVM类化分析;辅助判定层中层采用优化的SVM二分类方法,以及基于KDD*过程模型的M算法;核心判定层是原创性的基于KDTICM理论的KDD*模型与M算法,以及改进的关联规则分类CBA方法;结果优化层主要设计倾向性因子、位能函数及合情推理三类方法。
下面分别论述合成金子塔模型中各层次主要涉及的具体技术的实现方案:
1、新型同源性分析技术实现方案:
新型同源性分析,它有两个步骤组成:首先在已知结构的蛋白质数据库中寻找与未知结构的蛋白质的同源家族,这个步骤称为多序列匹配过程;然后,根据同源家族建立学习模型,从而预测未知结构的蛋白质的结构,此步骤称为建模过程。在多序列匹配阶段,我们采取基于退火进化的多序列匹配算法,使得比对的结果具有更强的生物敏感性。在模型构建阶段,我们利用持续的双向隐马尔可夫模型和神经网络的混合建模方法。
第一步,多序列匹配过程。根据遗传算法容易导致早熟收敛问题,使得进化无法收敛到最优解的缺陷,而模拟退火具有概率突跳的双向搜索能力,既容易跳出局部极值的陷阱,又能确保搜索的全局优化性的优势,将模拟退火和遗传算法结合,提出了基于退火进化的多序列比对算法,提高了全局和局部意义上的搜索能力和效率,使二者在性能上互补长短。
基于退火进化的多序列比技术实现步骤:
步骤1、设置遗传算法以及退火过程中涉及到的各控制参数、包括群体规模、交叉概概率、初始温度和退火迭代次数等;
步骤2、初始化程序中的各个变量;
步骤3、生成初始群体;
步骤4、选择被复制而直接进入下一代或参与交叉操作的个体;
步骤5、对选择的个体按照交叉概率实施交叉操作,生成新群体,并采用保优原则,成的新个体目标函数值大于当前最优解,则新个体替换为当前最优解,否则保持不变;
步骤6、对新群体中的所有个体按照变异概率进行变异操作,同样采用保优原则;
步骤7、对变异操作生成的新群体中所有个体实施退火操作,实现新旧群体的更新;
步骤8、判断是否满足程序终止条件。若不满足程序终止条件,则按照定义的降温方式更度参数T。
如果满足程序终止条件,则终止进化,输出最优解。
其中,适应度函数的设计公式为:
f=SCORE(S1,S2,...,SN)=Σi=2NΣj=1i-1Wijscore(Si,Sj)
公式中的wij是序列Si和Sj的权值,表好似两个序列的进化关系。权值由系统进化树获得。
算法中的初始种群的选择,退火操作中接受性能较差的后代个体的概率为:其中Δf=fchild-fparent,采用的降温方式为:
T=T0generation=1T×(generation-1)/generationgeneration=2
第二步:模型建构过程。持续双向隐马尔可夫模型与神经网络的混合建模。在常规方法中利用标准双向隐马尔可夫模型与神经网络的混合建模方法有其自身的弊端,即模型中参数快速增长。我们采用的是持续的隐马尔可夫模型与神经网络的混合建模方法。
在用经典的HMM建模时,隐状态序列Q=q1q2...qT被假设遵循一条Markov链,根据Markov链的特性,其反向转移概率
P(qt=Si|qt+1=Sj)=P(qt+1=Sj|qt=Si)·P(qt=Si)P(qt+1=Sj)
一般来说将依赖于时刻t,从而不再是常数,即Markov链的反向将不再是Markov链,但考虑到蛋白质结构的双向依赖关系,对反向序列Q=qTqT-1...q1也建立一个对称Markov链,在训练反向HMM时,将普通HMM的起始状态变为终止状态,把终止状态变为起始状态,并且所有状态转移的方向均反向,对每一个蛋白质训练序列,从该链的右端开始采用前向算法与Viterbi算法逐位点向左训练,直到达到序列的最左端从而完成一次迭代训练。这样训练得到的HMM为蛋白质结构预测的反向HMM模型,它包含了影响结构形成的反向依赖信息。为了使正向依赖信息和反向依赖信息相互补充,正反向HMM模型相结合的方法为:分半搜索法。即在预测蛋白质结构时,分别针对正反向HMM进行正反两次Viterbi搜索,其中,对正向HMM进行从左到右的正向搜索,它利用了蛋白质位点的上游信息;对反向HMM进行从右到左的反向搜索,它利用了蛋白质位点的下游信息,使用这种对分搜索法,获得最终的预测结果。
在分半搜索方法中,首先要基于正向HMM进行正向Viterbi搜索,这时要记录下“状态-时钟”网格中每一节点的正向概率gi(t)以及相应的路径回溯信息BPLi(t);其次,要基于反向HMM进行反向Viterbi搜索,同样,记录下对应于时刻t及状态i时的反向概率及其回溯路径BPRi(t)。
设蛋白质序列长度为T,状态数为N,则所有正向概率形成矩阵G=(gi(t))N×T,所有反向概率形成矩阵H=(hi(t))N×T,其中,1≤i≤N,1≤t≤T。令fi(t)=f(gi(t),hi(t))表示gi(t)和hi(t)的某种符合关系,于是在某个时刻t及状态i,gi(t)表示了从左边起点开始,由正向依赖关系决定的最佳局部路径BPLi(t)的概率,hi(t)表示了从右边起点开始,由反向依赖关系决定的最佳局部路径BPRi(t)的概率,而fi(t)则表示了从左端点到右端点,且必须经过“时刻t,状态i“结点的最佳路径的概率,它给出了一种在搜索中定量地结合正向、反向搜索信息的有效方法。
最后,将(fi(t))N×T中最大元素所对应的路径做为最终预测结果的产生概率,即:
f*=fi*(t*)=max1iN,1tTfi(t)
进一步,从BPLi·(t*)和BPRi·(t*)可以恢复出fi·(t*)所对应的完整的一条最优路径,并以此作为最终的预测结果。
令Ot=(o1,t,o2,t,o3,t)表示在给定蛋白质序列下,位点t上的三种二级结构的后验概率分布,在通常的神经网络模型中,使用固定长度的滑动窗口技术,将Ot与其相邻的两侧残基的关系一般表示为如下的函数f*:
Ot=f*(st-L,st-L+1,...,st-1,st,st+1,...,si+L-1,st+L)
其中,窗口长度为2L+1。
在混合模型中,将序列与结构的输入-输出关系表示为
Ot=f(Lt,Rt,Ct)
其中,Lt∈Rm表示位置t左侧的信息,Rt∈Rn表示位置t右侧的信息,Ct∈Rk表示以位置t为中心的信息。
为了控制上述模型中参数快速增长的弊端,我们使用持续的隐马尔可夫模型来模型氨基酸序列的二级结构从而替代上述的HMM。
假设在蛋白质的二级结构中,某一部分恰好有连续d个氨基酸构成一个螺旋区域,也就是某个H结构是由d个氨基酸组成,则在状态序列中体现为某一段是d个H组成。那么在某个氨基酸处于状态H的情况下,后面恰好有d-1个氨基酸同时处于状态H的概率PH(d)应为(aHH)d-1·(1-aHH)。对于状态E和C,计算公式一样,持续的HMM示意图如图4所示。
其中,三个椭圆表示三个隐藏状态,数字1,2,3与其后面括号中的状态相对应,后面的整数dm表示该状态持续的长度为m,即i,j,k可取整数1,2,3...。箭头表示状态转移方向,aij表示状态转移概率。
在该模型下,状态序列A=y1y2...yN变成了持续状态序列A={(y1d1)(y2d2)...(yMdM)},其中(yidi)表示状态yi持续的长度为di,∑di=N。将问题转换为一个具有约束条件的最优化问题,即
Pmax=P(A*|S)=max(y1d1)(y2d2)···(ymdm)P((y1d1)···(yMdM)|S)
约束条件为:Σi=1Mdi=N.
2、优化的SVM类化分析技术实现方案:
在SVM方法的改进中,采取轮转策略,即构造H/~H,E/~E,C/~C,H/E,H/C,E/C这六个二分类器,根据样本与这些超平面的距离对目标样本判定;同时使用采样集建立模型,进而修正的策略。
SVM是支持向量机的简称,是统计学习理论中最年轻的内容,也是最实用的部分,其核心内容是在1992~1995年间由Vapnik提出的。支持向量机用于分类问题其实就是寻找一个最优分类超平面,把此平面作为分类决策面。同时它还通过引进核函数巧妙地解决了在将低维空间向量映射到高维空间向量时带来的“维数灾难”问题。
在合成金子塔模型中,SVM在综合分析层需要进行三分类,再辅助判定层需要进行二分类。SVM在进行多分类时,通常的方法是构造一系列的二分类器,再将这一系列的二分类器以某种方式组合起来,以达到多分类的目的。常见的多分类方法有一类对余类、成对分类、纠错输出编码方法及确定多类目标函数方法等。在此改进并实现了SVM三分类器。三分类器的构造如图5,6,7所示。
SVM三分类器实现步骤:
步骤1、计算出样本点到H/~H这个二分类器的最优超平面的距离;
步骤2、计算出样本点到E/~E这个二分类器的最优超平面的距离;
步骤3、计算出样本点到C/~C这个二分类器的最优超平面的距离;
步骤4、选择离H/~H,E/~E,C/~C中最优超平面最远的那个二分类器。
步骤5、若离H/~H最优超平面最远,则进行H/~H、E/C分类,如图5所示流程;若离E/~E最优超平面最远,则进行E/~E、H/C分类,如图6所示流程;若离C/~C最优超平面最远,则进行C/~C、H/E分类,如图7所示流程。
步骤6、进行剩余的工作,预测出样本所属类别。
针对大规模样本集的学习策略:
尽管支持向量机已被证实是一种很有效的学习机,研究人员力图提高优化问题的寻优速度,但对于大规模样本集特别是在支持向量很多的情形,寻优速度和分类速度还是不太尽如人意。很显然对于小规模的训练集,训练的速度当然会快得多,能不能把大规模训练集的规模降低而同时又不降低分类的正确率呢?我们采用如下的学习策略:首先用一个小规模的样本集训练得到一个初始的分类器,然后用这个分类器对大规模训练集进行修剪,修剪后得到一个规模很小的约减集,再用这个约减集进行训练得到最终的分类器。具体的步骤如下:
步骤1、从大规模样本集L中随机抽取一个小规模样本集S。
步骤2、然后用小规模样本集S训练得到初始的分类器。小规模样本集的规模依据两个条件来确定:(1)保证使用它训练时代价不高;(2)保证使用它训练出的分类器有一定的分类精度。
步骤3、用初始分类器修剪大规模样本集L。
步骤4、用约减集训练得到最终的分类器。具体方法是:设初始分类器的分类超平面为H,对于L的任意一个样本s,设s与H的距离(大于等于零)为d。若1-ε<d<1+ε,则保留此样本,否则就删除它,其中0<ε<1为可以调整的阈值。阈值的调节具有两个功能:(1)控制约减集的规模;(2)影响最终的分类器的分类精度。实际应用中主要是通过调节阈值来得到相对于阈值的近似最优的分类器,这一点通过人工调节并不困难。
这种删减策略抓住了支持向量机的本质,即分类器仅与支持向量有关,与其它向量(样本)无关。通过采用这种修剪策略,留下的样本将是对分类大有帮助的,而删除的样本对分类没有什么帮助,甚至起反作用(如导致过学习反而降低了分类器的精度)。实验结果也证实我们的分析是正确的,采用这种学习策略不仅大大降低了学习的代价,而且这样获得的分类器的分类精度完全可以与直接通过大规模样本集训练得到的分类器的分类精度相媲美,甚至更优(这说明这种策略还具有一定的抑制过学习的作用),同时分类速度也得到大大提高。
3、基于KDD*过程模型的Maradbcm算法技术实现方案:
KDD*挖掘过程示意图如图8所示,包括
1)数据预处理:对真实数据库中的数据进行再加工,形成发掘数据库,并与所述的基础知识库在基于属性建库的构造下建立对应关系;
2)聚焦:由通过人机交互输入的内容来指导数据发掘的方向;
3)定向挖掘:启发型协调器搜索知识库中“知识结点”的不关联态,计算有向超图的可达矩阵来实现发现“知识短缺”,产生“创见意象”,从而启发与激活真实数据库中相应的“数据类”,以产生“定向发掘进程”,进而用规则强度阈值进行剪枝并由计算机自动完成聚焦。
4)求取假设规则:通过选定的知识发掘法,从发掘数据库中提取用户所需要的知识,并用特定的模式表达所提取的知识,主要通过可信度阈值来实现(以挖掘关联规则为例)
5)实时维护:当从真实数据库的大量数据中经聚焦而生成规则(知识)后,中断型协调器则用SQL语言或计算有向超图的可达矩阵,去搜索知识库中对应位置有无此生成规则的重复、冗余、矛盾、从属、循环等。若有,则取消该生成规则或相应处理后返回KDD的“始端”;若无,则继续KDD进程,即知识评价。
6)评价:对步骤5)处理后并被选取的规则进行价值评定,将被接受的规则存入衍生知识库。
图9所示为问题推理过程流程图。
步骤1、使指针指向知识库中的第一条知识;
步骤2、判断知识库是否已经搜索完毕,如还有知识未被检索,则转步骤3;
步骤3、从知识库中将此规则提取出来;
步骤4、根据此规则前提和数据库所支持的该规则的可信度等参数,得到该规则结论的可信度;
步骤5、判断该结论可信度是否大于可信度阈值,如不大于,则转步骤6;
步骤6、取下一条规则,系统执行步骤2;否则如可信,则转步骤7;
步骤7、使该结论作为新事实放入数据库中,如果该结论已经在数据库中了,根据可信度计算模型重新计算新的模型,并从知识库中删除知识R,并转向执行步骤2。知识库搜索结束后,转步骤8;
步骤8、判断数据库内容是否有增加,如有则转向步骤1;否则转步骤9;
步骤9、将数据库中的相关结论取出。
KDD*挖掘过程流程图如图10所示:
步骤1、对真实数据库进行预处理,形成挖掘数据库;
步骤2、将计数指针置为1;
步骤3、从挖掘数据库产生所有大于最小支持度的数据的集合,即大项集Li;
步骤4、从知识库中产生候选集Ci+1;
步骤5、判断候选集是否为空,如果判断是肯定的,则转到步骤13;否则执行步骤6;
步骤6、计算规则强度intensity(cm);
步骤7、判断规则强度是否小于规则强度阈值MinIntensity,如果判断是肯定的,则执行步骤8以删除cm,然后转到步骤14;如果判断是否定的,则执行步骤9;
步骤8:删除cm;
步骤9、产生知识短缺集Ki+1;
步骤10、判断知识短缺集Ki+1是否为空,如果判断是肯定的,则转到步骤13,否则执行步骤11;
步骤11、调用KDD进程进行数据的挖掘;
步骤12、使计数指针加1后转到步骤4;
步骤13、显示产生的新规则;
步骤14、则结束本次运行。
计算有向超图的邻接矩阵P(H)的算法。
Function calculate_reach_matrix
步骤1、知识库中所有的知识素结点的ID号,1,2,...n,组成一个矩阵Pn×n,用一个二维数组来表示Pn×n,其元素均为0,即P(i,j)=0,其中i,j=1,2,...,n;
步骤2、e:=1;
步骤3、读取知识库中第e条长度为2的规则re:pi→pj;
步骤4、矩阵P(H)的元素P(i,j)=1;
步骤5、Calculate_matrix1(j,i,n);//调用过程Calculate_matrix1,见后面
步骤6、知识库中长度为2的规则是否读完?若没读完,则e:=e+1,转步骤3;否则转步骤7;
步骤7、e:=1;
步骤8、读取知识库中的第e条长度大于2的规则re:pf1∧pf2∧...pfj→pi;
步骤9、Calculate_matrix2((f1,f2,...,fj),i);//调用过程Calculate)matrix2
步骤10、知识库中长度大于2的规则是否读完?若没读完,则e:=e+1,转步骤8;否则结束。
过程Calculate_matrix1(j,i,n:integer)
步骤1、for k:=1 to n
           P(j,k):=P(j,k)∨P(i,k)
步骤2、for m:=1 to n
           If P(m,j)=1 then
           for k:=1 to n
                    P(m,k):=P(m,k)∨P(j,k)Procedure
过程Calculate_matrix2((f1,f2,...,fj),i)//(j>1)
步骤1、若虚结点pf1∧pf2∧...pfj不存在,则可达矩阵的后面加一行表示该结点
步骤2、P(pf1∧pf2∧...pfj,i)=1;
步骤3、for s:=1to n
P(pf1∧pf2∧...pfj,s):=P(pf1∧pf2∧...pfj,s)∨P(i,s)
我们实现了找出长度不大于2的短缺知识。但对长度大于2的短缺知识则不能全部从可达矩阵P(H)中得到,因为该矩阵中只包含了在知识库中出现的合结点。为此,我们定义了规则强度来找出长度大于2的短缺知识。
由于规则强度中包含了支持度,因此可利用该支持度对短缺知识分层聚焦。即对长度为2的短缺知识K2进行聚焦,然后对长度为3的短缺知识K3进行聚焦,直至长度为L的短缺知识为空,即KL=φ;或者长度大于预先给定的最大长度M,即L>M。K2可直接从可达矩阵P(H)中产生,K2与知识库中已有的知识构成集合K2’(support(rj)>min_sup)(这里min_sup是最小支持度阈值),K3将利用支持度从K2’中产生。因为r3的支持度必不大于r3子集的支持度,即support(r3)≤sup(r2),其中r2是r3中的任意两个知识素结点组成的规则,而support(r3)>min_sup,故support(r2)>min_sup,因此r2∈K′2。
接下来,启发型协调器自主地形成新聚焦以发现新知识,即产生“创见意象”。
启发型协调器算法的实现步骤:
步骤1、搜索自关联强度大于某一阈值的语言变量值,形成结点集S;
步骤2、对结点集S中的结点进行组合,形成元组集合;
步骤3、搜索现有知识库,从元组中除去已在知识库中存在的元组;
步骤4、对剩余元组按关联强度排序,给出定向搜索的优先序;
步骤5、按优先级排序,并逐一扫描各元组,聚集到数据库相应入口,进行定向挖掘;并进行KDD进程;
Procedure Heuristic_Coordinator(K2)该程序模块用以产生所有长度为2的短缺知识
步骤1、把可达矩阵从数据表ReachMatrix中读出,把support(pi)>min_sup的知识素结点与全部知识合结点存入数组P中;
步骤2、K2=φ;
步骤3、for i:=0 to n//可达矩阵的列数
           for j:=0 to n//可达矩阵的列数
if(P(i,j)=0 and attr(pi)≠attr(pj)and support(pipj)>min_sup)//attr(pi)为知识素结点pi所对应的属性,相同属性的不同程度词不能出现在同一规则中,对i,j对应的数据表tablei,tablej进行挖掘计算support(ri)
K2=K2∪{i→j};
Procedure Heuristic_Coordinator(Kx-1,Kx)
该程序模块用以由长度为x-1的短缺知识产生所有长度为x(x>2)的短缺知识
步骤1、Kx=Φ;
步骤2、对于Kx-1中任意两规则fi1∧fi2∧...∧fix-1→j和gi1∧gi2∧...∧gix-1→i,若fi1=gi1,...,fix-1=gix-1且j≠i,则Kx=Kx∪{fi1∧fi2∧...∧fix-1∧i→j,fi1∧fi2∧...∧fix-1∧j→i}
步骤3、对所有ri∈Kx
步骤4、若support(ri)<=min_sup,则对ri对应的数据表table1,table2,..,tablep,tableq进行挖掘;计算support(ri)
步骤5、Kx=Kx-ri;
维护型协调器算法的实现步骤:
步骤1、对挖掘出的知识逐一判断知识的可信度是否大于给定的阈值;若是,则进入步骤2;否则进入下一条知识的判断;
步骤2、对由步骤1得到的知识判断知识是否重复;若是,则转入步骤1;否则转入步骤3;
步骤3、对由步骤2得到的知识判断知识是否冗余;若是,则转入步骤1;否则转入步骤4;
步骤4、对由步骤1得到的知识判断知识是否矛盾;若是,则转入步骤1;否则将知识存入知识库;若所有的知识处理完,则算法终止;否则转入步骤1;
基于双库协同机制——这一构建KDD过程中最重要的两个参与要素(数据库与知识库)本质联系的认知规律,利用新的知识发现结构模型KDD*(特别是两个协调器),我们提出了Maradbcm算法。该算法较好地解决Apriori算法存在的某些问题。
Maradbcm算法赖以产生的理论基础是双库协同机制与KDD*过程模型。此处说明四点:
1)根据结构对应定理,知识库中的知识素结点与数据库中数据子类结构的层相对应,也就是和该素结点相应的属性程度词相对应。为此经过预处理[30]把真实数据库分成n个表(table),即table1,table2,...,tablen,n为属性程度词的个数,而tablek中的k对应了每个属性程度词的ID号。每个表的字段只有一个,用来存放真实数据库中的数据的ID号,该ID所对应的数据处于属性程度词k所描述的状态。挖掘数据库就是由这n个Table组成,这样就无需搜索整个数据库,对于每条短缺的知识只需扫描知识结点所对应几个表。这对于大型数据库就显得尤为重要,这些小的表可以放入内存进行运算,而整个数据库就无法进行(即Apriori算法就会受到影响)。
2)知识子库以属性为基础,其特点是便于形成知识结点与数据子类的对应关系,从而为定向数据挖掘奠定基础。其逻辑结构是在相应的论域内,以属性为基础将规则库类化为若干规则子库,每一规则子库与挖掘数据库相对应。
3)双库协同机制主要由启发型协调器和维护型协调器来实现。启发型协调器的功能是通过搜索知识库中“知识结点”的不关联态,以发现“知识短缺”,产生“创见意象”,从而启发与激活真实数据库中相应的“数据类”,以产生“定向挖掘进程”,即完成了系统自动聚焦。维护型协调器的功能是当从真实数据库的大量数据中经聚焦而生成规则(知识)后,使KDD进程产生“中断”,而去搜索知识库中对应位置有无此生成规则的重复、冗余、矛盾、从属、循环等。若有,则取消该生成规则或相应处理后返回KDD的“始端”;若无,则继续KDD进程,即知识评价。
4)KDD*的实现主要包括启发型协调器、KDD过程和维护型协调器的功能实现。启发型协调器主要通过计算有向超图的可达矩阵来实现发现“知识短缺”,进而用规则强度阈值进行剪枝并形成聚焦;KDD过程主要通过可信度阈值来实现(以挖掘关联规则为例);而维护型协调器则用SQL语言或计算有向超图的可达矩阵来判断知识的重复、冗余、矛盾、从属、循环等,并进行相应的处理。
下面给出Maradbcm算法的具体实现步骤
设规则强度阈值为Min_Intensity,支持度阈值为Min_Sup,可信度阈值为Min_Con。
步骤1、数据预处理:这里主要是用户选择真实数据库,对于多值属性进行离散化。
步骤2、划分数据子库,依据子库建立数据子类结构,形成挖掘数据库;划分知识子库,依据知识子库建立知识结点,调用过程calculate_reach_matrix产生可达矩阵,从而形成挖掘知识库。
步骤3、调用过程Heuristic_Coordinator(K2)产生K2;
步骤4、m=2;
步骤5、对Km产生假设规则:对Km中的短缺知识ri:e1∧e2∧...∧ep→eq(ri∈Km),进行定向挖掘,即对数据表table1,table2,...,tablep,tableq进行挖掘,计算Con(ri)和Intensity(ri),如果Con(ri)>Min_Con并且Intensity(ri)>Min_Intensity(ri),则转步骤6;否则,Km=Km-ri,转步骤8;
步骤6、对规则ri应用维护型协调器进行处理。即若Maintenance_Coordinator(ri)==0,则取消该生成规则或相应处理;转步骤8;若无,则转步骤7;
步骤7、对规则ri进行评价。若评价通过则入库;若m==2,调用过程Calculate_matrix1(s,t)(ri:(s→t))来调整超图的可达矩阵;否则调用过程Calculate_matrix2((f1,f2,...,fs),t)(ri:(f1∧f2∧...∧fs→t))来调整超图的可达矩阵。若评价没有通过,则删除该规则;
步骤8、Km是否结束。若结束,当m==2时调用X1(P),否则调用X2(P);调用过程Heuristic_Coordinator(Km,Km+1)来产生Km+1,转步骤9;若没结束,则转步骤5进行下一条规则的处理;
步骤9、m=m+1,若Km=φ或者m>M(M为预先给定的最大长度),转步骤10;否则,转步骤5;
步骤10、显示新产生的规则;
步骤11、结束。
过程X1(P)
步骤1、for i:=0 to n//可达矩阵的列数
步骤2、for j:=0 to n//可达矩阵的列数
           if(P(i,j)==1)Km=Km∪{i→j};
过程X2(P)//带有结点的规则
步骤1、for i:=n+1 to T//T为可达矩阵的行数
步骤2、  for j:=0 to n//可达矩阵的列数
          if(P(i,j)==1)Km=Km∪{i→j};
4、关联分类CBA方法技术实现方案:
在合成金字塔复合结构中,核心判定层起着精化判定的重要作用,为优化层算法判断中间层CBA算法无法判断的情况与为底层同源分析与SVM的投票层提供依据。在偏alpha、beta型蛋白质二级结构预测中,核心判定层主要的作用是对同源分析与SVM三分类的结果的不同的部分进行分类。主要的工具是KDD*模型与基于支持度与可信度的复杂度量的CBA算法。通过KDD*系统生成的alpha、beta的规则,进行一定程度的约简后得到的精炼的alpha、beta规则库,使用改进型CBA算法,经过对训练集的反复实验得到适用于alpha、beta库的支持度与可信度的比例的系数,通过实验验证其结果是可靠的,证明我们得到的alpha、beta规则库与支持度、可信度的系数是可以作为知识固定下来,嵌入到整体的合成金字塔模型中。
在CBA的使用过程中,我们突破常规的设定支持度的阈值,按照可信度的累加来作为alpha、beta的判定标准,我们不单单使用可信度这个单一的度量,而是使用可信度与支持度的距离来作为一个复合型度量,这个更能体现两大指标在蛋白质二维结构预测中的作用。
在使用规则的生产中,我们突破常规,根据蛋白质生物数据的特性,放弃了使用通用数据库来生成规则,我们使用内容分别相对偏向alpha、beta的蛋白质库,这样解决了长期以来的,蛋白质关联规则挖掘中存在的生成的规则的支持度与可信度较低,规则并不可信的问题,经过试验证明与原先的蛋白质通用数据库的判定准确率有了较大的提升。
经典的CBA算法在分类问题中,在设定一个固定的支持度阈值后,单一的考虑可信度,这样虽然简化了问题,但是相当于在问题的求解空间中,无形地约简掉了支持度维度,单一的考虑可信度维度,我们认为这种做法在蛋白质二维结构预测问题中是不合时宜的。支持度同样也是关联规则挖掘得到的重要参数,其中隐藏着指导分类问题规则的关键度量,所以我们设计了基于复杂度量的CBA算法。
经典的CBA算法的评价函数如下:
ScoreCBAα/β=Σi=1nconfidencei
评价函数仅仅将符合的规则rulei的可信度confidencei进行简单的累加,根据ScoreCBAα□ScoreCBAβ判断蛋白质为alpha型蛋白质,如果ScoreCBAα□ScoreCBAβ则判断蛋白质为beta型蛋白质,如果差别不大,则将该条蛋白质提交到优化层处理。这样就相当于放弃了支持度这一维的考虑,仅仅简单的使用一个支持度的阈值的设定。由于蛋白质数据是典型的非线性数据结构,在空间呈现高度的扭曲,简单的通过设定支持度阈值的方式是不能很好的完成蛋白质分类问题。
基于经典CBA算法的单一考虑可信度,仅仅依靠支持度阈值设定的方法是不适合的。我们基于经典CBA算法提出了基于支持度与可信度的复杂度量的CBA算法,其评价函数如下:
ScoreD-CBAα/β=Σi=1n((wconfconfidencei)2+(wsupsup porti)2)1/2
wconf与wsup分别是可信度与支持度的系数,为了方便在训练中方便设定,不失一般性的将评价参数重写为:
ScoreD-CBAα/β=Σi=1n((confidencei)2+(wsupwconfsupporti )2)1/2
=Σi=1n((confidencei)2+(wsup/confsup porti)2)1/2
这样,当wsup/conf→0时,ScoreD-CBAα/β退化为ScoreCBAα/β;反之,当wsup/conf→∞时,ScoreD-CBAα/β退化为即仅仅考虑支持度的情况。有以上分析,可以看出经典的CBA算法是我们所设计的基于支持度与可信度的距离的CBA算法在wsup/conf→0下的特例。这样,我们通过在训练集的训练,就在于选择一个分类效果最好的w*sup/conf,使其可以将alpha型蛋白质与beta型蛋白质有效的进行区分。
下面给出改进型关联分类技术实现步骤:
步骤1、基于Maradbcm算法的挖掘结果,形成alpha、beta的精化关联规则库。其中每条规则均带有可信度和支持度两个属性;
步骤2、对于关联规则库中每条规则进行复杂度量;
步骤3、计算每条规则的评价函数,并由此得出规则的SCORE。其中评价函数为
ScoreD-CBAα/β=Σi=1n((wconfconfidencei)2+(wsupsup porti)2)1/2
步骤4、按照复杂度量SCORE对关联规则库中的规则进行从大到小排序;
步骤5、按照排序后的关联规则库进行alpha、beta分类。
步骤6、在待分类的蛋白质数据库中,找到符合优先级最高的规则的数据集,也就是符合关联规则库中复杂度量最高的规则的条件。
步骤7、用优先级最高规则的类别结果来标记步骤6中所有满足规则条件的数据集。
步骤8、将步骤7中满足规则条件的数据库从待分类蛋白质数据库中移除。
步骤9、重复步骤6。直到关联规则库为空或者待分类蛋白质数据库为空。
以上具体实施方式仅用于说明本发明,而非用于限定本发明。