摘要:氨基酸序列編碼問題一直是在蛋白質結構預測中導致算法輸入空間較大的主要原因。只有對氨基酸序列進行更好的編碼,才能為后續進行計算機分析打下基礎。提出并實現了綜合考慮了氨基酸序列的劃分和長程作用效應,利用氨基酸正交編碼區分每個氨基酸個體,利用基本正交矩陣獲得氨基酸在物理、化學、生物上的相似性,利用分屬概率來獲得當前蛋白質序列中氨基酸構成不同二級結構的趨勢的新的混合編碼方法,從而改進了氨基酸殘基序列編碼,并利用現有算法比較了不同編碼方式對蛋白質二級結構預測的影響,結果證實該編碼方式能夠提高蛋白質二級結構預測的準確性。
關鍵詞:蛋白質結構預測;編碼;機器學習
中圖分類號:TP181文獻標識碼:A文章編號:1009-3044(2008)34-1713-04
Application and Research of Machine Leaning Based Protein Sequence Encoding
LI Guan-yu, ZHU Hong-ming, ZHOU Wen-jun
(School of software engineering, Tongji University, Shanghai 200092, China)
Abstract: Amino acid sequence encoding problem will lead to the protein structure prediction overfit. With good encoding scheme, we can get a better prediction. We discuss and implement a better encoding for the computer analysis. We mainly think about the effect of amino acid sequence division and interaction, using cross-matrix to present the comparability of physical, chemical, biological characters of amino acid. The encoding scheme of amino acid is improved and a comparison of different encoding schemes is made. We also make a compare of the difference between our encoding and other encoding for protein structure prediction, and our encoding is proved to be better.
Key words: protein structure prediction; encoding scheme; machine learning
1 引言
在生物信息學的眾多研究領域中,蛋白質結構預測(Protein Structure Prediction)是其中非常重要的一個研究方向。 蛋白質的空間結構由氨基酸序列構成,它的功能與其空間結構密切相關,蛋白質分子空間結構的知識已經成為深入了解該蛋白質如何行使其生物功能的先決條件,因而從氨基酸序列預測蛋白質結構能夠有助于人們進一步了解蛋白質的結構-功能關系。
在目前的研究中,對蛋白質的預測大家基本都在20種氨基酸的基礎上進行編碼,從而導致了算法輸入空間較大,容易產生overfit等現象,無法考慮氨基酸的長程作用。在本文中,我們重點研究如何利用機器學習的方法,改進氨基酸序列的編碼,減少編碼種類,從而降低了算法的輸入空間,引入長程作用,使得能夠更好地對蛋白質空間結構進行預測。
2 蛋白質編碼問題原理分析
在預測蛋白質二級結構的方法中,輸入為氨基酸殘基的序列(字符串序列),這種格式的序列,我們認為并不適宜直接將其用于蛋白質結構預測,因此需要對輸入數據進行數據預處理。
對于蛋白質結構預測問題,最重要的就是確定氨基酸序列數據的特點,依據數據特征進行編碼,在有了編碼后,蛋白質結構預測問題就便為純粹的機器學習問題。正如我們所知,蛋白質序列是由一些氨基酸組成的,蛋白質的二級結構也是由氨基酸之間的相互作用而產生的。而且我們也知道,蛋白質的二級結構的形成并不是相鄰的兩個氨基酸之間相互作用的結果,所以在對氨基酸序列進行編碼時,我們必須考慮如下的兩個問題:
1) 如何對一條蛋白質的氨基酸序列進行劃分;
2) 如何考慮氨基酸之間的長程作用。
對于第一個問題,我們需要盡可能的考慮蛋白質結構的長程作用。蛋白質的二級結構并不僅僅是相臨氨基酸之間相互作用的結果,相距較遠的氨基酸之間的相互作用對蛋白質的二級結構形成也有很大的影響。
對于第二個問題,我們需要引入劃分比對的方法,利用劃分比對方法,對所有的20種氨基酸進行聚類計算,從而縮小輸入氨基酸的種類,充分考慮了氨基酸的物理、化學、生物性質。在本研究中我們對現有的PDB數據庫中的蛋白質進行了分析,并依據20種氨基酸的不同物理、化學、生物屬性對它們進行了聚類,從而增強了系統的預測準確性。所以我們認為,如何在編碼中引入各種氨基酸自身的特點,而不是一個簡單的氨基酸符號是我們研究的重點問題。通過我們的分析,我們覺得,要想詳細的描述一個蛋白質序列中的氨基酸組成,必須包含如下的三個內容:氨基酸類型,也就是這個蛋白質序列是由哪些氨基酸組成;氨基酸屬性,每個氨基酸即有自己獨特的物理、生物、化學屬性,相互之間又有著密切的聯系;氨基酸的歸屬性,在一個蛋白質序列中,同類的氨基酸更傾向于構成那種二級結構。
3 蛋白質序列編碼方法
3.1 氨基酸序列劃分方法
在本研究中,我們分析了PDB數據庫中的蛋白質的空間結構規律,充分考慮了氨基酸之間的長程相互作用。所以我們打算采用n分段的方法,也就是將一個長為m的蛋白質序列分為m-n+1個長為n的氨基酸序列片段,然后將這種長為n的序列片斷作為我們預測的輸入。關于n的選擇我們認為根據蛋白質不同的二級結構,應該采用不同的值,通過對PDB數據庫的分析,我們發現,形成螺旋的氨基酸序列長度一般在5~17的范圍之內,形成折疊的氨基酸序列長度一般在5~11的范圍之內,所以我們將n的選擇區間放在5~17之間,對不同的蛋白質二級結構進行區別對待。
我們對不同的分組進行了實驗,發現以下的情況:
表1 分段大小和預測準確率之間的關系
■
我們通過對上表數據的分析可以發現,通過增加分段大小可以包含更多的氨基酸序列的信息,但是隨著分段大小的增加,也會帶來一些負面影響,比如算法復雜性和算法計算時間增加、預測正確率會有少量下降等。所以我們通過實際數據分析,決定對不同的蛋白質二級結構采用不同的分段大小,對于 螺旋預測問題,我們采用的是13分段的方法;對 折疊問題,我們采用的是11分段的方法;對環,我們采用的是11分段的方法。
3.2 蛋白質序列長程編碼方法
從氨基酸分段區間得出的子序列進而獲得輸入向量就是一個編碼的過程,最經典的編碼方法就是按照PHD算法所做的那樣,對每一個子序列,對每種氨基酸采用正交編碼的方法,構造一個二進制的正交向量[1,0,…,0],或者[0,0,…,1],其中1表示對應氨基酸的位置。這樣,我們就能構造一個長度為20的正交向量代表20種氨基酸,在本系統中,我們認為20維的輸入空間太龐大了,會引起后續算法的復雜性增加等問題,所以我們對構成蛋白質的這20種氨基酸進行進一步分析發現如果兩個氨基酸具有相似的性質,那么它們很有可能組成相同的蛋白質二級結構。所以我們綜合分析了20種氨基酸的不同的物理化學性質,利用聚類的方法對氨基酸進行了聚類分析。
表2 氨基酸屬性分組表
■I
從上表可以看出,20中氨基酸最終被我們分為5組。根據這個分組,我們定義了如下的基本正交矩陣:
給定一個m分類的氨基酸序列,它的m維基本正交矩陣為
■ (1)
其中aci(1≤m)∈[0,1] ,并且■
訓練集中,一個m分類的氨基酸序列屬于螺旋/折疊的概率。給定一個訓練集s和一個m分類的氨基酸序列C=[c1,…,cm],那么氨基酸i(屬于cj 分類)可能構成螺旋的概率為:
■(2)
其中■ 是氨基酸i(屬于cj分類)屬于螺旋的概率。NH 表示所有該訓練集中構成螺旋的氨基酸總數目。NH 表示序列中屬于Cj 分類的構成螺旋的氨基酸總數目。同理■代表折疊,■ 代表環狀結構。
3.3 我們采用的綜合編碼
綜合考慮以上內容,我們決定對氨基酸采用一種綜合以上兩種方式的編碼方法進行編碼。利用氨基酸正交編碼區分每個氨基酸個體,利用基本正交矩陣獲得氨基酸在物理、化學、生物上的相似性,利用分屬概率來獲得當前蛋白質序列中氨基酸構成不同二級結構的趨勢。
我們定義如下的編碼方式:給定一個訓練集s和一個m分類的氨基酸序列 ,C=[c1,…,cm]那么氨基酸i的編碼為:
■(3)
其中,vri(=[a1,a2,…,a20]) 是氨基酸正交編碼,■為氨基酸i所屬的基本正交矩陣,pi,cjH表示氨基酸i(屬于Cj 類)的構成螺旋的概率。對訓練集s中的每一個子集Ss ,它的編碼維數就是一個和m,n都有關的變量,m是指20種氨基酸聚類的數量,n是指n分段的段長。所以輸入向量的總維數是20*m*n。
讓我們來看如下的兩個氨基酸序列:
■(4)
其中:H表示a 螺旋,E表示 β折疊,T表示氫鍵回環,S表示彎曲,C表示環。
■ (5)
讓我們考慮氨基酸序列S1中的子序列“LWQFNGMIKCK”,這11個氨基酸構成一個a 螺旋,氨基酸“PS”構成一個環,如果我們使用段長為3的分段方式,并將氨基酸分為如上的5組,那么氨基酸序列“LWQ”就被編碼為一個300維(20*5*3)的向量v1 ,其中,前100維表示氨基酸“L”。因為“L”屬于Nonpolar,aliphatic的C1 分組,“L”屬于C1 分組并且構成螺旋的概率是33%(■,其中24是指構成螺旋的氨基酸數目,8是指在訓練集中屬于C1 分組,并且構成螺旋結構的氨基酸數目),這樣,“LWQ”的輸入編碼就是:
■(6)
所有的折疊和環都可以看作非螺旋的分類,所以氨基酸序列“PS_”也是一個長度為3的非螺旋序列,我們添加了“_”只是將它湊成長度為3。所以氨基酸序列“PS_”的編碼為:■ (7)
4 蛋白質編碼在蛋白質二級結構預測中的應用和分析
我們將上述的蛋白質編碼方法應用在蛋白質二級結構預測中,我們用于訓練和測試的數據集為130個已知結構的蛋白質,下表列出了該數據集。這些數據取自蛋白質結構數據庫(Protein Structure Bank, PDB)。為了能夠達到較好的訓練效果,我們在選擇數據的時候遵循如下的標準:蛋白質二級結構之間的相似性不超過30%;氨基酸序列長度不小于50個殘基。
該方法獲得的預測正確率情況如表4。
通過對實驗結果的分析,我們可以發現:利用我們改進的編碼,對支持向量機等受輸入空間影響不大的算法來說,采用我們的編碼后,預測的準確率沒有明顯的提升,變化率都在1%以內。對決策樹、隱馬爾科夫等分類算法來說,由于這些算法本身受輸入編碼的影響較大,所以在采用了我們的編碼后,預測準確率都有了3%左右的提升,起到了編碼優化的效果。同時,由于輸入維度的降低,使得算法的運行時間也得到了大大的減少。
5 結論
在本文中,我們分析了在蛋白質結構預測中蛋白質序列編碼的方法。采用了一種綜合利用氨基酸正交編碼區分每個氨基酸個體,利用基本正交矩陣獲得氨基酸在物理、化學、生物上的相似性,利用分屬概率來獲得當前蛋白質序列中氨基酸構成不同二級結構的趨勢的新的混合編碼的方式。通過實驗分析,我們發現采用該種方法之后,由于減少了輸入空間維度,蛋白質二級結構預測序列的預測準確度有了一定的提高,并且大大降低了后續預測算法分析的計算時間,能夠起到良好的效果。
參考文獻:
[1] Chou P,Fasman G.Prediction of the secondary structure of proteins from their amino acid sequence[J].Advances in Enzymology,1978(47):45-148.
[2] Rost B,Sander C.Prediction of protein secondary structure at better than 70% accuracy[J].Journal of Molecular Biology,1993(232):584-559.
[3] Day R O,Lamont G B,Pachter R.Protein Structure Prediction by Applying an Evolutionary Algorithm[C].IEEE Proceedings of the international parallel and distributed processing symposium.
[4] Baum L E.An inequality and associated maximization technique in statistical estimation for probabilistic function of Markov processes[J].Inequalities,1972(3):1-8.
[5] Baldi P,Pollastri G.A Machine Learning Strategy for Protein Analysis[J].IEEE intelligent system,2002(2):28-35.
[6] Baldi P,Brunak S.生物信息學—機器學習方法[M].北京:中信出版社,2002.