cfc好多的高知, 出道题测试一下

1, 既然是题目,就应该有确定的答案,不能模棱两块可,似是而非。
2, 所谓应用题虽然来自某一实践,但已经抽象为清晰的数学模型。和实践没有关系了。所谓检测可以是任何方式。
3, 即使是练习题,结论也要合情合理。病人来做检测,完了你告诉他你得病的几率是百分之50,这不是扯淡吗。
4, 能记住公式不一定是好事。因为如果定义和适用条件搞不清楚反而误事。
5, 学过不等于学懂了。
6, 对待陌生人的态度最好是那老虎,而不是那黔驴。
7, 不是你上面列出的任何一种人,但是学过概率论与数理统计,教过统计物理,不知道能不能钻研这个题目。
8, 你公式里分母的意义是随机的找一个人来测试,结果是阳性的概率。分子是误警率为零时随机检测阳性的概率。这两个概率之比就是阳性结果者确实是感染者的概率吗?

这道问题是典型的条件概率问题,条件概率的结果通常是反直觉的。条件概率体现的是样本的测试误差。55%看起来很荒谬,但是这个结果却是正确的,为什么呢,我稍微解释一下。

为了计算方便,我们先假定渥太华有1万人口。

首先5%的人是新冠病人,这个条件很重要,为什么?因为这说明不管你如何测试,真正患病的人只是1万的5%,也就是5百人,这是一个事实,不会因为你的测试方法变化而变化。

那么问题来了,如果渥太华所有的人都去测试新冠,发现测出来有1千人是阳性,那这1千里面肯定至少有500人不是新冠患者,为啥?因为就算患新冠的人百分之百被测试出来,那也才500人。

所以才有了反直觉的结果:即使你被测试出来了是阳性,你也有可能有50%左右的概率不是新冠。

那么这个概率该怎么计算呢?
首先我们计算一下一共有多少人被测试为阳性。
真实患新冠的病人有94%的 概率被测试出来患阳性,那么就是500*0.94 = 470人,这470人是被测试来阳性而且实际也真的患了新冠。
没有患新冠的人有4%的概率被误诊,也即是测出来假阳性, 那么就是9500 * 0.04 = 380 人, 这380人是被测试出来阳性,但是实际并没有患病。

所以,总共测试出来是新冠阳性的人的数目是470+380=850,但是实际只有470人是真的是阳性。

这850的人虽然被测试出来是阳性, 但是因为实际只有470人真是患病,所以对这些人来说,即使被测出来了阳性,真正患病的概率也才470/850, 约为55.3%。

类似的,你也可以算出来,如果你被测出来没事,那么确实就是大概率没事,因为只有30人个实际患新冠但是被测出来没事,9120人是真没事的,即是如果你被测出来没事,那么真的没事的概率就是9120/(9120+30), 约为99.7%
 
最后编辑:
PPV、NPV 和 sensitivity、specificity 的转换公式是基于条件概率推导出来的,其实就是 Bayes' Theorem 具体到 PPV as a function of prevalence & sensitivity, specificity 的表述,如果知道怎么推导就不必强记。

不论学什么专业的,只要能够充分理解什么是 条件概率 就可以正确回答问题,如果了解一点 epidemiology 或者 biostatistics 中 diagnostic accuracy 的背景就比较占便宜 (虽然学这两个专业的人或许更熟悉的是 comparative effectiveness / safety of treatments,或者 prognosis / prediction,每个地方的课程和研究侧重不一样)。的确也有人凭直觉算对了 (直觉和条件概率暗合)。

我又不是出题者,我只能猜测他出题的动机是在说,“即便 sensitivity, specificity 很高,只要 prevalence 偏低,PPV 仍然可能不太高 (违反直觉)”。我回答完题目,顺便告诉看帖的人,在有多次检测的情况下,这个说法并不一定对。

从条件概率的定义出发,把我缩略没有全写出来的内容推一遍,就能回答 #8.
PPV = P(infected | test positive) = (# infected AND tested positive)/(# tested positive) = TP/(TP+FP)
= ( P(test positive | infected) * prevalence * Total )/ ( P(test positive | infected) * prevalence * Total + P(test positive | not infected)*(1-prevalence)*Total )
用 1-specificity 取代 P(test positive | not infected),分子分母同时去掉 Total
= sensitivity * prevalence / ( sensitivity * prevalence + (1-specificity) * (1-prevalence))

1, 既然是题目,就应该有确定的答案,不能模棱两块可,似是而非。
2, 所谓应用题虽然来自某一实践,但已经抽象为清晰的数学模型。和实践没有关系了。所谓检测可以是任何方式。
3, 即使是练习题,结论也要合情合理。病人来做检测,完了你告诉他你得病的几率是百分之50,这不是扯淡吗。
4, 能记住公式不一定是好事。因为如果定义和适用条件搞不清楚反而误事。
5, 学过不等于学懂了。
6, 对待陌生人的态度最好是那老虎,而不是那黔驴。
7, 不是你上面列出的任何一种人,但是学过概率论与数理统计,教过统计物理,不知道能不能钻研这个题目。
8, 你公式里分母的意义是随机的找一个人来测试,结果是阳性的概率。分子是误警率为零时随机检测阳性的概率。这两个概率之比就是阳性结果者确实是感染者的概率吗?
 
两次检测并不是独立事件,因此给出的情形里的参数并不足以算具体概率。
不过,交集 和 并集 上的概率有不等式。假定所有人都测了两次,两次检测间没有状态变化,以下给出 sensitivity 和 specificity 的不等式:
sensitivity for at least one test positive = P( at least one test positive | infected) >= sensitivity of a single test
specificity for both tests negative = P( both tests negative | not infected) <= specificity of a single test
PPV 的不等式 P(infected | at least one test positive) >= PPV of a single test 不总成立,需要额外条件(相反的不等式也需要额外条件)

sensitivity for both tests positive = P( both tests positive | infected) <= sensitivity of a single test
specificity for at least one test negative = P( at least one test negative | not infected) >= specificity of a single test

按照楼主假设的数据,如果检测两次,结果都是阳性,那么被测者确实是阳性的概率是多少?如果两次结果为阴阳各一次,那么被测者确实是阳性的概率又是多少?
 
最后编辑:
关键在于健康的人有 4% 的概率被误测为阳性,所以被测为阳性的人中只有一部分是真的阳性。如果健康的人被误测为阳性的概率为零,那么被测为阳性的人中就 100% 是真阳性了。另外,虽然健康的人被误测为阳性的概率 4% 很低,但健康人的群体比真阳性群体大得多,结果被测为阳性的人中来自这两个群体的比例不相上下,以至于几乎一半对一半。
 
两次检测并不是独立事件,因此给出的情形里的参数并不足以算具体概率。
不过,交集 和 并集 上的概率有不等式。假定所有人都测了两次,两次检测间没有状态变化,以下给出 sensitivity 和 specificity 的不等式:
sensitivity for at least one test positive = P( at least one test positive | infected) >= sensitivity of a single test
specificity for both tests negative = P( both tests negative | not infected) <= specificity of a single test

sensitivity for both tests positive = P( both tests positive | infected) <= sensitivity of a single test
specificity for at least one test negative = P( at least one test negative | not infected) >= specificity of a single test
很多情况下可以假设两次检测结果是独立的,譬如,两次检测由不同的人员操作,或使用了不同批次的工具等等。
 
只要是同一个接受检测的人被取样测两次,假定两次取样间隔比较短,就一定不是概率论意义上的独立事件。
Definition of conditional independence: P(T1+ AND T2+ | D) = P(T1+ | D) * P(T2+ | D)
或许特定的慢性疾病,outcome measure 隔一段时间就恢复到一定值,同一个人的取样间隔足够长,有时才认为是独立事件概率相乘。

很多情况下可以假设两次检测结果是独立的,譬如,两次检测由不同的人员操作,或使用了不同批次的工具等等。
 
最后编辑:
PPV、NPV 和 sensitivity、specificity 的转换公式是基于条件概率推导出来的,其实就是 Bayes' Theorem 具体到 PPV as a function of prevalence & sensitivity, specificity 的表述,如果知道怎么推导就不必强记。

不论学什么专业的,只要能够充分理解什么是 条件概率 就可以正确回答问题,如果了解一点 epidemiology 或者 biostatistics 中 diagnostic accuracy 的背景就比较占便宜 (虽然学这两个专业的人或许更熟悉的是 comparative effectiveness / safety of treatments,或者 prognosis / prediction,每个地方的课程和研究侧重不一样)。的确也有人凭直觉算对了 (直觉和条件概率暗合)。

我又不是出题者,我只能猜测他出题的动机是在说,“即便 sensitivity, specificity 很高,只要 prevalence 偏低,PPV 仍然可能不太高 (违反直觉)”。我回答完题目,顺便告诉看帖的人,在有多次检测的情况下,这个说法并不一定对。

从条件概率的定义出发,把我缩略没有全写出来的内容推一遍,就能回答 #8.
PPV = P(infected | test positive) = (# infected AND tested positive)/(# tested positive) = TP/(TP+FP)
= ( P(test positive | infected) * prevalence * Total )/ ( P(test positive | infected) * prevalence * Total + P(test positive | not infected)*(1-prevalence)*Total )
用 1-specificity 取代 P(test positive | not infected),分子分母同时去掉 Total
= sensitivity * prevalence / ( sensitivity * prevalence + (1-specificity) * (1-prevalence))
首先感谢你这么耐心的解释。其次,我同意假设把全部一万人检测一遍会有近一千人阳性。这一千人里某人是真正阳性的可能性大约50%。
问题是,某人去检测且结果为阳性和全面筛检出来的一群人是两码事。对他来说,那95%人口带来的误差和他无关。影响他检测结果的只有检测方法的准确率。
50%的不确定性我认为不是不符合直觉,而是违反事实。

抱歉假设(绝对无意冒犯),你如果去检测并且为阳性,你会认为自己50%的概率没事吗?
 
受试者是否阳性是一个客观事实,检测的目的是为了判断受试者是否阳性。检测结果之所以有时会出现错误,是因为测试过程中存在一些随机的因素。如果各次检测的过程中影响结果的随机因素互相关联,那就不是独立的。反之,如果各次检测的过程中影响结果的随机因素之间没有关联,那么各次检测的结果应该认为是独立的。只要各次检测的过程中影响结果的随机因素互相独立,即便两次检测的结果相同,它们还是独立的。这是我的理解。不一定对,仅供参考。
回到我原先的问题:假设每次检测结果是独立的,从概率论的角度,能不能算出如果两次检测结果都是阳性或一阴一阳,受试者是真阳性的概率是多少 ?
 
按照楼主假设的数据,如果检测两次,结果都是阳性,那么被测者确实是阳性的概率是多少?如果两次结果为阴阳各一次,那么被测者确实是阳性的概率又是多少?
两次测试都是阳性的话,真实阳性的概率=1-(1-55%)*(1-55%)=80%
 
1. 那 9000个人里面的 false negative 其实也是 infected. FN 在 sensitivity 的分母里面,也在 prevalence 里面,prevalence = (TP + FN)/Total
2. PPV=TP/(TP+FP) 此题中约等于 0.553 是由 prevalence 相当低、FP 不那么低造成的,sensitivity*prevalence 和 (1-specificity)*(1-prevalence) 太接近了。出题者故意构造的,利用了 PPV 和 sensitivity、specificity 的条件概率定义,取决于具体问题,总有一方是比较非直觉的。
3. PPV = probability of disease positive, conditioning on test positive,它是 prevalence 的一个函数。由于 sensitivity, specificity 在没有 spectrum bias 的前提下是独立于 prevalence 的,往往可以先估计好了 sensitivity 和 specificity 并假定它恒定,再画出一条 PPV 相对于 prevalence 的曲线。实际上如果不是把 population 定义为渥太华所有人,而是限定为出现了疑似的临床表征而按照公卫建议应当去接受的人的群体,prevalence 就比 0.05 高许多,结果也会是 FP 相对 TP 偏小、PPV 比较大。
4. No spectrum bias,也就是说 sensitivity=P(test positive given disease positive) 和 specificity=P(test negative given disease negative) 在不同 prevalence 的人群中恒定,这本身是一个 assumption。取决于具体问题,它未必总是成立的。这也是出题者的陷阱之一。

首先感谢你这么耐心的解释。其次,我同意假设把全部一万人检测一遍会有近一千人阳性。这一千人里某人是真正阳性的可能性大约50%。
问题是,某人去检测且结果为阳性和全面筛检出来的一群人是两码事。对他来说,那95%人口带来的误差和他无关。影响他检测结果的只有检测方法的准确率。
50%的不确定性我认为不是不符合直觉,而是违反事实。

抱歉假设(绝对无意冒犯),你如果去检测并且为阳性,你会认为自己50%的概率没事吗?
 
最后编辑:
Assumption of conditional independence is generally invalid for two tests taken from the same person.

两次测试都是阳性的话,真实阳性的概率=1-(1-55%)*(1-55%)=80%
 
我是这么看的。同一个人先后两次检查,均为阳性。这两件事情是相关的。也就是说, 第二次检查不是独立事件。 逻辑上

第一次检查,前提是5%得了新冠病毒, 所有得到阳性结果的人都是55%的概率真阳性。

第二次检查,前提就变了, 新的人群,不再是我太花群众,而是第一次阳性结果的人群,这个人群,55%的人得了新冠。

1.如果一个人被感染了,有94%的概率测试结果为阳性(证明他有病毒)
2.如果一个人没被感染,有96%的概率测试结果为阴性(证明他没有病毒)

大牛们根据新的前提,再算一遍,会得出两次都是阳性的,患病概率

PPV = P(infected | test positive) = sensitivity * prevalence / ( sensitivity * prevalence + (1-specificity) * (1-prevalence))
= 0.94*0.55/(0.94*0.55+0.04*0.45) = 96.64%

当然了前提是,这个两次都是正确操作的结果。
 
最后编辑:
如果规则是第一次已经检查出阳性才再做第二次、第一次阴性不给做第二次检测 (我命名为 triage-conditional combination,它不是在 AND/OR 的集合逻辑上定义概率,无法用33楼给出的 Boolean combination 概率不等式):
1. 即便第一次检测阴性,经常也会由于疑似表征不可忽视、或者为了排除/压低 false negative 而进行第2次、第3次采检,triage-conditional combination 属于不适用于新冠的过度简化;不可否认,假设所有人都采检两次也是过度简化 (但 Boolean combination 不等式成立)。
2. 把第二次检测的两个条件概率 sensitivity, specificity 仍定为 94% 和 96%,仍然构造了一个和第一次检测的 sensitivity, specificity 相等的前提。
一开始的题目算出 PPV = 55.3% 有一个隐藏的前提 no spectrum bias,也就是说 sensitivity=P(test positive conditioning on disease positive) 和 specificity=P(test negative conditioning on disease negative) 在不同 prevalence 的人群中恒定,不管是全体人、出现了疑似的临床表征的人、还是检测出一次阳性的人。这本身是一个 assumption。

建议大家不要再继续计算了

我是这么看的。同一个人先后两次检查,均为阳性。这两件事情是相关的。也就是说, 第二次检查不是独立事件。 逻辑上

第一次检查,前提是5%得了新冠病毒, 所有得到阳性结果的人都是55%的概率真阳性。

第二次检查,前提就变了, 新的人群,不再是我太花群众,而是第一次阳性结果的人群,这个人群,55%的人得了新冠。

1.如果一个人被感染了,有94%的概率测试结果为阳性(证明他有病毒)
2.如果一个人没被感染,有96%的概率测试结果为阴性(证明他没有病毒)

大牛们根据新的前提,再算一遍,会得出两次都是阳性的,患病概率
 
最后编辑:
我现在把新冠检测改为亲子鉴定。假设其它数据和假设不变。你估计是不是所有检测者都会疯掉?私生子继承的案子还有办法判吗?
 
检测人类核酸其实准确率很高。新冠的核酸检测的 false negative 偏高的问题,很大程度上不是 RT-PCR 的问题,而是从上呼吸道取样的问题(未必可以反应下呼吸道感染)。

我现在把新冠检测改为亲子鉴定。假设其它数据和假设不变。你估计是不是所有检测者都会疯掉?私生子继承的案子还有办法判吗?
 
后退
顶部
首页 论坛
消息
我的