医学预测模型方法这么多,我该选择哪一个?

详情请点击下方:

随机对照研究如何进行数据分析?欢迎参加临床试验设计与数据分析培训班!!!


医学预测模型可用的方法非常多,可谓眼花缭乱,随口就能说得上来的都有十几种,能用的至少几十种。那么医学研究中的预测模型开发常用的方法到底有哪些,如何选择?本文结合自己的经验说一下。不当之处,请批评。

我个人认为,可以将医学预测模型方法分为三大类:

(1)回归模型:这里既可以是传统的回归模型,如logistic回归、线性回归、Poisson回归;也可以是考虑收缩技术(或者叫做惩罚方法)的模型,如Lasso回归、弹性网络等。

(2)非参数模型:如光滑样条、广义可加模型等。

(3)机器学习和深度学习技术:如神经网络、分类树、支持向量机、随机森林、卷积神经网络等。

这种分类当然仁者见仁。比如,机器学习和深度学习能不能归到一类,每个人有自己的不同观点,因为应用场景不大一样。深度学习主要用于一些文本、图像等非数字的数据。

当然,无论如何,大家不用太关心这个分类。因为不会有人非得问你,你这个方法属于哪一类?大家需要更关心的是:我该选择哪种方法。

很多临床医生以及很多公卫的学生现在都喜欢用机器学习方法,觉得听起来高大上。这种心理无非就是觉得:我用个大家都知道的回归分析,太土了,显不出我的水平。我用个新颖的机器学习方法,大家觉得我水平高。

让我们仔细分析一下:首先,如果你是写文章或申课题,评审的都是专业的统计学家,专业的统计学家绝对不会因为你用神经网络而不用logistic回归,就觉得你水平更高。在专业统计学家眼中,不会觉得一种方法比另一种方法更好,每种方法都有自己的优缺点。当然,也许有时候恰好评审专家中没有统计学家,那另当别论。其次,如果你是毕业论文,给你评审的专家什么方法没见过?强行为了用新方法而用,只会让评审专家觉得你太幼稚。

所以,无论在什么情形,没必要去追求所谓的高大上方法。

那实际中如何选择呢?先用一张概念图示意一下常见几种方法的解释度和灵活度(摘自James G,2021)。

8a4d2573b47cae76fd06df94aab22df7.png

没有任何一种方法是完美的。回归方法解释度很好,但灵活度不足;机器学习方法很灵活,但解释能力有限。

所以,其实答案取决于你自己。你想侧重解释度还是侧重模型的拟合效果?如果你的目的只是为了建一个预测效果很好的模型,至于解释能力如何并不关心,这种情况下,可以考虑用机器学习(当然,我说是可以考虑,并不意味着一定可以用,实际能不能用还取决于其它条件,比如样本量够不够);如果你想开发一个在临床中应用的,让临床大夫也能很好理解的预测模型,那解释度就很重要,这时候建议首选考虑回归模型。

事实上,机器学习为什么更加灵活,很大一部分原因是它比回归模型可以更好地处理非线性。回归模型(包括lasso)无法自动处理非线性问题,而在医学数据中,非线性并不少见。如果存在非线性而你又直接用回归模型,必然效果不好。但是这里还有一个契机是:如果你有一定的分析经验,依然可以通过各种方法在回归模型中解决非线性问题。

比如下面这个例子,这是同一个连续变量的预测效果。左图把变量直接纳入logistic回归,显示AUC只有0.6,而两层的神经网络则AUC达到了0.86。很多人就会说,果然神经网络优于logistic回归!事实上,不少论文就是这么做的,也是这么得出结论的。

f24210d85f6cfbb7441f7d03850a140f.png

然而再看右图,我仍然使用logistic回归,但是把该变量做了一个变换,同样还是这个变量,AUC也达到了0.86。现在还能说logistic回归不如神经网络吗?

所以建议大家:

如果你用的就是常规的临床数值数据(而不是文本或图像等),如果预测变量与结局之间没有复杂的非线性关系,采用回归模型即可;如果发现非线性关系,但是可以变换成线性的,可以考虑简单的非线性回归模型;这类方法的解释度最高。

如果存在较为复杂非线性关系,可以考虑样条回归、光滑样条等技术,这类方法的解释度略优于神经网络。但其实这类方法也不会把关系处理的太复杂,大多数还是相对简单的非线性关系。因为如果非要搞得很复杂,解释性也就下降了,就不如直接用机器学习了。

只有那些真正关系很复杂或搞不清到底什么关系,可以考虑用机器学习方法。机器学习并不是万能的,至少解释度就差了好多。尽管目前也有一些技术适当提高了解释度(如SHAP),但是相比之下,毕竟还是不如回归模型。

如果你是一名临床医生,我相信你开发一个预测模型的目的是为了应用,这种情况下,用回归模型会更合理,除非数据实在太复杂。但根据我十多年超过千次的数据分析经验,通常数据没有那么复杂。

如果你是一名公共卫生、医学统计专业的学生,可能是为了写一个预测模型开发的毕业论文,所以你想用一些新的方法。但我仍然建议首选回归模型。原因在于:如果你用机器学习的方法,你或许在分析过程中学到了如何用R、python等实现,但你也许只学到了这些。除非你非常用心钻研其背后原理(据我了解这种人不多),否则其实你仍然只是学到了皮毛。还不如采用回归模型,具体学习分析过程中遇到的各种问题,如何解决的方法,也许会加深你对模型的理解。永远不要觉得哪种方法太简单了你不屑于用,没有一种方法是真正简单的,取决于你如何理解“学会”这两个字。能用软件出个结果就算是“学会”了这种方法了吗?

当然,虽然我的建议很明确,但仍需要根据具体数据、具体场景、以及你自己的研究目的来定。只是希望大家在医学预测模型开发应用这一领域,不要走偏。如果一个医学预测模型最终目的不是为了临床应用而生,那你开发的目的到底是什么?这个问题虽然简单,但是希望大家在模型开发前,都扪心自问一下,我们做这个预测模型是为了什么?是不是必须要做?


详情请点击下方:

我们提供统计服务了!医院临床数据的统计服务与培训

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值