楊子航,王順芳
(云南大學(xué) 信息學(xué)院,云南 昆明 650504)
蛋白質(zhì)的溶解性往往代表著它的產(chǎn)量,從而在制藥與食品等行業(yè)中發(fā)揮重要作用[1]。迄今為止,在大腸桿菌表達系統(tǒng)中可以成功生產(chǎn)的可溶性重組蛋白實例仍然很少,這導(dǎo)致了難以提高整體生產(chǎn)能力。為了獲得可溶性蛋白質(zhì),大多數(shù)成熟的策略通常涉及一系列試錯步驟,卻無法保證成功。同時提高產(chǎn)量和最小化生產(chǎn)成本的一種方法是通過使用計算模型來提供準(zhǔn)確的溶解性預(yù)測[2],在實驗工作之前預(yù)測出高度可溶解的蛋白質(zhì)。
目前,已經(jīng)提出了幾種預(yù)測方法[3-5],但現(xiàn)有方法存在一定的不足且預(yù)測效果上仍然表現(xiàn)不佳。在已有工作的基礎(chǔ)上,本文提出了一種多輸入的深度學(xué)習(xí)模型FESOL來應(yīng)對現(xiàn)有方法的局限性并提高蛋白質(zhì)溶解性的預(yù)測性能。方法受到FAVOR+(fast attention via positive orthogonal random features)[6]這種快速注意力機制的高效性和它與常規(guī)Transformer[7]的兼容性的啟發(fā),應(yīng)用它代替?zhèn)鹘y(tǒng)自注意力使得模型能夠在蛋白質(zhì)長序列的溶解性預(yù)測中高效提取全局特征,同時克服由于傳統(tǒng)注意力而引起的計算復(fù)雜度問題。此外,在交叉熵的基礎(chǔ)上,進一步結(jié)合余弦相似度,設(shè)計了增強的損失函數(shù),文中記名為EhL(enhanced loss)。傳統(tǒng)的交叉熵損失只關(guān)注樣本是否被正確分類[8],EhL一定程度上彌補了這一不足,使得模型在處理多個輸入時能夠關(guān)注到不同輸入的差異性。本文提出的方法針對蛋白質(zhì)長序列和多數(shù)據(jù),通過FAVOR+和EhL的相互配合,編碼更多特定于不同輸入的信息,從而提高溶解性預(yù)測的準(zhǔn)確性。
近幾年,深度學(xué)習(xí)領(lǐng)域快速發(fā)展,相比于傳統(tǒng)機器學(xué)習(xí)方法不靈活等特點,深度學(xué)習(xí)能夠直接高效地捕獲到原始數(shù)據(jù)中所關(guān)心的信息,因此通過深度學(xué)習(xí)的方法探索蛋白質(zhì)性質(zhì)與其序列的內(nèi)在關(guān)系是目前比較熱門的一個研究領(lǐng)域,并取得了良好的研究成果[9,10]。在蛋白質(zhì)溶解性預(yù)測中,Khurana S等提出了DeepSol,一種基于深度學(xué)習(xí)的蛋白質(zhì)溶解性預(yù)測器,框架的主干是一個卷積神經(jīng)網(wǎng)絡(luò),它利用了k-mer 結(jié)構(gòu)以及從蛋白質(zhì)序列中提取的額外序列和結(jié)構(gòu)特征[3]。Chen J等提出了一種新的結(jié)構(gòu)感知方法GraphSol,通過結(jié)合預(yù)測的接觸圖和圖神經(jīng)網(wǎng)絡(luò),從序列中預(yù)測蛋白質(zhì)溶解度[11]。Wu X等提出了EPSOL,使用Bi-gram和Tri-gram來增強原始蛋白質(zhì)序列的表示,通過多維嵌入獲得全面的蛋白質(zhì)特征表示,利用多卷積池進一步整合并最后預(yù)測[4]。
利用CNN和多數(shù)據(jù)融合進行蛋白質(zhì)溶解性預(yù)測已經(jīng)取得了良好的效果,但仍存在一定的不足,主要體現(xiàn)在兩方面:其一,基于卷積神經(jīng)網(wǎng)絡(luò)的模型將無法直接高效的捕獲到序列的長程依賴信息,這也導(dǎo)致了這類模型不能夠最大限度提取有意義的長序列特征進行準(zhǔn)確的下游預(yù)測;其二,當(dāng)在多輸入下使用傳統(tǒng)交叉熵作為模型訓(xùn)練損失時,僅學(xué)習(xí)各個輸入關(guān)聯(lián)到標(biāo)簽的一般特征,而無法充分考慮到不同類型的輸入數(shù)據(jù)可以在高級表示空間呈現(xiàn)出獨特的特征,這將導(dǎo)致模型無法有效提取豐富的預(yù)測特征。
Transformer通過注意力機制并行處理整個輸入,它能夠直接有效提取序列全局特征,有效緩解了卷積網(wǎng)絡(luò)難以捕獲長程信息的問題。例如,Thumuluri V提出了NetSolP,一個基于Transformer的深度學(xué)習(xí)蛋白質(zhì)語言模型,專注于直接從序列預(yù)測溶解性和可用性[12]。但是,Transformer由于其較高計算復(fù)雜度而不能很好地擴展到長序列。為了優(yōu)化Transformer模型的復(fù)雜度,Choromanski K等提出了Performer,并在蛋白質(zhì)序列建模任務(wù)上測試了其有效性[6]。其復(fù)雜度上的優(yōu)化主要得益于FAVOR+,它通過核技巧近似傳統(tǒng)注意力分布,利用矩陣運算規(guī)則將時間復(fù)雜度降到了線性,這很好解決了由序列長度引起的計算復(fù)雜度問題。因此應(yīng)用FAVOR+有望改善長序列蛋白質(zhì)的溶解性預(yù)測。
提出的模型接受單個蛋白質(zhì)的8種不同輸入數(shù)據(jù),可以概括為4個部分:①原始氨基酸序列、2-mer和3-mer增強表示;②從蛋白質(zhì)序列預(yù)測的二級結(jié)構(gòu)序列;③從蛋白質(zhì)序列預(yù)測的溶劑相對可及性序列;④從蛋白質(zhì)序列中提取的附加特征,共57個數(shù)值形式的特征。表1中總結(jié)了這8種輸入數(shù)據(jù)。
表1 輸入數(shù)據(jù)總結(jié)
FESOL是一個在多輸入數(shù)據(jù)下完成分類任務(wù)的深度學(xué)習(xí)模型,架構(gòu)如圖1所示。它由7個編碼器以及1個分類器組成。并行的7個編碼器在結(jié)構(gòu)上都是相同的,從模型的整體工作過程來說,它首先接受一個樣本的7種不同序列特征輸入,分別是Seq、2-mer、3-mer、Rsa、Rsa20、SS和SS8,它的7個編碼器分別為一個樣本的不同輸入各編碼到一個表示向量,產(chǎn)生7個表示向量再與57個附加特征(Add)直接連接為一個全局表示向量,與此同時,7個表示向量計算余弦相似度損失(LCS),以在高級特征空間中約束不同特征向量的相似程度。之后,F(xiàn)ESOL的分類器直接將這個全局表示向量映射到預(yù)測標(biāo)簽,這個分類器是一個兩層的全連接網(wǎng)絡(luò)。最終,預(yù)測標(biāo)簽與實際標(biāo)簽計算交叉熵損失并結(jié)合余弦相似度損失訓(xùn)練整個網(wǎng)絡(luò)。
圖1 FESOL總體框架
單個編碼器在Transformer基礎(chǔ)上,引入了FAVOR+機制,其結(jié)構(gòu)如圖2所示,它由嵌入層(Embedding)、多頭注意力層(MulHAttn)和前饋神經(jīng)網(wǎng)絡(luò)層(FFN)順序堆疊組成。由于各個編碼器獨立工作,且結(jié)構(gòu)相同,本節(jié)將以氨基酸序列輸入(Seq)為例,介紹其對應(yīng)的編碼器(Enc1)的工作過程。
圖2 編碼器結(jié)構(gòu)
(1)嵌入層
整齊后氨基酸序列是Enc1的輸入,它由20種不同的氨基酸和1個填充構(gòu)成。Enc1從嵌入層開始,將每個氨基酸轉(zhuǎn)換為相應(yīng)的嵌入向量。經(jīng)過嵌入層后,得到氨基酸序列嵌入矩陣E∈RL×d, 其中L是氨基酸序列長度,d是嵌入向量的維度大小。
(2)多頭注意力層
Enc1的多頭注意力與早期工作(Transformer)中的注意力機制[13,14]有所不同,它是基于正交隨機特征的快速注意力,通過隱式計算注意力分布,利用矩陣運算規(guī)則將時間復(fù)雜度降到了線性,使得編碼器能夠在捕獲長序列的上下文信息時更加簡潔高效。Enc1的每個子層中,多頭注意力層是核心,它幫助編碼器將序列的嵌入矩陣轉(zhuǎn)換為潛在特征矩陣。多頭注意力的具體計算公式被列出
MH(E)=Concat(head1,head2,…,headn)Wh
(1)
(2)
(3)
在FAVOR+的注意力分布矩陣A中,A(i,j)=K(qiT,kiT), 核函數(shù)K定義如下[6]
K(x,y)=[φ(x)Tφ(y)]
(4)
這里的φ(u) 是一個隨機特征圖,qi,ki分別對應(yīng)到矩陣Q,K的第i行向量。最終高效的注意力機制的計算形式具體表示為
Attn(Q,K,V)=U-1(QP((KP)TV))
(5)
U=diag(QP((KP)T1L))
(6)
對于QP,KP的矩陣行分別由φ(qiT)T和φ(kiT)T給出。 diag(z) 獲得以輸入向量為對角線的對角矩陣。1L表示長度為L的全1向量。
編碼器通過FAVOR+計算注意力分布,能夠?qū)ESOL的計算復(fù)雜度從O(L2d) 降至了O(Lrd), 有效提高了長序列的計算效率。
除了注意力的有效近似估計外,本層還添加了殘差連接。嵌入矩陣E通過多頭注意力層后,得到帶有殘差連接的輸出H∈RL×nr
H=LayerNorm(MH(E)+E)
(7)
(3)前饋神經(jīng)網(wǎng)絡(luò)層
前饋神經(jīng)網(wǎng)絡(luò)層由兩個線性變換組成,中間通過一個elu激活函數(shù)連接,計算過程描述為
O=elu(HW1+b1)W2+b2
(8)
W1∈Rd×m和W2∈Rm×d是權(quán)重矩陣,b1和b2是偏置值。這一層得到的O∈RL×d為氨基酸序列的特征矩陣,取O的第一行o∈Rd作為氨基酸序列的特征表示向量,提供給分類器進行溶解性預(yù)測。
FESOL的分類器是一個簡單的兩層全連接神經(jīng)網(wǎng)絡(luò)。它接受x作為輸入,x由每種輸入特定的編碼器生成的表示向量和附加的特征連接而成
x=Concat(o1,o2,…,o7,oAdd)
(9)
o1,o2,…,o7分別對應(yīng)到Seq,2-mer,3-mer,Rsa,Rsa20,SS,SS8這7個不同特征輸入的表示向量,oAdd是附加特征組成的特征向量。分類器的輸出是預(yù)測概率yp
yp=softmax(elu(xW3+b3)W4+b4)
(10)
在交叉熵損失下學(xué)習(xí)的表示僅捕獲所有輸入數(shù)據(jù)的一般上下文,但可能不是特定于每種輸入的信息。這將直接導(dǎo)致預(yù)測模型學(xué)習(xí)到的表示向量中缺乏不同輸入之間的差異性,而這些無法學(xué)習(xí)到的差異性可能是決定蛋白質(zhì)溶解性的潛在特征,進而影響到溶解性的預(yù)測效果。為了體現(xiàn)不同輸入的差異性,希望不同輸入的表示向量應(yīng)當(dāng)互不相同,因此本研究中增強了訓(xùn)練模型的損失函數(shù),將交叉熵和余弦相似度相結(jié)合,新增的余弦相似度損失可以在高級特征空間中迫使不同輸入的表示互不相同,從而提高FESOL編碼器提取豐富特征的能力。
總體上,F(xiàn)ESOL的7個編碼器分別將7種不同數(shù)據(jù)的輸入編碼到7個獨立的d維的表示向量,然后,進一步利用每種輸入特定的編碼器生成的表示向量來構(gòu)建反映不同輸入數(shù)據(jù)獨特性的余弦相似度損失,同時,結(jié)合交叉熵損失構(gòu)建出EhL。這里的交叉熵損失由FESOL分類器給出的預(yù)測概率與真實標(biāo)簽計算得到。
EhL=αLCE+βLCS
(11)
這里的LCE,LCS分別代表交叉熵損失和余弦相似度損失,α,β是權(quán)重系數(shù),α約束預(yù)測標(biāo)簽與真實標(biāo)簽的接近程度,β控制各個表示向量的差異程度。LCE計算如下,表示二分類交叉熵損失
(12)
LCS先計算單個樣本的不同表示間的余弦相似度,然后進行求和
(13)
這里的cs計算兩個向量余弦相似度,規(guī)范定義在下列等式中給出
(14)
其中,p,q是分別代表一個向量。
本文中使用的原始數(shù)據(jù)集來自于Smialowski等從大腸桿菌中收集的異源表達的蛋白質(zhì)序列,并由Xiang Wu等[4]進行了預(yù)處理的基礎(chǔ)上作為訓(xùn)練數(shù)據(jù)集。數(shù)據(jù)集由28 972個可溶性和40 448個不溶性蛋白質(zhì)組成。
研究中使用的獨立的測試集由1000個可溶性蛋白質(zhì)序列和1001個不溶性蛋白質(zhì)序列組成,它已被廣泛用作評估方法性能的基準(zhǔn)測試集。為了與現(xiàn)有方法進行公平比較,采用此測試集對幾種最先進的基于序列的蛋白質(zhì)溶解性預(yù)測方法進行全面比較。
實驗中將預(yù)測蛋白質(zhì)溶解性的任務(wù)作為二分類問題,目標(biāo)是最小化預(yù)測的溶解性標(biāo)簽和實驗測量的標(biāo)簽之間的差異。Pytorch庫被用來實現(xiàn)所提出的模型。模型訓(xùn)練中,使用學(xué)習(xí)率為0.001和正則率為0.005的AdamW優(yōu)化器,批次大小為32,訓(xùn)練輪次設(shè)置為10。至于輸入數(shù)據(jù),為了保證方法的可對比性,所有蛋白質(zhì)的序列數(shù)據(jù)長度固定為L=1200,這類似于之前的工作[3,4],少于1200個氨基酸用0填充,超過1200個氨基酸被截斷為1200。不同的序列形式輸入數(shù)據(jù)的嵌入維數(shù)d均設(shè)置為64,這些數(shù)據(jù)依次為Seq、2-mer、3-mer、Rsa、Rsa20、SS和SS8。此外,EhL中的權(quán)重系數(shù)α,β經(jīng)過實驗探索后均設(shè)置為1。
研究中使用到的評價指標(biāo)包括正確率(Accuracy)、馬修斯相關(guān)系數(shù)(MCC)和Rawi等[5]介紹到的每類選擇性(Selectivity)、每類靈敏度(Sensitivity),這些指標(biāo)已在之前研究中用于評估其它先進方法的性能,MCC的值在-1和1之間,越接近1表示模型預(yù)測越好。其它5個指標(biāo)具體計算為
(15)
(16)
(17)
(18)
(19)
其中,TP和TN分別代表正確分類的可溶和不可溶蛋白質(zhì)的樣本數(shù),F(xiàn)N和FP分別代表被錯誤分類的可溶和不可溶蛋白質(zhì)的樣本數(shù)。
此外,EhL系數(shù)影響和消融研究中還使用到Precision、Recall和AUC,Precision、Recall這兩個指標(biāo)被廣泛用于評估分類問題的性能[15,16],定義為
(20)
(21)
AUC定義為接受者操作特性曲線(ROC)下的面積,一般來說,提供更大AUC的分類器表明它具有更好的性能。
為了驗證增強損失EhL的有效性,實驗中對FESOL依次使用EhL和交叉熵(CE)進行了訓(xùn)練,并在MCC上進行了比較,同時,為了更全面探索EhL在不同序列長度輸入下的適用性,設(shè)置了從600到1200,以100長度遞增的序列截斷長度上進行模型訓(xùn)練并比較預(yù)測性能,結(jié)果如圖3所示??梢园l(fā)現(xiàn),EhL在所有的不同截斷長度下均取得了更高的性能,能夠適應(yīng)于不同長度下的預(yù)測。在長度為1200時,EhL最高超過僅使用交叉熵損失時的0.3以上,雖然長度為600和1000時兩條折線最為接近,但是也略微勝過了交叉熵。
圖3 EhL和交叉熵對FESOL性能影響
根據(jù)觀察到的實驗結(jié)果,設(shè)計的增強損失函數(shù)EhL可以提高多輸入下的預(yù)測性能??傮w而言,實驗結(jié)果表明了損失函數(shù)的組合是一個簡單且有效的策略,它有助于在多輸入模型的學(xué)習(xí)過程中捕獲更豐富的表示并提高分類性能。
為了探究EhL中的權(quán)重系數(shù)α,β在不同的取值下的對模型預(yù)測性能的影響。實驗中對0.5、1、2這3個參數(shù)上進行了網(wǎng)格搜索,并在Accuracy、Precision、Recall、MCC這4個評價指標(biāo)上對預(yù)測性能進行了比較,具體預(yù)測結(jié)果見表2。
表2 FESOL在不同α,β下的預(yù)測性能
實驗中主要關(guān)注引入不同比重的余弦相似度后對預(yù)測效果產(chǎn)生的影響,因此固定α取值,比較β對預(yù)測性能的影響??梢园l(fā)現(xiàn)在比較α=0.5時,β=0.5取的相對最高性能,對于其它兩組β=1,2,隨著β取到更大值,性能也隨之增大;比較α=1時,當(dāng)β=1時取得全局最高性能,而對于β=0.5,2時,性能也呈現(xiàn)隨β增大而增大;比較α=2時,當(dāng)β=2時取得相對較高性能,但是,對于β=0.5,2時卻呈現(xiàn)與之前相反結(jié)果,隨β增大性能反而下降。根據(jù)固定α?xí)r的對比可知,在α,β等比例取值時,一致取得了最高性能,也說明了添加余弦相似度的必要性。
FESOL總共有8種不同類型的輸入,為了探究不同的輸入對FESOL預(yù)測性能的貢獻程度,實驗中通過移除網(wǎng)絡(luò)中的單個輸入組件來進行消融研究。具體來說,將所有輸入分為了4組,氨基酸(Seq,2-mer,3-mer)、溶劑可及性(Rsa,Rsa20)、二級結(jié)構(gòu)(SS,SS8)和附加特征(Add),并依次測試了移除氨基酸(Without Seq)、溶劑可及性(Without Rsa)、二級結(jié)構(gòu)(Without SS)和附加特征(Without Add)時模型性能,并與所有輸入(All)進行比較。
實驗結(jié)果見表3,可以發(fā)現(xiàn)氨基酸序列對最終的預(yù)測性能是最重要的。如果沒有氨基酸序列,Accuracy、Precision、Recall和MCC分別從0.803、0.802、0.804和0.605下降到0.696、0.779、0.546和0.410,氨基酸序列的重要程度在之前的研究[4]中也得到了驗證。其次,溶劑可及性也是重要的,在沒有它們輸入時,Accuracy、Precision、Recall和MCC分別下降到0.775、0.796、0.738和0.551。此外,相較于其它輸入數(shù)據(jù),二級結(jié)構(gòu)和附加特征顯得不那么重要,但它們也有利于提高預(yù)測性能。
表3 FESOL與移除不同輸入的性能
此外,展示了提出的FESOL與移除不同組件后的模型的ROC曲線,如圖4所示,所有輸入下FESOL的ROC曲線明顯高于沒有氨基酸輸入的模型,但是相較于其它模型則高度并不明顯。結(jié)果表明,不同類型的輸入數(shù)據(jù)對蛋白質(zhì)溶解性預(yù)測產(chǎn)生的作用也是不同的。最關(guān)鍵的數(shù)據(jù)是氨基酸輸入,其它包括溶劑可及性、二級結(jié)構(gòu)和附加特征僅作為一種改善預(yù)測性能的輔助信息。
圖4 FESOL與移除不同輸入的ROC曲線
為了評估FESOL的預(yù)測性能,在6個評價指標(biāo)上使用獨立測試集將FESOL與3種先進的預(yù)測方法進行了比較,包括PaRSnIP、DeepSOL和EPSOL。FESOL訓(xùn)練過程中的損失收斂曲線如圖5所示,可以發(fā)現(xiàn),訓(xùn)練5輪左右時模型收斂,取驗證集上損失達到最低的模型,進而在測試集上進行性能評估。
圖5 損失收斂曲線
性能預(yù)測結(jié)果見表4,可以發(fā)現(xiàn)FESOL在所有方法中取得了最高的Accuracy=0.80、MCC=0.60、Selectivity(insoluble)=0.80、Sensitivity(soluble)=0.80。唯一例外的是Selectivity(soluble)=0.84和Sensitivity(insoluble)=0.88兩個指標(biāo),它們由DeepSol S2產(chǎn)生了最高分數(shù)。但是, 在使用Selectivity(insoluble)和Sensitivity(soluble)指標(biāo)評估時,DeepSol S2的表現(xiàn)卻明顯更低,綜合顯示,F(xiàn)ESOL能夠兼顧到正類和類負樣本,性能顯得更加均衡穩(wěn)定。
表4 FESOL與其它方法的性能
本文提出了用于蛋白質(zhì)溶解性預(yù)測的多輸入深度學(xué)習(xí)模型FESOL,并在獨立測試集上驗證了其有效性。該模型巧妙地利用了FAVOR+的線性計算復(fù)雜度特點,從而為更長的蛋白質(zhì)序列預(yù)測問題提供有效的解決方案。實驗結(jié)果表明,余弦相似度與交叉熵相結(jié)合的增強損失能夠在多輸入數(shù)據(jù)的分類問題下有助于提高性能。未來,主要工作將探索僅基于原始氨基酸序列的高效模型,在進一步提高預(yù)測能力的同時,更加注重模型簡潔易用。