点击下方卡片,关注「集智书童」公众号
在现代社会,视觉数据的数量迅速增加。在很多情况下,数据存储在地理上不同的位置,因此需要大量的时间和空间来整合。有时,还有关于隐私保护的法规,这会阻止数据的整合。
在这项工作中,作者提出了一个联邦实现的框架,用于使用联邦式Faster R-CNN(FRCNN)进行目标检测和识别,以及使用联邦式全卷积网络(FCN)进行图像分割。FRCNN在COCO2017数据集的5000个示例上进行训练,而FCN在CamVid数据集的整个训练集中进行训练。提出的联邦模型解决了视觉数据量增加和去中心化所带来的挑战,提供了符合隐私法规的高效解决方案。
1 Introduction
最近,随着应用需求的增加,数据隐私保护越来越受到重视。这导致了隐私保护机器学习算法的日益增长的关注度。在联邦学习中,不同的各方共同训练一个机器学习模型,而无需共享训练数据。这种方法在涉及敏感数据或地理上分散的数据场景中尤为有用。原始数据保持安全,仍留在各个联邦单位的本地,同时仍为全球训练过程做出贡献。
许多领域都存在限制,限制了可以共享的数据类型。在应用于国防目的时,这是一个需要特别考虑的因素,因为在每个本地服务器上使用的信息分类 Level 可能存在固有的差异,必须在训练过程中加以考虑。通过利用FML(联邦机器学习)提出的概念,每个联邦的秘密等级可以在训练过程中得到保持,而不必担心最高机密、机密、CUI、SCI及其偏差可能会泄露。
另外,由于HIPAA等法规,对医疗记录的汇总也存在限制,因为患者数据必须安全地维护。这需要实现在不同联邦之间传输信息的安全标准,以符合医疗领域制定的标准。FML(联邦机器学习)作为一个解决方案,因为每个患者记录都保持在其各自的联邦单位本地。
智能手机制造商如苹果和谷歌不断改进他们的目标检测、识别和分割的机器学习模型,因为他们拥有大量的用户生成数据。这项研究证明了联邦学习在这种情况下的潜力,使这些公司能够在本地优化他们的训练过程,同时积极参与全球模型的发展。通过采用联邦学习原则,智能手机制造商可以提高模型开发的效率和安全性,确保用户数据的保密性和完整性。
水平联邦学习也可以提高训练模型的准确性。由于数据整合不再是问题,作者能够轻松地将更多数据源添加到训练周期中。这种做法通常会增加模型准确性,因为训练数据可能更稳健。由于联邦单位可以位于不同的地理位置,来自各种环境的地理数据更容易包含。包括来自地理上分散的起源的数据,也具有捕获多个设置的机会,从而增加模型的健壮性。
在本文中提出了使用联邦人工智能技术促进器(FATE)框架实现的目标检测、识别和分割的实现。联邦目标检测和识别使用FRCNN,而图像分割模型使用FCN。
2 Background
Federated Learning
联邦机器学习(FML)定义为N个维护某种形式的数据(,,,)的实体,它们都希望开发一个机器学习模型,该模型可以访问每个数据池,,,中的数据。这些数据池以及它们可以操作的方式可以分为两类,水平和垂直,在2.2和2.3节中分别讨论。最早的一个联邦学习实现是通过使用一个保护用户隐私的安全聚合模式,在安卓设备上联合训练ML模型。这些不同的用户、他们的数据以及他们操作的服务器都可以表示为一个联邦,,,,其中包含训练模型所需的所有相关信息。
在开发一个基于每个联邦本地模型分别训练的联邦模型时,存在一些与安全相关的协议。在这个过程中,,,,可以访问自己的训练权重和数据引用,但无法访问其他联邦的模型和数据。同样地,无法直接访问与每个联邦相关联的数据,但确实具有获取每个联邦相关模型信息(如权重和层)的方式。这使得每个代理以及中央服务器在训练时,都可以支持自己的私有智能,而不会在过程中发生泄露。
Horizontal Federated Learning
在考虑模型优化和数据隐私时,有几个方法可以集成到联邦学习环境中。水平联邦机器学习(HFM)是一种可行的方法,当数据分布在多个联邦时,每个联邦都包含与特定数据样本相关联的所有相关特征和训练标签(图1.a)。
这种方法已经看到了对其开发的最大关注,导致其应用代表了关于联邦机器学习的最成熟的理论。该系统围绕共享特征空间构建,其中参考单个联邦上找到的加密数据以建立参数和权重,以对应全局模型。最常见的做法是联邦平均(FedAvg)算法,这是一种去中心化的机器学习方法,其中模型参数在多个本地设备上训练,并定期汇总以构建全局模型,允许协作学习而无需共享原始数据。
FedAvg的典型实现如图2所示,而客户端的训练过程的典型示例如图1所示。
Vertical Federated Learning
尽管与水平联邦学习相比,由于其增加的复杂性,垂直联邦学习并不常见,但它涵盖了一组独特的问题和用例,必须提到。垂直任务操作的数据集的样本在特征空间中共享一些共同的项目,以及在数据空间中的一些项目。这种分布的视觉表示如图1.b所示。这样一个问题提出了一系列挑战,当使用水平学习时不会出现,因为数据不一定是齐的。因此,垂直操作试图保持相同的隐私应用,同时根据可能无关的数据点开发梯度和权重。
Federated Computer Vision
本文的主要关注点是计算机视觉在FATE中的适应性。由于它能够有效地在多个联邦之间传输数据,同时保持客户端之间的保密性,因此它是一个能够应对基于图像问题的优秀环境。对于相应的过程,存在一些库和功能,如FedVision。然而,需要扩展现有的用例。在目前的状态下,该包支持YOLOv3目标检测以及一些MNIST示例。FedVision与FATE不兼容,这是不幸的,因为FATE是一个更强大的平台。
2.4.1 Object Detection and Region-Based Convolutional Neural Networks
目标检测和识别是计算机视觉中最常见的任务之一。该过程涉及在数据集中识别特定的类别,如汽车或行人,并为他们分配一个数字标签。然后,机器生成一系列边界框,以便建立一种可视化数据的方法。这些操作共同创建一个基于区域的解决方案,提供物体位置和与之相关的确信度的理解。
区域卷积神经网络(RCNN)是一种用于目标检测和识别的常用模型。RCNN基于特征金字塔网络创建一系列边界框。这些特征通过一系列卷积被区域 Proposal 网络扫过,这些卷积构建了一系列参数和权重,这些参数和权重在整个网络中传播。在这个网络中,特征是按金字塔反金字塔的方式构建的,这促使正在处理的数据迅速减小特征大小,然后被重建到原始大小。这样做可以最小化数据损失,同时保持理想性能时间。最后,生成的数据包括将原始帧或图像与一系列最佳拟合边界框叠加,这些边界框标注物体所在的区域以及与之相关的类别。RCNN的概述如图2所示。
2.4.2 Image Segmentation and Fully Convolutional Neural Networks
图像分割是将一个样本图像分解成一系列分区,这些分区以区域的形式出现。这些部分可以分配一个对应于评估的地面真理的类别,这在深度学习训练场景中作为标签。在图像分割问题的最常见模型是全卷积网络(FCN)。
FCNs保持与标准CNN方法相同的层次结构和端到端方法,同时提供有关样本选择的额外自由度。它们在应用中天生具有动态性,可以处理不同像素尺寸的样本。为了实现这一点,模型架构避免使用Dense层作为前一次卷积的输入和输出标准,而选择使用较小的卷积层作为滤波器。通过这样做,模型避免了单个输入滤波器的自然限制,允许使用可以自由更改大小的更多样化数据池。这意味着可以同时使用包含720 x 960像素样本的数据集和包含512 x 512像素图像的数据集。
这样做的好处是直接增加了数据可用性,使模型可以获得更高的精确度和准确性,同时支持更多的用例。利用相互连接的卷积的一个额外好处是相对于间歇性密集层,参数数量更小。这种架构避免了卷积之间权重管理错误可能导致的数据损失,并促进了更快、更有效的训练过程。
使用FCN进行图像分割的常见网络结构类似于自动编码器的结构,但最终结果是基于全连接层进行特征映射的像素映射。通过利用自定义或预先构建的网络(如VGGNet)对一批样本进行一系列卷积,可以获得有用的特征提取,这些特征可以应用于卷积反转网络。这种方法在处理具有问题的样本大小时,仍然保持了之前提出方法的相同性能。FCN的架构如图3所示。
3 Data Sets
Coco 2017
在这项研究中,作者使用了Common Objects in Context(COCO2017)数据集。这个数据集包含328,000张带有标注的图像,其中91个是独特的物体类别,其中80个出现在标注数据中。标注描述了图像中物体的位置和尺寸,以及每个物体所属的类别。
CamVid
为了确定联邦图像分割的有效性,将Cambridge-Driving Labeled Video Database(CamVid)输入到作者的联邦FCN中。这个信息集合包括367个训练对、101个验证对和233个测试对图像,每对图像都包括原始图像及其对应的 GT 值。标记数据以语义掩码的形式出现,提供覆盖源图像的突出区域,其中这些位置被指定为特定类别。为了可视化目的,每个类别都保持一种独特的识别颜色,以便在单张图像中区分所有可能的物品。图像-标签对的一个示例如图4所示。
4 Implementation details
Federated Technology Enabler (FATE)
在开发一个联邦学习环境时,一个重要考虑因素是联邦单位所需的可伸缩性和通信需求。过去常用的一种方法是分布式学习。这是一种开源方法,引入了一系列数据孤岛,这些孤岛维护独特的加密服务,旨在保护数据隐私。然而,这种系统天生只适用于小型环境,只有在大多数情况下与研究或个人使用相关的场景中才是可行的。无论机器学习实践如何,这种方法都存在与数据隐私合规标准不匹配的安全问题。因此,将这样的系统应用到更大的行业中变得非常困难,因为它们天生就具有复杂的内在问题,导致其实施变得非常有限。
联邦技术促进器(FATE)是一个开源的联邦学习框架,可以解决上述许多问题。这个平台是一个能够更好地考虑网络规模和安全问题的AI学习生态系统,可以应用FML实践。与标准分布式学习方法相比,FATE平台在处理这些问题方面更为灵活。
FATE架构包括多种与联邦和安全性协议相协调的机器学习应用程序。这些算法与EggRoll分布框架一起工作,在网络中执行高级计算。系统推动了与健康FML系统密不可分的关键概念,即在涉及机器学习过程的所有联邦之间的隐私。所有间歇性结果,如梯度和权重,以及必要的计算都在一套加密服务下执行,其中单个联邦在模型完全训练后仅与其他框架内的一个或多个实体进行一次交互。在此阶段,所有联邦都收到了最终结果,但仍缺少与其它实体的特定信息。
对于水平联邦学习,不同的联邦单位上的训练是相同的。因此,性能是无损失的,所有模型在没有暴露敏感数据的情况下,实现了大致相同的性能。
Modifications to FATE
4.2.1 Data Loaders
对于FRCNN和图像分割训练,作者设计了两款联邦数据加载器目标。第一个数据加载器被设计为包含COCO标签,以确保返回的第一个元素表示一张图像,而后续元素对应COCO标签。详细介绍COCO格式,每个标签包括有关图像的信息,如尺寸、文件名和标注列表。标注包括图像中物体的详细信息,包括类别、分割掩码和边界框坐标。
对于图像分割的第二个数据加载器,更加简单。它提供一张图像和标签的分割图。在这个情况下,分割图利用了CamVid数据集中的类到RGB字典,将每个像素分配给相应的类别。作者使用的FCN实现中的原始代码(如黄(2018)中所示),没有使用向量化。它通过遍历图像中的每个像素,然后将转换后的数据保存到numpy数组中进行预处理。由于在联邦环境中这并不实用,作者决定重新实现这个代码,提供一个向量化实现的快速映射适当值。
4.2.2 Federated Average Trainers
在FATE框架内的联邦平均实现中引入了许多修改。在作者的分割和目标检测训练器中,作者不得不禁用FATE日志度量。这是因为FATE没有配置来处理除回归和分类之外的度量。
对于作者的图像分割模型,作者将作者的损失更改为BCEWithLogitsLoss(Binary Cross Entropy Loss with Logits)。尽管需要对FCN进行一些语法更改才能使其正常工作,但FedAvg的核心代码大部分保持不变。
在FRCNN模型的训练中,相关的损失直接从torchvision的FRCNN模型中获取。损失(box_classifier,box_fpn_regulation,classifier和objectness)在训练期间简单地汇总成一个统一的损失。这些损失在5.1节中详细讨论。
5 Methods
在模型训练之前,数据被分成两个大小相等的部分。这些不同的部分代表独特数据孤岛,可以在训练过程中协同工作。首先在每个部分上本地训练,并跟踪与 GT 值相比的集合的损失和交并集(IoU)。IoU是用于跟踪目标检测或分割模型的准确性的常用度量。它通过将两个边界框之间的重叠区域除以它们的并集面积来计算。这产生一个介于0和1之间的值,其中1表示完全重叠。然后,在联邦式的方式上训练两个部分,并比较结果。IoU度量可视化如图5所示。
Federated FRCNN
在将数据分成两个集,集A和集B之后,作者分别将每个集输入到Faster Region-Based Convolutional Neural Network(FRCNN)中。这包括一个特征金字塔网络(FPN),它可以预测图像中的感兴趣点或特征,并为其画一个边界框。然后,图像被发送到区域 Proposal 网络(RPN),该网络评估损失并修改网络权重。
在本地对模型进行训练后,可以可视化损失和IoU随时间的变化。这些指标给作者一个模型表现如何的概念。在进行目标检测时,IoU通常用于跟踪准确性,因为它量化了预测结果与 GT 值之间的相似程度,通过表示框的交并比与整个区域的比例。
在作者的FRCNN实现中,训练过程中返回了四个损失值:,,和,每个损失值对应预测的不同方面。表示预测的物体置信度,它量化了物体属于特定物体类别而不是背景的概率。衡量了给定预测的边界框与最接近的 GT 值之间的相似性。这两个值都在RPN内计算。用于衡量预测的边界框与 GT 目标之间的紧密程度。最后,用于衡量每个预测标签的正确性。
在本地获得训练指标后,将其与联邦环境中的指标进行了比较。为了实现这一点,将来自集A的数据放在一个联邦单位上,将来自集B的数据放在另一个联邦单位上,目标是由于协作学习过程而增加IoU。
Federated Image Segmentation
为了比较和对比标准建模算法和联邦算法的结果,将测试过程分为两组:一组是联邦的,另一组是非联邦的。非联邦程序考虑了其他测试的数据划分能力,因此创建了两个在CamVid数据集的等大小的分区上训练的本地模型。
在这里,模型应该在183个图像和标签对上进行训练,以模拟一个“联邦”环境。第二个测试涉及真正的联邦模型,它由两个联邦维护相同的在第一个实验中看到的数据划分。通过这种方式模拟系统可以提供有关联邦方法的优势和限制的洞察,这种方法在增加了网络和安全性能力的同时。在这两个实验中,获得了像素准确性,IoU和损失的度量,以确定性能。
6 Results
Federated FRCNN
在本节中展示了目标检测模型在训练过程中的结果。图6显示了在6个epoch内各种损失的表现。
作者得出的结果证明了在去中心化环境中实现联邦目标检测和识别的可行性和潜在优势。必须强调的是,损失的轻微下降与使用2的批量大小有关,由于计算资源的限制而必需这样做。因此,大量的训练发生在初始的epoch中。
此外,联邦模型实现了预测精度(包括特定指标),验证了在需要大量数据的任务中采用联邦方法的有效性,为利用大数据集带来的好处提供了一个实际途径。
Federated Image Segmentation
在这个实验中,本地模型在训练50个epoch后达到了解决方案并收敛,而联邦模型需要75个epoch才能得出适当的结论。每个模型在训练迭代过程中的性能如图7所示,提供了详细的图形分析。由于IoU是针对每个标签的,因此每个标签的度量必须单独绘制。这是为了克服数据集中存在的一些利基类,并使明显改进的更一致的项目(如道路和建筑)显现出来。
从这些图表中可以看出,本地模型在暴露的数据孤岛方面表现相对相同,收敛到像素精度为80%。参考系统确定的IoU,可以发现像建筑和道路这样的显著类别的IoU值在75%到85%之间,而更多的利基物品,如汽车门,IoU范围在5%到50%之间,这取决于提供的样本。这解释了在分割数据上运行的两个本地模型之间的微小差异,其中每个模型都比其他更频繁地暴露于某些物品,并能够构建相应的权重。
相比之下,联邦模型收敛到75%的准确率,略低于第一个实验。尽管这种略微降低的性能可能使真正联邦方法的可信度受到质疑,但考虑到正在实现的体系结构是在非常不同的情境下运行的,这是重要的。在这个实验中,每个联邦单位通过安全的加密模式共享数据,允许每个参考敏感信息,而不会将其暴露在网络之外。这还防止了在能够直接引用系统内各方所存储的信息,无需实际访问这些信息的情况下直接与不同位置共享数据的需要。
最后需要考虑的是CamVid数据集固有的较小大小,它没有足够的数据来充分利用联邦算法的优势。最后,联邦模型实现的IoU分数高于本地模型,具有更显著的特征,保持在85%到95%之间,而利基类保持在5%到60%之间。
7 Discussion & Future work
前面各节中展示的结果强调了联邦目标检测和识别以及联邦图像分割的有效性和挑战性。
FRCNN实验展示了在去中心化节点上进行协作学习的优势。在特定数量的epoch之后,联邦方法始终优于本地实验,展示了利用各种数据源进行增强模型泛化的潜力。联邦环境中目标分类器的加速改进强调了来自各种贡献者知识汇聚的协同效应。一致的损失收敛性突出了联邦学习的健壮性,表明这种方法非常适合需要大型和多样化数据集的任务。
通信开销、模型同步和数据分布的异质性等挑战需要进一步探索和优化。解决这些挑战对于确保联邦目标检测和识别的效率和可伸缩性至关重要。
联邦图像分割实验揭示了联邦模型的优势和挑战。与本地模型相比,联邦模型需要更长的训练时间,这引发了关于模型准确性和资源限制之间权衡的思考。性能分析表明,本地模型在捕捉其暴露的特征方面表现出色,而联邦模型则展示了节点间共享知识的更好理解。
不同类别之间性能的差异突显了与不平衡数据集相关的挑战,尤其是对于有限表示的利基类。由于联邦学习的隐私保护特性,通过加密方案实现,在数据隐私至上的场景中,这是一个显著的优势。
联邦学习已经进化以支持大型语言模型(LLM),这是一个重大的进步。具体来说,FATE-LLM使用低秩适应性来训练LLM。其中许多训练算法可以用于视觉 Transformer (ViTs)。ViTs在许多任务中具有显著的优势,尤其是目标检测、识别和图像分割。ViTs固有的自监督训练可以增强模型从分布式数据集中学习层次特征的能力。
此外,讨论还应扩展到探索这些算法的垂直实现。在图像分割方面已经取得了进步,表明将这些方法扩展到其他相关任务的可行性和潜在成功。
参考
[1].HORIZONTAL FEDERATED COMPUTER VISION
扫码加入👉「集智书童」交流群
(备注:方向+学校/公司+昵称)
想要了解更多:
前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」
行业技术方案👉「AI安防、AI医疗、AI自动驾驶」AI模型部署落地实战👉「CUDA、TensorRT、NCNN、OpenVINO、MNN、ONNXRuntime以及地平线框架」
欢迎扫描上方二维码,加入「集智书童-知识星球」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!
免责声明凡本公众号注明“来源:XXX(非集智书童)”的作品,均转载自其它媒体,版权归原作者所有,如有侵权请联系我们删除,谢谢。
点击下方“阅读原文”,了解更多AI学习路上的「武功秘籍」