用于完成序列同源性检测的方法和装置的制作方法

文档序号:6418778阅读:510来源:国知局
专利名称:用于完成序列同源性检测的方法和装置的制作方法
技术领域
一般而言,本发明涉及数据库搜索,更具体而言,涉及与给定的应用(例如遗传研究)相联系的检测一查询序列和一数据库中若干序列之间的序列同源性的方法和装置。
背景技术
在遗传研究领域中,在对一个新的基因进行测序之后要进行的第一步工作是试图识别那个基因的功能。达到这一目的的最流行和直接的方法利用了如下生物学事实-如果两个肽片段在序列水平上显示出足够的相似性(即通过少量的插入、缺失和/或氨基酸突变,便可从一个肽片段得到另一个),那么它们可能在生物学上相互关联。这种途径的实例描述见A.M.Lesk的“计算分子生物学”(计算机科学与技术百科全书,A.Kent和J.G.Williams编辑,31101-165,Marcel Dekker,New York,1994);R.F.Doolittle的“我们从序列数据库中知道了什么和将要知道什么”(计算机和DNA,G.Bell和T.Marr编辑,21-31,Addison-Wesley,1990);C.Caskey,R.Eisenberg,E.Lander和J.Straus的“关于DNA专利权的Hugo声明”(基因组文摘,26-9,1995);以及W.R.Pearson的“蛋白质序列比较和蛋白质演化”(分子生物学中智能系统入门,Cambridge,England,1995)。
在这一构架内,得到关于一个新基因功能的线索的问题变成了在氨基酸串中识别同源性的问题。一般而言,同源性是指两个或多个序列或串之间的相似性、类似或关联。这样,便可以给定一个查询序列Q(例如一个新的基因)和一组表征得很好的蛋白质D,并查找Q中与D中序列的区域相类似的所有区域。
用于完成这一任务的第一种途径是基于称作动态规划(dynamicprogramming)的技术。对这一途径的描述见S.B.Needleman和C.D.Wunsch的“可用于在两个蛋白质的氨基酸序列中寻找相似性的一种通用方法”,分子生物学杂志,48443-453,1970;和T.F.Smith和M.S.Waterman的“共同的分子子序列的识别”,分子生物学杂志,147195-197,1981。可惜,按今天的标准,这一方法对计算的需求很快反映出它是不实际的,特别是当搜索大数据库时更是如此。一般而言,问题在于各种动态规划变体花费其大部分时间用于计算同源性,而这些最终证明是不重要的。
在为解决这一问题而进行的努力中。已提议许多算法,它们集中于只发现广泛的局部相似性。这些算法中最著名的算法称作FASTA和BLAST。对FASTA算法的描述见W.R.Pearson和D.J.Lipman的“用于生物学序列比较的改进的工具”,美国国家科学院院刊(Proc.Natl.Acad.Sci.),852444-2448,1988;和D.J.Lipman和W.R.Pearson的“快速灵敏的蛋白质相似性搜索”,科学,2271435-1441,1989。对BLAST算法的描述见S.Altschul、W.Gish、W.Miller、E.W.Myers和D.Lipman的“一种基本的局部对比(alignment)搜索工具”,分子生物学杂志,215403-410,1990。在绝大多数情况中,性能的提高是通过首先寻找无空位(ungapped)同源性来实现的,即只由于突变而不是由于插入或缺失的相似性。这一途径背后的原理是在两个肽串之间的任何基本有空位相似性中,有机会存在至少一对子串,它们的匹配不含有空位。于是,对这些子串(无空位同源性)的定位便成为得到整个(有空位)同源性的第一步。
然而,在查询序列和数据库序列之间识别出类似区域只是过程的第一部分(最需要计算的部分)。第二部分(即生物学家感兴趣的部分)是评价这些相似性,即确定它们是否其本上足以支持度查询序列和相应的一个或多个数据库序列之间的推断的关系(功能的、结构的或其他的关系)。这种评价通常是把生物学信息和统计学推理相结合来完成的。典型情况是把相似性定量化为对每对相关区域计算出的一个得分。这种得分的计算涉及使用空位罚分(用于空位对比)和使用适当给出任何给定的氨基酸变成另一种的进化概率的突变矩阵。这些矩阵的实例是PAM矩阵(见M.O.Dayhoff、R.M.Schwarts和B.C.Orcutt的“蛋白质中进化变化的模型”,蛋白质序列和结构图集,5345-352,1978)和BLOSUM矩阵(见S.Henikoff和J.G.Henikoff的“取自蛋白质块的氨基酸替代矩阵”,国家科学院院刊,89915-919,1992)。然后,通过计算这一得分只是偶然发生的概率(在某种统计学模型下)来评价这一罚分的统计学重要性,例如,见S.Karlin、A.Dembo和T.Kawabata的“由分子序列统计学地合成高评分片段”,统计学学年鉴2571-581,1990和S.Karlin和S.Altschul的“使用一般评分方案评价分子序列特征统计学重要性的方法”,国家科学院院刊,872264-2268,1990。根据所用的统计学模型,这一概率能依赖于多个因子,例如查询序列的长度、下层数据库的大小等。然而,不论使用何种传统的统计学模型,总是存在所谓“灰色区域”,即这样一些情况,那里统计学上不重要的评分指示了在生物学上实际是重要的相似性。可惜,也可能这是不可避免的,归根结底,一个统计学模型能如何合适地逼近生物学现实的程度总是存在极限。
为克服把统计学重要性加到弱相似性上这一固有问题的另一种方法是在导出模拟进化上远缘的同源性的序列鉴别因子(descriptor)时使用生物学知识。BLOCKS(见S.Henikoff和J.Henikoff的“用于数据库搜索的蛋白质块自动组合”,核酸研究,196565-6572,1991)是这样一个系统,它利用PROSITE数据库中定义的蛋白质分类得到由模式导出的分布图(profile)(见S.Henikoff和J.Henikoff的“基于搜索块数据库的蛋白质家族分类”,基因组,Vol 19,pp97-107,1994),以在功能上给新的基因作评注。这里的好处是这一分类是由专家工作于已知的相关蛋白质家族来编辑成的。结果,即使弱的相似性也能被识别出来并用于评注过程中。另一方面,关于哪些蛋白质的确有关和其后可由一模式代表,其知识只有那么多。再有,总有一种危险,即一个蛋白质家族中实际包含的成员可能比当前想到的要多。通过把这些成员排除而不予考虑之后,有可能得到“过匹配(over fit)”于该家族的模式,即它们太严格,以致不能外推出没有识别出的家族成员。
所以,显然需要方法和装置通过独特的词典构成技术来建立改进的模式词典,以允许改善序列同源性检测,还需要方法和装置用于序列同源性检测,它本身不限于只搜索被评注的序列。
发明概要本发明通过提供改进的模式词典构成技术和改进的序列同源性检测技术,为上述和其他需要提供了解决方案,这些技术将在下文中更详细地描述。
在本发明的序列同源性检测方面,一个基于计算机的用于检测数据库中的多个序列和一个查询序列之间的同源性的方法包含如下步骤首先,该方法包括访问与该数据库关联的模式,每个模式代表该数据库中一个或多个序列的至少一部分。接下来,将该查询序列与这些模式进行比较,以检测是否该查询序列的一个或多个部分与这些模式代表的数据库中序列的一些部分有同源性。然后,对检测到的与该查询序列有同源性的每个序列产生一个评分,这里的序列评分是基于根据所检测到的序列每个同源部分产生的单个评分,而且该序列评分代表该查询序列与检测到的序列之间的同源性程度。
在本发明的词典构成方面,一个基于计算机的处理数据库中多个序列的方法包含如下步骤。首先,该方法包括评价这多个序列中的每一个,包括构成每个序列的字符。然后,产生至少一个字符模式以代表数据库中至少一个序列子集。该模式伴有一个统计学显著性,模式的统计学显著性由代表数据库中该模式支持度的序列最少个数的值来确定。
于是,与先有技术途径有显著不同,本发明的方法是基于在任意数据库上进行的无监督模式发现,而无需任何先有的数据库分区。BLOCKS假定数据库已经被分区(由外部专家)成为若干个在生物学上相关的序列的子集。然后通过单个处理每个子集得到分布图。作为这一途径的结果,BLOCKS不能处置任意的数据库,因为并非所有这些数据库都被分成相关联的子集。事实上,BLOCKS只工作于这里作为参考的SwikkProt数据库,使用也在这里作为参考的PROSITE数据库中描述的蛋白质分组。与此相反,本发明优选地使用整个数据库作为其输入,并提供一种自动方法学来决定那些模式是重要的,而哪些不是。
再有,本发明提供了一个新的统计学构架用于评价所发现模式的统计学重要性。与现有的构架不同,本发明的途径在其计算中引入了存储器的概念,就是说,当把查询序列的一个区域A与某个数据库序列的区域B进行比较时,是通过考虑A与数据库中所有其他序列的相似性来评价其结果的相似性评分。
使用这里描述的加强的统计学模型,允许检测出重要的局部相似性,而使用现有途径,它们会检测不到。这允许本发明的系统以高于使用先有技术系统可能达到的灵敏水平来进行相似性搜索。
再有,本发明提供一种自动方法以利用在下层数据库D中能得到的部分评注信息。这一方法学允许用户更详细地利用那些似乎不重要的相似性。例如,当一个模式匹配于查询序列区域A时,能检查与此模式匹配的所有数据库区域。如果这些数据库区域全部(或多个)都以同一方式被评注,则这一评注可被传送给搜索区域A。按上述方式部分地评注该查询序列可证明对实现整个序列评注是有用的。
本发明还提供一个详细的方法把该数据库聚类成为有高同源性的序列的小组。在一个遗传数据处理应用中本方法允许对多结构域(multi-domain)蛋白质进行正确处理。
还应该理解,这里描述的所发明的概念可以在网络上(例如因特网)以客户机-服务器关系实现。这允许用户在远程位置的一个客户机装置中输入查询序列,它通过网络传送到服务器并在服务器中被处理。然后服务器通过网络把同源性搜索结果回送给客户机装置。
由下文中对本发明的所示实施例的详细描述,可使本发明的这些和其他目的、特点和优点变得显然,这些描述是结合附图进行的。


图1是根据本发明的一个实施例的序列同源性检测系统的框图;图2是本发明的序列同源性检测系统的一个硬件实现示例的框图;图3是本发明的序列同源性检测系统的一个基于网络的实现的框图;图4是说明根据本发明的一个实施例的搜索引擎方法的高级流程图;图5说明根据本发明的一个实施例对给定查询序列进行模式匹配过程的一个实例;图6说明根据本发明的一个实施例对一具体查询序列产生的散列(hash)表的一个实例;图7说明根据本发明的一个实施例对一给定查询序列进行链接过程的一个实例;图8说明根据本发明根据对给定查询序列进行的评分过程所产生的一个有向加权图的一个实例;图9是说明本发明的搜索引擎方法学的匹配和链接阶片段的一个实施例的流程图;图10是说明本发明的搜索引擎方法学的评分阶片段的一个实施例的流程图;图11说明在SP34中具有给定主干结构的模式分布和与同一主干的随机分布的比较;图12至15是流程图,说明根据本发明一个实施例的词典构成方法;图16是流程图,说明根据本发明一个实施例的数据库清除过程;以及图17至30说明与本发明关联的实验结果。
优选实施例详述下面将在一个示例性遗传数据处理应用的范围内解释本发明。然而,应该理解,本发明不限于这一具体应用。相反,本发明可更一般地应用于由任意数据库(在把数据库数据适当地转换成等效的序列表示之后)建立模式词典和针对数据库中的数据进行任何给定搜索记录的无约束同源性搜索。
首先参考图1,它显示了根据本发明的一个实施例的序列同源性检测系统的方框图。所示系统100包括查寻引擎模块110、模式词典120、词典构成模块130和源数据库140。如下文中将详细解释的那样,搜索引擎110从用户那里接收一查询序列,并进行对模式词典120的搜索,以图定位存储在词典中的模式,这些模式代表数据库140中那些以某种方式与查询序列相似的序列。在搜索之前,词典构成模块130由数据库140创建模式词典120。这一词典构成过程被称作信息收集或挖掘。搜索引擎110向用户返回部分或全部搜索结果(例如来自数据库的同源性序列)。
图2是序列同源性检测系统100的硬件实现示例的方框图。如图所示,系统100可以按照处理器210、存储器220和I/O(输入/输出)装置230来实现。应该理解,这里使用术语“处理器”是想包括任何处理装置,例如包括CPU(中央处理单元)的处理装置。这里使用术语“存储器”是意欲包括与处理器或CPU相关联的存储器,例如RAM、ROM、固定存储装置(如硬驱动器)、可装卸存储装置(如软盘)、快速存储器等。此外,这里所用术语“输入/输出装置”或“I/O装置”是想包括例如一个或多个输入装置,例如键盘,用于进行搜索和/或向处理单元输入数据,和/或一个或多个输出装置,例如CRT显示器和/或打印机,用于显示搜索结果和/或与处理单元关联的其他结果。还应理解,术语“处理器”可以指不只一个处理装置而且与一个处理装置关联的各种部件可以被其他处理装置共享。于是,包括实现本发明方法的指令或代码的软件,如这里描述的那样,可存储在一个或多个相关联的存储装置(例如ROM、固定或可装卸存储器)中,并且当要被使用时部分或全部加载(例如加载到RAM中)并由CPU执行。
图3是本发明的序列同源性检测系统的基于网络的实现的方框图。如图所示,客户端计算机系统310通过网络330(例如因特网)与服务器计算机系统320通信。然而,网络也可是一个私用网和/或局域网。根据图3的实现,图1所示系统100的全部或部分驻留在服务器330上并由服务器320执行。在其客户端计算机系统(如个人计算机、膝上机和/或其他类型个人处理装置)上的操作的用户从远处通过在该计算机系统上运行的应用软件(如万维网浏览软件和/或与搜索引擎相关联的图形用户界面)输入查询序列。该搜索以传统方式经过网络330传送并由服务器320处理。服务器320接收该搜索并根据所存储的模式词典执行本发明的搜索引擎方法学。该词典可以是已经由本发明的词典构成模块根据一源数据库构成的。服务器经由网络向客户端返回一些或全部搜索结果(例如来自数据库的同源性序列)。应该理解,该服务器可以代表不只一个计算机系统。就是说,图1中的一个或多个部件可以驻留在它们自己的计算机系统中,例如具有其自己的处理器、存储器和I/O装置,并由该计算机系统来执行。
在对本发明的序列同源性检测系统各部件及各种硬件实现示例进行了一般性描述之后,现在将详细解释所发明的各种方法。
下面将在与序列同源性检测系统相关联的一个实施例中一起描述与搜索引擎模块110和词典构成模块130相关联的各自方法。然而,应该理解,与搜索引擎模块关联的所发明的方法可应用于其他已知的模式词典。类似地,所发明的与词典构成模块关联的方法可以创建模式词典用于其他已知的搜索引擎。
为便于参考,本详细描述的其余部分将分成以下部分(Ⅰ)定义;(Ⅱ)搜索引擎;(Ⅲ)词典构成;以及(Ⅳ)实验结果。Ⅰ.定义如下部分提供一些符号用于在下文中描述本发明的各个方面。
∑是指用于构成序列的字符集合。在生物学环境中(这是这里优先对待的),我们要处理的序列是蛋白质,而集合∑是20种氨基酸的集合。下文中术语蛋白质/序列将可交换地使用,而对术语字符/氨基酸也是如此。
D是指下层的蛋白质数据库,模式集合(模式词典或生物学词典)即建立在它的上面。在这个描述中将始终使用的数据库实例如下(含有3个序列)
D={S1,S2,S3},这里S1=ARQSTLUMNPQS2=FDSALQFTGMRAS3=RKMFPQDOSLAП是指模式的集合,即这里指生物学词典或模式词典120。在下面题为“词典构成”的部分中将解释得到П的确切方法。模式是描述肽家族的规则表示。由单个模式代表的多肽家族可预期含有相关联的(结构上、功能上、进化上)氨基酸延伸。更具体地说,给定氨基酸的字母顺序∑,我们把П中的模式P定义为形如∑(∑U{‘·’})*∑的规则表达式,这里‘·’(指“不必关心的字符”)代表可由任意残基占据的部分。作为一个规则的表达式,每个模式P定义一个多肽语言,它包含能由∑中的任意残基代替每个不必关心的字符来从模式P中得到的所有串。同样,П中的每个P与D中的至少Kmin个序列匹配。Kmin是一个整数,它的计算将在下文的“词典构成”部分中解释。在下面的例子中,我们将假定一个指定的值。数据库序列中与模式P匹配的各区域被记录在模式P的偏移列表LD(P)中。这是包含所有(j,k)对的列表,使模式P在偏移K处匹配于数据库的第j个序列。
对于上文引入的数据库实例,并假定Kmin=2,则模式集合P={A.Q.T,M.PQ}。这个集合中的两个模式出现在下列输入序列中(匹配部分用黑体表示)A.Q.T M.PQs1ARQSTLUMNPQ s1ARQSTLUMNPQs2FDSALQFTGMRAs3RKMFPQDDSLA这两个模式的偏移列表如下LD(A.Q.T)={(1,1),(2,4)}LD(M.PQ)={(1,8),(3,3)}应该理解,在每个括号内的第一项是序列号,第二项是偏移。对应于序列中任何字符的偏移是从序列开始到那个字符的距离。例如,(2,4)表示序列是S2,模式A.Q.T在到序列S2开始相距4个字符的地方开始。
Q是指搜索蛋白质。本发明的搜索引擎的一个目标是识别D中数据库序列与用户可以提供的任何查询序列Q之间的序列同源性。作为一例,我们将使用搜索Q=JLANQFTLMDPQDLA。这一序列与数据库序列有多个同源性区域。下面,我们将显示它们当中的一些(仍是以黑体显示相似区域对)QJLANQFTLMDPQDLAQJLANQFTLMDPQDLAs1ARQSTLUMNPQ s2FDSALQFTGMRA这样,搜索引擎识别出如上所述的相似性。当把一个区域放到另一个区域下,它们有若干个匹配的字符会对在一起,则这两个等长的区域是相似的。对于相似性的严格表示将在下文中成为准确的表示;而现在,说它涉及对每个可能的字符对使用评分就足够了。每个这种评分是匹配性的度量,标识出对每个对在一起的字符,在生物学上的可能性怎样。
给定一个模式P,则P的“主干”定义为字母表{1,0}上的一个串,它是把P中的每个残基变为字符“1”,而每个不必关心的字符变为字符“0”,由此从P中得到的。例如,模式P=“A.DFE”的主干是串“100111”。主干把模式集合分成等效的类,每个类含有共享同一主干的所有模式。
根据本发明可能用到的另一概念是一个模式的“密度(density)”。一般地说,密度描述G(P)的任何两个成员之间同源性的最小量(这里GCP)是指由∑中的任意残基替换每个不必关心的字符能从P中得到的所有串构成的多肽语言)并由两个整数L和W(L≤W)定义如果P的以氨基酸起始和终止且其长度至少为W的每个子串含有L或更多个残基,则模式P的密度为<L,W>。在每个这种模式中,残基数与模式长度之比至少为L/W。整数L和W是我们的优选方法的参数,它们的值控制所进行的搜索中允许的相似性大小。这些参数还在序列号为09/023,756的美国专利申请中详细描述,该专利申请于1998年2月13日提交,直接指向“TEIRESIAS”算法,它要求对序列号为60/049,461的美国临时申请的优先权,它于1997年6月12日提交,它的内容被纳入这里作为参考。请注意,根据定义,一个<L,W>模式至少有L个残基。
再有,当给定一模式P和一序列S,S的属于G(P)的任何子串被称作P的匹配位置。P的偏移列表含有P的所有匹配位置的第一字符的偏移。
在给出上述定义之后,我们现在能对根据本发明的改进的序列同源性检测的一种最佳途径提供一个一般性描述,例如,结合系统100(图1)来描述。序列同源性检测两个彼此不同的阶片段信息收集和搜索。
首先,在进行任何搜索之前,要对下层数据库D进行挖掘,这一挖掘过程也称作信息收集或词典构成。在这一步骤过程中,所有重要<L,W>模式被收集,而且每个这种模式P与其偏移列表LD(P)相关联(在搜索引擎部分将详细说明确定一模式是否重要所用的具体标准)。
第二步是实际搜索。给定一查询序列Q,我们识别出被Q匹配的所有模式P(在该过程的第一阶片段中收集的所有模式中进行识别)。对每个这种P,我们把Q的与P匹配的区域与所有数据库序列中也与P匹配的区域(通过偏移列表LD(P)容易访问这些区域)组成对子。最后,成对的区域沿两个方向被扩展和对比,并被利用(用户定义的)突变矩阵评分,最高评分的匹配与蕴含的对比一起被记录下来。
这里值得指出的是,信息收集阶片段是对D的一次性计算。所得到的结果存储在一个文件(图1的模式词典120)中,并在每次对数据库D进行搜索过程时使用。
使用模式描述相关联的多肽的背后动因在于生物学事实。具体而言,已知有大量的基本元件(或者是具有结构特性的元素,如α-螺旋、β-链、环等,或者更大的功能性单元,如基序、组件和结构域),它们是构成蛋白质的结构单元。进化上分化物种所用的关键机制之一就是在蛋白质序列中氨基酸位置的突变。当然,在功能上/结构上重要的区域对这种突变的抵抗性更强。于是,有理由期望,能通过发现(a)在其一级结构中保守的位置;以及(b)增大的重用能力,从而识别出这种生物学上相关联的多肽。在我们的术语中,这些性质对应于具有想不到的高支持度度的模式。
然而,这里所描述的本发明搜索引擎方法学可被用于其他的已知模式词典,重申这一点是重要的。同样,本发明的词典构成方法可被用于创建由其他已知的搜索引擎使用的模式词典。
应该理解,在下面的Ⅱ和Ⅲ部分中将分别描述这两种方法。尽管词典构成方法应用于搜索方法之前,但为了便于解释,我们以相反的顺序讨论这两个过程,从搜索引擎方法开始,然后是词典构成方法。Ⅱ.搜索引擎现在参考图4,图中显示一高级流程图,说明根据本发明一个实施例的搜索引擎方法学。这一方法可应用于图1中的搜索引擎110。搜索引擎的操作可分成两个彼此不同的阶片段(ⅰ)模式匹配+链接(块402);和(ⅱ)评分(块406)。
第一阶片段针对查询序列Q检验П中的每个模式P(提醒一下,П是指上文提到的模式词典120),隔离出所有与Q匹配的模式。下面我们描述进行这个“检验匹配”过程的一个具体算法;然而,可以使用任何匹配算法。请注意图4中阶片段1的“复杂度检验”(块404)。在某些情况中,有可能模式P匹配于搜索Q然而却不希望考虑这一匹配。这样的例子是所谓“低复杂度”模式。由于生物学序列的特性,有时会产生这种模式。低复杂度模式几乎只由同一种氨基酸组成,例如模式“A.A..AAA.A.A”,而且是因为某些蛋白质有长的重复氨基酸的区域造成的。这种模式当然被认为对于同源性检测的目的是不重要的,所以忽略由这些模式导出的任何匹配会更好些。是否这样做留给该系统的用户来决定,作法是允许在搜索引擎中把“复杂度检验”分量设成“通”或“断”状态。当前,记住在这一分量置成“通”时P中的某些模式尽管与搜索蛋白质Q匹配也将被忽略这一点就足够了。下文中将对复杂度检验为“通”时匹配于Q的模式P被忽略的确切条件进行描述。
继续阶片段1,每个匹配于Q的模式P在Q和也匹配于P的所有数据库区域之间产生一个局部同源性。通过P的偏移列表LD(P)能容易地访问所有这些数据库区域。假定P在偏移之处匹配Q,则LD(P)中的每个区域(j,k)给出片片段(i,j,k,l)这里l是模式P的长度。下文中对此进行详细解释。最后,随着匹配过程的继续,相容的片片段链接在一起,构成更长的片段(下文中将解释相容片段的含义以及链接操作)。在阶片段1的结尾,我们得到的是集合R,它包含数据库D中所有这样的序列它们匹配于П中至少一个模式P,从而P也匹配于Q。
R中的每个序列S伴随的片段描述了由模式导出的Q和S之间的同源性。
考虑我们前面引入的例子。查询序列Q=JLANQFTLMDPQDLA,匹配于П中的两个模式P1=“A.Q.T”和P2=“M.PQ”。给定P1在偏移3处匹配于Q和P2在偏移9处匹配于Q,这两个匹配产生如下4片段(3,1,1,5)(3,2,4,5)=由LD(P1)产生(9,1,8,4)(9,3,3,4)=由LD(P2)产生于是,集合R为R={s1-(3,1,1,5)(9,1,8,4)s2-(3,2,4,5)s3-(9,3,3,4)}这里R中每个序列Si带有一个片段列表。请注意在这一具体实例中不可能有任何链接。
图4中描述的搜索引擎方法学的第二阶片段对R中的每个序列S赋予一个评分。对于给定的Sj,可有多种途径计算这一评分。然而每个途径都是从对Si带有的所有片段进行评分开始。每个片段接收一个评分(这些评分称作片段评分)。根据突变矩阵M进行评分。突变矩阵是20×20的实数数组。这个矩阵的第(i,j)条目指出的进化过程中第i个氨基酸已变成第j个氨基酸的概率。这里,为了我们的目的,假定M是来自∑×∑→R的函数就足够了,当给定两个氨基酸A1和A2时,它返回一个实数。因为有许多可使用的突变矩阵,所以给予用户一种可选功能,以选择特定的矩阵M供使用。
例如,假定我们在使用一元突变矩阵M,即对所有氨基酸A有M(A,A)=1,而对所有彼此不同的氨基酸A、B有M(A,B)=0。考虑上文集合R中的第一序列,即序列S1,它带有片段(3,1,1,5)和(9,1,8,4)。我们来显示如何对这两个片段中的第一个进行评分(另一个,以及集合R中的所有片段都被类似地评分)。想象我们已把该片段蕴含的长度为5的两个蛋白质区域对比(一个在另一个下面),即在Q的偏移3处起始的区域和S1的偏移1处起始的区域对比ANQFTL(来自Q)ARQSTL(来自S1)于是,通过对所有对比列的值M(X,Y)求和,便计算出该片段的评分,这里X,Y是在任何给定列下对比在一起的两个氨基酸。对上面的片段,这个评分是M(A,A)+M(N,R)+M(Q,Q)+M(F,S)+M(T,T)+M(L,L)=1+0+1+0+1+1=4。
上面描述的片段评分方案是基本评分方案。就是说,系统的用户可以设置多种选项来修改计算片段评分的方式。例如,如果系统参数extend(它是一个整数,将在下文中描述)已被设置成大于零的值,则评分不仅考虑由片段描述的蛋白质区域,而且还要考虑这两个区域左边和右边extend个氨基酸(评分过程与前述完全相同,只是现在考虑的区域更长)。再有,如果已经设置了可选项gaped-alignment(有空位对比),则在扩展区域(即在基本片段的左边和右边的这些区域)的对比中我们也使用空位以使对比评分达到极大。
在上述过程的结尾(不依赖于使用哪种评分方案变体),将会对集合R中的每个片段计算出了片段评分。然后,这些片段评分被用于评分阶片段的最后步骤,即,使Q和R中所有序列Sj之间的相似程度定量化。这是通过对R中每个Sj赋予一个评分来实现这一定量化的;这个评分称作S的序列评分(以使它与片段评分区分开)。理想上,对序列Sj的序列评分越高,则Sj应该与Q越相似。
在对Sj评分时,我们只考虑了Sj带有的那些片段的片段评分。仍然有若干可选项。在最简单的情况中,Sj的序列评分被定义为Sj各片段的所有片段评分当中最大的一个。第二种情况是下文的描述中涉及更多的一种。这里,首先对被评分的序列Sj构成一个有向图(directedgraph)。这个图的顶点是Sj带有的所有片段。每个顶点被赋予与该顶点相对应的片段的片段评分。从片段(i,j,k,l)到片段(i’,j’,k’,l’)放置一个边,如果i=i’和k<=k’的话,即如果由两片段(区域Q[i…i+l-1]和Q[i’…i’+l’-1])描述的两个搜索区域的相对顺序与Sj上由两片段(区域Sj[k…k+l-1]和Sj[k’…k’+l’-1])描述的两个区域的相对顺序相同的话。像对顶点那样,每个边也被赋予一个评分,代表该搜索中区域位移(即差值i’-i)相对于S上的区域位移(即差值k’-k)的规则程度。位移之间的差值(即数值|(i’-i)-(k’-k)|越大,则边的评分越小。在构成该图之后,我们能利用任何描述的最长路径算法识别出具有最高评分的路径(一个路径的评分定义为在该路径中所有顶点和边的评分之和)。于是,这一评分成为Sj的序列评分。
上文中我们已描述了计算片段评分和序列评分的几种途径。一般而言,任何其他“在生物学上合理的”评分方案都能被用在它们的地方。
现在参考图5、6和7,将解释搜索引擎方法400的模式匹配、链接和评分过程的更具体实例。同样,在由搜索引擎110实现的搜索阶片段过程中,搜索蛋白质Q提供给系统,而与Q相似的数据库序列S∈D被识别出来并报告给用户。搜索阶片段利用挖掘输入数据库D得到的模式集合П。对于这里举例的目的,假定П是形如上文“定义”部分所描述的<L,W>模式集合就足够了。每个P∈П伴有其偏移列表LD(P)并在D中有至少Kmin支持度。数值L,W和Kmin是我们的优选方法的参数,在下文中的“词典形成”部分中将描述它们的设置方式。
当一个查询序列Q提供给该系统时,要做的第一件事是确定由Q匹配的所有P∈П的位置。通过使用D.Gusfield的“用于串、树和序列的算法计算机科学和计算生物学”(剑桥大学出版社,62-63,1997)中提出的一种技术的散列变化,便能很快地完成这件事。更具体地说,对于Q内的每个位置,我们产生W个散列值(hash value),以那个位置开始的长度为2,3,…,(W+1)的每个子串有一个值。对于每个这样的子串,相应的散列值只依赖于该子串的每一个和最后一个字符,以及依赖于这两个字符之间的残基个数。
图5提供了对一给定查询序列这一过程的一个实例。在该例中,显示了在序列Q的位置6处开始的W=4子串所产生的散列值。对子串S所用的散列值是H(s)=((av(first_char)-av(‘A’))+(av(last_char)-av(‘A’))*26)*W+gap这里av(c)是字符C的ASCⅡ值,first char和last char分别为s的第一个和最后一个字符,gap是在s的第一和最后一个字符之间的残基个数。请注意,由于<L,W>密度限制,gap总是小于W。
与一特定值h对应的散列条目包含查询序列Q的所有偏移P,使得在P开始的一个子串(长度最大为W+1)的散列值为值h。图6给出对一特定查询序列产生的散列表的实例。在图6中,显示了序列Q=AFGHIKLPNMKAMGH所产生的散列表的抽样。不使用实际的散列值数值去标记表的条目,而是使用一个模式来描述其散列值为一特定值的所有串。每个散列条目指向一个偏移列表。在那列表中的每个偏移标记Q中一个子串的起始,该子串散列到相关的散列条目。
为了检验是否一个模式P∈П被Q匹配,我们使用其大小等于Q的长度的计数器C[1..|Q|]阵列。开始时该阵列的每个条目设为0。在P中偏移1处开始,我们确定P内与一残基对应的所有偏移j,但排除对应于最后一个残基的偏移。对于每个这样的j,令F为P的最短子串,它在j处开始且确切包含两个残基。令OL表示Q中由对应于F的散列表条目指向的偏移列表。如果OL不为空,则对于每个偏移P∈OL,计数器C[p-j+1]被增量1。如果模式P确切包含n个残基,则当且仅当Q在偏移i处匹配P时,在这一过程的结尾,计数器C[i]将有值(n-1)。上面描述的匹配技术的一个优点是它通常需要的时间与查询序列Q的大小呈亚线性关系,而且只依赖于模式P中的残基个数。
一旦发现一个模式P∈П被Q的一个始于偏移i的子串匹配,我们需要把Q的那个子串与也和P匹配的所有数据库区域关联起来。通过扫描确切包含这些区域的偏移列表LD(P),便能容易地做到这一点。更具体地说,每个条目(j,k)∈LD(P)指出,第j个数据库序列Sj的始于偏移k的子串是G(P)的一个元素。于是,查询序列Q和数据库序列Sj之间的局部相似性被登录为一个四元组(i,j,k,l),称作片段,它与Sj相关联。数值l=|P|是局部相似性的长度。
有时,两个匹配于Q和数据库序列Sj的不同模式P和P’对应于Q和Sj之间的相同的局部相似性。这种情况的一例示于图7。在这类情况中,对应于这两个模式的各单个片段必须链接成一个。特别是,当且仅当k<=k’and k+l+w_len>k’and k’-k=i’-i时,与Sj关联的两片段(i,j,k,l)和(i’,j,k’,l’),称作兼容的,这里w_len是由用户定义的一个整数参数,w_len允许链接两个不交叉的片段,只要一个的开始位置在另一个的末尾之后不多于w_len个位置即可。把(i,j,k,l)和(i’,j’,k’,l’)链接在一起得到的片段是(i,j,k,max(l,k’-k+l’))每当定位一个由Q和Sj二者匹配的模式P∈П时,便使一个新的片段与数据库序列Sj相关联,这时便发生相容片段的链接。如果已经存在与Sj关联的片段和新到达的片段相容,则相关的一对新片段和已存在片段被放弃,而由它们链接而成的结果替代。
在识别出Q和数据库序列之间的所有局部相似性之后,剩下的任务是评价这些相似性。这是通过给每个与至少一片段相关联的数据库序列Sj赋予一个评分(使用由用户定义的评分矩阵)来完成的。可有几种选择用于评分功能。本领域的普通技术人员将会理解在这里所发明的技术的其他评分方法。
如前所述,一种途径是单独评分Sj的每一片段,并对Sj赋予这些评分中最高的一个评分。可按以下两种方式之一对一个片段(i,j,k,l)评分不允许空位在这种情况下,由片段中蕴含的无空位对比计算评分,即搜索的区域Q[i,i+l-1]和序列的Sj[k,k+l-1]的对比。再有,给予用户以可选功能,即通过设置变量extend来扩展该片段“周围”的对比。如果extend值大于零,则由区域Q[i-extend,i+l-1+extend]和Sj[k-extend,k+l-1+extend]的无空位对比来计算评分。
允许空位这一可选功能只当extend>0时才可用,它通过允许在对比区域中存在空位,从而允许对该片段的周围区域进行更精细的评分。
如前所述,还提供了其他评分可选功能,其中考虑当前被评分的那些与数据库序列Sj相关联的片段的相对顺序。在如前述对每个片段单独评分之后的一个步骤是构成有向加权图,如图8所示。该图的顶点V是与Sj关联的片段,而且,如果i<=i’和k<=k’则在片段(i,j,k,l)和(i’,j’,k’,l’)之间有一有向线。每个顶点被赋予一个权值,等于相应片段的评分,而每个边E根据以下情况加权(a)这两片段的靠近程度,即(i’-i-1)之值;以及(b)这两片段当中的位移规则程度,即(i’-i)与(k’-k)的差有多大。该图内一个路径的评分是该路径所有顶点和边的权重之和。于是计算出具有最大评分的路径,而把那个评分赋予Sj。
现在参考图9和图10,它们各自的流程图概要说明由本发明的搜索引擎模块完成的两个阶片段的实施例。图9描述匹配和链接阶片段的实施例900,而图10描述评分阶片段的实施例1000。
在图9中,假定数据库D中的每个序列Sj有一个相关联的片段列表SegL(Sj)。开始时,所有这些列表都是空的。还有,集合R在开始时也是空的。随着图9的流程图所描述的计算的进展,由序列Sj使R变大。随着一个序列插入R,它带出了它的片段列表SegL(Sj)。
这样,对于П中的每个模式P(块902),搜索引擎做下列操作。在步骤904,搜索引擎确定P是否匹配Q。如果否,则进到词典中的下一个P。如果是,则在步骤906中搜索引擎确定是否已由用户启动了复杂度检验分量。如果它已被启动,则在步骤908中,引擎确定P对Q的匹配是否是低复杂度匹配(下文中将更详细解释)。如果是,则引擎进到词典中的下一个P。如果否,则对P匹配Q所在的所有偏移i(块910)和对LD(P)中的所有(j,k)(块912),引擎进行如下操作。在步骤914,它把片段(i,j,k,|P|)与SegL(Sj)中的任何相容片段链接。然后,引擎把结果加到SegL(Sj)中。
在步骤916中,引擎确定Sj是否在R中。如果是,则引擎返回步骤914。如果否,则引擎把Sj和SegL(Sj)加入R中。对P匹配Q的所有偏移i和对LD(P)中的所有(j,k)进行步骤914至916。对模式词典中的每个P重复整个过程(步骤904至916)。
因为匹配和链接已经完成,搜索引擎实行评分操作(图10)。于是,在步骤1006中,对R中所有序列Sj(块1002)和对Sj中所有片段(块1004),引擎对S计算片段评分。然后,在步骤1010,对R中的所有序列Sj,引擎计算Sj的序列评分。最后,在步骤1012,引擎报告R中的最高评分以及各自序列评分所蕴含的局部对比。
再参考图4,如前所述,搜索引擎模块110可以包括复杂度检验分量(例如图9的步骤906)。复杂度检验分量负责抛掉因为低复杂度区域而产生的局部同源性。首先,低复杂度检验发生在两个阶片段词典构成阶片段(“词典构成”部分)以及搜索阶片段(本部分)。
在词典构成阶片段,低复杂度区域被以两种方式处置。首先,当在输入数据库中寻找模式时,我们放弃(即从输入中去掉)那些含有L个或更多个连续出现的同一氨基酸的所有蛋白质区域(L是在词典构成阶片段设置的一个整数参数;对于我们这里的目的,假定它有某一固定值就足够了)。这就考虑了如下面用黑体表示的低复杂度区域(点点表示在所列串的左和右还有多个氨基酸)……ASDFHRTYIUSFFFFFFFFFFFFFFFFFFAKJRBVCJ……然而,这只是低复杂度区域的一种情况。还存在许多情况,例如考虑如下区域的黑体部分GFWRETIOJIFPAPAPAPAPAPAPAPAPAPAPAPAJSHDGF为处置那种区域(即具有广义重复组合的区域),我们还放弃一个给定模式P的所有重叠出现。换言之,如果模式P在偏移k1和k2(这里k2>k1)处匹配数据库序列Sj,而且k2-k1小于P的长度,则不论这哪一个偏移都不被放入模式P的偏移列表LD(P)中。例如,在上述区域中,模式“P.P.PA”有长度6,(除了其他位置外,还)出现在偏移12和14处,即在重叠的位置,因为14-12=2,而2<6。
在现在的搜索引擎阶片段,我们有两种方式捕获和抛弃低复杂度同源性。第一种方式是对上面给出的例子一般化。简言之,我们想要抛弃“语言不丰富”的所有模式,即它们表现出对一个特定氨基酸的过度表现。为此目的,我们允许用户设置一个参数V之值(0和1之间的一个实数)。只有当P的一个变率V(P)不大于V值时,匹配于查询序列Q的模式P才会被进一步考虑。具体地说,对于每个模式P,我们定义它的变率V(P)为 即使通过了上述变率检验,还有第二级检验。这第二级试图捕获低复杂度的一种更难捉摸的表示。为理解是怎样做的,考虑如下实例。让我们假定搜索蛋白质Q是如下简单串Q=FQGDSAAABBBBAABBSJIEKL并让我们考虑模式P=“A…B..AB”。该模式在偏移7处与该序列匹配,如下所示A…B..ABFRGDSAAABBBBAABBSJIEKL该匹配区域及其直接邻近的周围区域是低复杂度区域(它只由‘A’和‘B’组成)。然而,模式P的变率只为0.5。为处置有这种字符的低复杂度区域,我们允许用户定义整数margin和min_m(这里min_m<=2*margin)以及一个百分数perc。于是,我们在实际匹配位置(这里是搜索的偏移7)左侧margi个字符和右侧的margin个字符当中检验所考虑模式(这里是模式“A…B..AB”)的近似匹配。如果当把模式P放置在一个给定的偏移处,在该模式中有规则字符的至少perc%匹配于该搜索的基础字符,则模式P在该搜索的这给定偏移处近似匹配。例如,如果perc=75%,则模式“A…B..AB”在偏移6和8处近似匹配Q,如下列所示A…B..ABFRGDSAAABBBBAABBSJIEKL(在偏移6)A…B..ABFRGDSAAABBBBAABBSJIEKL (在偏移8)因为在这两个偏移处,每个有模式规则字符的75%(即4个中的3个)匹配于相应的搜索字符。在定义了参数margin、min_m和perc,我们现在可以说,在这一级检测过程中何时一个导出搜索和数据库区域之间局部同源性的模式被认为是低复杂度的。考虑在偏移X处匹配搜索Q的模式P和在偏移Y处的一个数据库序列S。如果以下两个条件中任何一个为真,则认为这种匹配是低复杂度的,这两个条件是(ⅰ)在X的左侧2*margin个字符和右侧2*margin个字符的至少min_m个中该模式近似匹配于搜索Q;或(ⅱ)在Y的左侧2*margin个字符和右侧2*margin个字符的至少min_m个中该模式近似匹配于序列S。Ⅲ.词典构成如前文提到的那样,在一个最佳实施例中,词典构成方法是在搜索引擎从用户接收一个查询序列之前完成的。再参考图1,这是因为,搜索引擎模块110最好利用词典构成模块130构成的模式词典120。词典构成模块130实现本发明的数据库处理方法(下文中解释)以构成模式字曲(或称生物学词典)。然而,也如前面提到的那样,模式字曲120可以由不同于这里所述的搜索引擎使用。就是说,现有的搜索引擎可以利用根据本发明从一源数据库中挖掘出来的模式。尽管如此,根据一个最佳实施例,将假定根据这里描述的本发明方法构成的模式词典将被也是这里描述的本发明搜索引擎所使用。
在词典构成阶片段(也称作信息收集阶片段),确定所考虑的数据库D中发现的所有显著的(L,W)模式的集合П。这实质上是一个数据挖掘过程,其中D被用于发现在D的序列当中隐含的关系。其想法集中于那样一些关系,它们被认为是没有预料到的,而且由于那种特性,它们也被认为是生物学上相关的。为了我们的目的,一个模式的显著性将由它在D内的支持度来描述。更具体地说,我们将试图定义数据值Kmin(最小支持度)使得具有支持度至少为Kmin的每个模式能表现为统计学上是重要的。所有这些模式(以及少数例外,它们不能遵从最小支持度要求)将被包括在集合П中,作为向搜索阶片段的输入。
请回忆一下,Kmin的概念首先是在前面的“定义”一节中引入的。同样,“密度”的概念也是在那里引入的。请回忆一下,密度描述G(p)的两个成员之间同源性的最小量(这里G(p)是指构成所有串的多肽语言,这些串能通过以∑中的任意残基替代每个不必关心字符来从P中得到),并且是由两个整数L和W(L≤W)定义的如果P中以一个氨基酸起始和终止并有长度至少为W的每个子串包含L或更多个残基,则称模式P有一<L,W>密度。再有,它些参数也是在上面纳入的美国专利申请09/023,756中描述过,该申请于1998年2月13日提交,是针对“TEIRESIAS”算法的。
尽管本发明的一个最佳方法在构成模式词典П时使用了参数L和W,但应该理解,用于确定一组序列的任何两个成圆间同源性最小量的其他已知技术也能利用。
设定参数L、W和Kmin之值涉及到要考虑若干个有时是相互冲突和相互关联的因素。例如,比值L/W描述在搜索阶片段所允许的查询序列和D中蛋白质同源性量。小L/W将允许检测弱相似性。因为若干个值对(L,W)都能导致相同比值L/W,那么L和W的确切设置应该是什么呢 选择大的L值通常会造成信息收集阶片段运行时间长(除非L/W接近于1)。再有,选择大的L会忽略只有少数氨基酸的弱模式,而这些又是感兴趣的模式(即通常被现有相似性搜索工具漏掉的那些)。反之,选择太小的L(例如2或3)则可能是无用的,因为在那种情况下,在输入数据库D中有L+i个残基(对于小i)的(L,W)模式的分布与具有D的氨基酸组成的一个随机数据库中的相应分布没有显著区别。在最一般的情况中,应该理解,L、W和Kmin之值能完全任意地选择。然而,为了充分保证所发现的模式很好地超过统计学噪声水平,我们以一种统计学构架(即设置上述参数的一种方式)来扩展模式发现过程。
为使上述之点更加清楚,考虑图11,它把称为SwissProt Rel.34或SP34的一个测试数据库(见A.Bairoch和R.Apweiler的“SWISS-PROT蛋白质序列数据库及其在1998年中的补充TrEMBL,”核酸研究,2638-42,1998)中的模式分布与相应的随机分布进行比较。图11描述了SP34中具有给定主干结构的模式分布(该分布由符号“○”表示)和与同一主干的随机分布(该分布由符号“+”表示)进行的比较。请回忆一下,主干的概念是在前文“定义”一节中首先引入的。在曲线中的一点(X,Y)标明,存在(该给定主干结构的)确切的Y个模式,这些模式每个有X个支持度,即它由确切的X个不同的数据库序列来匹配。这里所示结果是使用SP34的一个“清除过的”版本得到的(下文中将解释对一数据库的清除)。对于SwissProt,我们计算每个具有确切的L个残基的<L,W>模式的支持度(对于图11中所示L、W值)。然后,其结果制成表,对每个可能的主干建立一行;与给定主干B对应的行的第ⅰ列指出在SwissProt内具有支持度ⅰ的(那个主干结构的)模式个数。随机分布是严格遵循同样的途径对SwissProt的N=2000个随机混合版本得到的(图13描述借以得到每个混合版本的混合过程)。在这种情况下,给定主干B的行是对所有这2000个表中与B对应的行的平均。结果,第ⅰ列给出具有SwisProt残基组成的随机数据库内确切的ⅰ个序列中出现的具有主干B的模式平均个数的足够准确的估计值。在图11中,我们针对相同主干的平均值分布画出选定主干的SwissProt结果。虽然所呈现的结果涉及特定的主干,但若使用其他主干也不会有质的改变。
请注意,我们在使用2000个样点(输入数据库的随机混合版本)。这只是为了演示。原则上讲,样点的个数可以任意设定。一般而言,随着这种样点数的变大,我们所得到的估计值能更准确地收敛到它们的真值。对于要计算的估计值给出任何所希望的置信水平,便能使用标准的统计学理论来决定应使用多少样点。
如图11中可以看出的,只有当L变为5或更大时,我们才能开始区分出相对于随机数据库而言在SwissProt中的组成偏倚(利用模式表示)。一般而言,L值将依赖于下层数据库D的大小数据库越大,该值应越高。所示关于SwissProt的结果是使用L=6得到的。对于W,我们选值15,于是比值L/W(即最小允许的同源性)是40%。
设定L和W值之后,剩下的是决定最小支持度Kmin。我们只集中于具有确切L个残基的模式,因为,每个更大的模式包含至少一个具有确切的那么多氨基酸的子模式。一个途径是选择Kmin,从而使一个模式出现在Kmin个或更多个不同序列中的概率为小值。当然,更仔细地观察图11(d)会发现这一途径可能是太严格了。具体而言,考虑K=15的支持度水平。随机分布表明,若只靠偶然性则可预期有1至2个模式具有支持度K。所以,根据前述标准,在SwissProt内的具有支持度15的一个模式应被认为是不重要的。然而,这两种分布在那个支持度水平上有惊人的差异。特别是,尽管在K=15处的随机分布均值为1.5左右,但在SwissProt中,有大约180个模式具有支持度15。
于是,情况似乎是这样如果弧立地考虑一个模式的概率,那么根据上述分布,其结果是将会抛掉许多处在噪声水平以上的模式。这一观测促使我们使用关于显著性的一种不同的标准。
现在参考图12至图15,我们给出流程图以说明确定显著性标准的一种最佳途径。就是说,我们提供一种计算Kmin的方法。当给定Kmin值时,便能通过把源数据库中所有的至少以Kmin值作为支持度的模式包括在其中来构成模式词典П。这样,可以理解,图1中的词典构成模块130可实现图12至图15描述的过程。
一般而言,在我们的途径中,我们不去考虑单个模式,而是一起考虑具有一特定主干结构的所有模式。更具体地说,对于任何给定的主干B和一下伏数据库D,令NB,K为NB,K=在D内具有主干B且有支持度K的模式个数同样,令NB,K为和NB,K对应的随机变量(定义在D的所有混合版本空间上)。于是,最小支持度Kmin是使下列不等式成立的第一个数Kmax{Pr[XB,K≥NB,K]}≤threshold这里,threshold是为把一置信水平加到由上列不等式给出的最小支持度Kmin上而由用户定义的一个概率。一个较小的threshold(阈值)会导致一个较大的Kmin值,还会导致最终选择的模式有更大的统计学重要性。
这样,作为确定显著性标准Kmin的过程的输入,我们有源数据库D、整数参数L和W、与样本数对应的整数N以及介于0和1之间的一个实数值的threshold(阈值)。当然,作为过程的输出,我们得到整数Kmin使得D中具有支持度Kmin或更大值的所有模式在统计学上是重要的,所以被包括在模式词典中,一旦收到用户的搜索,该模式词典便被搜索。
下面对流程图的解释使用各种符号,其中一些已在上文中引入。然而,为清楚起见,应用如下定义。如果给定任何模式P,则P的主干B(P)定义为{1,0}上的串,它是把P的每个规则字符用‘1’,代替,把P的每个不必关心字符用‘0’代替而得到的,例如,如果P=A..F.G..R,则B(P)=100101001。如果B是一个任意主干,而P是一个模式而且B(P)=B,则我们说P是一个B-模式。于是,说NB,K是D中具有支持度K的B-模式个数,XiB,K是在第i个随机数据库中具有支持度K的B-模式的个数。而mB,K是所有的XiB,K平均值,SB,K是所有XiB,K的方差。应该理解,由于我们对随机变量XB,K的分布没有任何分析性描述,所以我们利用标准的采样技术。这样,对于给定的数据库D,我们能对随机变量XB,K的平均值(均值)mB,K和方差(偏差)SB,K二者在实验上计算出准确的点估计值。
首先参考图12,整个过程1200以对D运行TEIRESIAS算法(即如前面描述的,并在上文中纳入的序列号为09/023,756号美国专利申请(1998年2月13日提交)中描述的和计算NB,K(步骤1202)开始。尽管TEIRESIAS算法是优选算法,但应该理解,使用其他传统技术也可计算NB,K。然后,对i=1至N(块1204),进行下列步骤。
在步骤1206,产生一个随机数据库R_Di。在图13的内容中对这一步骤作进一步解释。如在过程1300中所示,R_Di(块1302)是对D中每个序列S(块1304)计算S中字符的随机排列(步骤1306)。对S中字符的随机排列称作S’。S’被加到R_Di中(步骤1308)。这一过程重复进行,直至D中每个序列S都被处理为止(块1310)。这样。R_Di包括所有随机排列S’。返回图12,在步骤1208,对R_Di运行TEIRESIAS,以计算XiB,K。步骤1206至1208是对所有i进行的,即直至i=N(块1210)。
然后,对每个B、K(块1212),我们使用XiB,K来计算mB,K和SB,K。在图14的内容中对这一步骤作进一步解释。如在过程1400中所示。SB,K首先置0(步骤1402)。然后,对于i=1至N(块1404),计算SB,K作为SB,K与XiB,K之和(步骤1406)。这一过程对所有i重复进行(块1408),最好由N除SB,K计算出SB,K(步骤1410)。然后,在步骤1412至1420计算偏倚mB,K。首先,在步骤1412,mB,K首先置0。然后,对i=1到N(块1414),计算mB,K作为MB,K(XiB,K-SB,K)2之和(步骤1416)。这一过程对所有i重复进行(块1418)。最后由N除mB,K计算出偏倚mB,K(步骤1410)。
返回图12,在步骤1216,现在用mB,K和SB,K计算PB,K。在图15的内容中对这一步骤作进一步解释。如过程1500中所示,在步骤1502中定义一个实数C,使得NB,K=(mB,K+1.96SB,KN(1+1.962N))+C(SB,K1+1.962N)]]>这里N代表样本或试验的具体次数,例如2000。这样,在步骤1504,计算出PB,K等于1C2]]>。应该理解,PB,K是概率Pr[XB,K>NB,K]的上限。这样,概括起来,我们使用XB,K的采样均值和偏差来对手头的NB,K值计算C。应该理解,如在统计学学领域公知的那样,常数C是和切比雪夫(chebychev)不等式相关联的。请注意,常数C是用95%置信水平计算出的,然而这不是一个要求。就是说,任何其他值也是可应用的。
返回图12,对每个B、K重复步骤1214(图14)和1216(图15)。然后,在步骤1220。Kmin被确定为使maxB{PB,K}≤threshold的最小K。在下一节中呈现的测试情况(SwissProt.Rel.34)中,所选择的threshold值是Kmin=15,即其支持度水平是靠偶然性所期望的给定主干结构的模式只有1.5个。存在一种折衷我们希望允许有少量由模式导出的局部相似性可能是偶然性的结果(上文中的1.5个模式),以便能捕获在SwissProt内存在的在那同样支持度水平上由其他模式蕴含的许多统计学上重要得多的相似性。
在下一节中提供一些实验结果之前,我们首先解释在进行本发明的词典构成方法之前清除一数据库的概念,这一过程在图16中描述,它也可以由图1的词典构成模块130来实现。若干数据库包括一些高同源性序列组(例如血红蛋白α-链蛋白质)。这些组不仅通过引入巨大数量的模式使得模式发现过程减慢,而且它们还能虚假地提高一个模式的显著性。这发生于那样一些模式,它们在一个高同源性序列家族内出现多次都只偶而出现在其外部。
为对付这些问题,在模式发现过程开始之前可使数据库被“清除”。如图16所示,清除过程1600涉及识别高相似性蛋白并将它们组合成组(步骤1602)。如果两个序列在最佳对比后,较短者有其位置的X%(例如50%)与较长序列的那些位置完全相同,则把这两个序列放在同一组。所得到的组称作冗余组。将对其进行信息收集过程的集合D’包含(a)在D中那些未被发现与其他蛋白质有足够同源性的序列;以及(b)来自每个冗余组的最长序列(步骤1604)。最后,每个冗余组由TEIRESIAS算法单独处理(步骤1606),收集模式,直至该组的所有序列匹配于这些模式的至少一个。这一途径通过对每个结构域产生至少一个模式,从而保证即使是含有多结构域蛋白质的组也能被正确处置。值得指出的是,由处理冗余组所得到的模式通常是相当致密(残基数要比不必关心字符数大得多)和长的。这是组序列高同源性的结果。对于这类模式,我们允许在搜索过程中近似匹配。Ⅳ实验结果在这一节,我们讨论与本发明最佳实施例相联系的实验结果。就是说,下述结果是以SwissProt Rel.34作为测试数据库,实现前面详细解释的词典构成(信息收集)和搜索引擎这两种方法所产生的。在下面的第一小节(A)中,通过分析对于SwissProt这些模式能达到的复盖程度和给它们当中最频繁发生的模式作评注,来给出对信息收集阶片段发现的模式的定量和定性描述。在下面的第二小节(B)中,我们对若干个查询序列给出搜索阶片段的结果。A.信息收集对SwissProt的处理始于上一节中描述的对它的清除。图17中详细给出这一过程的结果。对SwissProt的清除过程产生出9,165个高相似性序列冗余组。通过从原始输入中去掉高相似性序列,然后再向其中加入每个冗余组中的最长序列来扩大所得到的集合,由此构成清除后的数据库(这是信息收集阶片段将对其进行操作的数据库)。
在得到清除后的数据库之后,要使TEIRESIAS对它进行工作,所需要做的就只有设置参数L、W和Kmin之值。如已经解释的那样,我们使用的设置是L=6和W=15。再有,在这里所报告的结果中,在偏差计算中我们选择threshold值为10-11和置信水平95%。对这些设置计算出的Kmin值是15。以上面指定的L、W和Kmin值,对清除后的数据库运行TEIRESIAS,产生由534,185个模式构成的集合П。
挖掘清除后的数据库只是信息收集的第一步。还必须对9,165个冗余组应用模式发现过程。我们再一次使用TEIRESIAS处理每个冗余组,收集足够的<6,15>模式,以保证组中的每个序列匹配至少一个模式。然后,把这些模式加到集合П中,以构成最终的模式集合П,它将用于搜索阶片段。图18提供了由这些模式达到的对整个SwissProt Rel.34复盖程度的信息。由一个模式所复盖的数据库区域是确切地匹配于该模式的那些子串。请注意,对于致密且长的模式(大多数来自对冗余组的处理),我们已允许近似匹配,这里,模式的‘大部分’(具体地说,该模式残基的80%)被一个区域匹配。值得指出的是,大部分未被复盖的序列是片段。更具体地说,只有231个序列的大小超过50。图19给出П中模式的下列字符的分布(ⅰ)SwissProt Rel.34模式的长度;和(ⅱ)氨基酸或残基的个数。
如图18中举例说明的那样,搜索阶片段的成功所要追寻的关键目标之一已经实现。剩下要回答的问题是所发现的模式是否是生物学相关的。在解决这一所关注的问题的一种努力中,我们分析了这些模式中最频繁发生的模式。图20中给出所得到的评注。从这一分析中看出,显然(至少对被检验过的模式)。模式发现过程识别出的序列特性在生物学上是重要的。
图20显示出100个具有最高支持度的模式。每当可能时,在一类中的模式便彼此对比。为了方便,对下列括号内的表达式使用小写斜体黑体字母a[STGDAR],b[STGDK],c[STGDKY],d[STGK],e[GASMDL],f[GISETV],g[LIVMFY],h[LIVMF],i[LIVMA],j[LIVMC],k[LIVMF],l[ILVMF],m[QKCS],n[KRQA],o[IVTNF],p[QKCASN],q[QKIAGN],r[RKAHQN],s[KRQNE],t[KRQMN],u[LFYIMS],以及v[AGSPE]。括号指出的位置是可由括号内的任何一个残基占据的位置。
应该理解,并非所有被发现的模式显示出这种清楚的功能特性。它们当中有一些对应的区域(例如环形体、卷曲螺旋体、跨膜区在传统上认为至少对于功能上评注一个蛋白质是不重要的。尽管有时这种弱的相似性能对表征蛋白质区域提供有用的线索。我们已经实现了两种机制,它们允许利用这一潜力。首先,向用户提供被查询序列匹配的所有模式的列表。一个专家用户在大多数情况中将能识别出哪些模式在生物学上是重要的。然后,对一特定模式的选择将导致细化评分,只集中于由这一模式复盖的数据库区域。第二,当下伏数据库包括对各种数据库序列区域的评注时,这评注与模式结合使用,以提取有用信息。在下一小节中将给出使用这两种机制的实例。B.搜索为了举例说明搜索阶片段(和解释可以如何使用它),我们选择了两个查询序列。第一个是研究和评注得很好的核心组蛋白质3蛋白质(SwissProt标识H31 HUMAN),而第二个是尚未被表征的来自Methanococcus Jannaschii的ORF(SwissProt标识YZ 28 METJA)。H31_HUMAN由于核心组蛋白在细胞内包装DNA中起到中心作用,所以核心组蛋白已经是深入研究的对象。这些小蛋白富含带有正电荷的氨基酸,它们帮助这些蛋白质结合到带有负电荷的DNA双螺旋体上,见J.D.Watson、N.H.Hopkins、J.W.Roberts、J.Steitz和A.M.Weiner的“基因的分子生物学”,The Benjamin/Cummings出版公司,第四版,1987。4个核心组蛋白(H2A、H2B、H3和H4)结合到一起,成为一个八聚体结构(使人想起圆柱状楔形物),它提供基底供146bps长的DNA片片段缠在其周围,这样在细胞染色质内形成核小体复合物。
在SwissProt Rel.34数据库中包含33个序列被评注为组蛋白3,H31_HUMAN是其中之一,是在人类中发现的核心组蛋白3蛋白质。用我们的同源性检测工具搜索这一序列的最高评分结果列表于图21。在每个序列旁边给出那个序列和H31_HUMAN之间最高评分局部对比的相似性评分。在图21中提到的评分是用PAM 130矩阵得到的(见M.O.Dayhoff、R.M.Schwartz和B.C.Orcutt的“蛋白质中进化变化的一个模型”,蛋白质序列和结构图集,5345-352,1978),而且来自数据库的每个匹配序列被赋予其最高评分片段的评分。
在SwissProt Rel.34中的全部33个核心组蛋白3都被正确地识别为与H31_HUMAN有同源性。再有,还发现若干其他蛋白质(YB21 CAEEL,CENA HUMAN,CSE4-YEAST,YL82_CAEEL,CENA BOVIN,YMH3_CAEEL)与H31_HUMAN有广泛的局部相似性。对这些蛋白质的评注进行的考察表明,它们是已知组蛋白3样蛋白质。作为最后说明,H3_NARPS(一种已知的组蛋白3)只是作为片片段出现在SwissProt的第34版内,这是它在结果列表中评分最低的理由。
图22是对查询序列H31_HUMAN产生的对比的所选视图(高评分和低评分二者)。在图22中,显示了H31_HUMAN与高相似性(H3_YEAST)和中等相似性(CENA HUMAN)蛋白质的局部对比。对于每个序列,报告了若干个局部相似性。在每个这种相似性中,相关的搜索(“Query”)和数据库序列(“Seq”)区域一个列在另一个之下,使它们之间有造成的共有序列区域。我们用字符‘+’指示化学上类似的氨基酸。YZ28_METJA在某种意义讲,H31_HUMAN是一个容易的测试情况,因为在数据库中包含若干个与它有高度同源性的序列。一个要问的有意义问题是,当提供一个“边缘序列”时,即对于没有已知的同源性存在的序列,我们的方法会进展如何呢 在针对这一问题的努力中,给该系统提供一个尚未评注的序列YZ28_METJA,一个来自M.jannashii基因组的具有1272个残基的开放阅读框。
图23描述了当提供查询序列YZ28_METJA时由我们的系统产生的最高评分对比。所用的突变矩阵是PAM130。
为了在功能上评注YZ28_METJA,上面提到的结构并不是很有启发意义,因为数据库线索涉及相当多样的蛋白质头两个(NTNO_HUMAN,NOTO_BOVIN)是依赖于钠和去甲肾上腺素转运蛋白,而最后一个(KAPL_APLCA)是一个激酶。
把这些问题记在心中,我们进行了对YZ28_METJA和数据库序列之间相似性的更仔细检查。为了进行这种分析,匹配YZ28_METJA的每个模式被单个地仔细检查。应该理解,本发明的搜索阶片段允许用户选择与手头的查询序列匹配的任何模式并集中于由那个特定模式单独导出的局部对比,而不管所有其他模式如何。这一特性被用于由YZ28_METJA匹配的每个模式。其意图是发现任何这类模式是否是一个特定的蛋白质家族所特异的,从而给出关于YZ28_METJA功能性的线索。
如所产出的那样,存在三个模式(即模式“Y..S..I…DLK”,“NIL……IKL”和“I.H.DLK……D”),它们对于激酶家族是很特异的。图24描述了对它们当中的第一个所产生的最高评分对比当中的少数几个,即对于查询序列YZ28_METJA由模式“Y..S..I…DLK”导出的最高评分局部对比。所用的突变矩阵是PAM 130。图25含有包含那个特定模式的所有数据库序列的列表。图26和27给出对其余二个模式的相应列表。图28提供了(a)被YZ28_METJA匹配的所有模式的分布和(b)被这三个激酶特异模式复盖的区域的图形表示。
图示“Y..S..I…DLK”在SwissProt中产生24个命中。所有这些蛋白质(除了NABA_PAT是一个钠/胆汁酸协同转运蛋白外)都被评注为蛋白激酶(其中两个,即KD82_SCHPO和KKK1_YEAST,被表征为推定的/可能的激酶),其大多数属于丝氨酸/苏氨酸激酶家族或表现出与该家族的相似性。再有“Y..S..I…DLK”不仅属于这些蛋白质的激酶域,而且它实际上包含那个域的活性部位(氨基酸D)。
在图25中,显示出含有模式“Y..S..I…DLK”的SwissProt Rel.34序列。它们全被评注为蛋白激酶或可能的/推断的蛋白激酶(几乎无例外地是丝氨酸/苏氨酸蛋白激酶的变种)。唯一的例外是蛋白质NABA_RAT,它被评注为钠/胆汁酸协同转运蛋白。
对这三个模式中的第二个,即“NIL……IKL”,所得到的类似结果示于图26。在这种情况中,数据库命中的个数是34,它们全是已知的(或可能的)蛋白质激酶(除了来自酵母和人支原体的两个未评注的ORF(开放阅读框)。又是丝氨酸/苏氨酸激酶占大多数。
最后,第三个模式“I.H.DLK……D”产生30个SwissProt Rel.34命中,它们全都是已知的或推定的蛋白激酶。这示于图27。再有,如这三个蛋白质中第一个的情况那样,模式“I.H.DLK……D”包括激酸域的活性部位。
注意到这样一点是有意义的,即这三个前面提到的模式是下述一般模式的具体情况(是其中的一部分)[LIVMFYC].[HY].D[LIVMFY]K..N[LIVMFYCT][LIVMFYCT][LIVMEYCT],这里,符号[XYZ]表明一个位置可由残基X、Y、Z中任何一个占据。这个更一般性的模式PROSITE数据库的条目,其访问号是PS00108,即丝氨酸/苏氨酸蛋白激酸活性部位的字符。请注意,这个PROSITE字符对于在上面检查的三个模式所复盖的YZ28_METJA的区域中提取激酶的催化部位是太特异了。这种情况(用人工智能语言,这种情况称作训练集的“过表现(overrepresentation)”)是由完全整体的有限子集训练的学习系统所具有的典型情况总是存在这样的危险,即阳性实例集合(在这种情况中是由PROSITE使用的已知丝氨酸/苏氨酸激酶的特定集合)是有偏倚的,其结果是在解释观测时所学习到的字符(这里是激酶字符)的一般化程度对于有效地外推到所考虑家族的新情况是不够的(即存在假阴性)。这个问题的解决办法是使用尽可能大的训练集,而这正是这里提出的途径的关键。
如前面提到的,图28提供了(a)由YZ28_METJA匹配的所有模式的分布和(b)被这三个激酶特异模式复盖的区域的图形表示。
在图28(a)中,(在信息收集阶片段中发现的那些模式当中)有410个模式被YZ28_METJA匹配。如果一个模式在一残基位置之前(或在那个位置)开始并在那个位置之后(或在那个位置)结束,就说该模式“复盖”了那个残基位置。这张图对于每个残基位置(X-轴)显示了有多少模式(Y-轴)复盖那个位置。如图28(b)中所示,在正文中讨论的这三个激酶模式在偏移35(模式“Y..S..I…DLK”)、112(模式“NIL……ILK”)和1052(模式“I.H.DLK……D”)处匹配该序列。使用已有的评注在被YZ28_METJA匹配的410个模式中,只有上面分析过的三个模式显示出这种清楚的功能特性。这并不意味着其余407个是无用的。能从两个序列之间的局部相似性中提取出来的生物学推论的类型并不总是具有功能性特征。有时同源性指明结构的保守性,而另一些时候它可能对应于在所比较的序列的总体功能中起到支持度作用的功能单元(例如DNA结合结构域)。在探索这种较弱相似性的努力中,我们已提供了一种利用下伏数据库中所能得到的评注的途径。在下面给出的描述中,我们假定SwissProt评注格式。
SwissProt数据库伴有大多数它的序列的序列区域评注(FT行,见F.Bairoch和R.Apweiler的“SWISS-PROT蛋白质序列数据库及其在1998年的补充TrEMBL”,核酸研究,2638-42,1998)。一个典型的区域描述如同下列那样FT DOMAIN 528 779 PROTEIN KINASE这里关键字“FT”表明这是区域描述行,而这一行的其余部分描述该区域给出它的起始和终止位置(从相关数据库序列的残基528到并包括残基779)以及它的评注(一个蛋白激酶域)。
当提供一个模式P时,我们能使用(如已经提到的那样)偏移列表LD(P)去定位数据库中匹配P的所有序列。假定S是这样的一个序列,而且在S内的偏移j处开始一个与P匹配的子串。如果P刚好落入S的一个评注过的区域(或者全部地或者部分地),我们便能把这一区域与P关联起来。对匹配于P的每个序列S完成这一过程,便造成与P关联的区域的集合RSD(P)。图29给出对于上面描述的三个激酶模式之一,由我们的系统产生的输出的一部分的举例。就是说,图29说明了使用SwissProt评注对各单个模式的分析该数据库的一些序列匹配模式“I.H.DLK……D”。对于每个这样的序列,报告出它的ID和DE行(见A.Bairoch和R.Apweiler的“SWISS-PROT蛋白质序列数据库及其在1998年的补充TrEMBL”,核酸研究,2638-42,1998),给出该序列的SwissProt名字和它的功能性的简要描述。接下来是该序列内的偏移,那是匹配的起始处。最后,对于和该模式所复盖的区域有交叉的所有评注过的区域,有FT行。
现在给定一个由查询序列Q的一个被子序列A匹配的模式P,问题是如何在表征A时使用RSD(P)。有若干个途径可被采用。例如,RSD(P)足够大,而且它的成员绝大多数其功能性一致,那么可以推断,A相当有可能有这同样的功能性。另一个考虑是模式P和由FT行描述的区域的相对长度。例如。如果一个模式P的长度为15个残基,而被评注的含有P的序列区域长度为300个氨基酸,那么人们可能不想把那个区域的评注传送给P。总之。希望最终用户把他/她的专长用于确定如何最好地利用由该系统提供的信息。
图30说明把集合RSD(P)用于评注YZ28_METJA的区域的两种方式,从而扩展了在图28(b)中画出的图画。就是说,图30显示出由YZ28_METJA各片段所匹配的模式的评注给出的这些片段的特性。利用对于也匹配这些模式的数据库序列各区域所能得到的信息,得到这些模式的评注。这些片段仍然是相对于在整个YZ28_METJA上模式分布的尖峰画出的。第一种途径(图30(b))是如果(ⅰ)RSD(P)的大小至少为15;(ⅱ)在RSD(P)中区域的大多数(80%)被评注为X;以及(ⅲ)RSD(P)的被评注为X的每个区域至少有50%被P复盖,则把评注X(例如X=跨膜区域)赋予模式P。第二种途径(图30(c))共享上述要求(ⅰ)和(ⅱ),但通过允许由模式复盖和被评注区域的百分比为30%或超过30%,使条件(ⅲ)放松。性能对于查询序列Q,同源性搜索的运行时间依赖于(ⅰ)所用模式П集合的大小;和(ⅱ)Q和数据库序列之间局部相似性(由模式匹配导出的)的实际数量。对于这里所用的SwissProl Rel.34的情况,对于大小约为一千个残基的搜索蛋白质,典型的搜索在具有256MB内存的奔腾266MHz计算机上用时4-6秒。应该提到的是,上面报告的运行时间是在把所有程序数据(模式及其偏移列表)保持在内存中的情况下达到的。对于SwissProt,这个数据占有约200MB。
根据本发明的各个方面,我们已提供了完成序列相似性搜索的一种方法,这种搜索基于在下伏的蛋白质数据库D上发现模式并利用这些模式识别一查询序列和手头数据库的蛋白质之间的同源性。我们描述了用统计学参量精确定义待搜索模式集合的方式,并讨论了如何通过把存储器引入到统计学计算中,以在识别显著同源性中这些模式能提供更大的敏感性。最后,使用SwissProt Rel.34数据库作为测试基础,展示了该方法的应用,并显示了该系统如何能应用于评注查询序列。在这方面,我们还讨论了利用所发现的模式结合下伏数据库的评注,以实现表征查询序列和数据库序列之间甚至是弱相似性的潜力。
本发明的序列同源性检测系统的一个方面,即令它与先有的基于模式的同源性检测工具不同的优点是所用模式集合的完全性。这些模式是从一个很大的训练集合即下伏数据库D内所有蛋白质集合中以无监督方式学习到的。没有会造成偏倚以致序列“应该”依据这些假设被认为是同一家庭的成员的先验假设。结果,可期望被发现的模式更敏感。再有,通过一起考虑具有不同功能性的序列,我们能发现伸展到家族边界的弱相似性(例如描述跨膜区的模式)。这种相似性虽然不足以推论出功能评注,但能给出关于所检验的查询序列的不同部分的作用的有用信息。
本发明系统的另一优点是同源性搜索所需运行时间。随着基因组数据库的大小甚至更快地增大,由在每次搜索中使用模式而不是扫描整个数据库所能提供的加速会成为一个重要因素(特别是对于希望在家运行测试而不想使用公共服务器的用户)。
虽然这里参考附图描述了本发明的实施例,但应该理解,本发明不限于刚好那些实施例,本领域技术人员可对其中实现各种其他改变和修改,而不离开本发明的范围或实质。
权利要求
1.一种基于计算机的检测数据库中多个序列和一个查询序列之间同源性的方法,该方法包含如下步骤访问与该数据库关联的模式,每个模式代表数据库中一个或多个序列的至少一部分;比较查询序列和这些模式,以检测该查询序列的一个或多个部分是否与这些模式所代表的数据库序列的一些部分具有同源性;以及对检测到与该查询序列具有同源性的每个序列产生一个评分,这里的序列评分是基于根据检测到的序列的每个同源部分所产生的单个评分,而且该序列评分代表该查询序列和检测到的序列之间的同源性程度。
2.权利要求1的方法,这里的数据库包括具有已知和未知序列特性的序列。
3.权利要求1的方法,这里的序列代表蛋白质。
4.权利要求1的方法,这里的比较步骤进一步包含对于和一模式相关联的每个数据库区域产生一片段,它与查询序列的一个部分匹配。
5.权利要求4的方法,这里该片段表示为值(i,j,k,l)的集合,这里(j,k)代表与该模式关联的数据库区域,以使k代表数据库中该模式匹配的第j个序列的偏移,i代表该模式匹配的查询序列的偏移,l代表该模式的长度。
6.权利要求4的方法,这里的比较步骤进一步包含当产生不只一片段时,把相容片段链接在一起以形成扩展片段。
7.权利要求4的方法,这里比较步骤进一步包含把匹配于至少一个模式(该模式还匹配该查询序列)的序列和对每个序列产生的各自片段收集到一个集合中。
8.权利要求7的方法,这里的评分步骤进一步包含对与该集合中每个序列关联的每个片段赋予一个评分。
9.权利要求8的方法,这里的评分是根据突变矩阵赋予每个片段的。
10.权利要求8的方法,这里的评分步骤进一步包含根据赋予与该序列关联的各片段的评分对该集合中的每个序列赋一个评分。
11.权利要求10的方法,这里序列评分赋予步骤进一步包含构成一个有向图,这里的顶点代表与该序列关联的片段,并根据与顶点代表的两个片段关联的各自偏移的相对顺序用边来连接两个顶点,所述各自偏移包括查询序列的偏移和被评分序列的偏移。
12.权利要求11的方法,这里根据片段评分赋予每个顶点一个权值。
13.权利要求12的方法,这里根据相关查询序列偏移的位移和被评分序列偏移的位移之并来对每个边赋予一个权值。
14.权利要求13的方法,这里边权值与位移之间差值大小成反比关系。
15.权利要求14的方法,这里的序列评分赋予步骤进一步包含识别出一个穿过该有向图的路径,它产生途径中包括的顶点权值和边权值的最高组合评分,该最高组合评分,该最高组合评分代表该序列的评分。
17.权利要求16的方法,这里当一个模式代表的序列区域有至少为预先确定数量的重复字符,则把该模式表征为一个低复杂度模式。
18.权利要求16的方法,这里当一模式代表的序列区域有同一组字符重叠发生,则把该模式表征为一个低复杂度模式。
19.权利要求16的方法,这里根据与一模式关联的可变性,把该模式表征为一个低复杂度模式。
20.权利要求19的方法,这里一个模式的可变性是在一个模式中一个字符的出现次数与被该字符复盖的模式中位置总数之比。
21.权利要求16的方法,这里当一模式在与查询序列关联的一个偏移的左侧和右侧至少预先给定字符数内近似地匹配该查询序列时,把该模式表征为一个低复杂度模式。
22.权利要求16的方法,这里当一模式在与来自数据库的序列相关联的一个偏移的左侧和右侧至少预先给定字符数内近似地匹配这个来自数据库的序列时,把该模式表征为一个低复杂度模式。
23.一种基于网络的检测在网络服务器处访问的数据库中多个序列和在网络客户端装置处输入的查询序列之间同源性的方法,该方法包含如下步骤在服务器处从网络得到在客户端装置输入的查询序列;在服务器处访问与该数据库关联的模式,每个模式代表数据库中一个或多个序列的至少一部分;在服务器处比较该查询序列和这些模式,以检测该查询序列的一个或多个部分是否与这些模式所代表的数据库序列的一些部分具有同源性;以及在服务器处对检测到与该查询序列具有同源性的每个序列产生一个评分,这里的序列评分是基于根据检测到的序列的每个同源部分所产生的单个评分,而且该序列评分确定该查询序列和检测到的序列之间的同源性程度。
24.权利要求23的方法,这里的网络包括因特网。
25.权利要求23的方法,这里的数据库包括具有已知和未知序列特性两者的序列。
26.权利要求23的方法,这里的序列代表蛋白质。
27.在网络上检测一数据库中多个序列和一查询序列之间同源性的装置,该装置包含一个客户端装置,被配置成输入查询序列和在网络上传送查询序列;以及一个服务器,通过网络与该客户端装置相连,并被配置成(ⅰ)通过网络从客户端装置得到查询序列;(ⅱ)访问与该数据库关联的模式,每个模式代表该数据库中一个或多个序列的至少一部分;(ⅲ)比较查询序列和这些模式,以检测该查询序列的一个或多个部分是否与这些模式所代表的数据库序列的一些部分具有同源性;(ⅳ)对检测到与查询序列具有同源性的每个序列产生一个评分,这里的序列评分是基于根据检测到的序列的每个同源部分所产生的单个评分,而且该序列评分确定该查询序列和检测到的序列之间的同源性程度;以及(v)把检测结果的至少一部分通过网络传送到客户端装置。
28.检测一数据库中多个序列和一查询序列之间同源性的装置,该装置包含至少一个处理器,其操作是(ⅰ)访问与该数据库关联的模式,每个模式代表该数据库中一个或多个序列的至少一部分;(ⅱ)比较查询序列和这些模式,以检测该查询序列的一个或多个部分是否与这些模式所代表的数据库序列的一些部分具有同源性;以及(ⅲ)对检测到的与查询序列具有同源性的每个序列产生一个评分,这里的序列评分是基于根据检测到的序列的每个同源部分所产生的单个评分,而且该序列评分确定该查询序列和检测到的序列之间的同源性程度。
29.检测一数据库中多个序列和一查询序列之间同源性的一各制成品,包含一个机器可读媒体,其中含有一个或多个程序,当它们被执行时完成以下步骤访问与该数据库关联的模式,每个模式代表数据库中一个或多个序列的至少一部分;比较查询序列和这些模式,以检测该查询序列的一个或多个部分是否与这些模式所代表的数据库序列的一些部分具有同源性;以及对检测到与该查询序列具有同源性的每个序列产生一个评分,这里的序列评分是基于根据检测到的序列的每个同源部分所产生的单个评分,而且该序列评分确定该查询序列和检测到的序列之间的同源性程度。
全文摘要
在本发明的序列同源性检测方面,一种基于计算机的检测一数据库中多个序列和一查询序列之间同源性的方法包含以下步骤。首先,该方法包括访问与该数据库关联的模式,每个模式代表该数据库中一个或多个序列的至少一部分,接下来,将该查询序列与这些模式比较,以检测是否该查询序列的一个或多个部分与这些模式代表的数据库序列中的一些部分有同源性。然后,对检测到的与该查询序列有同源性的每个序列产生一个评分,这里的序列评分是基于根据所检测到的序列每个同源部分产生的单个评分,而且该序列评分代表该查询序列与检测到的序列之间的同源性程度。
文档编号G06F17/30GK1289424SQ99802596
公开日2001年3月28日 申请日期1999年10月29日 优先权日1998年10月30日
发明者阿里斯·福劳拉特斯, 艾塞德勒·若高瑟斯 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1