葉志威,張曉龍,林曉麗
(1.武漢科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖北 武漢,430065;2.武漢科技大學(xué)大數(shù)據(jù)科學(xué)與工程研究院,湖北 武漢,430065;3.武漢科技大學(xué)智能信息處理與實(shí)時(shí)工業(yè)系統(tǒng)湖北省重點(diǎn)實(shí)驗(yàn)室,湖北 武漢,430065)
Word2Vec模型非常適合于處理類似藥物分子和蛋白質(zhì)序列信息這樣的原始文本數(shù)據(jù)。它將原始數(shù)據(jù)當(dāng)成文章,學(xué)習(xí)其中每個(gè)分詞之間的聯(lián)系(分詞為序列中一個(gè)一個(gè)的小片段,可以理解為藥物分子和蛋白質(zhì)靶點(diǎn)的子結(jié)構(gòu)),這種聯(lián)系包含了豐富的藥物-靶點(diǎn)相互作用信息,將其以實(shí)數(shù)向量的形式表示出來,可以使原始的非數(shù)值數(shù)據(jù)數(shù)值化,從而方便更深入的算法研究。
在過往的生物學(xué)研究中,只有可以相互作用的數(shù)據(jù)(正樣本)被當(dāng)成有意義的信息而收集記錄下來,因此在藥物-靶點(diǎn)相互作用研究中,數(shù)據(jù)集往往是不平衡的,即缺少負(fù)樣本,同時(shí)未知的藥物-靶點(diǎn)相互作用數(shù)據(jù)又?jǐn)?shù)倍于已知的藥物-靶點(diǎn)相互作用數(shù)據(jù)。針對這一問題,Luo等[11]通過隨機(jī)抽樣來提取負(fù)樣本子集,但這些負(fù)樣本數(shù)據(jù)集中也可能存在藥物-靶點(diǎn)相互作用的正樣例。Peng等[12]則通過PU-learning這種半監(jiān)督學(xué)習(xí)方法來解決這個(gè)問題。在此基礎(chǔ)上,Lin等[13]提出一種基于非隨機(jī)缺失標(biāo)簽的模型,取得了更好的結(jié)果。另外,Chawla等[14]提出SMOTE算法,根據(jù)少數(shù)類樣本合成新樣本并添加到數(shù)據(jù)集中。Han等[15]在SMOTE基礎(chǔ)上進(jìn)行了改進(jìn),提出Borderline-SMOTE算法,僅使用邊界上的少數(shù)類樣本來合成新樣本,從而改善了樣本的類別分布。
本文提出一種面向藥物-靶點(diǎn)相互作用預(yù)測的不平衡數(shù)據(jù)處理方法BS-DTVec。首先基于Word2Vec模型,分別獲取藥物分子的低維特征表示(DrugVec)和靶點(diǎn)蛋白質(zhì)的低維特征表示(TargetVec),并將它們組合為藥物-靶點(diǎn)相互作用對的低維向量特征表示(DTVec);然后通過實(shí)驗(yàn)?zāi)P蛷脑嫉乃幬锖偷鞍踪|(zhì)序列數(shù)據(jù)中學(xué)習(xí)藥物-靶點(diǎn)相互作用的關(guān)鍵信息。在此過程中,針對數(shù)據(jù)集的不平衡性可能引起的過擬合問題,采用Borderline-SMOTE技術(shù)合成少數(shù)類樣本;最后以梯度提升決策樹(Gradient Boosting Decision Tree, GBDT)作為分類器對預(yù)處理后的數(shù)據(jù)進(jìn)行分類預(yù)測。
本研究主要通過KEGG數(shù)據(jù)庫[16]和DrugBank數(shù)據(jù)庫[17]中的數(shù)據(jù)進(jìn)行藥物-靶點(diǎn)相互作用預(yù)測。4種蛋白質(zhì)靶點(diǎn)已經(jīng)被Yamanishi等[1]用作黃金標(biāo)準(zhǔn)數(shù)據(jù)集,它們分別是酶(Enzyme)、離子通道(Ion Chanel)、G蛋白偶聯(lián)受體(GPCR)和核受體(Nuclear Receptor)。黃金標(biāo)準(zhǔn)數(shù)據(jù)集可以從http://web.kuicr.kyoto-u.ac.jp/supp/yoshi/drugtarget/網(wǎng)址獲取。另外還選取了來自DrugBank 4.3的數(shù)據(jù),該數(shù)據(jù)可以在DrugBank官網(wǎng)https://go.drugbank.com/上獲取。黃金標(biāo)準(zhǔn)數(shù)據(jù)集和DrugBank 4.3數(shù)據(jù)集的詳細(xì)信息如表1所示。
表1 黃金標(biāo)準(zhǔn)數(shù)據(jù)集和DrugBank 4.3數(shù)據(jù)集信息
面臨數(shù)據(jù)集不平衡問題時(shí),隨機(jī)過采樣是最簡單、最直接的處理方法。該方法通過直接復(fù)制少數(shù)類樣本來平衡數(shù)據(jù)集,但是這種方法容易產(chǎn)生過擬合的問題,使得模型學(xué)習(xí)到少數(shù)類樣本的部分非主要特征,即模型學(xué)習(xí)到的特征過于特別而不具備普適性。SMOTE算法不再是通過簡單的復(fù)制來生成樣本,而是通過對少數(shù)類樣本進(jìn)行分析后重新合成新樣本并添加到原始數(shù)據(jù)集中。這種新樣本是由已知的少數(shù)類樣本分析得到的,因此具有少數(shù)類樣本的通性但又不同于原始少數(shù)類樣本。在樣本空間中,SMOTE生成新樣本的公式如下:
xnew=x+rand(0,1)·(x′-x)
(1)
式中:x′為少數(shù)類樣本x的近鄰樣本;xnew為生成的新樣本。
首先根據(jù)少數(shù)類樣本和多數(shù)類樣本的比例自主設(shè)定采樣倍率N。對于每一個(gè)少數(shù)類樣本x,找到K個(gè)和x最相近的少數(shù)類樣本,然后從中隨機(jī)選取N個(gè)鄰近樣本,按式(1)隨機(jī)生成新樣本xnew,這樣就將少數(shù)類樣本增加了N倍。SMOTE算法在生成新樣本時(shí)容易產(chǎn)生數(shù)據(jù)分布邊緣化的問題。如果一個(gè)少數(shù)類樣本處在樣本空間的邊界位置,這個(gè)樣本與其鄰近樣本生成的新樣本也會在邊界位置。大量邊界樣本的生成會模糊原少數(shù)類樣本與多數(shù)類樣本的邊界,從而加大了對數(shù)據(jù)集分類的難度。
本文采用的Borderline-SMOTE算法是對SMOTE算法的改進(jìn)。假設(shè)原始訓(xùn)練樣本集為T,其中少數(shù)類為X、多數(shù)類為Y,并且X={x1,x2,…,xi,…,xxnum},Y={y1,y2,…,yi,…,yynum},xnum、ynum分別為少數(shù)類樣本個(gè)數(shù)和多數(shù)類樣本個(gè)數(shù)。與SMOTE相比,Borderline-SMOTE算法只針對邊界樣本進(jìn)行近鄰線性插值,使得合成后的樣本分布更加合理。Borderline-SMOTE算法描述如下。
高等學(xué)校擔(dān)負(fù)著為祖國輸送高素質(zhì)人才的光榮使命,心理健康教育在高等學(xué)校人才培養(yǎng)工作中發(fā)揮著不可忽視的作用。而高素質(zhì)人才首先要有一個(gè)積極向上的心態(tài),換而言之就是心理健康對高素質(zhì)人才有著決定性的作用。
輸入:藥物-靶點(diǎn)組合特征和標(biāo)簽組成的數(shù)據(jù)集T,采樣倍率N。 輸出:指定正負(fù)比例的數(shù)據(jù)集T'。 第一步:計(jì)算少數(shù)類樣本中每個(gè)樣本點(diǎn)xi與所有其他訓(xùn)練樣本的歐氏距離,獲取該樣本的K近鄰。 第二步:對少數(shù)類樣本進(jìn)行劃分,設(shè)K近鄰中有K'個(gè)屬于多數(shù)類樣本(0≤K'≤K): 如果K'=K,則xi被認(rèn)為是噪聲; 如果K2≤K' 本文提出的DTVec是受Word2Vec啟發(fā)的藥物分子和蛋白質(zhì)靶點(diǎn)的特征表示方法。Word2Vec模型通過訓(xùn)練可以將語句中的每個(gè)詞映射成一個(gè)低維實(shí)數(shù)向量。常見的Word2Vec模型有CBOW和Skip-gram兩類,本文選用Skip-gram模型。Skip-gram模型采用一個(gè)三層(輸入層-隱藏層-輸出層)的神經(jīng)網(wǎng)絡(luò),整個(gè)模型的關(guān)鍵是根據(jù)詞語出現(xiàn)的頻率實(shí)現(xiàn)Huffman編碼,使得出現(xiàn)頻率相似的詞在隱藏層激活的內(nèi)容基本一致,而那些出現(xiàn)頻率更高的詞語激活的隱藏層數(shù)目反而更少,這種方法可以有效降低計(jì)算復(fù)雜度。通過Skip-gram模型分別獲取藥物分子和蛋白質(zhì)靶點(diǎn)的低維實(shí)數(shù)向量特征表示(DrugVec和TargetVec),將原始的非數(shù)值數(shù)據(jù)數(shù)值化,以便于用Borderline-SMOTE算法平衡數(shù)據(jù)集,并且可以直接被分類模型所采用。 采用Word2Vec從文本語料中得到詞向量總共需要4步:分詞、統(tǒng)計(jì)詞頻、構(gòu)建Huffman樹、輸入文本訓(xùn)練詞向量。以一個(gè)樣本(w,context(w))為例,其中context(w)由w前后c個(gè)分詞組成,輸入層只包含了當(dāng)前樣本的中心詞w的詞向量vw∈。投影層為恒等映射。輸出層對應(yīng)一棵Huffman樹,它以語料中出現(xiàn)過的詞為葉子節(jié)點(diǎn)、以各詞在語料庫中出現(xiàn)的次數(shù)作為權(quán)值構(gòu)造而成。具體于Skip-gram模型,已知當(dāng)前詞w,需要對其上下文context(w)中的詞進(jìn)行預(yù)測,所以關(guān)鍵是條件概率p(context(w)|w)的構(gòu)造,Skip-gram模型將其定義為: (2) Skip-gram模型的算法流程如下所示。 輸入:基于Skip-gram的語料訓(xùn)練樣本,詞向量的維度大小M,上下文窗口大小c,步長η。 輸出:Huffman樹的內(nèi)部節(jié)點(diǎn)模型參數(shù)θ,所有的詞向量v(w)。 第一步:基于訓(xùn)練樣本建立Huffman樹。 第二步:隨機(jī)初始化Huffman樹的內(nèi)部節(jié)點(diǎn)模型參數(shù)θ、所有的詞向量v(w)。 第三步:進(jìn)行梯度上升迭代過程,對于訓(xùn)練集中的每一個(gè)樣本(w,context(w))進(jìn)行如下處理: 對于每個(gè)樣本w,從根節(jié)點(diǎn)到輸入詞的節(jié)點(diǎn)總數(shù)設(shè)為lw。在Huffman樹中從根節(jié)點(diǎn)開始,經(jīng)過第j (j=2,…,lw)個(gè)節(jié)點(diǎn)的Huffman編碼為dwj; 1)設(shè)e=0; 2)對于context(w)中每一個(gè)分詞u,計(jì)算詞向量v(w)并更新θ:f=σ(v(w)Tθwj-1)g=η(1-dwj-f)ee+gθwj-1θwj-1θwj-1+gv(w) 3)如果v(w)=v(w)+e梯度收斂,則結(jié)束梯度迭代,算法結(jié)束,否則回到步驟1)繼續(xù)迭代。 設(shè)置Skip-gram模型的參數(shù)時(shí),通過機(jī)器學(xué)習(xí)庫scikit-learn中的RandomizedSearchCV方法進(jìn)行超參數(shù)調(diào)整,選取最優(yōu)參數(shù):詞嵌入的維度設(shè)置為100,上下文窗口大小設(shè)置為12,負(fù)例數(shù)設(shè)置為15。進(jìn)行藥物分子和靶點(diǎn)蛋白質(zhì)特征表示訓(xùn)練,分別獲得各100維的藥物分子和靶點(diǎn)蛋白質(zhì)的詞向量(DrugVec和TargetVec),將二者組合成200維的DTVec,用以表示藥物分子和靶點(diǎn)蛋白質(zhì)之間的相互作用特征。 選擇GBDT作為分類器,對處理之后的數(shù)據(jù)進(jìn)行分類預(yù)測訓(xùn)練。GBDT中的樹都是回歸樹,主要用于回歸預(yù)測,可設(shè)置閾值將其用于二分類預(yù)測(預(yù)測結(jié)果大于閾值的設(shè)為正樣本,反之則為負(fù)樣本)。GBDT中每棵樹學(xué)習(xí)到的都是之前所有樹的結(jié)果和的殘差,通過損失函數(shù)的負(fù)梯度擬合,使預(yù)測值逐步逼近真實(shí)值。本文采用的損失函數(shù)是對數(shù)似然損失函數(shù)。 在模型訓(xùn)練過程中進(jìn)行超參數(shù)優(yōu)化,選取最優(yōu)參數(shù):弱學(xué)習(xí)器的最大迭代次數(shù)n_estimators設(shè)置為60,學(xué)習(xí)率learning_rate設(shè)置為0.2。為了佐證參數(shù)的合理性,以Nuclear Receptor數(shù)據(jù)集為例,繪制損失函數(shù)曲線。 n_estimators=60時(shí),學(xué)習(xí)率learning_rate的損失函數(shù)曲線如圖1所示。由圖1可見,在學(xué)習(xí)率為0.05左右時(shí),訓(xùn)練集loss值接近最低點(diǎn)并保持相對穩(wěn)定;在學(xué)習(xí)率從0增至0.2時(shí),交叉驗(yàn)證集的loss值下降很快,在學(xué)習(xí)率大于0.2后,loss值下降速率趨緩。為了防止學(xué)習(xí)率過高導(dǎo)致的過擬合問題,本文設(shè)置學(xué)習(xí)率learning_rate=0.2。 learning_rate=0.2時(shí),弱學(xué)習(xí)器的最大迭代次數(shù)n_estimators的損失函數(shù)曲線如圖2所示。由圖2可見,訓(xùn)練集loss值一直很低,說明模型在訓(xùn)練集上表現(xiàn)良好;在交叉驗(yàn)證集上,loss值開始隨n_estimators的增加而減小,在n_estimators約為60時(shí)達(dá)到最低點(diǎn),之后loss值隨著n_estimators的增加而提高,這是因?yàn)榈螖?shù)增多導(dǎo)致模型過擬合,因此設(shè)置弱學(xué)習(xí)器的最大迭代次數(shù)n_estimators=60。 圖2 n_estimators的損失函數(shù)曲線 準(zhǔn)確率(ACC)通常是評價(jià)機(jī)器學(xué)習(xí)模型的重要指標(biāo),但由于本實(shí)驗(yàn)數(shù)據(jù)集的高度不平衡性,ACC不宜作為主要的評價(jià)指標(biāo)。ROC(Receiver Operating Characteristic)曲線以及AUC(Area Under Curve,ROC曲線下的面積)常用來評價(jià)針對不平衡數(shù)據(jù)集的二元分類器的性能。ROC曲線的橫軸為假正率(False Positive Rate,F(xiàn)PR),即誤判為正樣本的比率: (3) ROC曲線的縱軸為真正率(True Positive Rate, TPR),即正確判斷為正樣本的比率: (4) 式(3)~式(4)中:TP表示真正例;FN表示假負(fù)例;FP表示假正例;TN表示真負(fù)例。 針對負(fù)樣本數(shù)據(jù)缺失的問題,本文首先在未知的藥物-靶點(diǎn)相互作用對數(shù)據(jù)中通過隨機(jī)采樣生成負(fù)樣本數(shù)據(jù)。初步設(shè)定生成的負(fù)樣本數(shù)量分別為正樣本數(shù)量的1倍、5倍、10倍,對所生成負(fù)樣本的實(shí)驗(yàn)效果進(jìn)行了檢測,結(jié)果發(fā)現(xiàn),生成10倍于正樣本的負(fù)樣本取得的效果最佳,所以最終選取10倍于正樣本的未知樣本作為負(fù)樣本。 為了驗(yàn)證本文方法的性能,將其與文獻(xiàn)[1]、文獻(xiàn)[18-23]中的多種方法進(jìn)行實(shí)驗(yàn)對比,均使用相同的數(shù)據(jù)集,采用十折交叉驗(yàn)證,在每個(gè)數(shù)據(jù)集上各進(jìn)行十次實(shí)驗(yàn),根據(jù)平均結(jié)果計(jì)算 AUC值。 圖3為本文方法應(yīng)用于黃金標(biāo)準(zhǔn)數(shù)據(jù)集得到的ROC曲線和AUC值,可以看出,其在4個(gè)數(shù)據(jù)集上均表現(xiàn)出優(yōu)異的性能。表2為不同方法在黃金標(biāo)準(zhǔn)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果比較。Enzyme、GPCR和Ion Channel是數(shù)據(jù)量比較豐富的3個(gè)數(shù)據(jù)集,對于Enzyme數(shù)據(jù)集,本文方法略優(yōu)于AdaBoost和iDTI-ESBoost,明顯優(yōu)于其他對比方法,在GPCR和Ion Channel數(shù)據(jù)集上,本文方法優(yōu)勢明顯。在數(shù)據(jù)量最小的Nuclear Receptor數(shù)據(jù)集上,本文方法取得的AUC值為0.9013,遜于AdaBoost和iDTI-ESBoost,但仍優(yōu)于其他方法。綜合來看,本文方法在數(shù)據(jù)量較多的數(shù)據(jù)集上表現(xiàn)優(yōu)異,在數(shù)據(jù)量少的數(shù)據(jù)集上也取得不錯(cuò)的結(jié)果。因此,本文提出的基于藥物結(jié)構(gòu)信息和靶點(diǎn)序列信息的詞向量特征提取策略對DTI特征進(jìn)行表示并針對更具代表性的少數(shù)類樣本(邊界樣本)生成新樣本的數(shù)據(jù)預(yù)處理方法取得了較好的預(yù)測性能,并且能夠適用于不同規(guī)模的數(shù)據(jù)集。 (a)Enzyme (b)GPCR (c)Ion Channel (d)Nuclear Receptor 表2 不同方法應(yīng)用于黃金標(biāo)準(zhǔn)數(shù)據(jù)集的AUC值對比 表3為不同方法在DrugBank 4.3數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果比較。由表3可見,與同樣采用集成學(xué)習(xí)的RF等方法相比,本文方法在AUC和ACC這兩項(xiàng)指標(biāo)上均較優(yōu),并且ACC指標(biāo)的優(yōu)勢明顯。數(shù)據(jù)集不平衡的特性使得大部分實(shí)驗(yàn)?zāi)P驮贏CC值(準(zhǔn)確率)上很容易取得好的結(jié)果,因此,相關(guān)研究不將ACC值作為主要評價(jià)指標(biāo),但這并不意味著ACC指標(biāo)不重要。RF、DBN等方法的AUC指標(biāo)值雖然還比較高,但ACC值均低于0.9,這種以準(zhǔn)確率為代價(jià)的實(shí)驗(yàn)結(jié)果證明了RF等方法的不完善。另外,與深度學(xué)習(xí)方法CNN+sequence進(jìn)行比較,本文方法在兩項(xiàng)指標(biāo)上均取得更好的實(shí)驗(yàn)結(jié)果。表3數(shù)據(jù)進(jìn)一步說明了本文方法對于不平衡數(shù)據(jù)處理的有效性。 表3 不同方法應(yīng)用于DrugBank4.3數(shù)據(jù)集的AUC、ACC值對比 本文針對藥物-靶點(diǎn)相互作用數(shù)據(jù)集不平衡的問題,提出了一種有效的數(shù)據(jù)處理方法BS-DTVec。該方法基于Word2Vec模型提取藥物和靶點(diǎn)數(shù)據(jù)的詞向量特征,并組合成藥物-靶點(diǎn)相互作用特征,同時(shí)根據(jù)少數(shù)類樣本中的特定樣本(即處在少數(shù)類和多數(shù)類樣本邊緣的樣本)產(chǎn)生新的少數(shù)類樣本,緩解了正、負(fù)樣本數(shù)據(jù)量的較大差異對分類模型泛化能力的不利影響。詞向量特征提取方式可以較好地提取出重要的藥物化學(xué)結(jié)構(gòu)特征(DrugVec)以及靶點(diǎn)蛋白質(zhì)氨基酸序列片段特征(TargetVec),其組合(DTVec)可以有效地表示藥物-靶點(diǎn)相互作用的關(guān)鍵特征。通過樣本空間中的邊緣樣本生成新的樣本,使少數(shù)類樣本和多數(shù)類樣本的邊界更加明顯,避免了因在少數(shù)類樣本集群內(nèi)部生成新樣本而對模型訓(xùn)練可能造成的過擬合問題。這種數(shù)據(jù)處理方式更加有助于分類模型在訓(xùn)練過程中區(qū)別正樣本和負(fù)樣本。在不同數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果證明了BS-DTVec方法能有效處理藥物-靶點(diǎn)相互作用預(yù)測數(shù)據(jù)集不平衡問題。在今后的研究過程中將考慮擴(kuò)充數(shù)據(jù)集,針對特定疾病的藥物-靶點(diǎn)相互作用進(jìn)行研究,為具體的疾病治療提供輔助方案。1.3 特征表示
1.4 分類模型
2 實(shí)驗(yàn)
2.1 評價(jià)指標(biāo)
2.2 負(fù)樣本采樣倍率的確定
2.3 實(shí)驗(yàn)結(jié)果評估
3 結(jié)語