新型冠状病毒的暴发暴露出疫情防控信息辅助系统存在诸多问题,需要解决如关键数据防篡改、可溯源、区域不同层级的决策支持系统缺失、跨区域的多方协作存在壁垒以及病例诊断自动化程度不高等问题。
本文初步探讨将人工智能、支持隐私保护的安全计算、区块链等新兴技术引入到疫情防控信息辅助系统中。
本文探讨了采用现代密码学和区块链技术建立保证疫情信息安全性的溯源体系;提出分布式决策支持系统的设计;提出基于SGX技术解决联邦学习的隐私保护问题,并设计出分组架构缓解SGX的性能开销。
以上设计方案能够有助于实现疫情信息的安全性和可溯源性,同时还有望提高疫情防控信息辅助系统的自动化程度和决策效率。
版权归中华医学会所有。
未经授权,不得转载、摘编本刊文章,不得使用本刊的版式设计。
除非特别声明,本刊刊出的所有文章不代表中华医学会和本刊编委会的观点。
从2019年12月开始,新型冠状病毒肺炎(COVID-19)传染病在武汉传播。针对此疫情,国内外开展了系列的研究。然而,从传染病防控角度,现有防控信息辅助系统面对应急突发重大公共卫生事件时暴露出来一些亟需解决的问题,例如对传染源溯源困难、应急情况下区域不同层级的决策系统和决策支持系统缺失等。究其原因,精准、实时的数据预警模型和数据驱动决策机制的缺失是重要的因素[1]。因此,在抗击新型冠状肺炎等类似重大传染病的过程中,实现关键数据的积累,建立高效、敏捷、安全的防控信息辅助系统是十分必要的。此外,疫情暴发后,因为医疗资源有限,大量疑似病例不能得到及时诊断。而基于大量的病例数据(如全肺图像)并利用AI辅助诊断,可以一定程度上提高诊断效率和准确性。
然而,跨区域的疫情防控信息辅助系统需要集合各方信息,而如何确保这些信息真实可靠,不被恶意修改、泄漏、攻击关系到疫情信息的溯源,这对于建立可靠、高效的疫情防控系统非常重要。另外,不管是决策支持系统,还是AI模型辅助诊断,都需要依赖大量的数据来提高准确率。由于医疗服务的特殊性,使医疗数据内含有大量的公民个体的敏感信息,未能妥善处理会对患者隐私造成极大的侵害[2]。因此,数据隐私保护也是急需解决的问题。
本文旨在从应用大数据构建溯源体系、决策支持系统和AI辅助临床诊断等3个方面对重大疫情防控信息辅助系统面临的挑战进行讨论,并提出可行的解决方案。
针对新型冠状病毒等重大传染性疾病而言,跨区域的疫情信息传递是必不可少的,它是整个疫情监控与防范的基础。这些信息中往往包含大量隐私、疫情传染情况等信息,既要合理高效共享利用这些数据,又要防止敏感信息不被滥用和随意泄露。比如,当前疫情防控中就存在疫情相关人员个人信息遭到泄漏的情况[3]。因此,如何在疫情监控与防范的各个环节安全地传输数据是十分重要的问题。除了要保证数据跨区域传输的安全性,数据本身的可靠性也十分重要。一方面,需要能够追溯到每一条信息的源头,防止假冒信息的出现。另一方面,疫情相关关键上报数据不能被随意篡改,这些信息关系到决策层对疫情发展趋势的把握以及各项措施的制定,也关系到上报数据者和决策者的责任界定,必须保证这些关键数据上传的内容、时间和源头信息不能被篡改。
无论是等级响应,还是封城等举措,每一个对疫情防控的决策,不应只是依靠经验等主观判断,或是有限信息条件下的判断[1]。建立数据驱动决策支持机制,利用大数据模型可以用来对疫情进行分析,以辅助决策者进行决策,从而提高决策的科学性、精准性、高效性。根据国家卫健委发布的《新型冠状病毒感染的肺炎诊疗方案》,确诊病例需要病原学检查[4]。在临床诊断中,CT影像作为新冠肺炎临床诊断的重要依据。然而,在CT影像中,肺炎的特征容易和许多其他的良性异常相混淆。这些导致通过CT影像诊断肺炎时存在相当大的难度。AI在图像医疗影像识别上效果显著,例如,吴恩达等人的研究表明,其提出的一种神经网络结构CheXNet在识别胸透照片中肺炎等疾病上具有较高的准确率[5]。
无论是得到更加精准的决策支持结果,还是获取一个能达到临床应用所需精度的神经网络模型,都需要输入大量的具有代表性的数据。然而,单个医院、单个机构拥有的数据量是有限的,并受限于数据隐私保护条例及法规,这些数据不能直接共享,因而形成了一个个的"数据孤岛"。这导致决策支持系统不能获取大量的能反应全局的数据信息,人工智能技术在医学影像识别中无法获取足够的训练数据。鉴于数据广泛分布在医疗等机构之间,如何在保护数据隐私的条件下做到相互协作是一个需要解决的挑战。
溯源体系的主要痛点是信任问题,体现在数据传输的安全性和不可篡改性。新型冠状病毒这类传播范围广的疫情防控不单是一家医院、一个地区所能完成的,它需要多个医院、相关单位和组织间的通力合作,这必然会涉及到大量的信息交流、数据传输。保证信息传递各个环节数据传输的安全性是其基础。对于不可篡改性,可以将追踪的信息上链,利用区块链本身具有数据溯源、不可篡改的特点可以解决上述信任问题。
在区域性防控(Regional Control and Prevention, RCP)信息辅助系统的基础上,典型的跨区域疫情防控系统主要分布在管理中心、专科医院、综合医院等不同单位和组织。这其中涉及到大量的信息沟通数据传输,其中不乏一些敏感信息。除了要保证传输过程的安全性,还要验证信息发布者身份的真实性。
现代密码学对于疫情防控中涉及到的数据传输安全问题有很好的解决方案。公钥密钥不仅可以实现数据加密传输,同时也可以用于验证信息发布者的身份。公钥用于加密,只有私钥可以解密公钥加密的内容[6]。因此,在保证私钥安全的前提下,公钥可以公开流传。任何人想要给自己发送加密数据的时,只需要获得其公钥即可。此外,公钥密码学也可以用于数字签名。数字签名的目的是对消息进行签名,防止消息被篡改和进行身份认证[6]。整个加解密与签名验证过程如图1所示。
区块链技术具有数据溯源和不可篡改的特性,可以满足区域性防控信息辅助系统中的相关需求。区块链类似于一个共享的、容错的分布式数据库。在实现上,它是由多个区块链接而成,每一个区块包含了前一个区块的哈希、相应时间戳以及交易信息[7]。区块链数据仅可通过共识算法以块的形式增加,不可修改或删除,以防止篡改。所有的交易数据都会被双方签名,以防止抵赖。这样的设计使得区块内容具有难以篡改的特性。总之,区块链的安全性包含3层保障。首先,每一个区块都包含上一个区块的哈希,这样一来,任何对区块的修改都会造成链的断裂[8]。同时,区块链中的数据存储在一个分布式网络中,数据的可信度,可以通过各个节点之间进行交叉验证。最后,工作量证明(Proof of Work,POW)和股权证明(Proof of Stake,POS)这类分布式网络中共识算法,为区块链的安全性达成了第3层保证[9]。
疫情防控中的每次关键信息传输都可以当作一次交易记录,每一个信息传输参与者(比如医院、管理中心)都可以当作区块链中的一个账号(图2)。将每一次信息传输都记录在区块链中,这样一方面可保障所有信息不被篡改,同时可以精确追溯到每一条信息的发布者。
基于单个机构的决策支持系统,是由本地数据库、方法库、模型库以及用户接口组成,并对某一特定目标进行决策[10,11]。然而在大规模决策活动的场景下已经不可能或不便于用集中方式进行。因为这些活动涉及到许多承担不同责任的决策人和决策机构,并且用于决策过程所必需的数据库资源或者起决定性作用的决策因素往往比较有限,并分散在较为广泛的空间范围。这就导致了因为单个机构疫情数据的有限,其决策具有一定的局限性。为了更科学准确地把控全局的疫情,需要建立跨区域多机构的决策支持系统。然而,将多个机构的数据以集中化的方式处理可能造成隐私泄露。因此,在此限制条件下,如何高效地利用多个机构的疫情数据产生更为有效的全局决策是一个挑战。
分布式决策支持系统包含一个可信第三方作为决策中心节点,以及多个不同参与机构[12,13],如图3所示。各机构根据本地数据库建立私有的决策支持系统,并将决策结果上传至中心节点,中心节点获得多个医疗机构的决策信息后,综合得到全局最优决策结果。相比于传统的决策支持系统需要将各方数据集中来构建数据中心,分布式决策支持系统使得各个机构的数据仍保留在本地,无需上传原始数据,中心节点只将跨机构的决策结果进行汇总,从而保证隐私数据不被泄露。例如,医院内部通过私有的决策支持系统得到被感染者的时间和空间的分布图,中心节点负责汇总所有的时间和空间分布图,根据汇总的所有感染者的分布图,可以快速有效地将新冠病毒病例的传染来源加以确定。进一步地通过分析图数据库中的高频感染地理位置等特征,可以判断新冠病毒是否存在"人传人"的情况,以及给出传染高危场所,更早的阻隔病毒传播。由此针对此类疫情能快速应急发现已知传染病的流行势头,同时有机会对新发流行性疾病在大规模暴发前给出预警,及时做出防疫决策。
与传统的数据集中化训练不同,联邦学习可以让每个医疗机构在区域性防控信息辅助系统的基础上,在本地利用已有的数据进行模型训练,然后将模型上传至中心服务器,服务器对多个模型进行聚合[14]。这个过程通过共享模型的方式避免了直接共享敏感的临床数据。假设具有相同数据结构的N家医院共同构建一个深度神经网络模型用于帮助分析新型冠状病毒的全肺图像,服务器负责维护全局的深度神经网络模型。如图4所示,首先每个参与的医院将获得一个神经网络模型的副本,基于此模型分别在本地训练模型,并发送到服务器。这个过程只发送训练完成的模型,而不会像以往的方式发送肺部影像图数据。然后,服务器将根据各地上传的模型对全局模型进行更新,而无需了解有关任何医疗机构的信息。随后,服务器将更新后的模型发回给参与的医疗机构,以便它们能够继续进行本地训练。
虽然联邦学习可以在隐私数据保护方面提供高水平的安全性,但它仍然存在安全漏洞,例如通过模型可以恢复训练数据[15]。可信执行环境提供了一个受保护的区域,其中的数据、代码对不可信区域是不可见的,因此可以用来保证模型对不可信区域(例如,服务器)不可见,以防止恶意用户通过模型恢复训练数据。另外,可信执行环境可以生成验证其自身身份的报告,验证其内部运行程序和数据没有被恶意篡改。在这个系统中,可以采用了Software Guard Extensions(SGX)作为可信执行环境,由于每个SGX节点的最大内存限制为128 MB(应用程序可用内存约90M),因此采用分组的方式来满足SGX的内存限制(图5)。
我们在阿里云上构建了一个支持联邦学习框架的测试平台,该框架具有1个服务器和200个客户端节点,用于SGX的性能评估。主要配置如表1。我们采用一种称为LeNet-5[16]的通用卷积神经网络作训练模型来进行模拟。
配置 | 服务器 | 客户端 |
---|---|---|
CPU | Intel Xeon(Cascade Lake) Platinum 8269CY | |
操作系统 | Ubuntu 18.04 64-bit | |
内存 | 24GiB | 4GiB |
磁盘 | 40GiB | 40GiB |
我们统计了在不同分组大小的情况下,需要在SGX内进行计算的数据量以及运行时间。当分组大小小于20时,SGX内的计算数据量小于100M,随着小组大小增加,SGX内计算数据量相应的增加,计算时间也呈线性增加(图6)。当分组大小大于20时,我们可以发现SGX内的计算时间增长率变大,运行时间增长剧烈,这是因为SGX内的计算数据总和超过了SGX可用应用内存限制,当超过该内存限制时,将导致显著的内存换页开销。
因此,通过联邦学习框架避免了各机构间的敏感临床数据的直接共享,达到保护隐私的目的。另外,我们引入了SGX技术保证模型对不可信区域是不可见的,防止了通过模型恢复原始数据等类似攻击。同时,分组架构解决了单个SGX内计算量小于90M的限制,很好地缓解了性能开销。
本文从信息溯源,分布式决策和准确的临床检测3个方面对新型冠状病毒疫情防控信息系统中存在的问题进行了分析。同时将区块链、人工智能、支持隐私保护的安全计算等新兴技术应用于疫情的防控,并有针对性地提出了相应的解决方案。
所有作者均声明不存在利益冲突