预测模型怎么验证?该做内部验证还是外部验证?一文在手,模型验证不用愁!

您所在的位置:网站首页 模型开发是做什么的呢 预测模型怎么验证?该做内部验证还是外部验证?一文在手,模型验证不用愁!

预测模型怎么验证?该做内部验证还是外部验证?一文在手,模型验证不用愁!

2024-07-11 18:16| 来源: 网络整理| 查看: 265

预测模型应该是我们在生信文章中见得最多的模型,一般肿瘤中做预后模型,非肿瘤疾病中做诊断模型,模型构建完就要进行模型评价和验证,告诉别人自己的模型是可靠的,性能优越的~

小云前面分享了2期【预测模型】相关内容,分别是模型评价和模型对比,,第3期就来讲讲模型验证~ ~

“模型验证”是模型开发过程中一个必不可少的步骤,主要包括内部验证和外部验证。

看到这里可能小伙伴们就会发问了:什么是内部验证和外部验证呀?有啥区别?该怎么用?

不急不急,这就是布小谷今天要分享的内容。因为有很多人会混淆这两种验证队列(小云刚开始解读生信文章时,也混用了这2个名称,幸好被领导纠正了过来),所以小云把自己掉过的坑,摸索出来的经验也分享给小伙伴们,争取让朋友们在生信道路上少踩些坑

下面就跟着小云一起来学习模型验证吧~ ~

p 先来明确几个概念

l 模型开发队列(Derivation cohort)指的是用于模型开发的人群,此处的模型开发是广义的上概念,是指建立模型的全过程,包括变量转换、变量筛选、模型拟合以及内部验证。

l 模型验证队列(Validation cohort),与上面的开发队列相对应,通常特指独立于模型开发队列的外部验证队列。

l 注意:模型验证使用开发队列还是验证队列决定了模型验证的性质是属于内部验证还是外部验证。开发队列和验证队列与训练集(Training set)和验证集(Validation set)的概念不同,不可混淆。模型开发队列和验证队列是研究设计层面的概念,而训练集和验证集是模型开发和评估过程中的技术术语:训练集用于模型拟合,验证集用于评估训练集拟合的模型的表现。

p 内部验证

内部验证是基于模型开发队列数据进行的验证,通常内部验证也是作为模型开发的一部分,其目的是检验模型开发过程的可重复性(Reproducibility),并且防止模型过度拟合导致高估模型的性能。

注意:内部验证是针对整个建模过程中的所有步骤,包括变量转换、变量筛选及模型选择,甚至需要包括对数据缺失值的插补,而不是仅针对最终模型进行验证。而且,内部验证不等于直接在模型开发队列数据中评价模型表现,内部验证的实施通常需借助数据分割或重抽样方法来实现。

内部验证一般使用以下几种方法进行:

n 随机拆分验证:最初的做法是将模型开发队列随机分为训练集和验证集两部分,通常两者比例为1:1、2:1、3:1、7:3等。采用该方法将数据分为两部分进行“内部验证”,由于只有一部分的数据用于构建模型,因此模型相对不稳定,并且样本量较小的研究通常不适合这种方法。(ps:很多生信文章都是用着这个方法来拆分开发队列进行内部验证,不过它并不适用所有数据集,小伙伴们自己分析的时候也要根据所选数据集样本量来选方法哦)

n 交叉验证:又称K折检验,是随机拆分验证的改进。以K=10的10折验证为例:将开发队列随机分为10份,每次利用其中9份作为训练集,剩余1份作为验证集,并重复这一过程。但交叉验证对于模型开发数据的使用效率不佳,所以逐渐被Bootstrap方法取代。

n Bootstrap方法:是通过在模型开发队列中进行有放回抽样,构造一个相同样本量大小的Bootstrap重抽样样本,并将此样本作为训练集,将模型开发队列作为验证集评价模型性能重复此过程n次,就可得到模型在内部验证中的表现。这个方法得到的模型比上面两种方法有更高的稳定性。

“内部-外部”交叉验证:类似于交叉验证,但是在拆分数据时不是随机分组,而是根据数据来源分组,这种方法多用于多中心数据开发队列。其优势是在模型开发过程中利用了全部开发队列数据(因此仍属于内部验证),同时在内部验证中通过非随机拆分,实现了外部验证的效果

p 外部验证

外部验证是利用模型开发中未使用过的数据来评估模型在新数据中的表现。相对于内部验证,外部验证更关注的是模型的可移植性(Transportability)和可泛化性(Generalizability),也即模型在与模型开发队列不同时间段,不同区域或不同人群中的表现是否与模型开发时一致。为了提高研究成果的质量并且使预测模型更有公信力,在模型开发和内部验证完成后,模型开发者通常还会对自己开发的模型进行外部验证,并且将外部验证结果与模型开发过程在研究论文中一起报告。另外,利用现有数据对他人已发表的模型进行外部验证,也可以作为单独的模型外部验证类研究发表。

根据模型验证队列数据来源的不同,外部验证可分为以下几类:

n 时段验证(Temporal validation),指的是利用与模型开发队列来源相同,但是时间段不同的数据对模型表现进行验证。最常见的是在模型开发过程中继续收集数据,在模型开发完成后,利用新收集的数据对模型进行外部时段验证。

n 空间验证(Geographical validation),指的是对模型在其他中心甚至其他国家的数据中的表现进行验证,所以验证队列可能采用与开发队列不同的纳入/排除标准或不同的预测因子和结局变量的测量方法。空间验证比时段验证能更好的检验模型的可转移性和泛化性。(ps:我们在生信文章中见得比较多的基本属于空间验证,利用其它公共数据集或者自有队列进行外部验证)

n 领域验证(Domain validation),是指在不同的临床场景中对模型进行验证,例如模型开发时是基于医院的患者数据,在领域验证时可以利用社区居民数据检验模型在不同人群中的表现。

小云之声

看完小云的介绍,朋友们分清楚什么是内部验证和外部验证了吗?如果对你有所帮助的话,请多多关注小云公众号哦!如果您的时间和精力有限或者缺乏相关经验,并且对生信分析和思路设计有所需要的话,“小云非常乐意为您提供如下服务:免费思路评估、付费生信分析和方案设计以及实验项目实施等,有意向的小伙伴欢迎咨询布小谷哦!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3