序列比對是指確定兩個(gè)或多個(gè)序列之間的相似性以及同源性,而將它們按照一定的規律排列。

中文名

序列比對

外文名

sequence alignment

用途

語(yǔ)言進(jìn)化的研究

理論基礎

進(jìn)化學(xué)說(shuō)

重要性

對算法的研究具有非常重要的意義

簡(jiǎn)介

序列比對

(alignment):為確定兩個(gè)或多個(gè)序列之間的相似性以至于同源性,而將它們按照一定的規律排列。

將兩個(gè)或多個(gè)序列排列在一起,表明其相似之處。序列中可以插入間隔(通常用短橫線(xiàn)“-”表示)。對應的相同或相似的符號(在核酸中是A,T(或U),C,G,在蛋白質(zhì)中是氨基酸殘基的單字母表示)排列在同一列上。

一方法常用于研究由共同祖先進(jìn)化而來(lái)的序列,特別是如蛋白質(zhì)序列或DNA序列等生物序列。在比對中,錯配與突變相應,而空位與插入或缺失對應。序列比對還可用于語(yǔ)言進(jìn)化或文本間相似性之類(lèi)的研究。

術(shù)語(yǔ)“序列比對”也指構建上述比對或在潛在的不相關(guān)序列的數據庫中尋找significantalignments。

統計檢驗

序列比對實(shí)際上是根據特定數學(xué)模型找出序列之間最大匹配殘基數。而序列比對數學(xué)模型一般用來(lái)描述序列中每一個(gè)子字符串之間的匹配情況。通過(guò)改變某些參數可以得到不同比對結果,例如空位法分值大小。此外,序列長(cháng)度差異和字母表復雜度也會(huì )影響比對結果。合理調節參數,會(huì )減少空位數目,得到較好的結果,而放寬對空位罰分的限制,理論上任意序列都可以得到某個(gè)對比結果。因此序列比對的結果并不能作為兩者之間一定存在同源關(guān)系的依據。

常用序列比對程序通常給出一些統計值??,用來(lái)表示結果的可信度。BLAST程序中使用的統計值由概率p和期望值e。概率p表示比對結果得到的分數值的可信度。一般來(lái)說(shuō),p越接近于0,則比對結果的可信度越大。期望值e描述搜索某一特定數據庫時(shí),隨機出現的匹配序列數目。

雙序列比對

序列比對的理論基礎是進(jìn)化學(xué)說(shuō),如果兩個(gè)序列之間具有足夠的相似性,就推測二者可能有共同的進(jìn)化祖先,經(jīng)過(guò)序列內殘基的替換、殘基或序列片段的缺失、以及序列重組等遺傳變異過(guò)程分別演化而來(lái)。序列相似和序列同源是不同的概念,序列之間的相似程度是可以量化的參數,而序列是否同源需要有進(jìn)化事實(shí)的驗證。在殘基-殘基比對中,可以明顯看到序列中某些氨基酸殘基比其它位置上的殘基更保守,這些信息揭示了這些保守位點(diǎn)上的殘基對蛋白質(zhì)的結構和功能是至關(guān)重要的,例如它們可能是酶的活性位點(diǎn)殘基,形成二硫鍵的半胱氨酸殘基,與配體結合部位的殘基,與金屬離子結合的殘基,形成特定結構motif的殘基等等。但并不是所有保守的殘基都一定是結構功能重要的,可能它們只是由于歷史的原因被保留下來(lái),而不是由于進(jìn)化壓力而保留下來(lái)。因此,如果兩個(gè)序列有顯著(zhù)的保守性,要確定二者具有共同的進(jìn)化歷史,進(jìn)而認為二者有近似的結構和功能還需要更多實(shí)驗和信息的支持。通過(guò)大量實(shí)驗和序列比對的分析,一般認為蛋白質(zhì)的結構和功能比序列具有更大的保守性,因此粗略地說(shuō),如果序列之間的相似性超過(guò)30%,它們就很可能是同源的。

全局比對

全局比對是指將參與比對的兩條序列里面的所有字符進(jìn)行比對。全局比對主要被用來(lái)尋找關(guān)系密切的序列。由于這些序列也都很易通過(guò)本地比對方法找到,現在全局比對也有些被認為只是一種技巧。另外,全局比對在應用于分子進(jìn)化時(shí)也有些問(wèn)題(比如domainShuffling-見(jiàn)下),這也限制了這種方法的可用性。

局部比對

1981年,由F.Smith和M.Waterman首次提出局部比對算法,動(dòng)態(tài)規劃方法通過(guò)較少的改動(dòng)便可以用來(lái)識別匹配的子序列,并且忽略匹配區域之前或之后的失配和空位;局部比對時(shí),表中小于零的位置用零代替。主要用來(lái)考察兩序列的某些特殊片段。

運算過(guò)程

全局比對是從頭到尾全程比較,考慮序列的整體相似性。全局多序列比對可以鑒別或證明新序列與已有序列家族的同源性;幫助預測新蛋白質(zhì)序列的二級和三級結構;是進(jìn)行分子進(jìn)化分析的重要前提。局部比對考慮序列部分區域的相似性。局部比對的生物學(xué)基礎是:蛋白質(zhì)功能位點(diǎn)由較短的序列片斷組成,盡管在序列的其它部位可能有插入、刪除或突變,但是這些序列片斷具有相當大的保守性。此時(shí),局部比對往往比全局比對具有更高的靈敏度,其結果更具有生物意義。局部多序列比對可以用來(lái)刻畫(huà)蛋白質(zhì)家族和超家族。

重要性

生物信息學(xué)的研究重點(diǎn)主要體現在基因組學(xué)和蛋白質(zhì)學(xué)兩方面,具體地說(shuō)就是從核酸和蛋白質(zhì)序列出發(fā),分析序列中表達結構和功能的生物信息。生物信息學(xué)的基本任務(wù)是對各種生物分析序列進(jìn)行分析,也就是研究新的計算機方法,從大量的序列信息中獲取基因結構、功能和進(jìn)化等知識。而在序列分析中,將未知序列同已知序列進(jìn)行相似性比較是一種強有力的研究手段,從序列的片段測定,拼接,基因的表達分析,到RNA和蛋白質(zhì)的結構功能預測。物種親緣樹(shù)的構建都需要進(jìn)行生物分子序列的相似性比較。生物信息學(xué)中的序列比對算法的研究具有非常重要的理論意義和實(shí)踐意義。

多序列比對

為了便于描述,操作者對多序列比對過(guò)程給出下面的定義。把多序列比對看作一張二維表,表中每一行代表一個(gè)序列,每一列代表一個(gè)殘基的位置。將序列依照下列規則填入表中:(a)一個(gè)序列所有殘基的相對位置保持不變;(b)將不同序列間相同或相似的殘基放入同一列,即盡可能將序列間相同或相似殘基上下對齊(表1)。操作者稱(chēng)比對前序列中殘基的位置為絕對位置。如序列Ⅰ的第3位的殘基是甘氨酸G,則絕對位置Ⅰ3就是甘氨酸,而不能變成任何其它氨基酸。相應地,操作者稱(chēng)比對后序列中殘基的位置為相對位置。顯然,同一列中所有殘基的相對位置相同,而每個(gè)殘基的絕對位置不同,因為它們來(lái)自不同的序列。需要說(shuō)明的是,絕對位置是序列本身固有的屬性,或者說(shuō)是比對前的位置,而相對位置則是經(jīng)過(guò)比對后的位置,也就比對過(guò)程賦予它的屬性。

表1多序列比對的定義,表示五個(gè)短序列(I-V)的比對結果。通過(guò)插入空位,使5個(gè)序列中大多數相同或相似殘基放入同一列,并保持每個(gè)序列殘基順序不變。

多序列比較對的算法復雜性

多序列比對的計算量相當可觀(guān),因此有必要分析以下技術(shù)的復雜性。雙序列比對所需要的計算時(shí)間和內存空間與這兩個(gè)序列的長(cháng)度有關(guān),或者說(shuō)正比于這兩個(gè)序列長(cháng)度的乘積,用O(m1m2)表示。其中m1、m2是指兩條序列的長(cháng)度。三序列比對則可以理解為將雙序列比對的兩維空間擴展到三維,即在原有二維平面上增加一條坐標軸。這樣算法復雜性就變成了O(m1m2m3),其中m3表示第三條序列的長(cháng)度。

隨著(zhù)序列數量的增加,算法復雜性也不斷增加。操作者用O(m1m2m3…mn)表示對n個(gè)序列進(jìn)行比對時(shí)的算法復雜性,其中mn是最后一條序列的長(cháng)度。若序列長(cháng)度相差不大,則可簡(jiǎn)化成O(mn),其中n表示序列的數目,m表示序列的長(cháng)度。顯然,隨著(zhù)序列數量的增加,序列比對的算法復雜性按指數規律增長(cháng)。

降低算法復雜性,是研究多序列比對的一個(gè)重要方面。為此,產(chǎn)生了不少很有實(shí)用意義的多序列比對算法。這些方法的特點(diǎn)是利用啟發(fā)式(Heuristics)算法降低算法復雜性,以獲得一個(gè)較為滿(mǎn)意但并不一定是最優(yōu)的比對結果,用來(lái)找出子序列、構建進(jìn)化樹(shù)、查找保守序列或序列模板,以及進(jìn)行聚類(lèi)(clustering)分析等。有的算法將動(dòng)態(tài)規劃和啟發(fā)性算法結合起來(lái)。例如,對所有的序列進(jìn)行兩兩比對,將所有的序列與某個(gè)特定的序列進(jìn)行比對,根據某種給定的親源樹(shù)進(jìn)行分組比對,等等。必須指出,上述方法求得的結果通常不是最優(yōu)解,至少需要經(jīng)過(guò)n-1次雙序列比對,其中n為參與比對的序列個(gè)數。

多序列比對方法

下面介紹比對采用的幾種常用方法。

手工比對方法

手工比對方法在文獻中經(jīng)常看到。因為難免加入一些主觀(guān)因素,手工比對通常被認為有很大的隨意性。其實(shí),即使用計算機程序進(jìn)行自動(dòng)比對,所得結果中的片面性也不能予以忽視。在運行經(jīng)過(guò)測試并具有比較高的可信度的計算機程序基礎上,結合實(shí)驗結果或文獻資料,對多序列比對結果進(jìn)行手工修飾,應該說(shuō)是非常必要的。

多序列比對的軟件已經(jīng)有許多,其中一些帶有編輯程序。最好的辦法是將自動(dòng)比對程序和編輯器整合在一起。為了便于進(jìn)行交互式手工比對,通常使用不同顏色表示具有不同特性的殘基,以幫助判別序列之間的相似性。顏色的選擇十分重要,如果使用不當,看起來(lái)不很直觀(guān),就會(huì )使比對結果中一些有用的信息丟失。相反,如果選擇得當,就能從序列比對結果中迅速找到某些重要的結構模式和功能位點(diǎn)。例如,如果用某種顏色表示一組高度保守的殘基,則某個(gè)序列的某一位點(diǎn)發(fā)生突變時(shí),則由于顏色不同,就可以很快找出。顏色的選擇可以根據主觀(guān)愿望和喜好,但最好和常規方法一致。用來(lái)構筑三維模型的按時(shí)氨基酸殘基組件和三維分子圖形軟件所用的顏色分類(lèi)方法,比較容易為大家接受(表2)。

表2氨基酸分組方法和代表性顏色

*表中采用的分組方法和用來(lái)區分不同組別的顏色與模型構件和三維圖形軟件中所用方法一致。

多序列比對程序的另一個(gè)重要用途是定量估計序列間的關(guān)系,并由此推斷它們在進(jìn)化中的親緣關(guān)系。可以通過(guò)計算完全匹配的殘基數目或計算完全匹配殘基和相似殘基的數目得到這種定量關(guān)系。這一方法除了可以大略了解序列間的親緣關(guān)系外,也可用來(lái)評估比對質(zhì)量。如果序列的相似性值低于預料值,那么有可能是序列間親緣關(guān)系較遠,也可能是比對中有錯誤之處。

現有的軟件包用的基本上是可用鼠標點(diǎn)擊的窗口界面,其中序列編輯器位于窗口中央。這樣的軟件包將在以后章節中詳細介紹。

使用這些軟件操作者將會(huì )看到,那些長(cháng)度相仿且相似性程度較高的序列,采用自動(dòng)比對方法將會(huì )得到相當滿(mǎn)意的結果;而當序列長(cháng)度相差較大而相似性程度較低時(shí),采用自動(dòng)方法得出的結果則不很理想。此時(shí),手工序列編輯器就接顯得十分有用。通過(guò)手工調整,可使結果變得接近實(shí)際。此外,采用多種不同的方法進(jìn)行分析,再將結果綜合,是一種行之有效的方法。為更好地理解多序列比對的原理和規則,應該盡可能學(xué)會(huì )手工比對的方法,并把比對結果與計算機自動(dòng)比對得到的結果加以比較。

同步法

同步法實(shí)質(zhì)是把給定的所有序列同時(shí)進(jìn)行比對,而不是兩兩比對或分組進(jìn)行比對。其基本思想是將一個(gè)二維的動(dòng)態(tài)規劃矩陣擴展到三維或多維。矩陣的維數反映了參與比對的序列數。這類(lèi)方法對于計算機的系統資源要求較高,通常是進(jìn)行少量的較短的序列的比對。

步進(jìn)法

這類(lèi)方法中最常用的就是Clustal,它是由Feng和Doolittle于1987年提出的(Feng和Doolittle,1987)。由于對于實(shí)際的數據利用多維的動(dòng)態(tài)規劃矩陣來(lái)進(jìn)行序列的比對不太現實(shí),因此大多數實(shí)用的多序列比對程序采用啟發(fā)式算法,以降低運算復雜度。Clustal的基本思想是基于相似序列通常具有進(jìn)化相關(guān)性這一假設。比對過(guò)程中,先對所有的序列進(jìn)行兩兩比對并計算它們的相似性分數值,然后根據相似性分數值將它們分成若干組,并在每組之間進(jìn)行比對,計算相似性分數值。根據相似性分數值繼續分組比對,直到得到最終比對結果。比對過(guò)程中,相似性程度較高的序列先進(jìn)行比對,而距離較遠的序列添加在后面。作為程序的一部分,Clusal可以輸出用于構建進(jìn)化樹(shù)的數據。

Clustal程序有許多版本,CLUSTALW(Thompson等,1994),根據對親緣關(guān)系較近的序列間空位情況,確定如何在親緣關(guān)系較遠的序列之間插入空位。同樣,相似性較高的序列比對結果中的殘基突變信息,可用于改變某個(gè)特殊位置空位罰分值的大小,推測該位點(diǎn)的序列變異性。

Clustal是免費軟件,很容易從互聯(lián)網(wǎng)上下載,和其它軟件一起,廣泛用于序列分析。Clustal所支持的數據格式包括EMBL/SwissProt、NBRF/PIR、Pearson/FastA、GCG/MSF,以及Clustal本身定義的格式。它的輸出格式可以是Clustal格式,也可以是可用于GDE、Phylip、GCG等軟件的格式。

主條目:多重序列比對

多序列比對是成對比對的延伸,是為了在一次比對里面處理多于兩條的的序列。多序列比對方法試圖比對一個(gè)指定序列集合里面的所有序列,這可以幫助確定這些序列的共同區段。進(jìn)行多序列比對有幾種方法,最常用的一種是Clustal程序集,它使用漸進(jìn)多序列比對算法。Clustal在cladistics中被用來(lái)建立進(jìn)化樹(shù),在PSI-BLAST和HiddenMarkovmodel-(HMM-)中用來(lái)建立序列檔案以在序列數據庫中搜索更遠的同源序列。

多序列比對編程實(shí)現困難。被歸為NP難題的一種。

算法

實(shí)際操作中利用計算機程序實(shí)現序列比對的基本算法。序列比對不僅需要考慮子序列之間的匹配,而且需要對整個(gè)序列進(jìn)行比較。也就是說(shuō),必須考慮兩個(gè)序列中所有殘基的匹配。這就意味著(zhù),不可能使所有殘基都能?chē)栏衿ヅ洹T谶@種情況下,序列比對中確定空位的過(guò)程變得十分復雜。

在進(jìn)行序列兩兩比對時(shí),有兩方面問(wèn)題直接影響相似性分值:取代矩陣和空位罰分。

取代矩陣

粗糙的比對方法僅僅用相同/不同來(lái)描述兩個(gè)殘基的關(guān)系,顯然這種方法無(wú)法描述殘基取代對結構和功能的不同影響效果,纈氨酸對異亮氨酸的取代與谷氨酸對異亮氨酸的取代應該給予不同的打分。因此如果用一個(gè)取代矩陣??來(lái)描述氨基酸殘基兩兩取代的分值會(huì )大大提高比對的敏感性和生物學(xué)意義。雖然針對不同的研究目標和對象應該構建適宜的取代矩陣,但國際上常用的取代矩陣有PAM和BLOSUM等,它們來(lái)源于不同的構建方法和不同的參數選擇,包括PAM250、BLOSUM62、BLOSUM90、BLOSUM30等。對于不同的對象可以采用不同的取代矩陣以獲得更多信息,例如對同源性較高的序列可以采用BLOSUM90矩陣,而對同源性較低的序列可采用BLOSUM30矩陣。

空位罰分

空位罰分是為了補償插入和缺失對序列相似性的影響,由于沒(méi)有什么合適的理論模型能很好地描述空位??問(wèn)題,因此空位罰分缺乏理論依據而更多的帶有主觀(guān)特色。一般的處理方法是用兩個(gè)罰分值,一個(gè)對插入的第一個(gè)空位罰分,如10-15;另一個(gè)對空位的延伸罰分,如1-2。對于具體的比對問(wèn)題,采用不同的罰分方法會(huì )取得不同的效果。

對于比對計算產(chǎn)生的分值,到底多大才能說(shuō)明兩個(gè)序列是同源的,對此有統計學(xué)方法加以說(shuō)明,主要的思想是把具有相同長(cháng)度的隨機序列進(jìn)行比對,把分值與最初的比對分值相比,看看比對結果是否具有顯著(zhù)性。相關(guān)的參數E代表隨機比對分值不低于實(shí)際比對分值的概率。對于嚴格的比對,必須E值低于一定閾值才能說(shuō)明比對的結果具有足夠的統計學(xué)顯著(zhù)性,這樣就排除了由于偶然的因素產(chǎn)生高比對得分的可能。