训练机器学习模型以有效执行图像分类等任务涉及向模型展示数千、数百万甚至数十亿的示例图像。当隐私是一个问题时,例如医学图像,收集如此庞大的数据集尤其具有挑战性。麻省理工学院和诞生于麻省理工学院的初创公司DynamoFL的研究人员现在已经针对这个问题采取了一种流行的解决方案,即联邦学习,并使其更快、更准确。
联合学习是一种用于训练机器学习模型的协作方法,该模型可将敏感的用户数据保密。成百上千的用户在自己的设备上使用自己的数据训练自己的模型。然后,用户将他们的模型传输到中央服务器,中央服务器将它们结合起来,提出一个更好的模型,然后发回给所有用户。
例如,位于世界各地的医院可以使用这种方法来训练机器学习模型,以识别医学图像中的脑肿瘤,同时保证患者数据在本地服务器上的安全。
但是联邦学习有一些缺点。将大型机器学习模型传入和传出中央服务器需要移动大量数据,这具有很高的通信成本,尤其是因为模型必须来回发送数十次甚至数百次。此外,每个用户都收集自己的数据,因此这些数据不一定遵循相同的统计模式,这会影响组合模型的性能。并且该组合模型是通过取平均值得出的——它不是针对每个用户进行个性化的。
研究人员开发了一种技术,可以同时解决联邦学习的这三个问题。他们的方法提高了组合机器学习模型的准确性,同时显着减小了其大小,从而加快了用户与中央服务器之间的通信。它还确保每个用户收到一个更适合其环境的个性化模型,从而提高性能。
与其他技术相比,研究人员能够将模型大小减少近一个数量级,这导致个人用户的通信成本降低了四到六倍。他们的技术还能够将模型的整体准确性提高约10%。
“很多论文都解决了联邦学习的一个问题,但挑战在于将所有这些放在一起。仅关注个性化或通信效率的算法并不能提供足够好的解决方案。我们希望确保我们能够针对所有内容进行优化,因此这种技术实际上可以在现实世界中使用,”VaikkunthMugunthan博士说。'22,介绍该技术的论文的主要作者。
Mugunthan与他的顾问、资深作者、计算机科学与人工智能实验室(CSAIL)的首席研究科学家LalanaKagal共同撰写了这篇论文。这项工作将在欧洲计算机视觉会议上发表。
将模型切割成合适的尺寸
研究人员开发的名为FedLTN的系统依赖于机器学习中的一个概念,即彩票假说。这个假设表明,在非常大的神经网络模型中,存在可以实现相同性能的更小的子网络。找到其中一个子网类似于找到中奖彩票。(LTN代表“彩票网络”。)
松散地基于人脑的神经网络是机器学习模型,它学习使用互连的节点或神经元层来解决问题。
找到一个中奖彩票网络比简单的刮刮更复杂。研究人员必须使用一种称为迭代修剪的过程。如果模型的准确度高于设定的阈值,它们会移除节点和它们之间的连接(就像从灌木上修剪树枝一样),然后测试更精简的神经网络以查看准确度是否保持在阈值之上。
其他方法已将这种剪枝技术用于联合学习,以创建更小的机器学习模型,这些模型可以更有效地转移。但是,虽然这些方法可能会加快速度,但模型性能会受到影响。
Mugunthan和Kagal应用了一些新技术来加速修剪过程,同时使新的、更小的模型对每个用户更加准确和个性化。
他们通过避免将修剪后的神经网络的其余部分“倒回”到其原始值的步骤来加速修剪。Mugunthan解释说,他们还在修剪模型之前对其进行了训练,这使其更准确,因此可以更快地修剪它。
为了使每个模型对用户的环境更加个性化,他们小心翼翼地不剪掉网络中捕获有关该用户特定数据的重要统计信息的层。此外,当模型全部组合在一起时,它们利用了存储在中央服务器中的信息,因此每一轮通信都不是从头开始的。
他们还开发了一种技术,以减少使用资源受限设备(如慢速网络上的智能手机)的用户的通信次数。这些用户使用已经由其他用户子集优化的更精简的模型开始联邦学习过程。
通过彩票网络赢得大奖
当他们在模拟中对FedLTN进行测试时,它带来了更好的性能并全面降低了通信成本。在一个实验中,传统的联合学习方法生成了一个大小为45MB的模型,而他们的技术生成了一个具有相同精度的模型,只有5MB。在另一项测试中,最先进的技术需要用户和服务器之间12,000兆字节的通信来训练一个模型,而FedLTN只需要4,500兆字节。
使用FedLTN,表现最差的客户仍然看到超过10%的性能提升。Mugunthan补充说,总体模型准确性比最先进的个性化算法高出近10%。
现在他们已经开发并微调了FedLTN,Mugunthan正在努力将该技术整合到他最近创立的联邦学习初创公司DynamoFL中。
展望未来,他希望继续改进这种方法。例如,研究人员已经证明使用带有标签的数据集取得了成功,但更大的挑战是将相同的技术应用于未标记的数据,他说。
Mugunthan希望这项工作能够激发其他研究人员重新思考他们如何处理联合学习。
“这项工作显示了从整体方面考虑这些问题的重要性,而不仅仅是必须改进的个别指标。有时,改进一个指标实际上会导致其他指标的降级。相反,我们应该关注如何我们可以一起改进一堆东西,如果要在现实世界中部署它,这非常重要,”他说。