高效新冠检测中的分组测试技术解析

本文探讨了针对COVID-19检测的分组测试协议,通过信息理论优化测试策略,包括自适应与非自适应测试方法,使用进化策略和贪婪算法提高检测效率,适用于不同规模的检测场景。

高效新冠检测中的分组测试技术解析

在没有疫苗的情况下,控制COVID-19传播的重要措施是大规模检测。然而,检测试剂盒的有限供应意味着需要尽可能高效地进行检测。

最有效的检测协议是分组测试,即将多个受试者的检测样本混合在一起检测。如果检测完全可靠,那么一个组的阴性结果可以立即排除所有成员。巧妙的组别选择使该协议能够以比单独检测每个患者更少的测试次数锁定感染者。

分组测试是一个经过深入研究的问题,但COVID检测的特殊性——包括测试人群感染率相对较低、检测的假阳性率,以及单个组中可以合并的样本数量的实际限制——意味着现有理论指导的通用测试策略并非最优。

我与同事合著的一篇论文提出了几种不同情况下COVID检测的最优策略。该论文目前正在提交出版,但我们已经将其发布到arXiv,希望我们的想法能帮助推动COVID检测设计的进一步进展。

分组测试的关键在于,给定的测试样本会在几个不同的组中进行测试,每个组将其与不同的样本组合混合。通过交叉参考所有组测试的结果,可以高概率预测任何给定样本的正确结果。

在这方面,该问题完全重现了信息理论中经典的纠错码问题。纠错码中的每个奇偶校验位编码了多个消息位的信息,通过迭代交叉参考消息位和奇偶校验位,可以确定是否出现了错误。

因此,我们将决定如何合并测试样本的问题视为编码问题,将解释测试结果的问题视为解码问题,并使用信息理论中的信息增益概念来评估测试协议。

自适应测试

分组测试有两种类型:自适应和非自适应。在自适应设置中,测试(或测试组)按顺序进行,一轮测试的结果为下一轮的组选择提供信息。在非自适应测试中,组的选择没有任何关于组结果的先验信息。

在我们的论文中,我们考虑了涉及相对较少患者(少于30人)的自适应测试。我们还考虑了针对更大人数(例如数千人)的非自适应测试。在这两种设置中,利用信息理论的工具,我们考虑了关于感染概率的先验知识(某些患者的风险高于其他患者)以及测试的假阳性和假阴性率。

即使患者数量很少,考虑到测试结果的不确定性和先验感染概率的混合,计算测试组的最佳组成也是一个棘手复杂的问题。我们表明,在COVID-19背景下,进化策略提供了最佳组成的最佳近似。

使用进化策略时,测试组是随机组装的,并计算可能的信息增益(给定每个患者检测呈阳性的先验概率)。然后,部分组组成被随机改变并再次测试。导致更多信息增益的变体会被进一步探索;那些没有的则被放弃。

这个过程将产生最优组组成的最佳近似,但可能需要一段时间:进化策略多快能收敛到解决方案没有理论保证。作为在患者数量较少的自适应测试背景下的替代方案,我们还考虑了一种贪婪的组组成策略。

使用贪婪策略,我们首先组装那个本身能最大化一轮测试信息增益的组。然后我们选择在下一轮中最大化信息增益的组,依此类推。在我们的论文中,我们表明这种方法很可能会接近理想组组成的近似,并且比进化策略提供更严格的收敛速率保证。

非自适应测试

对于大规模的非自适应测试,常规方法是使用布隆过滤器池。布隆过滤器是一种设计用于在流式、在线上下文中跟踪通过网络传输的数据的机制。

布隆过滤器使用几个不同的哈希函数将其看到的每个数据项哈希到固定大小数组中的几个不同位置。之后,如果与给定数据项对应的任何位置为空,过滤器可以保证该数据项未被看到。然而,假阳性是可能的。

分组测试借鉴了这种设计,使用多个哈希函数将单个患者的样本分配到多个位置,并将哈希到相同位置的样本分组。但无论哈希函数多好,跨组的分布可能不完全均匀。如果组平均每个有20名成员,有些可能有18名,其他可能有22名,等等。这影响了后续感染预测的准确性。

布隆过滤器设计假设在流式网络设置中看到的数据项数量是不可预测且无限制的。但在分组测试的背景下,我们确切地知道我们正在跨组分配多少患者样本。因此我们可以精确控制分配给每个组的样本数量。

如果我们没有感染率的先验概率,均匀分布是最优的。如果我们有先验概率,那么我们可以相应地分配样本:最大化信息增益可能需要我们减少包含高概率样本的组的大小,并增加包含低概率样本的组的大小。

类似地,因为布隆过滤器是为流式网络设置设计的,确定一个项目是否被看到的算法必须非常高效;权衡之处在于它不会最小化假阳性的风险。

在分组测试的背景下,我们可以承受使用更复杂但更准确的解码算法。在我们的论文中,我们展示了一种常用于解码纠错码的消息传递算法,比标准的布隆过滤器解码算法有效得多。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计