您當前的位置:首頁 > 繪畫

一文了解臨床研究中的機器學習

作者:由 白髮 發表于 繪畫時間:2020-07-30

寫在開頭:本文大部分內容來自於我在學習機器學習過程中的快速筆記,整理之後大致覆蓋了使用機器學習進行臨床科研需要知道的基本概念,故發在這裡以便日後複習。如果能幫助到其他人初步建立知識體系就更好了。

傳統統計分析:

傳統統計分析基於做出假設和對假設進行檢驗,透過對於資料的線性、非多重共線性的假設和對於比值比、危害比等統計量的計算來進行分析。但是由於資料量不斷增大,高維資料難以被傳統統計模型處理。

一文了解臨床研究中的機器學習

機器學習的分類:

臨床科研涉及到的機器學習可以大致分為supervised和unsupervised, supervised注重根據已有條件於預測,類似迴歸。而unsupervised注重於從已有條件中發現新的pattern,比如特殊人群等。簡單來說,supervised 就是我已經知道一種人群大概會表現出什麼樣的特徵,希望預測一個單獨的個體會不會屬於這一種人群;而unsupervised則是我有一大群人和他們的特徵,希望根據這些特徵把他們劃分為幾個小群。

一文了解臨床研究中的機器學習

機器學習的樣本量:

機器學習不需要計算p值等傳統統計量,因此對於樣本量沒有明確的規矩和要求,尤其是unsupervised,甚至曾經有文獻只用了13個樣本進行分析。然而通常來說,臨床研究中幾百個樣本的量級還是需要達到的。否則即便掌握了很好的特徵和特徵值,在樣本很少的條件下模型也難以充分利用每個特徵,從而使預測結果不準確。

機器學習的特徵數(維度):

和樣本量中的概念相似,如果特徵比較少,或者有好幾個特徵本質上是同一回事的時候,模型的預測能力也將大打折扣。這是因為機器學習本質上需要的是最能夠體現不同型別樣本區分度的特徵。過多的特徵不能讓模型更準確,反而會增加過擬合的風險。常用的選擇合適特徵的方法包括研究不同特徵之間的相關性、對特徵進行重要性排序、使用LASSO迴歸等。此外向後剔除法也是常用的特徵選擇方法。

特徵的變形:

這是比較抽象的一個概念,傳統的統計學中就經常對於某些自變數進行變形來改變它的分佈或者是線性關係。比如把細菌數量加個log來反映量級,或者是有些新穎模型中把年齡和某種評分相加產生一個新的特徵。這些新的特徵可能在我們的認知中沒有任何實際意義,但是對於模型的構建卻比未變形的特徵幫助更大。

目前的特徵變形手段可謂包羅永珍,從簡單的平均值、加和到複雜的主成分分析(PCA)、甚至以另一個模型的預測值作為新模型構建的特徵,不一而足。對於特徵變形方法的研究甚至有專門的領域,目前被稱為deep feature synthesis。

一文了解臨床研究中的機器學習

缺失資料的處理:

傳統的統計方法通常把有缺失資料的樣本做忽略處理,但機器學習模型的構建中有時會使用一些方法填補缺失的資料,比如隨機數填補、用平均值填補等。關於缺失資料的處理也有專門的研究方向,目前被稱為data imputation。

最佳化超引數(hyperparameter):

不同的機器學習演算法都有相應的超引數(比如KNN演算法中,以K個距離最近的樣本作為錨點計算樣本點的分類,這個k就是一個超引數)。儘管機器學習通常都有一個預設的超引數值,但實際使用過程中還是需要不斷除錯來取得最好的預測結果。

通常除錯引數的過程中至少會拿50%的總體樣本來除錯和跑模型(當然如果電腦夠勁全部樣本拿來除錯也不是不可)。除錯引數的過程中可能會用到一種叫做Grid search的方法,其實說白了就是窮舉。

一文了解臨床研究中的機器學習

訓練組和驗證組:

在大多數時候,模型的構建都會取80%的樣本進行訓練,雖然並沒有什麼研究證據支援需要取80%,但多數學者還是會經驗性地把訓練組設為80%,而剩下的20%作為驗證組來驗證訓練組訓練出來的模型。雖然這樣做並不能完全滿足模型外部性的要求。

樣本的平衡:

對於分類的機器學習演算法來說,理想情況下訓練樣本中不同類別的樣本最好是均等的,雖然現實生活中需要我們預測的分類都會有一種分類佔絕大多數(比如惡性腫瘤預後模型可能死亡佔多數),但為了在模型評估和驗證中能夠更容易判斷模型的效率,通常需要保持不同類別均等。

一些常用的調整樣本平衡性方法包括SMOTE(synthetic minority oversampling technique,按一定規律給佔少數的樣本新增人造樣本)或者undersampling(把佔多數的樣本抽走一部分)。需要注意的是,平衡只針對訓練組,而驗證組為了反映實際情況,其實是沒有必要進行平衡的。

資料的標準化:

對於連續變數型別的資料,進行標準化是很重要的。要注意標準化需要在對訓練組和驗證組樣本分類後再進行,這是因為每個樣本的標準化是會受到所有其他樣本影響的,因此為了驗證組不受訓練組的影響,一定要在分組之後再進行標準化。常用的標準化方式是把樣本和均值的差除以標準差,這裡又要注意,驗證組標準化時要使用訓練組的均值和標準差進行計算(以後實際預測時也要用這兩個值標準化在預測),這是為了保證模型的準確性。

模型評估:

評估指標比較傳統,包括mean squared error, root mean squared error, 準確性,AUCROC, F1統計量等。

參考文獻:

Wiemken, Timothy L。, and Robert R。 Kelley。 “Machine learning in epidemiology and health outcomes research。”Annual Review of Public Health41 (2020): 21-36。

Qian, Bin, et al。 “Orchestrating Development Lifecycle of Machine Learning Based IoT Applications: A Survey。”arXiv preprint arXiv:1910。05433(2019)。

http://www。

nlpca。org/pca_principal

_component_analysis。html

https://www。

datanami。com/2019/04/01

/you-cant-do-machine-learning-inside-a-database-can-you/

標簽: 樣本  模型  特徵  訓練組  機器