專利名稱:膜蛋白分類在線預(yù)報(bào)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于Bagging方法的膜蛋白分類建模方法,同時(shí)涉及膜蛋白分類 預(yù)報(bào)的Web服務(wù)實(shí)現(xiàn)方法。
背景技術(shù):
作為生物化學(xué)的一部分,膜蛋白研究成為實(shí)驗(yàn)和理論領(lǐng)域都很熱門的一個(gè)焦點(diǎn)。 膜蛋白是一類結(jié)構(gòu)獨(dú)特的蛋白質(zhì),它鑲嵌于膜脂的特性使這一蛋白處于細(xì)胞與外界的 交界部位,是細(xì)胞執(zhí)行各種功能的物質(zhì)基礎(chǔ),且可以形成膜受體、載體、酶和抗原等。 根據(jù)膜蛋白與脂雙層之間的作用模式,可以分為如下5個(gè)類型(1) type-I membrane protein; (2) type-II membrane protein; (3) multipass transmembrane proteins; (4) lipidchain-anchored membrane proteins; (5) GPI陽(yáng)anchored membrane proteins。隨著基因 組學(xué)和蛋白組學(xué)的發(fā)展,生物信息的信息量的增長(zhǎng)極為迅速,而膜蛋白在Genbank 中的數(shù)目也相應(yīng)增長(zhǎng)。在膜蛋白結(jié)構(gòu)與功能研究的具體領(lǐng)域,膜蛋白的類型是一項(xiàng)重 要性能。通過(guò)實(shí)驗(yàn)方法和分子生物學(xué)的方法來(lái)測(cè)定膜蛋白類型難以滿足迅速增長(zhǎng)的膜 蛋白序列的需求,因此利用數(shù)據(jù)挖掘技術(shù)來(lái)預(yù)報(bào)膜蛋白序列很重要。Bagging是由 Breiman在1996年提出的一項(xiàng)機(jī)器學(xué)習(xí)方法。它通過(guò)把多種機(jī)器學(xué)習(xí)方法組合起來(lái), 得到一個(gè)分類器。由于它在分類問(wèn)題中的突出性能,被越來(lái)越多用于生物和社會(huì)科學(xué) 中的分類和預(yù)報(bào)問(wèn)題中。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對(duì)膜蛋白類型預(yù)測(cè)迅速增長(zhǎng)的需求,提供一種膜蛋白類型在 線預(yù)報(bào)方法。能夠基于普通的Web客戶端,單個(gè)或者批量預(yù)測(cè)膜蛋白序列的膜蛋白 類型。
為達(dá)到上述目的,本發(fā)明采用下述方案
一種膜蛋白分類在線預(yù)報(bào)方法,其特征在于利用機(jī)器學(xué)習(xí)方法Bagging,對(duì)一個(gè) 膜蛋白數(shù)據(jù)庫(kù)樣本進(jìn)行學(xué)習(xí),輸出學(xué)習(xí)模型;由預(yù)報(bào)器載入該學(xué)習(xí)模型,輸入數(shù)據(jù)傳 輸器將Web客戶端提交的膜蛋白序列碼轉(zhuǎn)換為只包含"O"和"l"的數(shù)據(jù),輸出模蛋白分 類預(yù)測(cè)結(jié)果,通過(guò)Servlet組件返回到Web客戶端。
上述的膜蛋白分類在線預(yù)報(bào)方法的具體操作步驟為 (1) 構(gòu)建膜蛋白分類模型;
(2) 進(jìn)行膜蛋白分類預(yù)報(bào)。
上述的膜蛋白分類在線預(yù)報(bào)方法中的構(gòu)建模蛋白分類模型的步驟為
① 采集訓(xùn)練本集采集自互聯(lián)網(wǎng)上的蛋白質(zhì)數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)的數(shù)據(jù)都已明確 膜蛋白分類類型;通過(guò)計(jì)算機(jī)程序,將蛋白序列碼轉(zhuǎn)換成為只包含"0"和"1"的數(shù)據(jù)作 為自變量,目標(biāo)變量是膜蛋白分類類型;
② Bagging方法學(xué)習(xí)用Java編程語(yǔ)言實(shí)現(xiàn)Bagging算法;
③ 輸出學(xué)習(xí)模型上述的Bagging方法學(xué)習(xí)完成對(duì)樣本數(shù)據(jù)的學(xué)習(xí),得到膜蛋 白分類的預(yù)報(bào)模型,將此模型對(duì)象進(jìn)行序列化。
上述的膜蛋白分類在線預(yù)報(bào)方法中的進(jìn)行膜蛋白分類預(yù)報(bào)的步驟如下
① 將膜蛋白分類預(yù)報(bào)模型輸入預(yù)報(bào)組件;
② 輸入數(shù)據(jù)經(jīng)數(shù)據(jù)轉(zhuǎn)換器轉(zhuǎn)換后輸入預(yù)報(bào)組件;
③ 預(yù)報(bào)組件讀取膜蛋白分類預(yù)報(bào)模型,載入轉(zhuǎn)換后的輸入數(shù)據(jù),進(jìn)行處理后得 到膜蛋白分類信息的預(yù)報(bào)結(jié)果;
預(yù)報(bào)組件輸出預(yù)報(bào)結(jié)果至Servlet組件返回至Web客戶端,完成一次膜蛋白 分類預(yù)報(bào)工作。
本發(fā)明與現(xiàn)有技術(shù)相比較,具有如下顯而易見(jiàn)的突出實(shí)質(zhì)性特點(diǎn)和顯著優(yōu)點(diǎn) 本發(fā)明基于Bagging學(xué)習(xí)方法對(duì)膜蛋白分類建模,依據(jù)建立的膜蛋白分類預(yù)報(bào)模
型,實(shí)現(xiàn)在線預(yù)報(bào)結(jié)果。本發(fā)明能夠基于普通的Web客戶端單個(gè)或者批量預(yù)測(cè)膜蛋
白序列的膜蛋白類型。
圖1描敘了構(gòu)建膜蛋白分類模型的工作流程。 圖2描敘了膜蛋白分類預(yù)報(bào)的工作流程。
具體實(shí)施例方式
本發(fā)明的一個(gè)優(yōu)選實(shí)施例結(jié)合
如下
在膜蛋白分類預(yù)報(bào)系統(tǒng)中,對(duì)預(yù)報(bào)準(zhǔn)確率至關(guān)重要的就是膜蛋白分類模型的好壞 與否,具有代表性與否。隨著生物信息學(xué)的發(fā)展,膜蛋白數(shù)據(jù)庫(kù)的信息量也與日俱增, 為了提高膜蛋白分類的預(yù)報(bào)準(zhǔn)確率,分類模型也應(yīng)該隨之更新。所以將膜蛋白分類模 型與膜蛋白分類模型創(chuàng)建器和膜蛋白分類預(yù)報(bào)器之間相互獨(dú)立分開(kāi)是一個(gè)重要的措 施。
圖1示出本實(shí)施例中的構(gòu)建膜蛋白分類模型的工作流程,其中步驟如下
① 圖1中的測(cè)試樣本,采集自互聯(lián)網(wǎng)上的蛋白質(zhì)數(shù)據(jù)庫(kù),都已經(jīng)明確膜蛋白分
類類型。通過(guò)計(jì)算機(jī)程序,將膜蛋白序列碼轉(zhuǎn)換成為只包含"o"和"r的數(shù)據(jù)作為自變
量,目標(biāo)變量是膜蛋白分類類型。
② 圖1中的Bagging方法學(xué)習(xí)用Java編程語(yǔ)言實(shí)現(xiàn)的Bagging算法。Bagging 是統(tǒng)計(jì)學(xué)家Breiman于1996年提出的,它的思想根源是統(tǒng)計(jì)學(xué)中非常重要的Bootstrap 理論。Bagging和Boosting是集成學(xué)習(xí)中最具代表性的和應(yīng)用前景的兩種處理方法。 Bagging是建立了通過(guò)投票結(jié)合起來(lái)的預(yù)測(cè)集集合。Bagging訓(xùn)練集的選擇是隨機(jī)的, 各輪訓(xùn)練集之間相互獨(dú)立。Bagging的各個(gè)預(yù)測(cè)函數(shù)沒(méi)有權(quán)重。Bagging的各個(gè)預(yù)測(cè) 函數(shù)可以并行生成,對(duì)于那些極為耗時(shí)的學(xué)習(xí)方法,Bagging可以通過(guò)并行處理方、法 節(jié)省大量的時(shí)間。
Bagging的基礎(chǔ)是重復(fù)取樣,它通過(guò)產(chǎn)生樣本的重復(fù)Bootstrap實(shí)例作為訓(xùn)練集, 每回運(yùn)行Bagging都給學(xué)習(xí)算法提供有替代地隨機(jī)從大小為m的原始訓(xùn)練集抽取m 個(gè)訓(xùn)練樣本的集合。這種訓(xùn)練集被稱作原始訓(xùn)練集合的Bootstrap復(fù)制。這種技術(shù)也 叫Bootstrap綜合,即Bagging。平均來(lái)說(shuō),每個(gè)BoostStrap復(fù)制包含原始訓(xùn)練集的 63.2%,原始訓(xùn)練集中的某些樣本可能在新的訓(xùn)練集中出現(xiàn)多次,而另外一些樣本則 可能一次也不出現(xiàn)。Bagging通過(guò)重新選取訓(xùn)練集增加了基礎(chǔ)學(xué)習(xí)器集成的差異度, 從而提高了泛化能力。
其基本處理方法如下
1) 對(duì)于數(shù)據(jù)集Z^Kx,,幾),…,(、,^), }.,選擇一個(gè)弱分類器;
2) 定義訓(xùn)練集的分布概率為尸0) = 1/ 7;
3) 隨機(jī)從訓(xùn)練集中提取m個(gè)輸入(Xl,Yl),(X2,Y2),(X3,Y3),(Xm,Ym)
a) 訓(xùn)練得到模型hi;
b) 將訓(xùn)練樣本放回;
4) 輸出最終的分類器//(》= ^)|>,(^)。
③圖1中的膜蛋白分類模型是一個(gè)獨(dú)立存儲(chǔ)在磁盤介質(zhì)的文件。上述的
Bagging方法學(xué)習(xí)完成對(duì)樣本數(shù)據(jù)的學(xué)習(xí)后,就得到膜蛋白分類的模型。將此模型對(duì) 象進(jìn)行序列化,輸出為一個(gè)獨(dú)立存儲(chǔ)的文件。
圖2示出本實(shí)施例中的膜蛋白分類預(yù)報(bào)的工作流程,其中步驟如下
① 圖2中的數(shù)據(jù)轉(zhuǎn)換器,負(fù)責(zé)將Web客戶端得到的膜蛋白序列碼進(jìn)行處理,然 后轉(zhuǎn)換成為只包含"0"和"1"的數(shù)據(jù)并輸出。
② 圖2中的預(yù)報(bào)組件,與圖一中的膜蛋白分類模型協(xié)同工作。進(jìn)行膜蛋白分類 預(yù)報(bào)時(shí),預(yù)報(bào)從磁盤介質(zhì)中讀取膜蛋白分類模型文件,載入模型完成初始化。輸入由 數(shù)據(jù)轉(zhuǎn)換器輸出的數(shù)據(jù),載入的膜蛋白分類模型對(duì)此數(shù)據(jù)進(jìn)行處理,得到膜蛋白分類 信息的預(yù)報(bào)結(jié)果,輸出。
③ 圖2中的Servlet組件,采用J2EE規(guī)范編寫。當(dāng)Web客戶端提交膜蛋白序列 碼數(shù)據(jù)后,Servlet組件先調(diào)用驗(yàn)證組件對(duì)用戶提交數(shù)據(jù)進(jìn)行檢測(cè),確定是否有效數(shù)據(jù)。 若為有效數(shù)據(jù),調(diào)用預(yù)報(bào)組件并使其完成初始化,再調(diào)用數(shù)據(jù)轉(zhuǎn)換器對(duì)膜蛋白序列碼 數(shù)據(jù)進(jìn)行轉(zhuǎn)換,輸入到預(yù)報(bào)組件進(jìn)行預(yù)報(bào)。
④ 將預(yù)報(bào)組件輸出的預(yù)報(bào)結(jié)果信息處理后返回至Web客戶端,完成一次膜蛋白 分類預(yù)報(bào)工作。
權(quán)利要求
1.一種膜蛋白分類在線預(yù)報(bào)方法,其特征在于利用機(jī)器學(xué)習(xí)方法Bagging,對(duì)一個(gè)膜蛋白數(shù)據(jù)庫(kù)樣本進(jìn)行學(xué)習(xí),輸出學(xué)習(xí)模型;由預(yù)報(bào)器載入該學(xué)習(xí)模型,輸入數(shù)據(jù)傳輸器將Web客戶端提交的膜蛋白序列碼轉(zhuǎn)換為只包含“0”和“1”的數(shù)據(jù),輸出模蛋白分類預(yù)測(cè)結(jié)果,通過(guò)Servlet組件返回到Web客戶端。
2. 根據(jù)權(quán)利要求l所述的膜蛋白分類在線預(yù)報(bào)方法,其特征在于具體操作步驟為 (1)構(gòu)建膜蛋白分類模型;P)進(jìn)行膜蛋白分類預(yù)報(bào)。
3. 根據(jù)權(quán)利要求2所述的膜蛋白分類在線預(yù)報(bào)方法,其特征在于所述的步驟(l)中的構(gòu)建模蛋白分類模型的步驟為① 采集訓(xùn)練本集采集自互聯(lián)網(wǎng)上的蛋白質(zhì)數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)的數(shù)據(jù)都已明 確膜蛋白分類類型;通過(guò)計(jì)算機(jī)程序,將蛋白序列碼轉(zhuǎn)換成為只包含"O" 和"1"的數(shù)據(jù)作為自變量,目標(biāo)變量是膜蛋白分類類型;② Bagging方法學(xué)習(xí)用Java編程語(yǔ)言實(shí)現(xiàn)Bagging算法;③ 輸出學(xué)習(xí)模型上述的Bagging方法學(xué)習(xí)完成對(duì)樣本數(shù)據(jù)的學(xué)習(xí),得到膜 蛋白分類的預(yù)報(bào)模型,將此模型對(duì)象進(jìn)行序列化。
4. 根據(jù)權(quán)利要求2所述的膜蛋白分類在線預(yù)報(bào)方法,其特征在于所述的步驟(2)中的 進(jìn)行膜蛋白分類預(yù)報(bào)的步驟如下① 將膜蛋白分類預(yù)報(bào)模型輸入預(yù)報(bào)組件;② 輸入數(shù)據(jù)經(jīng)數(shù)據(jù)轉(zhuǎn)換器轉(zhuǎn)換后輸入預(yù)報(bào)組件;③ 預(yù)報(bào)組件讀取膜蛋白分類預(yù)報(bào)模型,載入轉(zhuǎn)換后的輸入數(shù)據(jù),進(jìn)行處理后 得到膜蛋白分類信息的預(yù)報(bào)結(jié)果; 預(yù)報(bào)組件輸出預(yù)報(bào)結(jié)果至Servlet組件返回至Web客戶端,完成一次膜蛋 白分類預(yù)報(bào)工作。
全文摘要
本發(fā)明公開(kāi)了一種膜蛋白分類在線預(yù)報(bào)方法。本方法是利用機(jī)器學(xué)習(xí)方法Bagging對(duì)一個(gè)膜蛋白數(shù)據(jù)庫(kù)樣本進(jìn)行學(xué)習(xí),輸出學(xué)習(xí)模型。預(yù)報(bào)器載入學(xué)習(xí)模型,輸入數(shù)據(jù)轉(zhuǎn)換器由Web客戶端提交的膜蛋白序列碼轉(zhuǎn)換所得只包含“0”和“1”的數(shù)據(jù),輸出膜蛋白分類預(yù)測(cè)結(jié)果,通過(guò)Servlet組件返回到Web客戶端。本發(fā)明能夠基于普通的Web客戶端單個(gè)或批量預(yù)測(cè)膜蛋白序列的膜蛋白類型。
文檔編號(hào)G06F19/00GK101187960SQ20071017180
公開(kāi)日2008年5月28日 申請(qǐng)日期2007年12月6日 優(yōu)先權(quán)日2007年12月6日
發(fā)明者亮 劉, 麗 王, 金雨歡, 冰 鈕, 陸文聰 申請(qǐng)人:上海大學(xué)