內(nèi)容來自:“小白學(xué)統(tǒng)計(jì)”微信公眾號,感謝作者授權(quán)

醫(yī)學(xué)預(yù)測模型可用的方法非常多,可謂眼花繚亂,隨口就能說得上來的都有十幾種,能用的至少幾十種。 那么醫(yī)學(xué)研究中的預(yù)測模型開發(fā)常用的方法到底有哪些,如何選擇? 本文結(jié)合自己的經(jīng)驗(yàn)說一下。 不當(dāng)之處,請批評。

我個(gè)人認(rèn)為,可以將醫(yī)學(xué)預(yù)測模型方法分為三大類:

(1)回歸模型:這里既可以是傳統(tǒng)的回歸模型,如logistic回歸、線性回歸、Poisson回歸;也可以是考慮收縮技術(shù)( 或者叫做懲罰方法)的模型,如Lasso回歸、彈性網(wǎng)絡(luò)等。

(2)非參數(shù)模型: 如光滑樣條、廣義可加模型等。

(3)機(jī)器學(xué)習(xí)和深度學(xué)習(xí)技術(shù): 如神經(jīng)網(wǎng)絡(luò)、分類樹、支持向量機(jī)、隨機(jī)森林、卷積神經(jīng)網(wǎng)絡(luò)等。

這種分類當(dāng)然仁者見仁。 比如,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)能不能歸到一類,每個(gè)人有自己的不同觀點(diǎn),因?yàn)閼?yīng)用場景不大一樣。 深度學(xué)習(xí)主要用于一些文本、圖像等非數(shù)字的數(shù)據(jù)。

當(dāng)然,無論如何,大家不用太關(guān)心這個(gè)分類。因?yàn)椴粫腥朔堑脝柲悖氵@個(gè)方法屬于哪一類?大家需要更關(guān)心的是:我該選擇哪種方法。

很多臨床醫(yī)生以及很多公衛(wèi)的學(xué)生現(xiàn)在都喜歡用機(jī)器學(xué)習(xí)方法,覺得聽起來高大上。 這種心理無非就是覺得: 我用個(gè)大家都知道的回歸分析,太土了,顯不出我的水平。 我用個(gè)新穎的機(jī)器學(xué)習(xí)方法,大家覺得我水平高。

讓我們仔細(xì)分析一下:首先,如果你是寫文章或申課題,評審的都是專業(yè)的統(tǒng)計(jì)學(xué)家,專業(yè)的統(tǒng)計(jì)學(xué)家絕對不會因?yàn)槟阌蒙窠?jīng)網(wǎng)絡(luò)而不用logistic回歸,就覺得你水平更高。在專業(yè)統(tǒng)計(jì)學(xué)家眼中,不會覺得一種方法比另一種方法更好,每種方法都有自己的優(yōu)缺點(diǎn)。當(dāng)然,也許有時(shí)候恰好評審專家中沒有統(tǒng)計(jì)學(xué)家,那另當(dāng)別論。 其次,如果你是畢業(yè)論文,給你評審的專家什么方法沒見過?強(qiáng)行為了用新方法而用,只會讓評審專家覺得你太幼稚。

所以,無論在什么情形,沒必要去追求所謂的高大上方法

那實(shí)際中如何選擇呢? 先用一張概念圖示意一下常見幾種方法的解釋度和靈活度(摘自James G,2021)。

打開網(wǎng)易新聞 查看精彩圖片

沒有任何一種方法是完美的?;貧w方法解釋度很好,但靈活度不足;機(jī)器學(xué)習(xí)方法很靈活,但解釋能力有限。

所以,其實(shí)答案取決于你自己。 你想側(cè)重解釋度還是側(cè)重模型的擬合效果?如果你的目的只是為了建一個(gè)預(yù)測效果很好的模型,至于解釋能力如何并不關(guān)心,這種情況下,可以考慮用機(jī)器學(xué)習(xí)(當(dāng)然,我說是可以考慮,并不意味著一定可以用,實(shí)際能不能用還取決于其它條件,比如樣本量夠不夠);如果你想開發(fā)一個(gè)在臨床中應(yīng)用的,讓臨床大夫也能很好理解的預(yù)測模型,那解釋度就很重要,這時(shí)候建議首選考慮回歸模型。

事實(shí)上,機(jī)器學(xué)習(xí)為什么更加靈活,很大一部分原因是它比回歸模型可以更好地處理非線性。回歸模型(包括lasso)無法自動處理非線性問題,而在醫(yī)學(xué)數(shù)據(jù)中,非線性并不少見。如果存在非線性而你又直接用回歸模型,必然效果不好。但是這里還有一個(gè)契機(jī)是:如果你有一定的分析經(jīng)驗(yàn),依然可以通過各種方法在回歸模型中解決非線性問題。

比如下面這個(gè)例子,這是同一個(gè)連續(xù)變量的預(yù)測效果。 左圖把變量直接納入logistic回歸,顯示AUC只有0.6,而兩層的神經(jīng)網(wǎng)絡(luò)則AUC達(dá)到了0.86。 很多人就會說,果然神經(jīng)網(wǎng)絡(luò)優(yōu)于logistic回歸! 事實(shí)上,不少論文就是這么做的,也是這么得出結(jié)論的。

打開網(wǎng)易新聞 查看精彩圖片

然而再看右圖,我仍然使用logistic回歸,但是把該變量做了一個(gè)變換,同樣還是這個(gè)變量,AUC也達(dá)到了0.86。 現(xiàn)在還能說logistic回歸不如神經(jīng)網(wǎng)絡(luò)嗎?

所以建議大家:

如果你用的就是常規(guī)的臨床數(shù)值數(shù)據(jù)(而不是文本或圖像等),如果預(yù)測變量與結(jié)局之間沒有復(fù)雜的非線性關(guān)系,采用回歸模型即可; 如果發(fā)現(xiàn)非線性關(guān)系,但是可以變換成線性的,可以考慮簡單的非線性回歸模型; 這類方法的解釋度最高。

如果存在較為復(fù)雜非線性關(guān)系,可以考慮樣條回歸、光滑樣條等技術(shù),這類方法的解釋度略優(yōu)于神經(jīng)網(wǎng)絡(luò)。 但其實(shí)這類方法也不會把關(guān)系處理的太復(fù)雜,大多數(shù)還是相對簡單的非線性關(guān)系。 因?yàn)槿绻且愕煤軓?fù)雜,解釋性也就下降了,就不如直接用機(jī)器學(xué)習(xí)了。

只有那些真正關(guān)系很復(fù)雜或搞不清到底什么關(guān)系,可以考慮用機(jī)器學(xué)習(xí)方法。機(jī)器學(xué)習(xí)并不是萬能的,至少解釋度就差了好多。盡管目前也有一些技術(shù)適當(dāng)提高了解釋度(如SHAP),但是相比之下,畢竟還是不如回歸模型。

如果你是一名臨床醫(yī)生,我相信你開發(fā)一個(gè)預(yù)測模型的目的是為了應(yīng)用,這種情況下,用回歸模型會更合理,除非數(shù)據(jù)實(shí)在太復(fù)雜。 但根據(jù)我十多年超過千次的數(shù)據(jù)分析經(jīng)驗(yàn),通常數(shù)據(jù)沒有那么復(fù)雜。

如果你是一名公共衛(wèi)生、醫(yī)學(xué)統(tǒng)計(jì)專業(yè)的學(xué)生,可能是為了寫一個(gè)預(yù)測模型開發(fā)的畢業(yè)論文,所以你想用一些新的方法。但我仍然建議首選回歸模型。原因在于:如果你用機(jī)器學(xué)習(xí)的方法,你或許在分析過程中學(xué)到了如何用R、python等實(shí)現(xiàn),但你也許只學(xué)到了這些。除非你非常用心鉆研其背后原理(據(jù)我了解這種人不多),否則其實(shí)你仍然只是學(xué)到了皮毛。還不如采用回歸模型,具體學(xué)習(xí)分析過程中遇到的各種問題,如何解決的方法,也許會加深你對模型的理解。永遠(yuǎn)不要覺得哪種方法太簡單了你不屑于用,沒有一種方法是真正簡單的,取決于你如何理解“學(xué)會”這兩個(gè)字。能用軟件出個(gè)結(jié)果就算是“學(xué)會”了這種方法了嗎?

當(dāng)然,雖然我的建議很明確,但仍需要根據(jù)具體數(shù)據(jù)、具體場景、以及你自己的研究目的來定。只是希望大家在醫(yī)學(xué)預(yù)測模型開發(fā)應(yīng)用這一領(lǐng)域,不要走偏。如果一個(gè)醫(yī)學(xué)預(yù)測模型最終目的不是為了臨床應(yīng)用而生,那你開發(fā)的目的到底是什么?這個(gè)問題雖然簡單,但是希望大家在模型開發(fā)前,都捫心自問一下,我們做這個(gè)預(yù)測模型是為了什么?是不是必須要做?

教程,30多篇R教程,以及更多科研教程!