小伙伴们好!最近有同学来咨询,说自己最近投稿的一篇文章,审稿人的意见是,需要补充Brier Score评分, 他顿时感觉有点懵,这是什么评分?该怎么分析呢?
实际上,从临床预测模型的角度上看,衡量模型好坏有三个非常重要的指标,分别是:区分度、校准度和临床适用度。
区分度通常采用的是受试者曲线下面积(ROC),或者是C-Index;关于ROC我们已经比较熟悉啦,想复习的朋友请点击:
校准度评价,通常采用的是HL检验以及校准曲线。这个我们之后会详细介绍。
在实际情况中,很多时候样本分布是不太均衡的。比如,癌症患者的人数与健康对照组的人数相比,有时候会出现患者人数很少、健康人群很多的情况。这个时候,只看校准度、或者区分度都不太客观,我们需要查看一个指标能够综合区分度和校准度的表现,这就是我们今天想要介绍的Briser Score。
Brier Score(BS)评分用于评价模型的总体表现,如果模型总体表现完美,BS评分接近于0,说明预测值和实际值就完全一致。
如果BS>0.25,说明预测值和实际值的差距较大,该模型的预测可能没有什么意义。
首先,我们需要加载R包,mclust。这个包加载的时候十分“酷炫”。
install.packages("mclust")library(mclust)

以二分类代码结果为例。class为实际的分类结果,probs为模型预测结果。在这里为了演示需求,我们随机生成一个matrix替代模型预测结果。
# two-class caseclass <- factor(c(1,1,1,2,2,1,1,2,1,1), levels = 1:2)probs <- matrix(c(0.91, 0.4, 0.56, 0.27, 0.37, 0.7, 0.97, 0.22, 0.68, 0.43, 0.09, 0.6, 0.44, 0.73, 0.63, 0.3, 0.03, 0.78, 0.32, 0.57), nrow = 10, ncol = 2)cbind(class, probs, map = map(probs))

怎么求BS分数呢?仅用一行代码!

注意!括号中首先是预测的分数,第二个参数是实际的结果。上面的例子中,BS评分为0.13,小于0.25,说明预测结果有效。
这就是简便、有效的BS评分。只要在模型结果中、论文中提到该分数,不仅会令结果更加可靠,同时也体现了对模型结果指标掌握全面。
这就是今天想分享的全部内容。如果觉得有帮助,别忘了分享给更多的小伙伴们,右下角“在看”点一下哦~
每天进步一点点,我们一起加油!