劉 浩
大連交通大學(xué)
用支持向量機(jī)對新陳代謝網(wǎng)絡(luò)進(jìn)行預(yù)測
劉 浩
大連交通大學(xué)
用支持向量機(jī)的方法輔助以有窮狀態(tài)機(jī)對新陳代謝網(wǎng)絡(luò)進(jìn)行預(yù)測,該方法比基因注釋的方法不僅提高了運行速度,同時還大大的提高了準(zhǔn)確率,克服了其弊端,即累積錯誤導(dǎo)致準(zhǔn)確率下降的問題。
代謝網(wǎng)絡(luò);代謝途徑;基因注釋;累積錯誤;軟件工程;有窮狀態(tài)機(jī);支持向量機(jī)
研究人體的新陳代謝網(wǎng)絡(luò),對于理解哪條代謝路徑出現(xiàn)問題而導(dǎo)致疾病來說非常重要。新陳代謝網(wǎng)絡(luò)允許使用者對某個具體的生化反應(yīng)的細(xì)節(jié)進(jìn)行相應(yīng)的放縮。新陳代謝網(wǎng)絡(luò)好比是城市中所有交通工具的坐標(biāo)。實際應(yīng)用時,類似的代謝網(wǎng)絡(luò)能夠幫助生物學(xué)家提高酵母生產(chǎn)乙醇的產(chǎn)量以及預(yù)測金黃色葡萄球菌、大腸桿菌等微生物的抗藥性,能將其用來研究各種與代謝有關(guān)的疾病。因而,若能準(zhǔn)確預(yù)測出新陳代謝網(wǎng)絡(luò),對于我們今后的研究及應(yīng)用至關(guān)重要。但遺憾的是,目前在代謝網(wǎng)絡(luò)中仍然有眾多的代謝途徑無法被清晰地描述出來,而現(xiàn)有的手段則是在基因?qū)用?,依靠基因注釋的比對,但這種方案存在一個缺陷,即基因注釋的累積錯誤會降低預(yù)測結(jié)果的準(zhǔn)確度,并且數(shù)據(jù)量越大,積累的錯誤越多,且錯誤會呈幾何級增長,最終得到的預(yù)測結(jié)果很可能與實際大相徑庭,因而在此我們引入軟件工程中的有窮狀態(tài)機(jī)(Finite State Machine)并且結(jié)合支持向量機(jī)(Support Vector Machine)為該問題提出解決方案。
新陳代謝網(wǎng)絡(luò)是各種新陳代謝途徑的集合。把生物體內(nèi)從A到X的酶反應(yīng)常規(guī)程序(A→B→C→……→X),稱為A至X的代謝途徑。A→B、B→C等各反應(yīng)則稱為中間代謝(途徑),而在代謝過程中,B,C等最終產(chǎn)物X之前的中間產(chǎn)物既是上一個代謝反應(yīng)的輸出產(chǎn)物,同時也是下一個酶反應(yīng)的輸入產(chǎn)物。各代謝途徑之間的緊密聯(lián)系,形成了新陳代謝網(wǎng)絡(luò),每個節(jié)點均是各種代謝的中間產(chǎn)物。
支持向量機(jī)是機(jī)器學(xué)習(xí)領(lǐng)域中,一個比較有效的監(jiān)督學(xué)習(xí)模型,通常用于分類,識別(如圖像識別,手寫輸入識別等)以及回歸分析等,廣泛應(yīng)用于各個領(lǐng)域。
現(xiàn)在引入有窮狀態(tài)機(jī),給定一個初態(tài)集I(Initial),終態(tài)集F(Fi?nal),狀態(tài)集S(State),轉(zhuǎn)換函數(shù)T(Transition),初態(tài)權(quán)重函數(shù)WI,終態(tài)權(quán)重函數(shù)WF,其中I與F均是S的子集,另外還有輸入集∑,輸出集Δ。
節(jié)點圖G為代謝網(wǎng)絡(luò)中各個中間產(chǎn)物組成的圖,其中節(jié)點為中間產(chǎn)物,邊為生化反應(yīng),各個代謝途徑之間緊密聯(lián)系形成了代謝網(wǎng)絡(luò)。
我們的目的是根據(jù)現(xiàn)有的已經(jīng)了解的代謝網(wǎng)絡(luò)對未知的代謝網(wǎng)絡(luò)進(jìn)行功能預(yù)測,由酶的專一性我們可知,一種酶只能催化一種或者一類生化反應(yīng),而大多數(shù)酶的組成成分為蛋白質(zhì),少部分為RNA,因而我們對于新陳代謝網(wǎng)絡(luò)的預(yù)測就轉(zhuǎn)化為了對于蛋白質(zhì)和RNA序列的比對,如果比對結(jié)果的相似度越高,則功能越相似。由于之前對一個未知的代謝網(wǎng)絡(luò)在基因?qū)用嬗没蜃⑨尩氖侄螌π玛惔x網(wǎng)絡(luò)進(jìn)行預(yù)測會有累計錯誤的問題,因而,我們現(xiàn)選用Pairwise Kernels進(jìn)行改進(jìn),倘若無法找到一個合適的比對序列預(yù)測其功能,我們可以通過將該代謝網(wǎng)絡(luò)圖與已知的代謝網(wǎng)絡(luò)圖進(jìn)行第二次比對,或者在得到較好的蛋白質(zhì)或者基因比對結(jié)果的情況下,結(jié)合代謝網(wǎng)絡(luò)圖,對于網(wǎng)絡(luò)內(nèi)部的代謝途徑進(jìn)行進(jìn)一步剖析。
普通的核函數(shù)特點是其核函數(shù)內(nèi)有兩個參數(shù)x和y,主要用于度量兩個對象間的相似程度,但是當(dāng)度量對象為成對或者以更多的組合出現(xiàn)的時候,例如蛋白質(zhì)對(x1,x2),(y1,y2),普通核就不是很適用了,這是因為(x1,x2)與(y1,y2)進(jìn)行相似度比較的時候,不僅要考慮x1,x2及y1,y2的相似程度,還要考慮x1,y2及x2,y1的相似程度,因而我們須將二者進(jìn)行綜合考量后選出較高的那組作為最終結(jié)果。而Pairwise核正好提供了一種名為“交叉比較”的算法,其本身對于元素間組合的次序不敏感,即樣例(x,y)和樣例(y,x)所得到的比對結(jié)果是相同的,這正好符合“物質(zhì)之間是相互作用的”。
定義1.X屬于輸入集∑的一個子集,轉(zhuǎn)換函數(shù)T,則在(X×X)×(X×X)→R上,有①K((x1,x2),(y1,y2))=T(x1,y1)+T(x1,y2)+T(x2,y1)+T(x2,y2)。
定義2.ρ是輸入物的權(quán)重,λ是生成物的權(quán)重,二者均由Pair?wise kernels得到(用的是打分法,比對物質(zhì)序列,相同則打+1,不同則打-1,累積求和得到ρ,λ)。
如下將介紹算法的原理:(1)我們比較待測新陳代謝網(wǎng)絡(luò)的酶和已知新代謝網(wǎng)絡(luò)的酶的序列,用的核函數(shù)是定義1中的①,找到最相近的酶,(2)用Pairwise的打分法對輸入和輸出產(chǎn)物進(jìn)行序列對比,將(1)(2)得到的結(jié)果進(jìn)行綜合評測,則可以預(yù)測該待測新陳代謝網(wǎng)絡(luò)。
然后是對預(yù)測完后的新陳代謝網(wǎng)絡(luò)進(jìn)行內(nèi)部的具體剖析,先拿出一條代謝途徑,在上一步中,若給定一個相似度臨界值ξ,則會在大于或者等于臨界值ξ的基礎(chǔ)上生成一個集合,我們令這個集合為S,即相似度集合,在這個集合內(nèi),我們將每次生化反應(yīng)的產(chǎn)物與該集合中各個網(wǎng)絡(luò)中的節(jié)點(即中間產(chǎn)物)進(jìn)行序列對比,找到相似度最高的節(jié)點并參考其功能以及其局部網(wǎng)絡(luò)的組成方式與結(jié)構(gòu),然后進(jìn)行遞增與迭代,將所得到的所有比對后的產(chǎn)物,運用有窮狀態(tài)機(jī)畫出各個產(chǎn)物之間的轉(zhuǎn)換關(guān)系圖,然后將各個代謝途徑用以上方法進(jìn)行循環(huán)遞增和迭代,得到各個代謝途徑之間的聯(lián)系,然后組成代謝網(wǎng)絡(luò)。
根據(jù)以上所述,支持向量機(jī)作為一種近年來比較實用的機(jī)器學(xué)習(xí)方法,在若干具有挑戰(zhàn)性的應(yīng)用項目中取得了最好的性能,是一個令人十分矚目的發(fā)展方向。在不同的情境中,需要不同的核函數(shù)。相較于其他核函數(shù),在此提出的Pairwise Kernels是一種較為合理的解決方案,由于現(xiàn)實情況中基因和蛋白質(zhì)序列的復(fù)雜性,我們需要根據(jù)實際情況對核函數(shù)進(jìn)行相應(yīng)的改進(jìn),從而得到最符合期待的結(jié)果,并且實現(xiàn)效率的最大化。