隨著遺傳學、育種學的不斷發展和人類基因組計劃和分子生物學的日益發展,生物學數據在短短的幾十年里得到了爆發式地增長。比如生物信息學里面的:回歸分析、隨機森林、支持向量機等算法,都是比較成熟的應用了。在最近閱讀文獻得過程中,小編發現了一篇材料學科的文獻,文中用到的XGBoost算法與小編之前鉆研過的兩篇生信文章的算法十分相似,那么今天就給大家剖析一下當生物信息遇見機器學習,會有什么火花,自己文章中又如何加入這些有趣的機器學習方法,增加創新,幫助你投不出去純分析文章增加成本。

一、生物信息學數據
研究的數據類型,可以分為基因型數據(GenoType Data)、表達量數據等;其中基因型數據則是通過WGS、WES、基因芯片數據獲得的。
如今,基因組信息被廣泛用于癌癥的精確治療。由于個體類型的組學數據只代表單一觀點,存在數據噪聲和偏差,因此需要多種類型的組學數據來準確預測癌癥預后。然而,由于多組學數據中存在大量冗余變量,但樣本量相對較小,有效整合多組學數據具有一定的挑戰性。
二、機器學習與生物信息學數據的結合
我們越來越多地看到機器學習在生信文章中應用,例如針對數據尋找可用的模式然后進行預測。通常,這些預測模型用于操作流程以優化決策過程,但同時它們也可以提供關鍵的洞察力和信息來報告戰略決策。
機器學習的基本前提是算法訓練,提供特定的輸入數據時預測某一概率區間內的輸出值。請記住機器學習的技巧是歸納而非推斷——與概率相關,并非最終結論。
構建這些算法的過程被稱之為預測建模。一旦掌握了這一模型,有時就可以直接對原始數據進行分析,并在新數據中應用該模型以預測某些重要的信息。模型的輸出可以是分類、可能的結果、隱藏的關系、屬性或者估計值。
如果我們關心的是估算值或者連續值,預測也可以用數字表示。輸出類型決定了最佳的學習方法,并會影響我們用于判斷模型質量的尺度。
誰對機器學習方法進行監督?機器學習方法可以是有人監督也或者是無人干預的。區別不在于算法是否可以為所欲為,而是是否要從具備真實結果的訓練數據中學習——預先確定并添加到數據集中以提供監管——或者嘗試發現給定數據集中的任何自然形態。大多數企業使用預測模型,對訓練數據使用監督方式,而且通常旨在預測給定實例——郵件、人員、公司或者交易是否屬于某個有趣的分類——垃圾郵件、潛在買家、信用良好或者獲得后續報價。
如果在開始之前你不是很清楚在尋找什么,那么無人干預的機器學習方法能夠提供全新的洞察力。無人干預的學習還能夠生成集群與層次結構圖,顯示數據的內在聯系,還能夠發現哪些數據字段看起來是獨立的,哪些是規則描述、總結或者概括。反過來,這些洞察能夠為構建更好的預測方法提供幫助。
構建機器學習模型是一項反復練習的過程,需要清理數據和動手實驗。目前市場上正在涌現一些自動和有向導的模型工具,它們承諾降低對數據科學家的依賴性,同時在常見領域獲得最高的投資回報率。然而這里面真正的差別很可能需要你自己去發現。
隨著深度學習技術的發展,自動編碼器被用于整合多組學數據,提取具有代表性的特征。然而,由于數據噪聲的影響,生成的模型很脆弱。此外,以往的研究通常集中在單個癌癥類型,而沒有對泛癌癥進行全面的測試。
三、算法介紹
1. GBDT(Gradient Boosting Decision Tree):在數據分析和預測中的效果很好。它是一種基于決策樹的集成算法。
2. Boosting:Boosting指把多個弱學習器相加,產生一個新的強學習器。經典的例子有:adaboost, GBDT, xgboost等。如果每一個弱學習器用 來表示的話,那么Boosting的強學習器就可以表示為:

通俗的來說就相當于把多個學習器串聯(bagging是并聯)。接下來,我們就介紹一下xgboost算法。
3. XGBoost:
XGBoost本質上是一個GBDT,但是力爭把速度和效率發揮到極致,所以叫X (Extreme) GBoosted
XGBoost 樹定義:
舉例
預測一家人對口紅的喜愛程度,考慮到年齡相比,年輕人更可能喜歡口紅,男性和女性相比,女性更喜歡口紅,故先根據年齡大小區分成年人和未成年人,然后再通過性別區分開是男是女,逐一給各人在口紅喜好程度上打分,如下圖所示。

X XGBoost的核心算法思想不難,基本就是:
1. 不斷地添加樹,不斷地進行特征分裂來生長一棵樹,每次添加一個樹,其實是學習一個新函數f(x),去擬合上次預測的殘差。
2. 當我們訓練完成得到k棵樹,我們要預測一個樣本的分數,其實就是根據這個樣本的特征,在每棵樹中會落到對應的一個葉子節點,每個葉子節點就對應一個分數
3. 最后只需要將每棵樹對應的分數加起來就是該樣本的預測值。
通俗來講,XGBoost是GBDT算法的一種改進,是一種常用的有監督集成學習算法;是一種伸縮性強、便捷的可并行構建模型的GradientBoosting算法。
原理是:在GBDT目標函數的基礎上加入懲罰項,通過限制樹模型的葉子節點的個數和葉子節點的值來降低模型復雜度,從而防止過擬合,二分之一是為了求導方便。t是樹的棵數,obj為損失函數。

(看不懂沒關系,理解這樣做的目的就好~大體步驟是為了防止過擬合,二階泰勒展開公式計算,給出了新的樹的劃分標準,用的是損失函數的增量)
目的:找到第t顆樹是如何搭建的所以我們的期望是損失函數只和第t顆樹有關系。
XGBoost出現較早,但在交叉學科,比如生物、化學、材料等領域的應用較少,抓住這個新穎的方向可能為你的論文增添看點,XGBoost支持開發語言:Python、R、Java、Scala、C++等。
XGBoost 的最佳信息來源是該項目的官方 GitHub 庫:"https://github.com/dmlc/xgboost "。
四、文獻與總結
第一篇:《Improving protein-protein interactions prediction accuracy using XGBoost feature selection and stacked ensemble classifier》

期刊:《Computers in Biology and Medicine》
影響因子及中科院分區:IF: 3.434,中科院三區
發表日期:2020年7月
作者單位:青島科技大學
1.算法方法
(1)作者提出了一種新的預測蛋白質-蛋白質相互作用的方法——StackPPI
(2)融合PAAC、AD、AAC-PSSM、Bi-PSSM和CTD提取物理化學、進化和序列信息
(3)采用XGBoost特征選擇方法消除冗余,保留最優特征子集
(4)首次利用RF、ET和LR構建了堆疊集成分類器。
2.數據
訓練集:
幽門螺桿菌( Helicobacter pylori),正負樣本各位1458
酵母菌(Saccharomyces cerevisiae),正負樣本各位5594
測試集:
人相互作用對數量為1412
老鼠相互作用對數量為313
秀麗隱桿線蟲相互作用對數量為4013
大腸桿菌相互作用對數量為6954
基因評估數據集:
Wnt相關通路:96個作用對
疾病特異性:108個作用對
3.結果解讀:
流程圖:

(1)確定參數m

首先根據圖2 (A)可以看出,隨著參數λ值的變化,兩個數據集的ACC值是不同的。當λ =11時,StackPPI s 精準性(ACC)在幽門螺旋桿菌和釀酒酵母菌數據集上達到一個全局最大值,而在幽門螺旋桿菌數據集上λ =9時達到最大值。利用平均精度得到StackPPI (λ =11)中PAAC的最優參數λ。圖2 (B)繪制了不同m下Moreau-Broto、Moran和Geary自相關描述子ACC的變化。m = 8時,幽門螺旋桿菌ACC最高,m = 9時,啤酒酵母StackPPI最高。通過平均預測精度,在StackPPI中設m = 9, 自相關描述符AD(Moreau-Broto、Moran和Geary、氨基酸組成位置特異性評分矩陣)的維數為21*9=189。
(2)數據降維方法的評估與選擇

對于不同的數據集,采用不同的方法,并通過受試者工作曲線進行有效性的評估。為了選擇最優分類算法,將堆疊集成分類器與邏輯回歸(LR)、k -最近鄰(KNN)、AdaBoost、隨機森林(RF)、支持向量機(SVM)和XGBoost進行比較。其中KNN方法的鄰域設為5,SVM采用徑向基核,AdaBoost、RF和XGBoost的'n_estimators'分別為500、500和500。所以在本節中,使用XGBoost作為分類器。為了進一步驗證StackPPI,作者對不同的分類器進行統計檢驗。報告了LR、KNN、AdaBoost、RF、SVM、XGBoost與堆疊集成分類器相比在ACC、MCC和AUC指標上的p值。

4.總結:
蛋白質-蛋白質相互作用(Protein-protein interaction, PPIs)在蛋白質組水平上參與了大多數細胞活動,這篇文章作者使用機器學習的算法與生物信息學數據結合探討和預測蛋白相互作用。作者提出了一個名為StackPPI的預測框架。首先使用偽氨基酸組成、自相關描述符(Moreau-Broto、Moran和Geary、氨基酸組成位置特異性評分矩陣), Bi-gram位置特異性評分矩陣以及組成、轉移和分布對生物相關特征進行編碼。其次,采用XGBoost算法去除特征噪聲,并通過梯度提升和平均增益進行降維;最后,通過StackPPI(一種由隨機森林、極度隨機樹和邏輯回歸算法組成的堆疊集成分類器開發的PPIs預測器)對優化后的特征進行分析。
第二篇:《Integrating multi-omics data through deep learning for accurate cancer prognosis prediction》

期刊:《Computers in Biology and Medicine》
影響因子及中科院分區:IF: 3.434,中科院三區
發表日期:2021年5月
作者單位:中山大學
1.算法方法:
(1)DCAP方法的體系結構:將多組癌癥數據的高維特征輸入DAE網絡,得到具有代表性的特征,然后利用這些特征通過Cox模型估計患者的風險。考慮到臨床難以獲得多組數據,進一步利用mRNA數據構建XGboost模型來擬合估計的風險。構建的模型用于預測獨立數據集中的癌癥患者風險。此外,基于XGboost和差異表達分析鑒定出的基因,我們鑒定出9個與乳腺癌預后高度相關的預后標志物。
(2)自動編碼器
(3)XGBoost特征制作風險模型、
2.數據:
(1)TCGA癌癥數據
(2)GEO癌癥數據
3.結果解讀:
流程圖:

(1)使用數據類型與方法的比較與篩選

如表2所示,DCAP在10倍CV和獨立檢驗中獲得了基本相同的c指數值,對15種癌癥的平均值分別為0.678和0.665。結果表明,該方法具有較好的魯棒性。我們進一步詳細介紹了每種組學類型在DCAP中的貢獻。

如表3所示,單類組學數據中,mRNA表現最好,平均c指數為0.628,CNV表現最差,c指數為0.570。miRNA和甲基化分別排在第2位和第3位。一致認為,當從DCAP中排除一種組型時,mRNA引起的c指數值下降最大,從0.665下降到0.631,而排除CNV引起的c指數下降最小。這些結果表明,mRNA在鑒別高危患者中起著最重要的作用,而CNV的作用最小。平均而言,使用多組學的預后預測比僅使用mRNA數據的預后預測提高了5.9%。
(2)案例研究
作為一個案例研究,研究人員將作者的方法應用于包含最多樣本的乳腺癌(BRCA)。為了驗證DCAP-XGB構建的乳腺癌預后預測模型,在GEO數據庫中收集的三個外部乳腺癌數據集GSE2990、GSE9195和GSE17705上對模型進行了測試。

如圖3A所示,3個數據集預測的高風險和低風險組與生存曲線明顯分離,p值均在0.05以下,c指數相近(0.602、0.605、0.611)。這些結果表明了作者輕加權風險預測模型的穩健性。
根據DCAP對高危和低危人群的劃分,我們鑒定出159個DEGs,其中有45個風險基因下調,114個風險基因上調(圖3B)。159個DEGs中,有57個(35.9%)基因經過了文獻證實與乳腺癌相關。
用XGboost模型選擇的223個基因作圖,發現9個DEGs重疊,其中7個(77.8%)基因(ADIPOQ、NPY1R、CCL19、MS4A1、CCR7、CALML5和AKR1B10)與乳腺癌相關(表5)。對于剩下的2個基因(ULBP2和BLK),雖然沒有文獻直接證明與乳腺癌預后相關,據報道,ULBP2的誘導與p53的藥理學激活觸發抗癌先天免疫反應[27]有關,而BLK是一個真正的能誘導腫瘤的原癌基因,適合于BLK驅動淋巴瘤的研究和體內[28]中新型BLK抑制劑的篩選。
4.總結:
如今,基因組信息被廣泛用于癌癥的精確治療。由于個體類型的組學數據只代表單一觀點,存在數據噪聲和偏差,因此需要多種類型的組學數據來準確預測癌癥預后。然而,由于多組學數據中存在大量冗余變量,但樣本量相對較小,有效整合多組學數據具有一定的挑戰性。隨著深度學習技術的發展,自動編碼器被用于整合多組學數據,提取具有代表性的特征。然而,由于數據噪聲的影響,生成的模型很脆弱。此外,以往的研究通常集中在單個癌癥類型,而沒有對泛癌癥進行全面的測試。在這里,作者使用去噪自編碼器來獲得多組數據的魯棒表示,然后使用學習到的代表性特征來估計患者的風險。應用美國癌癥基因組圖譜(TCGA)中的15個癌癥樣本,結果表明該方法比傳統方法平均提高6.5%。考慮到實際操作中難以獲得多組數據,作者進一步通過訓練XGboost模型,僅使用mRNA數據擬合估計的風險,發現模型平均c -指數為0.627。以乳腺癌預后預測模型為例,分別在基因表達綜合數據庫(Gene Expression Omnibus, GEO)的3個數據集上進行獨立檢驗,結果顯示該模型能夠顯著區分高危患者和低危患者。根據作者的方法劃分的風險亞組,識別出9個與乳腺癌高度相關的預后標志物,其中7個基因已被文獻綜述證實。從而得出結論,本研究構建了一個準確、穩健的多組學數據綜合預測腫瘤預后的框架。此外,它也是發現癌癥預后相關基因的有效途徑。
第三篇:《XGBoost model for electrocaloric temperature change prediction in ceramics》

期刊:中國科學院上海硅酸鹽研究所主辦的《npj Computational Materials》
影響因子及中科院分區:IF: 12.3,中科院一區
發表日期:2022年7月
作者單位:卡耐基梅隆大學
1.算法方法:
(1)XGBoost算法
2.數據:
(1)電熱材料(EC)數據集:EC材料主要有三大類:聚合物、陶瓷和聚合物陶瓷復合材料。作者建立了EC陶瓷的數據集,因為它們的成分種類繁多。作者從現有文獻中提取信息,因為大多數材料成分沒有出現在知名的材料數據庫。該數據集包含45篇論文中的97篇材料,可以在GitHub48上以csv格式訪問。數據集的快照以及數據收集和模型構建步驟的流程圖如圖所示。

3.結果解讀:
(1)數據預處理

經過一些預處理步驟去除了不合格的數據,研究人員有4406個數據點,每個數據點包含表1所列的21個特征(7個實驗條件/材料性能特征和14個混雜特征)。要預測的標簽是在給定條件下(即T和E)的ΔTEC。

在圖2a中,收集的數據被繪制為全尺度表征溫度的函數。在圖2b中,ΔTEC在0 2k范圍內的數據點被繪制成T-TCurie的函數。不同的顏色代表不同的材料組成,標記尺寸與所施加的電場成比例。這些EC材料的溫度變化相對較小,中值為0.36 K,平均值為1.07 K。97個材料中有3個最大,遠遠超過了第二大最大值13 K。這三種材料被標記為異常值,在構建模型時被排除,除非另有規定。
(2)XGBoost造模

用于ΔTEC預測的XGBoost回歸模型(詳見方法XGBoost回歸部分)是通過6912種組合的網格搜索建立的最佳超參數集(表2)。由于XGBoost無法進行外推,只能對之前在訓練歷史中遇到的情況做出合理的預測,除非特別說明,否則ΔTEC值最低和最高的材料將被迫出現在訓練集中。作者構建了三個模型,并根據其隨機種子進行區分。雖然,正如預期的那樣,XGBoost模型預測PbZr0.97La0.02(Zr0.95Ti0.05)O3不能比訓練集的最大值高于ΔTEC,但它們對PbZr0.95Ti0.05O3的預測能力范圍都高于ΔTEC。這一觀察結果表明,XGBoost模型從基礎物理中學習,可以作為定性預測和改進新材料搜索的有用工具。
(3)驗證模型
根據94個EC陶瓷在特征空間中的距離,將其分為訓練數據集和測試數據集。首先將EC材料的復雜特征投影到二維t分布隨機鄰域嵌入(t-SNE)空間上。然后對94種材料的投影進行k-means聚類。通過將聚類內平方和作圖為k的函數,并將“肘部”標識為k,通過肘部法確定最佳k值為3。為所有數據分配一個聚類標簽。從每個聚類中選取75%的材料作為訓練數據,其余25%作為測試數據。
不同數量的特性用于構建模型。分別為表1中的21個特征、去掉介電常數的20個特征,去掉所有混雜特征的7個特征,去掉介電常數和所有混雜特征。對于每個特性集,使用相同的超參數,但不同的隨機種子和訓練/測試分割訓練了100個XGBoost模型。R2和RMSE結果(平均值和標準差)匯總在表3中,其中每一行的數據對應100個模型。

(3)模型對于雜質的特征分析
我們對XGBoost對 ΔTEC模型進行了特征分析,其奇偶圖如圖3所示。

基于雜質的特征重要性由XGBoost通過測量在使用特征的所有分割處的總增益(即精度的提高)來計算。特征重要性值越高,說明特征越重要。

基于雜質的特征重要性如圖4所示。應用電場E排名第一,其次是T-Tcurie居里。這些觀察結果與已知的物理學一致。16個混雜功能協同幫助模型區分不同的材料。因此,直接解釋單個特征可能是困難的。XGBoost模型在所有145個混雜特征(或110個非零方差特征)中選取了這四組特征。作者的XGBoost模型是嚴格規范化的(即,在節點的拆分中使用了樹修剪和限制),該模型對包含不相關的特性并不敏感。通過使用XGBoost ΔTEC模型進行預測,其奇偶圖如圖3所示。
4.總結:
XGBoost梯度提升通過梯度下降算法將預測誤差降至最低,并產生一組弱預測模型(決策樹)形式的模型。在訓練過程中,梯度提升每次增加一個新的回歸樹,以減少殘差(即模型預測與標簽值之間的差值)。模型中現有的樹保持不變,這降低了過擬合的速度。作者在本研究中建立了一個極端梯度Boosting (XGBoost)機器學習模型,根據陶瓷的成分(由混雜元素屬性編碼)、介電常數、居里溫度和表征條件,預測陶瓷的電熱(EC)溫度變化。
根據實驗文獻,建立了97個EC陶瓷的數據集。通過對特征空間中的聚類數據進行采樣,模型對測試數據的決定系數為0.77,均方根誤差為0.38 K。特征分析表明,該模型捕捉了有效電導率材料的已知物理特性。混雜特征有助于模型區分材料,元素電負性和離子電荷被確定為關鍵特征。將該模型應用于66種電導率未得到表征的鐵電體。確定了在室溫和100kv /cm下EC溫度變化大于2 K的無鉛候選材料。
五、文章小結
基因組學是一門跨學科的生物學學科,它可以量化生物體的所有基因,并研究它們對生物體的相互作用影響,如今機器學習已廣泛應用于基因組學研究,使用已知的訓練集來預測數據類型的結果,同時深度學習和深度學習模型可以預測并且降維分析能力更強更靈活,在適當的訓練數據下,深度學習可以在人工干預較少的情況下自動學習特征和規律。深度學習目前也成功應用調控基因組學、突變檢測和致病性評分,可以提高基因組數據的可解釋性,并將基因組數據轉化為可操作的臨床信息、改進疾病診斷方案、了解誰應該使用什么藥物和藥物,從而最大限度地減少藥物副作用,最大限度地提高療效,由于涉及的變量太多,人工的統計分析較慢,而深度學習可以幫助縮短過程。
而XGBoost訓練速度極快,內存友好,可以計算每個特征的重要性,這對于特征篩選、模型可解釋性、模型透明、模型調優等都有好處;XGBoost還可以以明文的形式保存樹模型,方便模型可視化和調優,這么多的優點,趕緊趁它沒有廣泛應用在生物信息學領域的時候放到你的論文中吧!