馮潔
摘要:在生物信息學(xué)的研究過程當(dāng)中,經(jīng)常會遇到二分類的問題。例如RNA甲基化預(yù)測、蛋白質(zhì)相互作用預(yù)測、蛋白質(zhì)中二硫鍵的預(yù)測等都屬于二分類問題。要解決二分類問題,目前在機(jī)器學(xué)習(xí)中提到了很多算法。比較常用的有支持向量機(jī)(sVM)和隨機(jī)森林(RF)算法。文章在研究一般RF算法的同時(shí),進(jìn)一步討論了集成RF算法對于處理非平衡數(shù)據(jù)起到的突出作用,最后分析總結(jié)了一般隨機(jī)森林算法和集成隨機(jī)森林算法的優(yōu)缺點(diǎn)。
關(guān)鍵詞:生物信息學(xué);二分類;隨機(jī)森林;集成隨機(jī)森林;非平衡數(shù)據(jù)
中圖分類號:TP311
文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2017)10-0186-02
隨著后基因組時(shí)代的到來,高通量測序技術(shù)的運(yùn)用,使得基因數(shù)據(jù)庫和蛋白質(zhì)數(shù)據(jù)庫中累加了巨量的新測定的序列,而通過傳統(tǒng)的實(shí)驗(yàn)手段去剖析它們的結(jié)構(gòu)、功能以及遺傳信息就顯得十分的耗時(shí)和費(fèi)力。因此人們就寄希望于通過計(jì)算機(jī)的手段去分析這些序列的相關(guān)信息。在此基礎(chǔ)上,人們開發(fā)了很多有針對性的計(jì)算機(jī)算法模型去預(yù)測相關(guān)信息,而建立這些模型的基礎(chǔ)算法有KNN、SVM以及RF等等。在本文當(dāng)中我們主要討論RF算法在生物信息學(xué)當(dāng)中的應(yīng)用。
1.一般隨機(jī)森林算法
由于數(shù)據(jù)集當(dāng)中的樣本數(shù)都比較大、噪音比較多,導(dǎo)致單一的分類器構(gòu)建的預(yù)測模型的預(yù)測分類效果不好,因此為了提高預(yù)測分類結(jié)果,現(xiàn)在大多數(shù)情況下都采用分類器集成(En-semble)的方式來構(gòu)建預(yù)測模型。隨機(jī)森林就是一種集成的分類器。簡單來說,隨機(jī)森林就是由多棵CART(ClassificationAnd Regression Tree)構(gòu)成的。對于每棵樹,它們使用的訓(xùn)練集是從總的訓(xùn)練集中有放回采樣出來的,這意味著,總的訓(xùn)練集中的有些樣本可能多次出現(xiàn)在一棵樹的訓(xùn)練集中,也可能從未出現(xiàn)在一棵樹的訓(xùn)練集中。在訓(xùn)練每棵樹的節(jié)點(diǎn)時(shí),使用的特征是從所有特征中按照一定比例隨機(jī)地?zé)o放回的抽取的。也就是說,在RF內(nèi)部就有特征選擇的過程,這樣使得我們不必再額外的對眾多特征進(jìn)行優(yōu)化處理,簡化了建模過程。RF算法流程如下:
1)采用bootstrap抽樣技術(shù)從原始數(shù)據(jù)集中抽取ntree個(gè)訓(xùn)練集,每個(gè)訓(xùn)練集的大小為原始訓(xùn)練集的三分之二。
2)為每個(gè)bootstrap訓(xùn)練集分別建立分類回歸樹(CART),共產(chǎn)生ntree棵決策樹構(gòu)成一片“森林”,這些決策樹均不進(jìn)行剪枝,在每棵樹生長過程中并不是全部選擇M個(gè)屬性中最優(yōu)屬性作為內(nèi)部節(jié)點(diǎn)進(jìn)行分支,而是從隨機(jī)選擇的m≤M個(gè)屬性中選擇最優(yōu)屬性進(jìn)行分支。
3)集合ntree棵決策樹的預(yù)測結(jié)果,采用投票(voting)的方式?jīng)Q定新樣本的類別。
對于平衡數(shù)據(jù)集(正負(fù)樣本的數(shù)量相等)采用RF算法能夠顯著提高模型的預(yù)測準(zhǔn)確率,但對于非平衡數(shù)據(jù)集(負(fù)樣本的數(shù)量要遠(yuǎn)遠(yuǎn)大于正樣本的數(shù)量),由于負(fù)樣本的數(shù)量過多,導(dǎo)致學(xué)習(xí)過程中對于大類樣本的偏向性比較明顯,這樣建立的模型預(yù)測的結(jié)果就不盡如人意。而在的物信息學(xué)當(dāng)中我們接觸到的數(shù)據(jù)集大多數(shù)是非平衡的,因此對于非平衡數(shù)據(jù)的預(yù)測就顯得尤為重要,在文章的下面部分將討論兩種改進(jìn)的隨機(jī)森林算法。
2.隨機(jī)森林集成算法
2.1多個(gè)RF串聯(lián)
該方法的核心思想是通過多重RF串聯(lián)的方式,來對一個(gè)樣本數(shù)據(jù)進(jìn)行多次預(yù)測,只有前面一層的RF預(yù)測值符合要求,才會進(jìn)入到下一次的RF預(yù)測,當(dāng)所有的RF預(yù)測結(jié)果一致通過,我們才認(rèn)為是符合要求的,并將其歸類為少數(shù)類。若在某一層的RF預(yù)測結(jié)果不符合要求,則立即停止,并將該樣本歸類為多數(shù)類。算法詳細(xì)經(jīng)過如圖1所示。
根據(jù)以上分析,我們可以得知串聯(lián)隨機(jī)森林算法的核心思想就是通過一層層深入的訓(xùn)練模式能夠極大的提高對少數(shù)類樣本的預(yù)測精度,使得算法的準(zhǔn)確率得到較大的提高。能很好地克服非平衡數(shù)據(jù)帶來的模型偏向性問題。
算法流程:
1)判定多數(shù)類樣本數(shù)與少數(shù)類樣本數(shù)的比值是否大于等于設(shè)定的非平衡系數(shù)值(該系數(shù)值有程序設(shè)計(jì)者設(shè)定),若滿足要求,則從多數(shù)類中隨機(jī)抽取與少數(shù)類樣本數(shù)相同的樣本,與少數(shù)類組成一個(gè)平衡的樣本子集,用于下一層的RF訓(xùn)練,并轉(zhuǎn)第二步。注意被抽取的多數(shù)類樣本將被從多數(shù)類樣本集中剔除掉。
2.2多個(gè)RF并聯(lián)
在生物信息學(xué)的學(xué)習(xí)過程當(dāng)中,我們經(jīng)常會對一條核酸序列或蛋白質(zhì)序列提取相關(guān)的特征信息,若特征維數(shù)較多,彼此之間的組合可能會降低模型的預(yù)測準(zhǔn)確率。因此,我們可以將每一維特征都作為一個(gè)特征向量,用一個(gè)單獨(dú)的RF進(jìn)行訓(xùn)練。這樣,我們可以得到與特征維數(shù)相等的RF訓(xùn)練模型,再通過對這些RF模型的輸出結(jié)果進(jìn)行投票,得到最終的預(yù)測結(jié)果。該算法的流程圖如圖2所示。
算法步驟:
1)將待處理的序列用特征向量表示,并且將n維特征向量分解成若干個(gè)特征向量子集,每個(gè)子集可以是一維也可以是多維(n為奇數(shù))。
2)對于每一個(gè)特征子集(一級),我們都訓(xùn)練一個(gè)RF模型。因此,若有n級就會訓(xùn)練n個(gè)RF模型,最后得到n個(gè)標(biāo)簽(類別)。
3)對n個(gè)標(biāo)簽進(jìn)行投票統(tǒng)計(jì),確定最終的類別標(biāo)簽。
這種RF集成模式稱為并聯(lián)模式。通過這種模式可以最大限度地發(fā)揮每一個(gè)特征子集對于模型構(gòu)建起到的決定性作用,確保整個(gè)算法更加公平。避免了由于特征之間的互相影響而使得模型預(yù)測準(zhǔn)確率不高的問題。
3.三種RF算法優(yōu)缺點(diǎn)分析
11_一般RF
優(yōu)點(diǎn):對于平衡類數(shù)據(jù)能夠起到較好的分類作用,由于其只有一層的原因,算法的耗時(shí)相對較短,模型的建立相對簡單。
缺點(diǎn):不適合對非平衡數(shù)據(jù)進(jìn)行分類。
2)串聯(lián)RF
優(yōu)點(diǎn):能很好地克服非平衡數(shù)據(jù)帶來的偏向性問題。由于預(yù)測結(jié)果是層層遞進(jìn)的,所以提高了模型最后的預(yù)測效果。
缺點(diǎn):由于其往往由多層RF串聯(lián)構(gòu)成,對于每一層的閥值的設(shè)定是一個(gè)難題。并且,多層結(jié)構(gòu)提高了模型構(gòu)建的復(fù)雜度,算法的運(yùn)算耗時(shí)較長。
3)并聯(lián)RF
優(yōu)點(diǎn):與串聯(lián)RF相似,能很好地克服非平衡數(shù)據(jù)帶來的偏向性問題。其將特征維數(shù)分解的方式能極大地提高各維特征對于最后類別認(rèn)定起到的貢獻(xiàn)程度。避免了多種特征混在一起互相沖突,降低了預(yù)測結(jié)果的問題。
缺點(diǎn):要訓(xùn)練多個(gè)RF模型,程序復(fù)雜度較高。投票方式看似公平,實(shí)則有可能降低了某些強(qiáng)勢特征對最后分類結(jié)果的貢獻(xiàn)程度。
4.結(jié)束語
本文通過對三種RF算法在生物信息學(xué)當(dāng)中的應(yīng)用研究,在闡述了一般RF算法對平衡數(shù)據(jù)進(jìn)行處理的過程后,針對其處理非平衡數(shù)據(jù)時(shí)容易產(chǎn)生對多類的偏向性的弊端,提出了兩種集成RF算法,通過對這兩種集成算法的描述,使我們了解到這兩種集成算法很好地克服了非平衡數(shù)據(jù)帶來的學(xué)習(xí)偏向性,極大地提高了模型的預(yù)測精度。我們發(fā)現(xiàn)集成隨機(jī)森林雖然能很好地出來非平衡數(shù)據(jù),但其帶來的計(jì)算時(shí)間增長和模型復(fù)制度的提高都對使用和學(xué)習(xí)該算法的研究者帶來了不便。因此,今后的研究方向是著力于開發(fā)一種更加簡單高效的算法模型。對于RF算法未來在生物信息學(xué)領(lǐng)域的應(yīng)用,我們將進(jìn)一步的進(jìn)行跟蹤研究。