譚露露,張鑫鑫,周銀座*
(1. 杭州師范大學阿里巴巴商學院 杭州 311121;2. 杭州電子科技大學通信工程學院 杭州 310018)
藥物開發周期長、耗資大,藥物流失率高。目前,每10 個候選藥物中就有9 個在I 期臨床試驗或監管批準時失敗[1]。為改善藥物發現過程效率低下的狀況,縮短新藥研發周期及提高成功率,藥物化學家們提出了定量構效關系(quantitative structure -activity relationships, QSAR)的概念。QSAR 是對已知先導化合物的一系列衍生物進行定量的生物活性測定,分析衍生物的理化參數與生物活性的關系,建立結構與生物活性之間的數學模型,并以這種數學模型來指導藥物分子設計[2]。早期階段,機器學習方法是QSAR 領域較為常用的建模方法。由于傳統機器學習方法只能處理固定大小的輸入,大多早期的QSAR 建模都是針對不同任務,人工生成相應的固定長度的分子描述符。常用的分子描述符包括[3]:1)分子指紋,通過一系列表示特定子結構的二進制數字對分子結構進行編碼[3];2)一維/二維分子描述符:由統計學家和化學家處理的描述分子物理化學和微分拓撲衍生的描述符[3]。常用的建模方法包括線性方法(如線性回歸)和非線性方法(如支持向量機、隨機森林等)。近年來,深度學習方法已成為QSAR 建模的最新研究方向。
過去十年中,深度學習已成為各領域的主要建模方法,尤其在醫學領域,涉及生物活性預測、藥物從頭設計、醫學圖像分析和合成預測等多個方向。卷積神經網絡(convolutional neural networks, CNN)是深度學習中的一種特殊架構,已成功解決了結構化數據(如圖像)的問題[4]。但是,當圖形具有不規則形狀和大小、節點位置沒有空間順序且節點的鄰居也與位置有關時,傳統卷積神經網絡則不能直接應用于圖上。針對這種非歐式結構化數據,研究者們提出了圖卷積網絡(graph convolutional network,GCN),且基于此提出了各種衍生架構。文獻[5]提出了第一個圖神經網絡(graph neural networks,GNN),該架構基于遞歸神經網絡學習了無向圖、有向圖和循環圖的體系結構。文獻[6]基于頻譜圖理論提出了圖卷積網絡。目前,已有其他形式的GCN,如圖注意網絡(graph attention network, GAT)、圖自動編碼器和時空圖卷積等。
近幾年,已有多數研究將圖卷積應用于分子的生物活性預測。在化學圖論中,化合物結構通常表示為氫貧化(省略氫)的分子圖,每個化合物都以無向圖表示,原子為節點,鍵為邊。原子和鍵均包含很多屬性例如原子類型、鍵類型等。文獻[7]利用節點(原子)和邊(鍵)的屬性建立圖卷積模型。文獻[8]創建了原子特征向量和鍵特征向量,并將二者拼接形成原子鍵特征向量。文獻[9]提出了圖記憶網絡(graphMem),這是一種記憶增強的神經網絡,該網絡可用于處理具有多種鍵類型的分子圖。MPNN[10]階段性地總結了GNN 模型,摒棄手工特征,邁出了將GNN 應用于分子圖的重要一步。SchNet[11]推動了GNN 在分子動力學模擬中的應用,使之符合物理學約束方程。DimeNet[12]對分子中的方向性信息進行建模,使得模型的預測精度更進一步。在這些研究中,都未對節點特征和鍵屬性加以區分,沒有關注其內部聯系。但事實上,為原子對之間的各種相互作用類型賦予不同權重才是較為準確的方法。
最近,文獻[13]提出一種基于邊注意的圖卷積神經網絡算法(edge attention graph convolutional network, EAGCN),該算法提出了一個邊緣注意層來評估分子中每條邊的權重:預先構建了一個屬性張量,經過注意層處理后,生成多個注意權重張量,其中每個張量都包含數據集中(分子圖)一個邊屬性的所有可能的注意權重。然后,通過查找該權重張量中分子的每個鍵的值來構建注意力矩陣。這種方法使得模型可以在不同層次和不同邊屬性上學習不同的注意力權重。經實驗證明,EAGCN 框架具有很高的適用性,并且直接從圖結構中學習特定的分子特征,避免了數據預處理階段帶來的誤差。
本文基于EAGCN 框架,考慮到無法自適應學習特征重要度帶來的不穩定性,提出了基于多特性融合的注意力圖卷積模型(multi-feature fusion dge attention graph convolutional network, MF_EAGCN),其中的多特性融合方案是基于自注意力機制的特征融合方式,能夠有效地讓模型自適應調節多個特征張量的權重分配。本文使用多種篩選方法對PubChem數據庫中的靶標等內容作出限制,選擇了不同類型的幾種生物活性數據集,并將本文算法與幾種基準模型同時應用于其中,分析評估了各自的性能。
在化學圖論中,化合物結構通常表示為氫貧化的分子圖,每個化合物以無向圖表示,原子為節點,鍵為邊。其中,分子的屬性信息包括原子屬性和鍵屬性[14],具體描述見表1 和表2。這些屬性對于描述兩個原子之間的鍵合強度、芳香性或鍵合共振等特征非常重要。如果將不同的邊屬性進行注意層處理,則不同的邊屬性對應于不同的邊注意矩陣。

表1 原子屬性表述

表2 鍵屬性表述
定義1 圖使用G=(V,E)表示,V為節點的有限集,|V|=N,N為節點數,E?V×V是邊的有限集合。
定義2G的鄰接矩陣A是一個方陣,維度為N×N。ai j=1代表節點i和j之間有連邊,反之ai j=0則代表節點間無連邊。
定義3 為G構建一個節點特征張量Hl∈RN×RF,F為每個節點的特征總數。第i行表示節點i的特征和一系列邊屬性,這里令K為邊屬性個數。
定義4 假設對于邊屬性i,有di種 可能的類型。
定義5 為G構造一個分子屬性張量M∈RNatom×Natom×Nfeatures(Nfeatures即為定義3 中的F)作為注意層的輸入。
EAGCN[13]在不同層次和不同邊屬性上學習不同的注意力權重,從而構建一個分子的注意力矩陣。該算法預先構建了一個屬性張量,經過注意層處理后,生成多個注意權重張量,其中每個都包含數據集中一個邊屬性的所有可能的注意權重。然后,通過查找該權重張量中分子的對應鍵值來構建注意力矩陣。這種方法使得不同分子可對應不同的注意力矩陣。
EAGCN 利用分子的原子和鍵屬性,為每個分子構建1 個鄰接矩陣A、1 個節點特征張量Hl和1 個分子屬性張量M用于模型訓練。模型總流程如圖1 所示,整個模型將分子圖作為輸入,處理分子圖中的邊屬性后得到邊屬性張量,one-hot 編碼后分別經過GAT 層得到5 個圖卷積特征,再經過concat 拼接方式獲得總張量特征,以此作為下一層GAT 層的輸入。最后使用兩層dense 層輸出結果。

圖1 EAGCN 模型流程


先通過具有di個輸入通道和1 個輸出通道的卷積處理,使用尺寸為1 ×1×di的過濾器Dli,以1 為步長移動。其中,l表示在第l層邊注意層。
其次為了使權重在不同邊中具有可比性,使用softmax 函數對權重進行歸一化,如式(2)所示。softmax 函數又稱為歸一化指數函數,得到的輸出值互相關聯,它可以將其量化到0~1 范圍內,將多分類的結果以概率形式輸出,且輸出值總和為1。


本文將EAGCN 用于本文收集的不同種類的生物活性預測數據集,得到了比傳統機器學習更好的模型性能。而EAGCN 模型的某些特性是使得其在大多生物活性數據集上性能較優的原因:
1)其直接對分子圖進行學習,可以很好地避免人工篩選特征帶來的誤差,一定程度上提升了模型的魯棒性和可靠性;
2)其生成的注意權重矩陣取決于一個節點的領域特性,而不是全局特性;且權重可在所有圖中共享,于是可通過共享的特征來實現數據的局部特性提取。
在原始模型中,權重張量經過圖卷積處理得到特征后,整合特征圖信息時常使用concat 方式合并通道。concat 經常用于將特征聯合、多個算法框架提取的圖特征融合又或是將輸出層的信息進行融合,將融合后的特征作為下一個網絡層的輸入。concat 雖然較為常用,但也存在一些問題:其只是簡單的特征張量的維度拼接,相當于只是通道數的增加。這只是增加了圖像本身的特征,對于多特征的重要度分析并沒有起到太大作用。這不僅會導致多個屬性信息沒有區分度,增加維度還可能會降低模型的計算效率,影響模型性能。于是本文提出使用多特性融合的方式替換concat 方法。在EAGCN中,注意力機制被用于從鄰居節點那里學習節點對之間邊的交互強度,簡單來說是為了得知邊在整個圖中的重要性。經過實驗可知“原子對類型”這一邊屬性對整個模型性能影響較大,因此在設置網絡通道數參數時,本文將為原子對類型的特征矩陣設置更高的通道數,相當于使用人工設置偏向權重的方法,這種方法存在一定的不穩定性。
為了更科學地知道每種邊屬性特征的重要性,且能夠有效地讓模型自適應調節多個特征張量的權重分配,本文提出了多特性融合的方法進行算法優化。這是基于自注意力機制(self-attention)[15]的特征融合方案,它可以對輸入的每個元素賦予不同的權重參數,從而“挑出”每種特征中較為重要的信息,抑制但不丟失其他信息。其最大的優勢就是能一步到位地考慮全局聯系和局部聯系,可以進一步提高模型的學習效率。
EAGCN 為每張圖生成了分子屬性張量M,為了計算得到每種屬性中不同邊的權重,將分子屬性張量M進行one-hot 編碼,再將多個屬性張量輸入注意層,進而得到多個邊權重張量Alatt,i。經過圖卷積層的處理后得到特征張量Hl+1,將concat 融合方式替換為多特性融合方案,具體步驟如下。
1)為每個輸入生成Q、K、V張量
將得到的5 個特征張量Hil+1作為輸入。Hil+1的維度根據模型中設置的通道數而變化。以一個維度為N×30 的圖特征張量Hil+1為例,先為每個特征張量設置3 個不同的張量,分別為查詢Q、鍵K、值V,長度默認為64。WQ,WK,WV是3 個不同的權重張量(3 個張量維度相同,都為30×64),用特征張量Hil+1分別與它們相乘,得到對應的Q、K、V張量,計算示例如圖2 所示。上述過程在計算時其實是基于矩陣運算的,即運算時是將輸入張量合并計算的。

圖2 多特性融合方式流程
2)計算得分
將每個特征的鍵向量和查詢向量進行點積運算,得到其分數:score=Q×K
3) score 歸一化

4) softmax 歸一化
使用softmax 對所有特征張量的score 進行歸一化,使得到的score 都為正且和為1。這一步的目的是初步得到每個邊屬性對于整個圖的權重。
5)求輸出張量評分
將值張量V與softmax 分數點乘,得到加權的每個輸入張量(圖卷積特征)的評分v。

本文所選用的數據集來自于一個公共化學數據庫PubChem[16]。本文選用了文獻中的多種分析篩選方法[14],選擇了相同類型和不同類型的生物活性數據集,對篩選的靶標等作出了限制,如篩選了細胞色素P450 酶的多個系列。最終本文選用了1851靶標家族中細胞色素酶P450 系列的4 個數據集、兩種抑制劑和識別結合r(CAG) RNA 重復序列的分子系列。表3 列出了所選用的數據集的相關信息以及篩選條件。
根據表4各區縣的風險值及表5的雷電災害綜合風險值R評判標準,可得到長沙地區雷電災害風險區劃結果,如表6所示,結果表明長沙縣、寧鄉縣為雷擊災害極高易損區,望城區為高易損區,天心區、岳麓區、瀏陽市為中易損區,芙蓉區、開福區、雨花區為低易損區。

表3 本文所使用的來源于PubChem 數據庫的分類數據集信息
分子的生物活性研究中,輸入數據是QSAR研究的基礎,不同的算法模型所使用的分子輸入數據形式也是不同的。分子的表示形式常見的有:分子標識符、分子描述符兩種。
分子標識符是基于文本的標識符,如簡化分子線性輸入規范(simplified molecular input line entry system, SMILES)[17]和 國 際 化 學 標 識 符(InChl)[18]。SMILES 是用一組有序規則和專門語法將三維化學結構編碼的文本字符串[17],是一種用于存儲化學信息的語言結構。如二氧化碳(CO2)的SMILES 標識符為O=C=O。SMILES 是目前QSAR 建模中較常使用的標識符。
國際化學標識符InChl 用不同的化學信息層(連通性、立體化學、同位素和互變異構體)來表達化學結構[18]。但后期多項研究發現,其復雜的數字公式會導致預測性能下降,因此并未在深度學習中經常使用。
分子描述符是早期QSAR 研究的基礎,傳統機器學習模型無法識別及處理分子結構,將分子的物理化學性質或分子結構相關參數,利用各種算法推導出模型可以處理的數值。
目前,用于分子描述符的計算工具有很多種,包括各種開源或商業軟件及各種開源庫??梢陨傻姆肿用枋龇呀咏?0 000 個,包括1D、2D、3D 描述符以及一些指紋描述符等。近些年,常用的分子描述符計算軟件有Dragon[19]、alvaDesc[20]、Gaussian[21]、Padel-Descriptor[22]、OpenBabel[23]等。其中,經典的Dragon 軟件已迭代到7.0 版本,可以計算幾千種分子描述符,但不幸的是已經停產,進而代替它的是alvaDesc。alvaDesc 可計算5 305種分子描述符(包括Dragon 7 中可用的所有描述符),以及一些特殊描述符如MACCS 指紋的計算。常用的化學庫有RDkit[24]等。RDkit 是非常著名的開源化學信息軟件包,提供了Python 和C++語言的API 接口,不僅可以計算各種分子描述符,還可以進行分子可視化及化學分析等工作,適用性極好。
本文實驗將MF_EAGCN 與EAGCN、隨機森林(random forest, RF)、支持向量機(support vector machines, SVM)及 深 度 神 經 網 絡(deep neural networks, DNN)用于相同的數據中。在傳統機器學習方法中(RF、SVM、DNN),需要使用計算生成的分子描述符,因此本文在設計實驗前,對于分子SMILES 數據,使用RDKit(開源化學計算軟件包)生成的200 個一維分子描述符作為基準模型的特征;同時將RDKit 計算出的分子的原子屬性、邊屬性用于本文算法。
首先將EAGCN 應用于本文選用的不同類型生物活性分類數據集,然后將基于多特性融合的注意力圖卷積應用于同樣的數據集中。本節設計實驗的目的是:1)驗證基于邊注意的圖卷積模型相較于傳統機器學習方法(如隨機森林、深度神經網絡等)確實更能提升對生物活性數據的分類性能,且由于數據的多樣性,模型在生物活性預測問題中也具有一定的普適性;2)驗證本文針對特征融合方式進行優化得到的模型——基于多特性融合的注意力圖卷積模型,在生物活性預測任務中的性能提升。
2.2.1 基準實驗設置
本文使用的基準方法為RF、SVM 及DNN 3 種。針對3 種模型,如表4 所示,設置了超參數列表進行模型調參。同樣的,數據集劃分選用八折交叉驗證法,然后用不同的隨機種子執行3 次。這里得到的結果均為3 次運行的平均值,并列出了標準偏差。
2.2.2 EAGAN 與MF_EAGCN 算法的實驗設置
在EAGCN 建模時根據分析得到,原子對類型這一屬性的權重設置較大時,模型性能會較好,于是在該算法中人工將原子對類型的GCN 層輸出通道數設置的偏大,為了更好地學習此特征,做出了人工干涉。在優化的MF_EAGCN 中,會自行關注較高權重的邊屬性,即可以自適應的學習不同的邊屬性權重。本文設置的實驗參數如表5 所示。

表4 各模型超參數設置

表5 EAGCN 與MF_EAGCN 模型超參數設置
2.2.3 評價指標
本文使用兩種評價指標:準確率(accuracy,ACC)和平衡F1 分數(balancedscore, F1-score)。
其中準確率(ACC)是分類預測中較為常用的評價指標:

式中,TP、TN 分別為被正確地劃分為正例、負例的個數;P、N為實際樣本中正例、負例的個數??偟膩碚f,ACC 就是被分對的樣本數占所有的樣本數的比例,ACC 指標值越高,分類器性能越好。
平衡F 分數F1-score 也是生物活性分類任務中常用來衡量模型精確度的指標:

F1-score 同時考慮到了模型的精確率(precision)和召回率(recall),只有在兩個值都高時,F1 的值才會更高,模型性能越好。其中,precision 與recall 的計算公式如下:

式中,FP、FN 分別表示被錯誤的劃分為正例、負例的個數。
表6 顯示了在幾種數據集上,不同基準模型的ACC、F1-score 指標結果。
從實驗結果可以看出,在這些數據集中,基于圖卷積的EAGCN 展現出了比傳統機器學習方法更好的分類性能,其ACC 指標均比基準學習模型高出2%~8%,F1-score 指標比基準學習模型高出1%~5%??梢娭苯訌姆肿訄D學習而不是從預先計算的特性中獲得的信息使得模型性能更優。少部分數據集中,DNN 的性能能與EAGCN 方法性能基本持平或稍微高于其性能,RF 的性能有時可以與EAGCN 持平??梢姡珽AGCN 的性能還有很多優化空間。而基于多特性融合的MF_EAGCN 模型,展現出了更好的分類性能,這也證實了多特性融合方案能夠更充分地利用邊屬性信息進行特征提取,使得模型預測性能提升。其ACC 指標均比EAGCN算法高出1%~2%,F1-score 指標比EAGCN 模型高出約1%。

表6 在7 種數據集中本文算法和EAGCN 及3 種基準方法的預測結果
圖3 和圖4 分別展示了本文提出的MF_EAGCN、基準算法EAGCN 以及傳統機器學習方法5 種分類器,分別應用于7 種生物活性數據集中的ACC 指標和F1-score 指標分布對比,柱狀圖的條目從左到右依次是RF、SVM、DNN、EAGCN 和MF_EAGCN模型。在ACC 指標分布圖中,可以看到數據集1851(2d6)在EAGCN 模型上的效果并不顯著,其原因可能是由于數據量相比較而言更大,在模型融合特征階段對特征重要度分配不均,導致對重要信息的忽略,進而致使模型預測性能降低。而本文提出的MF_EAGCN 模型很好地緩解了此問題,相較于EAGCN,其預測性能提升了2 個百分點,而相較于基準機器學習模型,其預測性能提升了8 個百分點,由此也驗證了本文算法的有效性。

圖3 用于表現7 種生物活性數據集在5 種分類器中性能的ACC 指標分布

圖4 用于表現7 種生物活性數據集在5 種分類器中性能的F1-score 指標分布
本文提出了基于自注意力機制的多特性融合方案,針對基于邊注意機制的圖卷積網絡模型進行了有效優化。本文將一種基于邊注意力的圖卷積網絡架構,應用于文中選用的不同種類的生物活性預測任務,從而避免了人工特征工程帶來的誤差,并對比幾種機器學習基準算法,驗證了本人算法有效性。在此基礎上,針對前人提出的模型中存在的問題:無法自適應設置邊屬性特征權重,本文提出了分子多特性融合的方案優化了算法模型的特征提取能力,通過自注意力機制針對多個特征進行自適應融合,有效地解決了這一問題,并且獲得了更好的預測性能。本文使用的數據集偏向數據量較小的數據集,未來會將其擴展到數據量更大的數據集以及其他生物活性預測任務上。在應用于較大數據集時,模型可以針對性地對不同任務作出優化,可以提高模型的泛化性能,提升模型穩定性。