导语
近年来,随着AI在医疗领域的广泛应用,数据合作与数据共享问题受到关注。2021年5月,Nature的一篇文章介绍了一种优于联邦学习的医疗数据共享方法Swarm Learning(SL),本文对该文章的主要内容进行整理。
论文题目:Swarm Learning for decentralized and confidential clinical machine learning
论文地址:https://www.nature.com/articles/s41586-021-03583-3
许多案例表明,将大量医疗数据与机器学习技术相结合可以开发出强大的疾病分类系统。在未来,这种疾病分类系统将有助于降低疾病的诊断成本,提高诊断效率。
以急性髓性白血病(AML)这种严重的、很有可能致命的造血系统恶性肿瘤为例。尽管目前可以有效的诊断AML,但现有的诊断方法依赖于对人类专家(培养和聘请专家)和物理基础设施的大量投资,诊断的成本随着样本数量的增加而增加。来自iScience的一篇文章报道称,基于血液转录组的机器学习可以在没有专家介入的情况下,识别和预测AML患者,并且这种直接从全基因组数据中学习多元特征的方法是相对准确和稳健的。与人类专家解释结果为主的经典诊断方式相比,基于AI和机器学习的方法具有降低医疗成本的潜力,并且边际成本较低(一旦模型被训练成功,每个额外样本的成本将大大降低),高度可扩展,工作流程近乎自动化。基于AI的疾病诊断方法本质上依赖于大型训练数据集。由于医学本身是分散的,医疗机构本地的数据量往往不足以训练出可靠的分类系统。
而且不同中心甚至国家之间的医学研究数据交换往往受到数据保护、隐私保护和数据主权法规的约束。技术问题同样也会影响数据使用,比如当需要以数字方式传输大量数据时,数据传输线路很快会达到其性能极限。鉴于这些情况,许多医学研究仅限于本地,很难利用其他地方可用的数据。在该篇Nature文章中,作者提出了一种去中心化的机器学习方法Swarm Learning(SL),将边缘计算和基于区块链的对等网络(Peer to peer networking)结合起来,用于不同医疗机构之间医疗数据的整合。
该研究由Joachim Schultze领导,研究基础是HPE开发的SL技术。该方法具有诸多优势:可以将大型医疗数据保存在数据所有者的本地;不需要交换原始数据(从而减少了数据流量);可以提供高水平的数据安全;能够保证网络中成员的安全、透明和公平的加入,不需要中央协调员;允许参数合并,所有成员的权利平等;可以保护机器学习模型免受攻击。研究选择了四个异质性疾病的用例(结核病、COVID-19、白血病和肺部病变),来说明使用SL来开发疾病分类系统(基于分布式数据)的可行性。 结果表明,SL分类系统的性能优于在单个节点开发的分类系统。并且SL的设计完全满足保密要求。在Local learning中,数据和计算是在不同的、不相关的地点。
在Central learning中,数据和参数是中心化的,是基于云的机器学习。
在Federated learning中,数据被保存在数据所有者当地,计算在数据所有者当地的存储中心进行,但参数设置由中央协调员协调。
在Swarm Learning中,数据和参数在边缘(边缘计算),不需要中央协调员。
从原理上来说,如果本地有足够的数据和计算基础设施,那么机器学习就可以在本地进行,也就是Local learning。然而在很多情况下,本地医学数据往往不足。
Central learning是将不同来源的数据集中化,来解决Local learning中本地数据不足的问题。虽然从AI的角度来看是十分有益的,但是数据集中化的解决方案除了增加数据流量之外,会引起数据所有者对数据所有权、保密性、隐私、安全性的担忧,同时也可能产生有利于数据聚合者的数据垄断。Federated learning让数据保存在数据所有者本地,这就解决了数据的保密性问题,但是模型参数仍然由中央协调员处理,这就造成了权力的集中。此外,这种星形结构降低了容错性。作者提出的Swarm Learning基于标准化AI引擎的分布式机器学习和许可区块链,结合了去中心化的硬件基础设施,成员可以安全加入,可以在成员中动态地选举领导者,可以合并模型参数。计算由一个SL库和一个使用去中心化数据的迭代式AI学习程序来协调。SL通过Swarm网络共享参数,并在各个节点(Node)的私人数据上独立构建模型。Swarm Learning提供安全措施以支持数据主权、安全和保密性(这由私人许可的区块链技术实现)。每个参与者都有明确的定义,只有预先授权的参与者可以执行交易。新节点的加入是动态的,有适当的授权措施来识别网络参与者。新节点通过区块链智能合约进行注册,获得模型,并进行本地的模型训练,直到满足定义的同步条件。接下来,模型参数通过Swarm应用编程接口(API)进行交换,并在开始新一轮训练之前,合并创建一个参数更新的更新模型。为了说明使用SL来开发疾病分类系统(使用分布式数据)的可行性,研究选择了4个疾病案例。第一个案例是用SL从外周血单核细胞(PBMC)数据中预测白血病。
研究使用来自12000多个患者的PBMC转录组数据,使用连续的深度神经网络算法。样本被分成若干个不重复的训练数据集和一个全局测试数据集(单个节点上SL建立的模型用测试数据集测试)。训练数据集以不同的分布方式被 "隔离 "在每个Swarm节点上(节点1-3),从而模拟了临床上的相关场景。每个节点可以代表一个产生医疗数据的医疗中心、一个医院网络、一个国家或任何其他独立的组织。测试节点T使用独立的测试数据集。研究使用来自急性骨髓性白血病(AML)患者的样本作为实例(cases),所有其他样本被称为对照(Controls)。研究发现,在所有的情况下(改变节点的样本分布均匀度、cases/controls比例等),SL的预测性能均优于单个节点的预测性能,并且这种表现与数据收集方式(临床研究方式)或数据生成技术(微阵列或RNA-seq)无关。第二个案例是用Swarm Learning从血液转录组数据中识别结核病患者或肺部病变患者。实验流程图与案例1同。
研究使用结核病(潜伏的和活动的)样本作为cases,cases和controls均匀地分布在各节点中。结果显示,SL的预测性能优于任何一个单独的节点的模型预测性能。减少训练样本数量以后,SL的预测性能下降,但仍优于任何一个单独的节点。在SL识别肺部病变患者的案例中,研究使用了一个大型的公开可用的胸部X射线数据集。同样地,SL在预测所有放射学发现(肺积水、渗出、浸润和无发现)方面均优于每个节点,这表明SL也适用于非转录组数据空间。第四个案例讨论了SL是否可用于识别和检测 COVID-19 患者。
虽然COVID-19通常是使用基于PCR的检测方法来检测病毒RNA,但在病原体未知、特定病原体检测尚不可能、现有检测可能产生假阴性结果等情况下,评估病毒宿主的免疫反应是有益的。研究发现,在区分轻度和重度COVID-19时,SL的表现优于单个节点。证据表明,COVID-19患者的血液转录组代表了应用SL的一个有希望的特征空间。该方法在白血病中效果最好。在白血病中,基因活动的特征特别显著,因此最容易被AI检测到。该方法在结核病和 COVID-19中的准确性也非常高。
随着数据隐私和安全性问题受到越来越多的关注,去中心化的数据模型有可能成为处理、存储、管理和分析任何种类的大型医疗数据集的首选。特别是在肿瘤学方面,虽然基于机器学习的肿瘤检测、亚型划分和结果预测已经取得了成功,但由于数据集的规模有限,进展受阻,而且目前的隐私法规使得开发集中式AI系统的吸引力降低。SL作为一个去中心化的学习系统,有望取代目前跨机构医学研究中的中心化数据共享模式。对于不诚实的参与者或试图破坏Swarm网络的人,SL的区块链技术提供了强有力的措施。此外,SL通过设计提供了保密的机器学习,可以继承差分隐私算法、函数加密或加密转移学习方法的新发展。作者Schultze认为,SL有可能成为真正的游戏规则改变者,可以帮助相关人员在全球范围内更容易获得丰富的医学经验。不仅研究机构,医院也可以联合起来形成这样的群体,从共享信息中受益。1.Warnat-Herresthal, Stefanie et al. “SwarmLearning for decentralized and confidential clinical machine learning.” Nature,10.1038/s41586-021-03583-3. 26 May. 20212.https://www.sciencedaily.com/releases/2021/05/210526132126.htm集智斑图顶刊论文速递栏目上线以来,持续收录来自Nature、Science等顶刊的最新论文,追踪复杂系统、网络科学、计算社会科学等领域的前沿进展。现在正式推出订阅功能,每周通过微信服务号「集智斑图」推送论文信息。扫描下方二维码即可一键订阅:
点击“阅读原文”,追踪复杂科学顶刊论文