基因识别需要解决两大问题:预测出编码蛋白质的区域,并找出基因的各个功能位点。我们可以将这方面的大量研究大致划分为四个阶段。第一阶段主要是致力于发现基因组DNA中编码区域的位置。代表这一阶段的两种程序,一个是TestCode,基于Fickett等年的工作,另一个是GRAIL(UberbacherMural,)。它们的缺点是不能准确预测外显子的位置。第二阶段,如SORFIND(HutchinsonHayden,)、Xpound(ThomasSkolnick,)等,结合了剪切信号和编码区识别,并据此预测可能的外显子,但没有进一步将预测到的外显子拼接成完整的基因。第三阶段的程序开始试图预测完整的基因结构,包括GeneID(Guigoetal.,)、GeneParser(SnyderStormo,,)、GenLang(DongSearls,)等。但是这些程序的预测准确率总是不太理想。另外的问题是,它们一般都假定输入的序列中只包含一个基因。因此后期的研究工作主要致力于提高预测准确率及适用范围,于是产生了Genscan(Chris.Burge,)、AUGUSTUS(MarioStanke,)等代表第四阶段的程序。
主要的基因识别方法大体上可以分为两大类。一类是基于序列相似性搜索的,另一类基于基因结构、各种信号等内在信息,因此叫做“从头开始”(abinitio)基因识别方法(Rogicetal)。当然,近年来也涌现出了一些结合以上两类方法的软件,以及一些其它利用物理学等原理的基因识别方法。
2.1基于序列相似性搜索的方法
这类方法的基本思想很简单,就是经过对比,寻找已知EST(expressedsequencetag,表达序列标签)、cDNA、蛋白质或其它基因组与输入的基因组在序列上的相似性。一般说来,外显子由于其参与的功能,因而可能更加保守;内含子或其它基因间的区域相对说来则变化较大。因此,一旦找到这样的相似性,我们就可以利用这些信息来推测基因的结构。如果单纯是基于与EST的序列相似性,可能还是不够的,因为EST只是对应于基因序列的一部分,还不能预测出给定区域完整的基因结构(Rogicetal)。寻找序列相似性的方法可以是局部比对
或全局比对。最常用的序列比对工具是BLAST及其衍生程序(GishandStates;Altschuletal.)、Sim4等。另外两个软件,PROCRUSTES(Gelfandetal.)和GeneWise(BirneyandDurbin)使用基因组序列中同源蛋白与翻译后的ORF的全局比对进行基因预测。一种新的启发式方法,基于基因组的两两比较,已经被应用于软件CSTfinder(FlavioMignoneetal)中。这类方法最大的局限在于新发现的基因中,只有一半左右和数据库中的已知基因有着显著的同源相似性。
2.2“从头开始”的基因识别方法
DP,动态规划;MM,马科夫模型,CHMM,classHMM;GHMM,generalizedHMM;IMM,interpolatedMM;NN,神经网络
表1.一些“从头开始”基因识别软件(可能结合同源性信息)
“从头开始”基因识别方法主要是依据序列中的两类信息:“信号”和“内容”。“信
号”是指一些较短的功能序列(如剪切位点,起始密码子和终止密码子等)。“内容”指的是物种特异性的密码子使用偏好性。
许多算法可以用来建立基因结构的模型,如动态规划、线性判别分析、隐马科夫模型、神经网络等。根据这些方法,产生了大量的基因识别软件,表1列出了其中一些较为常用的。目前许多较为成功的基因识别软件都是基于隐马科夫模型(HiddenMarkovModel,HMM)
的。在这种方法中,基因结构中不同的部分由HMM中的不同状态表示,状态间的转移是不被观察到的(‘隐藏的’)Markov过程,这些过程决定了产生特定(可观察到的)核苷酸的概率。由于exon和intron的长度是由pre-mRNA剪切等因素决定的,所以对于实际基因需要更通用的模型,来反映多变的长度分布。图3是一个基因组序列中的状态转移图。
图3真核基因HMM的状态转移图
对于一条特定的序列,我们可以找出该序列最有可能代表的基因功能单元(如启动子、外显子等)。所以,可以使用这种模型进行DNA序列的自动注释。
2.3一些新的方法
HMM方法的主要局限性之一,在于我们对基因结构的了解还很不全面,尤其是对新测序得到的基因组。而且,目前已知的基因也比较有限,不能代表全部可能的基因特征或组织方式。所以近来一些物理学和信号处理的方法也被应用到基因识别领域。
众所周知,DNA分子中蛋白编码区域的碱基序列存在着‘3’的周期,这是由三联体密码所决定的。离散傅立叶变换就适合用于处理周期性。对于长度为N的DNA序列,令uA(n),uT(n),uC(n),anduG(n)分别代表对应核苷酸的二进制函数,如果对应的核苷酸在位置n出现则函数值为1,反之为0。对这些序列分别进行离散傅立叶变换,得到四种频谱,分别记做UA(k),UT(k),UC(k)和UG(k)。对于给定的DNA序列,其总的频谱定义为:
S(k)=UA(k)+UT(k)+UC(k)+UG(k)
对于DNA中的编码区,S(k)峰值出现频率一般为k=N/3,而在非编码区一般不会出现显著的峰值(Tsonisetal.)。根据这个特性,可以进行基因的识别。
张春霆院士提出的Z曲线的方法,是另一种可视化分析DNA序列的有力工具。它已被应用于人类基因组(Yanetal.,)、酵母基因组(ZhangandWang,)及Vibriocholerae基因组(WangandZhang,)的基因识别。对于预测较短的编码序列,其预测准确性高于GenScan,但计算复杂度却远比后者简单。
整理自网络
欢迎