方舒言,劉 宇,2*,侯阿龍,秦歡歡,劉 嵩,4
(1.武漢科技大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖北 武漢 430072;2.湖北省智能信息處理與實(shí)時(shí)工業(yè)系統(tǒng)重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430072;3.武漢科技大學(xué) 醫(yī)學(xué)院,湖北 武漢 430072;4.湖北省職業(yè)危害識(shí)別與控制湖北省重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430072)
新藥研發(fā)存在周期長(zhǎng)、費(fèi)用高和成功率低等特點(diǎn)。人工智能技術(shù)是近些年來(lái)的熱點(diǎn)技術(shù)之一,在很多領(lǐng)域都有非常廣泛的應(yīng)用,多種人工智能方法已經(jīng)成功應(yīng)用于藥物的發(fā)現(xiàn)過(guò)程[1]。當(dāng)前化學(xué)分子毒性預(yù)測(cè)方法主要從分子結(jié)構(gòu)的序列表示中學(xué)習(xí)特征,如SMILES[2](Simplified Molecular Input Line Entry System)。SMILES通過(guò)對(duì)分子圖的生成樹(shù)實(shí)施深度優(yōu)先的前序遍歷,為每個(gè)原子、鍵、樹(shù)遍歷決策和斷環(huán)生成符號(hào),定義了分子的字符串表示,所得到的字符串對(duì)應(yīng)于分子圖生成樹(shù)的序列化。因比其他表示結(jié)構(gòu)的方法(包括圖)更緊湊,SMILES已被廣泛用于分子毒性預(yù)測(cè)。
目前,以Chemberta[3]為代表的分子毒性預(yù)測(cè)方法借鑒了自然語(yǔ)言處理技術(shù)的思想,直接使用大量無(wú)標(biāo)注的SMILES作為語(yǔ)料庫(kù)來(lái)學(xué)習(xí)分子表征,并使用學(xué)習(xí)到的分子表示用于毒性預(yù)測(cè)。然而SMILES語(yǔ)法復(fù)雜且限制性強(qiáng),常規(guī)字符集上的大多數(shù)序列不能明確定義分子。
由于上述限制,基于SMILES的深度學(xué)習(xí)模型只能將學(xué)習(xí)重點(diǎn)放在分子串的語(yǔ)法上,導(dǎo)致現(xiàn)有的毒性預(yù)測(cè)方法僅損失了分子中的原子特性等知識(shí)。針對(duì)上述問(wèn)題,以Mol-BERT[4]為代表的方法選擇了使用摩根指紋標(biāo)識(shí)符(Morgan Fingerprint Identifier,MFI)序列作為輸入來(lái)進(jìn)行模型的訓(xùn)練,并在MFI融入了原子特性的知識(shí)(如原子序數(shù)、電荷量、原子的度等)。摩根指紋(Morgan Fingerprints)是一種使用哈希算法生成的圓形分子指紋[5-6]。其中,原子的MFI是對(duì)原子及其屬性(如原子序數(shù)、電荷量等)進(jìn)行哈希得到的一個(gè)定長(zhǎng)整數(shù),而子結(jié)構(gòu)MFI則是對(duì)分子中某原子MFI及以該原子為中心一定半徑范圍內(nèi)的其他原子的MFI進(jìn)行聯(lián)合哈希得到的定長(zhǎng)整數(shù)。根據(jù)設(shè)置的指紋半徑的不同,可以得到蘊(yùn)含不同知識(shí)的MFI,比如以某原子為中心且半徑為0生成的MFI僅包含該原子的知識(shí),以某原子為中心且半徑為1生成的MFI,則蘊(yùn)含該原子及相鄰原子子結(jié)構(gòu)知識(shí)。
根據(jù)上述對(duì)摩根指紋及MFI的說(shuō)明可知,Mol-BERT雖在一定程度上融入了原子特性的知識(shí),但是仍然存在局限。比如,Mol-BERT的輸入MFI序列中未顯式引入氫原子的知識(shí),而且對(duì)于MFI序列的半徑信息Mol-BERT方法并沒(méi)有進(jìn)行顯式的編碼。
針對(duì)目前基于分子序列的毒性預(yù)測(cè)方法均未考慮氫原子和摩根指紋半徑等領(lǐng)域知識(shí)的問(wèn)題,該文提出了一種基于原子特性知識(shí)增強(qiáng)的分子毒性預(yù)測(cè)方法。一方面,改進(jìn)的分子毒性預(yù)測(cè)方法考慮了分子中所有氫原子,輸入的MFI序列顯式引入了氫原子的MFI和以氫原子為中心的子結(jié)構(gòu)的MFI。在考慮了分子中所有的氫原子之后,子結(jié)構(gòu)MFI所代表的子結(jié)構(gòu)粒度更小,模型的MFI字典大小變?yōu)橐霘湓又暗募s一半。這是由于在同樣的半徑限制下,使得原本一些大而稀有的子結(jié)構(gòu)因?yàn)闅湓拥囊雽⒈晦D(zhuǎn)換成小而常見(jiàn)的子結(jié)構(gòu),如圖1(b)所示。該現(xiàn)象類似于自然語(yǔ)言處理領(lǐng)域的WordPiece[7],它將單詞拆成詞根和詞綴,一些生僻詞被拆成常見(jiàn)詞根和詞綴的組合,能夠減小自然語(yǔ)言處理模型的詞表大小。另一方面,受SongNet[8]的啟發(fā),為了讓模型學(xué)習(xí)MFI序列時(shí)可以區(qū)分不同半徑的MFI,提出使用摩根指紋半徑的知識(shí)擴(kuò)展嵌入層的方法,使模型學(xué)習(xí)到的原子MFI和子結(jié)構(gòu)MFI有所區(qū)分。圖1(a)~(c)描述了氫原子和摩根指紋半徑知識(shí)增強(qiáng)MFI序列的過(guò)程及增強(qiáng)后MFI序列與原本MFI序列的區(qū)別。該文的主要貢獻(xiàn)包括3個(gè)方面:
(a)原本的MFI序列
(1)提出生成分子MFI序列時(shí)顯式地引入氫原子的方法,使得分子毒性預(yù)測(cè)模型可以學(xué)習(xí)到氫原子信息,同時(shí)減少了MFI字典的大小和模型的參數(shù)量;
(2)改進(jìn)的分子毒性預(yù)測(cè)方法,額外考慮了各原子及相鄰原子構(gòu)成的子結(jié)構(gòu)的知識(shí),并在模型的嵌入層強(qiáng)化了摩根指紋半徑知識(shí);
(3)為了驗(yàn)證改進(jìn)方法的有效性,利用Pubchem[9]分子庫(kù)中的1 000萬(wàn)分子預(yù)訓(xùn)練了基于原子特性增強(qiáng)的分子毒性預(yù)測(cè)模型(Hydrogen and Radius enhanced Toxicity Prediction model,HRToxPred),并在主流的毒性預(yù)測(cè)數(shù)據(jù)集Tox21[10]上進(jìn)行了驗(yàn)證。
在基于深度學(xué)習(xí)的分子毒性預(yù)測(cè)領(lǐng)域中,主流方法直接在分子的SMILES字符串上訓(xùn)練模型來(lái)預(yù)測(cè)分子毒性。表1總結(jié)了基于分子序列的毒性預(yù)測(cè)模型的相關(guān)工作。FP2VEC[11]和Mol2vec[12]使用了自然語(yǔ)言處理領(lǐng)域的Word2vec[13]思想。其中,Mol2vec學(xué)習(xí)的是MFI的低維向量表示,然后輸入學(xué)習(xí)到的MFI向量表示至下游網(wǎng)絡(luò)中預(yù)測(cè)分子毒性,而FP2VEC學(xué)習(xí)的是比特分子指紋比特串的低維向量表示。然而,在自然語(yǔ)言處理領(lǐng)域中Word2vec的詞和向量是一對(duì)一的關(guān)系,所以無(wú)法解決多義詞的問(wèn)題。在化學(xué)領(lǐng)域,同樣存在類似“一詞多義”的場(chǎng)景,例如相同的原子所處的環(huán)境不同其作用也不同,所以FP2VEC,Mol2vec存在著類似的問(wèn)題。Chemberta和Mol-BERT使用了基于Transformer的掩碼語(yǔ)言模型。其中,Chemberta設(shè)計(jì)了一種SMILES的分詞方法,使用Roberta[14]的預(yù)訓(xùn)練策略練了基于SMILES的分子毒性預(yù)測(cè)模型,然而SMILES的分詞方法需要化學(xué)領(lǐng)域的專家來(lái)設(shè)計(jì),需要消耗大量人力。Mol-BERT使用分子的MFI序列作為語(yǔ)料庫(kù),使用BERT[15]的MLM(Masked Language Model)策略預(yù)訓(xùn)練了基于MFI序列的分子毒性預(yù)測(cè)模型。相比于Chemberta,Mol-BERT所使用的MFI序列不需要人工分詞。然而Mol-BERT使用的MFI序列未顯式引入氫原子且序列中原子指紋與子結(jié)構(gòu)指紋混雜在一起,使模型學(xué)習(xí)到的分子表示并未區(qū)分原子指紋與子結(jié)構(gòu)指紋。針對(duì)上述方法存在的問(wèn)題,該文提出生成MFI序列時(shí)顯式引入氫原子并對(duì)半徑信息進(jìn)行顯式編碼的知識(shí)增強(qiáng)方法。
表1 相關(guān)工作總結(jié)
為了便于解釋顯式引入氫原子后MFI的計(jì)算方法,現(xiàn)給出以下定義:
定義1 原子鄰域(Atom Neighborhood):給定一個(gè)分子圖mg=(A,B),A為該分子中的所有原子的集合,B為該分子中所有的化學(xué)鍵的集合。對(duì)于一個(gè)原子a∈A,給定半徑r,以a為中心,r為半徑的原子鄰域定義為nbr(mg,a,r)={[a,at,b]|a∈A,at∈A,b∈B,a≠at,dist(a,at)≤r,b=},其中at為與a通過(guò)化學(xué)鍵b相連的原子,dist(·)表示分子圖中兩個(gè)原子之間的跳數(shù)。
將原子鄰域的半徑設(shè)為1,計(jì)算MFI時(shí)需考慮到兩種不同規(guī)模的原子鄰域nbr(mg,a,0)和nbr(mg,a,1)。如圖2所示,深色節(jié)點(diǎn)對(duì)應(yīng)nbr(mg,a,0),而由深色節(jié)點(diǎn)a和淺色節(jié)點(diǎn)at組成的子結(jié)構(gòu)對(duì)應(yīng)nbr(mg,a,1)。由此,原子的MFI和子結(jié)構(gòu)的MFI將由其對(duì)應(yīng)的原子鄰域特性經(jīng)過(guò)哈希得到。
圖2 原子鄰域、摩根指紋、摩根指紋標(biāo)識(shí)符之間的關(guān)系
定義2 摩根指紋[5-6](Morgan Fingerprint):摩根指紋是一個(gè)稀疏的比特串。一個(gè)分子可以通過(guò)散列分子中每個(gè)原子的鄰域信息得到一個(gè)索引,該索引位置的比特位被置為1。
定義3 摩根指紋標(biāo)識(shí)符(Morgan Fingerprint Identifier,MFI):摩根指紋標(biāo)識(shí)符是一個(gè)固定長(zhǎng)度的整數(shù),用來(lái)表示原子鄰域的特征。通常情況下,一個(gè)原子鄰域的摩根指紋標(biāo)識(shí)符可以對(duì)該原子鄰域的屬性(原子序數(shù)、電荷量等)進(jìn)行哈希來(lái)獲得。記為mfinbr(mg,a,r)=Hash(Attrs(nbr(mg,a,r))),Hash(·)為哈希函數(shù),Attrs(·)表示獲取原子鄰域的屬性。
原子鄰域、摩根指紋和摩根指紋標(biāo)識(shí)符之間的關(guān)系如圖2所示。對(duì)于一個(gè)分子經(jīng)過(guò)算法1的計(jì)算,可以獲得該分子的MFI字典。字典的鍵為MFI,字典的值為由該MFI對(duì)應(yīng)原子鄰域中心原子的原子索引和原子鄰域半徑組成的元組[a.Index,r]。該分子的摩根指紋則是一個(gè)長(zhǎng)的比特串,其中索引為MFI字典中鍵值的比特位被置為1,如圖2箭頭指示。
定義4 原子的摩根指紋標(biāo)識(shí)符:給定一個(gè)分子mg=(A,B)和一個(gè)原子a∈A,該原子的摩根指紋標(biāo)識(shí)符可以通過(guò)哈希原子鄰域nbr(mg,a,0)的屬性得到。
算法1
輸入:分子圖mg=(A,B),半徑r
輸出:存儲(chǔ)該分子MFI的字典D
Initialization;
/*初始化一個(gè)容器存所有的mfi,偏移量為原子索引*/
Vector
fora∈Ado
/*初始化一個(gè)容器存Attrs(nbr(mg,a,0))*/
Vector
components.pushback(a.AtomicNum);//原子序數(shù)
components.pushback(a.TotalDegree);//原子的度
ifa≠Hydrogen then
//非氫原子連接的氫原子數(shù)
components.pushback(a.TotalNumHs);
end
components.pushback(a.FormalCharge);//原子的電荷量
invars.pushback(boost::hash(components));
end
/*將mfinbr(mg,a,0)的信息存入字典*/
fora∈Ado
D[invars[a.Index]].pushback(Tuple(a.Index,0));
end
/*初始化容器存mfinbr(mg,a,1)*/
Vector
fora∈Ado
/*獲取從a出發(fā)的化學(xué)鍵*/
bonds = getChemicalBonds(a);
for ∈bonds do
ifa≠Hydrogen then
nbrs.pushback(Tuple(.type
invars[at.Index]));
end
end
invar = 0;
boost::hashcom bine(invar, invars[a.Index]);
for nbr ∈ nbrs do
boost::hashcombine(invar, nbr);
end
/*將mfinbr(mg,a,1)的信息存入字典*/
D[invar].pushback(Tuple(a.Index, 1));
end
該文考慮的原子鄰域nbr(mg,a,0)的屬性包含原子序數(shù)、電荷量、非氫原子連接的氫原子數(shù)、原子在分子圖中的度。算法1的第3~18行具體描述了該計(jì)算摩根原子MFI的過(guò)程。
定義5 子結(jié)構(gòu)的摩根指紋標(biāo)識(shí)符:給定一個(gè)分子mg=(A,B)和一個(gè)原子a∈A,以a為中心的子結(jié)構(gòu)的摩根指紋標(biāo)識(shí)符可以通過(guò)哈希原子鄰域nbr(mg,a,1)的屬性得到。
該文考慮的原子鄰域nbr(mg,a,1)的屬性包含該原子鄰域中化學(xué)鍵b的類型、該原子鄰域中原子a和at的摩根指紋。算法1的19~37行具體描述了計(jì)算過(guò)程。
定義6 摩根指紋標(biāo)識(shí)符序列:摩根指紋標(biāo)識(shí)符序列是由一個(gè)分子中所有的原子鄰域的摩根指紋標(biāo)識(shí)符組成的,摩根指紋標(biāo)識(shí)符的順序按照SMILES定義的原子順序排列。如果對(duì)于分子中某原子a有多個(gè)摩根指紋標(biāo)識(shí)符,則按照r由小到大進(jìn)行排序。
根據(jù)以上定義,算法1描述了計(jì)算最大半徑設(shè)置為1時(shí)的分子的MFI的過(guò)程。
數(shù)據(jù)預(yù)處理階段,因?yàn)橥粋€(gè)分子可以有多種不同的SMILES形式,所以首先要對(duì)分子SMILES進(jìn)行標(biāo)準(zhǔn)化。SMILES之所以出現(xiàn)不同是因?yàn)榭梢噪S意修改原子的“出場(chǎng)順序”以得到不同的SMILES。該文使用Rdkit[16-17]實(shí)現(xiàn)了標(biāo)準(zhǔn)化過(guò)程,并根據(jù)分子化合價(jià)態(tài)平衡原理補(bǔ)全SMILES中的氫原子。最后使用算法1計(jì)算并排序生產(chǎn)分子的MFI序列。
根據(jù)上述方法,該文選擇Pubchem分子庫(kù)中1 000萬(wàn)分子的SMILES,并使用算法1分子的MFI并排序形成MFI序列。整個(gè)過(guò)程中有關(guān)分子的處理都使用Rdkit分子處理工具實(shí)現(xiàn)。統(tǒng)計(jì)1 000萬(wàn)分子的是否顯式引入氫原子的MFI序列,得到不同MFI序列的MFI字典信息,如表2所示。
表2 是否引入氫的MFI字典大小比較
顯式引入氫原子MFI之后,分子中的某些相對(duì)較大的子結(jié)構(gòu)標(biāo)識(shí)符可以分解為一些相對(duì)較小的子結(jié)構(gòu)的組合,例如圖1中以該羥基(-OH)上氧原子為中心半徑為1的子結(jié)構(gòu)會(huì)被拆分成以羥基中氫原子為中心半徑為1的羥基結(jié)構(gòu)和以氧原子為中心半徑為1的結(jié)構(gòu)。這類似于自然語(yǔ)言處理領(lǐng)域把單詞拆成詞根與詞綴的方法。因此,引入顯式表示氫原子之后,生成的MFI字典大小更小且MFI對(duì)應(yīng)的原子鄰域粒度更細(xì)。該文嘗試擴(kuò)展算法1的最大半徑限制,當(dāng)最大半徑達(dá)到2時(shí),即便引入了氫原子一定程度上減小了MFI字典的規(guī)模,然而最大半徑限制為2時(shí)MFI字典的大小超過(guò)了100萬(wàn),因此該文僅考慮最大半徑限制為1的情況。
HRToxPred包含Embedding模塊、Transformer模塊和下游任務(wù)模塊,如圖3所示。圖中M為輸入的MFI,F為MFI嵌入(Token嵌入),P為位置編碼(Position嵌入),R為半徑嵌入(Radius嵌入)。因?yàn)樯傻拿總€(gè)MFI序列代表一個(gè)分子,而每個(gè)分子都是單獨(dú)的個(gè)體,無(wú)需考慮兩個(gè)分子之間的關(guān)系,所以文中的預(yù)訓(xùn)練去掉了BERT模型預(yù)訓(xùn)練策略中“下一句預(yù)測(cè)”(Next Sentence Prediction,NSP)預(yù)訓(xùn)練任務(wù),輸入樣本變?yōu)閱蝹€(gè)MFI序列,因此BERT模型原本用來(lái)區(qū)分兩個(gè)句子的Segment編碼失去了意義。該文修改了BERT的Embedding模塊,將Segment嵌入改為摩根指紋半徑嵌入來(lái)區(qū)分MFI的類別,最終Embedding模塊包含半徑嵌入、位置嵌入和MFI編碼嵌入。
圖3 模型架構(gòu)示意圖
經(jīng)過(guò)上述步驟輸入數(shù)據(jù)就處理完成,接下來(lái)進(jìn)行嵌入。對(duì)于輸入特征,首先要獲得MFI編碼、半徑編碼、位置編碼的嵌入,通過(guò)把所有嵌入向量相加的方式,公式如下:
Ht=Emt+Ept+Ert
(1)
式中,t為序列中MFI的索引,Emt,Ept,Ert分別為MFI嵌入、位置嵌入和半徑嵌入,即通過(guò)半徑嵌入Ert區(qū)分了原子MFI和子結(jié)構(gòu)MFI。處理完輸入數(shù)據(jù)和嵌入之后,HRToxPred使用自注意力機(jī)制進(jìn)行學(xué)習(xí)。
qt=WQHt
(2)
kt=WKHt
(3)
vt=WVHt
(4)
ct=self-att(qt,kt,vt)
(5)
式中,WQ,WK,WV為參數(shù)矩陣,self-att(·)為注意力函數(shù),Ct為該注意力頭輸出。根據(jù)上述方法將得到的所有注意力頭的Ct向量進(jìn)行拼接,然后與參數(shù)矩陣W求積得到輸出c,再將c輸入到激活函數(shù)中得到對(duì)應(yīng)的輸出o。在下游任務(wù)中只需將o輸入到下游任務(wù)的分類器網(wǎng)絡(luò)中即可。式1~7描述了模型的計(jì)算過(guò)程。
c=Concat(ct)W
(6)
o=max(0,ZW1+b1)W2+b2
(7)
選取了當(dāng)前被廣泛使用的基于分子序列的毒性預(yù)測(cè)模型Chemberta和Mol-BERT作為對(duì)比模型。其中,Chemberta基于Roberta模型實(shí)現(xiàn)。預(yù)訓(xùn)練時(shí),使用1 000萬(wàn)分子的SMILES作為語(yǔ)料庫(kù),隨機(jī)遮蔽了每個(gè)輸入字符串中15%的Token。在學(xué)習(xí)恢復(fù)Mask Token時(shí),該模型形成了一個(gè)化學(xué)空間的分子結(jié)構(gòu)表示。Mol-BERT使用未顯式引入氫原子MFI和摩根指紋半徑特征的MFI序列作為輸入。Mol-BERT同樣使用了1 000萬(wàn)分子的MFI序列,并利用了BERT的架構(gòu)及預(yù)訓(xùn)練策略進(jìn)行了預(yù)訓(xùn)練,最后將預(yù)訓(xùn)練好的模型進(jìn)行下游的毒性預(yù)測(cè)任務(wù)。
HRToxPred與主流的自然語(yǔ)言處理預(yù)訓(xùn)練語(yǔ)言模型的方式不同,去掉了NSP預(yù)訓(xùn)練任務(wù),僅留MLM任務(wù)。具體來(lái)說(shuō),該文使用bert-base的模型設(shè)置,并將分子MFI序列中隨機(jī)15%的標(biāo)識(shí)符屏蔽為[MASK]。此外,預(yù)訓(xùn)練使用了動(dòng)態(tài)掩碼,即同一個(gè)MFI序列會(huì)產(chǎn)生不同的掩碼序列,這樣可以重復(fù)使用預(yù)訓(xùn)練樣本,而且可以防止過(guò)擬合。
選擇主流毒性預(yù)測(cè)數(shù)據(jù)集Tox21的12個(gè)分類任務(wù)進(jìn)行微調(diào)。數(shù)據(jù)集詳情見(jiàn)表3。
表3 Tox21各任務(wù)細(xì)節(jié)
由于該文選取的數(shù)據(jù)集正負(fù)樣本不平衡,而精度、準(zhǔn)確率、召回率等指標(biāo)受正負(fù)樣本不平衡的影響,不能客觀反映出模型的性能,且在分子毒性預(yù)測(cè)中區(qū)分正負(fù)樣本的概率閾值并不確定,所以選擇AUC[18](Area Under Curve)作為評(píng)測(cè)指標(biāo)可避免以上因素帶來(lái)的影響。
AUC被定義為ROC(Receiver Operating Characteristic)曲線下的面積。ROC曲線,又稱接受者操作特征曲線。二分類任務(wù)分類閾值的設(shè)定不同會(huì)得出不同的真陽(yáng)率(True Positive Rate,TPR)和假陽(yáng)率(False Positive Rate,FPR),將同一模型每個(gè)閾值的(FPR,TPR)坐標(biāo)都畫(huà)在ROC空間里,就成為特定模型的ROC曲線。AUC計(jì)算公式如下:
(8)
式中,P為正樣本數(shù)量,N為負(fù)樣本數(shù)量,pi為正樣本預(yù)測(cè)得分,nj為負(fù)樣本預(yù)測(cè)得分。
HRToxPred包含Embedding模塊、Transformer模塊和下游任務(wù)模塊,模型的實(shí)現(xiàn)框架使用UER-py[19]。
Embedding模塊包含Token嵌入、Position嵌入和半徑嵌入。HRToxPred設(shè)置的輸入序列長(zhǎng)度與BERT保持一致均為512個(gè)Token。
Transformer模塊選擇bert-base結(jié)構(gòu),bert-base包含12個(gè)Transformer層和12個(gè)自注意力頭,隱藏層維度為768。
下游任務(wù)模塊的微調(diào)網(wǎng)絡(luò)使用UER-py框架中默認(rèn)的網(wǎng)絡(luò),即在預(yù)訓(xùn)練完成的模型后接2層全連接層。對(duì)于每個(gè)數(shù)據(jù)集,按照80/10/10的比例隨機(jī)劃分為訓(xùn)練集/驗(yàn)證集/測(cè)試集,并進(jìn)行了32個(gè)epoch的微調(diào),具體參數(shù)見(jiàn)表4。
表4 模型參數(shù)設(shè)置
為了進(jìn)一步驗(yàn)證HRToxPred中引入的摩根指紋半徑特征及考慮氫原子的作用,進(jìn)行了消融實(shí)驗(yàn),即用Pubchem中的1 000萬(wàn)分子預(yù)訓(xùn)練如下四個(gè)模型:
?Base:輸入MFI序列不顯式引入氫原子及其子結(jié)構(gòu)MFI,嵌入層沒(méi)有額外的摩根指紋半徑嵌入;
?AddHS:輸入MFI序列不顯式引入氫原子及其子結(jié)構(gòu)MFI,嵌入層沒(méi)有額外的摩根指紋半徑嵌入;
?AddRadius:輸入MFI序列不顯式引入氫原子及其子結(jié)構(gòu)MFI,嵌入層有額外的摩根指紋半徑嵌入;
?HRToxPred:MFI序列顯式引入氫原子及其子結(jié)構(gòu)MFI,嵌入層有額外的摩根指紋半徑嵌入。
然后將上述四個(gè)模型在Tox21上微調(diào)。如圖4所示,使用顯式引入氫原子MFI的模型預(yù)訓(xùn)練收斂得更快,主要原因是HRToxPred考慮了氫原子及其子結(jié)構(gòu)MFI造成的詞表減小。另外,從表5中Tox21不同通道上的上的AUC分?jǐn)?shù)對(duì)比來(lái)看,僅使用考慮了氫原子MFI序列作為輸入(AddHs)和僅引入摩根指紋半徑嵌入(AddRadius)都可以提升模型的分類能力,而兩者的組合對(duì)模型分類能力的提升更顯著。HRToxPred相比于Base模型,在sr_p53,nr_ahr,nr_er,nr_ar,sr_are,nr_ar_lbd,nr_er_lbd,sr_hse等任務(wù)上取得了顯著的提升。具體而言,sr_p53任務(wù)提升了4.5%,nr_ahr任務(wù)提升了1.7%,nr_er任務(wù)提升了3.1%,nr_ar任務(wù)提升了7.5%,sr_are任務(wù)提升了4.8%,nr_ar_lbd任務(wù)提升了2.6%,nr_er_lbd任務(wù)提升了1.5%,sr_hse提升了3.3%。而在nr_aromatase,nr_ppar_gamma,sr_atad5,sr_mmp等任務(wù)上的表現(xiàn)不如預(yù)期。
表5 消融實(shí)驗(yàn)結(jié)果比較(ROC-AUC↑)
圖4 Base和HRToxPred預(yù)訓(xùn)練Loss曲線
為了檢驗(yàn)HRToxPred的有效性,將HRToxPred與Chemberta和Mol-BERT模型進(jìn)行了比較。表6報(bào)告了各個(gè)模型Tox21數(shù)據(jù)集12個(gè)通道上的AUC分?jǐn)?shù)。HRToxPred在sr_p53,nr_ahr,nr_er,nr_ar,sr_are,nr_ar_lbd,nr_aromatase,nr_er_lbd,sr_hse等任務(wù)上取得了最佳的表現(xiàn)。同時(shí),如圖5所示,HRToxPred在Tox21的雷達(dá)圖中擁有最大的面積。
表6 對(duì)比實(shí)驗(yàn)結(jié)果比較(ROC-AUC↑)
圖5 Tox21各任務(wù)AUC分?jǐn)?shù)雷達(dá)圖
該文提出了引入摩根指紋半徑以及顯式引入氫原子的知識(shí)增強(qiáng)方法,并預(yù)訓(xùn)練了一個(gè)原子知識(shí)增強(qiáng)的分子毒性預(yù)測(cè)模型HRToxPred。該模型與現(xiàn)有的基于序列的分子毒性預(yù)測(cè)模型有兩個(gè)方面的優(yōu)勢(shì):一方面是顯式地引入了氫原子的知識(shí),使得MFI字典規(guī)模更小,進(jìn)而減少了模型參數(shù)量并提升了毒性預(yù)測(cè)的性能;另一方面是額外引入了摩根指紋半徑的知識(shí),增強(qiáng)了MFI序列的順序特征。從對(duì)比實(shí)驗(yàn)和消融實(shí)驗(yàn)的結(jié)果可見(jiàn),這兩方面能使模型性能有了顯著提升。
雖然該方法在一些毒性預(yù)測(cè)任務(wù)數(shù)據(jù)集上展現(xiàn)了良好的性能,但仍有一些局限性。從消融實(shí)驗(yàn)的結(jié)果來(lái)看,HRToxPred在Tox21數(shù)據(jù)集中nr_aromatase,nr_ppar_gamma,sr_atad5,sr_mmp等任務(wù)上的表現(xiàn)不如預(yù)期,后續(xù)工作會(huì)結(jié)合深度學(xué)習(xí)理論和結(jié)構(gòu)化學(xué)的知識(shí)來(lái)詳細(xì)分析引入氫原子及半徑對(duì)不同毒性預(yù)測(cè)任務(wù)的影響。此外,根據(jù)化學(xué)的領(lǐng)域知識(shí)可知,分子中的官能團(tuán)對(duì)分子的特性有較大影響[20],因此后續(xù)工作會(huì)考慮引入相關(guān)領(lǐng)域知識(shí)。