楊書新, 湯達(dá)榮
(江西理工大學(xué) 信息工程學(xué)院, 贛州 341000)
在全基因組關(guān)聯(lián)研究中已經(jīng)發(fā)現(xiàn)人類的許多疾病和癥狀與遺傳變體相關(guān)[1],但由于這些復(fù)雜疾病受到多種遺傳和環(huán)境因素的綜合影響,導(dǎo)致鑒定與之相關(guān)的遺傳變體一直是緩慢且困難的[2]。大部分的遺傳變體存在于非編碼區(qū),但已有的大部分注釋方法是基于蛋白編碼區(qū)域的變體,并且這些編碼區(qū)域的基因只占整個(gè)基因組的大約2%[3]。近期提出的基于支持向量機(jī)(SVM)的聯(lián)合注釋依賴耗盡(CADD)[4]算法,該方法客觀地將多種不同注釋整合到每個(gè)變體的單個(gè)度量中。但是CADD中的SVM方法性能受限,由于它只能學(xué)到線性的數(shù)據(jù)特征。
近年來(lái),深度學(xué)習(xí)[5]成為機(jī)器學(xué)習(xí)最熱的方向之一,在圖像識(shí)別、語(yǔ)音識(shí)別和自然語(yǔ)言處理領(lǐng)域取得了突破性進(jìn)展[6-7],而且在生物信息學(xué)中也有不少成功應(yīng)用[8-11]。深度學(xué)習(xí)在高通量生物學(xué)中潛力巨大,它擅長(zhǎng)處理龐大高維的數(shù)據(jù),通過(guò)訓(xùn)練多層網(wǎng)絡(luò)學(xué)到數(shù)據(jù)之間的內(nèi)部結(jié)構(gòu),對(duì)了解生物數(shù)據(jù)的結(jié)構(gòu)增加了解釋性[12-13]。
基于深度學(xué)習(xí)方法眾多的優(yōu)點(diǎn),本文設(shè)計(jì)了一個(gè)模型,該模型由3個(gè)卷積神經(jīng)網(wǎng)絡(luò)和4個(gè)全連接神經(jīng)網(wǎng)絡(luò)構(gòu)成。卷積網(wǎng)絡(luò)擅長(zhǎng)于數(shù)據(jù)的降維和特征提取[14],它的另一個(gè)優(yōu)點(diǎn)是權(quán)值共享,大大地減少了網(wǎng)絡(luò)中的參數(shù)。全連接網(wǎng)絡(luò)充當(dāng)一個(gè)分類器。使用訓(xùn)練集訓(xùn)練模型,使用模擬和真實(shí)的測(cè)試集評(píng)估模型的預(yù)測(cè)準(zhǔn)確率,以期能很好地捕獲特征之間的非線性關(guān)系。
本文所有數(shù)據(jù)均來(lái)自文獻(xiàn)[9],其中模擬數(shù)據(jù)有33 255 550條,分成了訓(xùn)練集(Training set)26 602 000條,驗(yàn)證集(Validation set)3 326 977條和測(cè)試集(Testing set)3 326 573條,真實(shí)數(shù)據(jù)集(ClinVar and ESP set)有61 406條。所有數(shù)據(jù)都是以numpy[15]二進(jìn)制的格式存儲(chǔ)的。
1.2.1 模型建立
數(shù)據(jù)的特征維度高達(dá)949,而卷積神經(jīng)網(wǎng)絡(luò)(CNN)擅長(zhǎng)降維。CNN包含卷積層和池化層。如果網(wǎng)絡(luò)能夠有效提取特征,那么高維數(shù)據(jù)就能映射到低維的空間。為了預(yù)測(cè)輸出結(jié)果,必須再接一個(gè)充當(dāng)分類器的全連接神經(jīng)網(wǎng)絡(luò)(FNN)。在FNN中,每個(gè)節(jié)點(diǎn)都受上一層網(wǎng)絡(luò)全部節(jié)點(diǎn)的影響。本文設(shè)計(jì)了一個(gè)包含3個(gè)CNN和4個(gè)FNN的混合深度神經(jīng)網(wǎng)絡(luò)。
其中的虛線圓圈表示擴(kuò)展節(jié)點(diǎn),通常填充為0
The dotted circle expansion node, which is usually filled with 0
圖1CNN的基本結(jié)構(gòu)
Figure 1 Structure of basic CNN
圖 2 FNN的基本結(jié)構(gòu)
1.2.2 模型訓(xùn)練
在訓(xùn)練網(wǎng)絡(luò)的時(shí)候,考慮到模型有許多的網(wǎng)絡(luò)層,為了防止梯度消失以及其他情況導(dǎo)致訓(xùn)練壞死,本文采用了許多先進(jìn)的技術(shù)。
1)激活函數(shù)。
整個(gè)模型利用了2個(gè)激活函數(shù)。
(1)
(2)
為了加快訓(xùn)練速度,最后一層網(wǎng)絡(luò)不使用激活函數(shù),而是在真正計(jì)算預(yù)測(cè)時(shí)使用公式(1),其余的網(wǎng)絡(luò)層都是用公式(2)函數(shù)激活。
2)損失函數(shù)。
損失函數(shù)定義為交叉信息熵。
H(p,q)=-∑xp(x)logq(x)
(3)
其中P是預(yù)測(cè)值,q是真實(shí)值。但是最后一層網(wǎng)絡(luò)輸出的值是概率分布,實(shí)際計(jì)算時(shí)需要用公式(1)轉(zhuǎn)換。
3)其他策略。
為了訓(xùn)練整個(gè)模型和更新參數(shù),使用前饋算法計(jì)算每層的輸出,梯度下降和反向傳播算法[16]被用于最小化損失函數(shù)。本文還采用了一些優(yōu)化技術(shù):使用mini-batch[17]加快訓(xùn)練速度;為了避免梯度過(guò)大過(guò)小,使用adam[18]算法來(lái)動(dòng)態(tài)調(diào)節(jié)學(xué)習(xí)速率;為了防止過(guò)擬合采用batch-normolization[19]方法。
1.2.3 性能指標(biāo)
(4)
(5)
(6)
(7)
(8)
TPR=Recall
(9)
(10)
其中TP=true positive,FP=false positive,TN=true negative和FN=false negative。為了更好地評(píng)估分類器的性能,本文繪制了ROC曲線,它的橫坐標(biāo)為負(fù)正類率(FPR),縱坐標(biāo)為真正類率(TPR),并且計(jì)算了曲線的AUC面積。所有這些指標(biāo)都是通過(guò)一個(gè)python包scikit-learn[20]計(jì)算的。
本文提出的模型是用python3.6實(shí)現(xiàn)的,稱之為深度卷積全連接(DCF),深度學(xué)習(xí)平臺(tái)采用的是Google開源平臺(tái)tensorflow[21]。本文同樣訓(xùn)練了Logistic Regression(LR)和CADD的SVM模型作為對(duì)比。LR的實(shí)現(xiàn)采用的是開源python包scikit-learn。本文沒(méi)有直接使用CADD提供的SVM模型,因?yàn)樗哪P鸵淮沃荒茉u(píng)估100 000變體而且已經(jīng)在測(cè)試集中訓(xùn)練過(guò)了。而是使用LIBOCAS[22]庫(kù)中的SVM作為替代,它們的分類效果相當(dāng)。3個(gè)模型均使用訓(xùn)練集進(jìn)行訓(xùn)練,同時(shí)在訓(xùn)練過(guò)程中用驗(yàn)證集對(duì)分類器進(jìn)行驗(yàn)證。訓(xùn)練完之后,分別在測(cè)試集和真實(shí)數(shù)據(jù)集進(jìn)行預(yù)測(cè)。在測(cè)試集上,DCF、LR和SVM的分類準(zhǔn)確率分別是66.44%、59.77%和58.18%(表1)。文獻(xiàn)[9]提出的DANN在該數(shù)據(jù)集的正確率是66.1%。其他的性能指標(biāo)見表1和表2。
表 1 DCF、LR和SVM在模擬測(cè)試集上的性能比較
表2 DCF、LR和SVM在真實(shí)數(shù)據(jù)集上的性能比較
為了更直觀的對(duì)比它們的性能,先計(jì)算了真陽(yáng)性率(TPR)和假陽(yáng)性率(FPR),繪制了ROC曲線,然后計(jì)算了曲線下的面積AUC。如圖3-a所示,在測(cè)試集中,DCF的AUC面積比LR高了約10%,但是在真實(shí)集中則略低,具體如圖3-b。這樣的結(jié)果表明了本文方法能夠?qū)W習(xí)到數(shù)據(jù)特征之間的非線性關(guān)系,同樣表明了在大數(shù)據(jù)量下深度學(xué)習(xí)會(huì)更具優(yōu)勢(shì)。所有這3種模型都大大提高了AUC度量標(biāo)準(zhǔn),LR和DCF模型的性能優(yōu)于SVM。然而,模型之間的性能差距遠(yuǎn)小于測(cè)試集的差距。
CADD比其他廣泛使用的注釋優(yōu)先處理功能性和致病性變體更好,但也有一些局限性,可能會(huì)限制其在某些分析中的有用性或可能代表需要改進(jìn)的地方[4]。DANN改進(jìn)了線性方法,但其準(zhǔn)確率仍不令人滿意,可能主要是由于訓(xùn)練采用的是模擬數(shù)據(jù),這樣的數(shù)據(jù)在生物學(xué)功能上有欠缺[9]。從圖3-b的ROC曲線可以看出,盡管模型是用模擬數(shù)據(jù)訓(xùn)練的,但在真實(shí)數(shù)據(jù)集中預(yù)測(cè)依然有效。如果需要進(jìn)一步提高預(yù)測(cè)的準(zhǔn)確率,首先應(yīng)該建立更加標(biāo)準(zhǔn)的數(shù)據(jù)集,模擬的數(shù)據(jù)將更多的生物學(xué)因素考慮進(jìn)去;其次建立統(tǒng)一的評(píng)價(jià)標(biāo)準(zhǔn),給注釋方法羅列更全面具體的評(píng)估參數(shù);再就是引入更加先進(jìn)的機(jī)器學(xué)習(xí)方法和工具,比如說(shuō)當(dāng)前的深度學(xué)習(xí)。
虛線是輔助線,曲線都在虛線之上,曲線的AUC面積都大于0.5
the dotted line is auxiliary line, curves is above the dotted line, AUC area of the curve is greater than 0.5
圖3DCF和LR的ROC曲線對(duì)比
Figure 3 ROC curves comparing performances of DCF and LR
相比于CADD的SVM方法,我們提出的方法已經(jīng)有了很大的改進(jìn)。在線性分類器中,LR實(shí)現(xiàn)了更好的性能。DCF實(shí)現(xiàn)了最佳的整體性能,在測(cè)試集的精度和分離方面大大改善了線性方法。這使得DCF成為最有用的注釋算法之一,因?yàn)榻^大多數(shù)人類基因變體都是在非編碼區(qū)。DCF也有一些限制,可能會(huì)限制它在某些分析中的用處,或者可能代表需要改進(jìn)的地方?;蚪M非編碼區(qū)的標(biāo)準(zhǔn)數(shù)據(jù)還很缺乏,這限制了更好注釋方法的開發(fā)和驗(yàn)證預(yù)測(cè)的能力。但是鑒于DCF在注釋包含絕大多數(shù)遺傳變異的非編碼變體方面的卓越表現(xiàn),我們預(yù)計(jì)DCF在全基因組關(guān)聯(lián)研究和單核苷酸變異組合挖掘中將發(fā)揮重要的作用。