联邦学习在视觉处理业务中的实践(上)

本文探讨了传统视觉处理的挑战,如数据隐私、模型更新和数据不均匀性,并介绍了联邦学习如何解决这些问题,实现分布式训练,保护用户隐私。同时,详细解析了目标检测算法,包括边界框、锚框、交并比概念,以及R-CNN、FastR-CNN和FasterR-CNN等算法。最后,阐述了联邦学习在目标检测中的优势,包括隐私性、效率和成本效益。
摘要由CSDN通过智能技术生成

本博客地址:https://security.blog.csdn.net/article/details/123975116

一、传统视觉处理存在的问题 

传统的视觉处理任务主要由下面几个步骤:

1、首先是将收集来的数据集都集中存放在中心数据库中,并进行集中的图片数据预处理,包括图片数据清理、标注等;
2、然后利用这些预处理的数据进行中心化的模型训练;
3、最后将训练的模型部署到客户。

在实践中,中心化训练模式使得视觉的落地和部署面临许多困难和挑战,主要有以下影响因素:

● 数据隐私:视觉数据具有很强的隐私性,这些敏感数据通常不能被上传和使用。
● 模型更新:由于网络性能和设备性能的差异,各个节点的数据同步可能不一致。
● 数据的不均匀:每个数据源得到的数据的分布、质量、大小都各不相同。

而通过联邦学习构建的分布式训练网络,能让分散在各地的摄像头数据不需要上传,就可以协同训练目标检测模型,这样一方面确保用户的隐私数据不会泄露,另一方面充分利用各参与方的训练数据,提升机器视觉模型的识别效果。

二、目标检测算法

目标检测算法是一种视觉算法。在摄像头图片数据中找到指定的物体,并能够正确定位位置,这就是典型的目标检测任务。

目标检测被广泛应用于多个领域,例如无人驾驶领域,通过识别拍摄到的图像里的车辆、行人、道路等目标,来帮助我们规划行进路线;在机器人领域,需要利用目标检测算法来进行路径规划;在安防领域,可以利用目标检测算法识别出恐怖分子等特殊人群。

2.1、边界框与锚框

边界框:在目标检测领域,我们通常使用边界框来描述目标位置,边界框是一个矩形框,由左上角坐标(x1,y1)和右下角坐标(x2,y2)来共同确定。

锚框:在运行目标检测算法时,通常会在图像中采样多个候选区域,即候选边界框,不同的目标检测算法所使用的采样算法也不一样,锚框是指以每一个像素为中心,生成多个大小和宽高比不同的边界框集合。

2.2、交并比

当有多个边界框覆盖了图像中的物体时,如果该物体的真实的边界框已知,那么需要有一个衡量预测边界框好坏的指标,这个指标就是交并比,交并比是多个边界框相交面积与相并面积的比例。比例越大(越接近1),说明越精确。

2.3、基于候选区域的目标检测算法

R-CNN:该算法先对图像提取大约2000个的候选区域,然后将候选框输入CNN网络中,提取每一个候选框的特征数据,每一个候选框的特征数据与其类别一起构成一个样本,训练多个支持向量机对目标分类,其中每一个支持向量机用来判断样本是否属于同一个类别;利用每一个候选框的特征数据与其边界框一起构成一个样本,用来训练线性回归模型,并预测真实的边界框。

算法图示:

Fast R-CNN:由于R-CNN需要对每一个候选区域单独提取特征,但由于候选区域大量重叠,因此单独提取特征导致大量重复计算。Fast R-CNN对此做了一个重要的改进,即先将图片输入CNN网络得到特征图,在特征图上执行候选区域选取的工作,并且采用softmax分类代替原来的支持向量机,从而加快训练速度。

算法图示:

Faster R-CNN:Fast R-CNN的候选区域提取与目标检测仍然是两个独立的过程,因此Faster R-CNN在此基础上,提出了候选区域网络的概念,其余部分没有变化,这样将候选区域的提取与目标检测作为同一个网络进行端到端的训练。

算法图示:

2.4、单阶段目标检测算法

单阶段目标检测算法与候选区域目标检测算法不同,在效果上,基于候选区域的目标检测算法要比单阶段算法准确度高,但速度较慢;相反的,单阶段算法比基于候选区域的目标检测算法速度快,但准确性要低。典型的单阶段目标检测算法包括SSD、YOLO系算法等。

YOLO算法的主要处理步骤包括(以下数据均为举例,不具有一般性):

步骤一:

假定,将图片裁剪为448×448×3大小作为输入,并且将图片分割得到7×7网格,模型的输出是一个7×7×30维的向量,也就是每一个网格都会对应一个30维向量,这个30维的向量中每一个网格会负责一个物体的预测,当一个物体的中心点在网格内时,我们就说这个网格负责预测这个物体。每一个网格会生成2个边界框来预测这个物体,每一个边界框由一个5元组确定(x,y,w,h,c),其中(x,y)代表边界框的中心坐标,w 代表边界框的宽,h 代表边界框的高,c 代表边界框的物体属于哪一个类别。

步骤二:

对标签进行转化。由上一步可知,每一个边界框用一个5元组来表示,而每一个网格会生成2个边界框,每一幅图片被分割为7×7的网格,如果数据集中共有20种不同类别的标注物体,那么每一个网格需要一个20维大小的额外向量,来存放该网格预测不同类别输出的概率。因此,得到模型输出的维度大小为7×7×(2×5+20) = 7×7×30

步骤三:

构建损失函数,利用梯度下降来求解网络。YOLO损失函数主要由下面三部分构成:

1、类别预测损失:p_i(c) 表示方格 i 属于类别 c 的真实概率

\sum_{i=0}^{S^2} 1_i^{obj} \sum_{c} (p_i(c) - \hat{p}_i(c))^2

2、边界框坐标值损失:\lambda _{coord} 表示该损失值占总损失值的权重

\lambda _{coord} \sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{obj} [(x_{ij} - \hat{x}_{ij})^2 + (y_{ij}-\hat{y_{ij}})^2] + \lambda _{coord} \sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{obj} [(w_{ij} - \hat{w}_{ij})^2 + (h_{ij}-\hat{h_{ij}})^2]

3、置信度分数的预测损失:\lambda _{-obj} 属于超参数

\sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{obj} (\theta _{ij} - \hat{\theta }_{ij})^2 + \lambda _{-obj} \sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{-obj} (\theta _{ij} - \hat{\theta }_{ij})^2

三、联邦学习目标检测的优势

传统的集中式目标检测训练主要存在的问题是安全威胁,这些安全威胁主要来自数据层面,包括:

● 数据提供方的数据源离开本地后,数据提供方就没办法跟踪这部分数据的用途了,也无法保证数据离开本地后不被其他人窃取。

● 一般来说,数据从离开数据提供方,到上传至中心数据库,会经过多个中转地,这就进一步增加了数据泄露的风险和问题排查的难度。

基于联邦学习构建的目标检测视觉模型,相比于集中式的目标检测模型,有下面的优势和好处:

● 隐私性:从隐私角度,联邦学习确保数据的产生、数据的处理都在本地进行。相比集中式训练,数据的隐私安全大为提高。

●效率:从效率上来说,传统的集中式训练,需要等待所有数据提供方的数据上传后,才进行统一的数据处理,再进行集中式的模型训练和模型评估,最后部署新模型,这个流程的等待时间比较长。而联邦学习的训练,由于每一个客户参与方从数据收集到数据处理都独立完成,且都有发起联邦学习的权力,只要发起联邦学习请求,就能进行模型训练,因此每一个客户方部署新模型的速度都加快了许多。

● 费用:在集中式训练中,将原始数据(图像、视频)上传到服务端会消耗非常多的网络带宽资源。而联邦视觉模型上传的是模型参数,模型参数的传输量要比数据传输量小得多,从而能有效节省网络带宽,节约费用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

武天旭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值