CN111967612A - 横向联邦建模优化方法、装置、设备及可读存储介质 - Google Patents
横向联邦建模优化方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN111967612A CN111967612A CN202010850612.5A CN202010850612A CN111967612A CN 111967612 A CN111967612 A CN 111967612A CN 202010850612 A CN202010850612 A CN 202010850612A CN 111967612 A CN111967612 A CN 111967612A
- Authority
- CN
- China
- Prior art keywords
- model
- local
- private
- public
- updating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioethics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种横向联邦建模优化方法、装置、设备及可读存储介质,所述方法包括:采用预设本地数据集对本地基础模型进行参数更新操作,得到本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;将公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;采用从协调设备接收到的所述全局更新信息更新公有部分模型中的模型参数,采用私有部分模型的参数更新信息更新私有部分模型中的模型参数,以更新本地基础模型。本发明实现了横向联邦建模后,各个参与设备可灵活地调整各自的本地模型。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种横向联邦建模优化方法、装置、设备及可读存储介质。
背景技术
目前,联邦学习作为一种全新的隐私安全保护方法备受各方的关注。“联邦学习”是人们为解决数据孤岛的问题而提出的概念,使得联邦双方在不用给出己方数据的情况下,也可进行模型训练得到模型参数,并且可以避免数据隐私泄露的问题。横向联邦学习,也称为特征对齐的联邦学习(feature-aligned federated learning),是在各个客户端的数据特征重叠较多(即数据特征是对齐的),而用户重叠较少的情况下,取出客户端数据特征相同而用户不完全相同的那部分数据进行联合机器学习。但是,横向联邦学习在经过联邦建模之后,参与方的本地模型很难进行改动,想要改动必须联合其他参与方进行共同修改,也即目前横向联邦学习方法中,各个参与方的本地模型不能够灵活地调整。
发明内容
本发明的主要目的在于提供一种横向联邦建模优化方法、装置、设备及可读存储介质,旨在目前横向联邦学习方法中,各个参与方的本地模型不能够灵活地调整的问题。
为实现上述目的,本发明提供一种横向联邦建模优化方法,所述方法应用于参与横向联邦建模的参与设备,所述方法包括以下步骤:
采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
可选地,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,还包括:
当检测到本地私有任务后,获取与所述本地私有任务对应的私有替换模型;
采用所述私有替换模型替换更新后的本地基础模型中的私有部分模型得到本地私有任务模型;
采用与所述本地私有任务对应的本地数据集对所述本地私有任务模型进行参数更新操作,以更新所述本地私有任务模型中的模型参数。
可选地,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,还包括:
当检测到公有任务后,获取与所述公有任务对应的公有替换模型;
采用所述公有替换模型替换更新后的本地基础模型中的公有部分模型得到本地公有任务模型;
将与所述公有任务对应的本地数据集作为预设本地数据集,采用所述本地公有任务模型作为本地基础模型,再执行所述步骤:采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息。
可选地,所述将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息的步骤包括:
对所述公有部分模型对应的参数更新信息进行近似量化操作,得到量化更新信息;
将所述量化更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的量化更新信息进行联邦融合得到全局更新信息。
可选地,所述对所述公有部分模型对应的参数更新信息进行量化操作,得到量化更新信息的步骤包括:
将预设整型向量与所述公有部分模型对应的参数更新信息代入余弦相似度公式中,其中,所述预设整型向量的各元素值待确定;
对所述余弦相似度公式进行求解得到所述预设整型向量的各元素值,将已确定各元素值的预设整型向量作为量化更新信息,其中,已确定各元素值的预设整型向量使得所述余弦相似度公式的余弦值最大化。
可选地,当所述预设本地数据集是图像数据集时,所述采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息的步骤包括:
将所述图像数据集输入本地基础模型得到所述图像数据集中各图像对应的分类预测结果;
基于所述分类预测结果和各图像对应的真实分类标签计算所述本地基础模型的分类损失;
基于所述分类损失计算得到所述本地基础模型中私有部分模型和公有部分模型分别对应的梯度信息,将所述梯度信息作为参数更新信息。
可选地,当所述预设本地数据集是图像数据集时,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,还包括:
当检测到更新后的本地基础模型满足预设模型条件时,将更新后的本地基础模型作为目标模型;
将待分类图像数据输入所述目标模型的私有部分模型进行处理,得到中间结果;将所述中间结果输入所述目标模型的公有部分模型进行处理,得到所述待分类图像数据的分类结果;或,
将待分类图像数据进行划分得到第一部分图像数据和第二部分图像数据;将所述第一部分图像数据和所述第二部分图像数据分别通过所述目标模型的私有部分模型和公有部分模型进行处理,得到私有结果和公有结果;联合所述私有结果和所述公有结果,得到所述待分类图像数据的分类结果。
为实现上述目的,本发明提供一种横向联邦建模优化装置,所述装置部署于参与横向联邦建模的参与设备,所述装置包括:
第一更新模块,用于采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
发送模块,用于将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
第二更新模块,用于采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
为实现上述目的,本发明还提供一种横向联邦建模优化设备,所述横向联邦建模优化设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的横向联邦建模优化程序,所述横向联邦建模优化程序被所述处理器执行时实现如上所述的横向联邦建模优化方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有横向联邦建模优化程序,所述横向联邦建模优化程序被处理器执行时实现如上所述的横向联邦建模优化方法的步骤。
本发明中,通过在参与设备中设置包括私有部分模型和公有部分模型的本地基础模型,并设置各个参与设备中的公有部分模型结构相同,各个参与设备采用其本地数据集对本地基础模型进行参数更新操作,得到本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,再将公有部分模型对应的参数更新信息发送给协调设备进行联邦融合得到全局更新信息,基于全局更新信息更新公有部分模型的模型参数,基于私有部分模型的参数更新信息更新各自私有部分模型的模型参数,以更新本地基础模型,完成公私混合的联邦建模。由于各个参与设备本地基础模型中的公有部分模型结构相同,故各参与设备可以联合完成联邦建模,基于联邦建模保证了各参与设备中数据隐私的同时,也扩充了模型的训练数据量,从而使得本地基础模型的模型预测准确率得到优化。同时,相比于现有的横向联邦建模中各个参与设备无法单独修改各自的本地模型,在本发明中,由于各个参与设备的本地基础模型中还包括私有部分模型,私有部分模型的模型参数更新优化是各个参与设备本地分别进行的,所以各个参与设备可根据各自的建模任务的差异设置不同结构的私有部分模型,并可灵活地调整各自的私有部分模型,而不用联合其他参与设备对私有部分模型进行改动,从而提高了参与设备的建模效率,节省了参与设备内部的计算资源。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明横向联邦建模优化方法第一实施例的流程示意图;
图3为本发明实施例方案涉及的一种公式(1);
图4为本发明实施例方案涉及的一种公式(2);
图5为本发明横向联邦建模优化装置较佳实施例的功能示意图模块图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
需要说明的是,本发明实施例横向联邦建模优化设备可以是智能手机、个人计算机和服务器等设备,在此不做具体限制。
如图1所示,该横向联邦建模优化设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对横向联邦建模优化设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及横向联邦建模优化程序。其中,操作系统是管理和控制设备硬件和软件资源的程序,支持横向联邦建模优化程序以及其它软件或程序的运行。在图1所示的设备中,用户接口1003主要用于与客户端进行数据通信;网络接口1004主要用于服务器建立通信连接;处理器1001可以用于调用存储器1005中存储的横向联邦建模优化程序,并执行以下操作:
采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
进一步地,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,处理器1001还可以用于调用存储器1005中存储的横向联邦建模优化程序,并执行以下操作:
当检测到本地私有任务后,获取与所述本地私有任务对应的私有替换模型;
采用所述私有替换模型替换更新后的本地基础模型中的私有部分模型得到本地私有任务模型;
采用与所述本地私有任务对应的本地数据集对所述本地私有任务模型进行参数更新操作,以更新所述本地私有任务模型中的模型参数。
进一步地,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,理器1001还可以用于调用存储器1005中存储的横向联邦建模优化程序,并执行以下操作:
当检测到公有任务后,获取与所述公有任务对应的公有替换模型;
采用所述公有替换模型替换更新后的本地基础模型中的公有部分模型得到本地公有任务模型;
将与所述公有任务对应的本地数据集作为预设本地数据集,采用所述本地公有任务模型作为本地基础模型,再执行所述步骤:采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息。
进一步地,所述将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息的步骤包括:
对所述公有部分模型对应的参数更新信息进行近似量化操作,得到量化更新信息;
将所述量化更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的量化更新信息进行联邦融合得到全局更新信息。
进一步地,所述对所述公有部分模型对应的参数更新信息进行量化操作,得到量化更新信息的步骤包括:
将预设整型向量与所述公有部分模型对应的参数更新信息代入余弦相似度公式中,其中,所述预设整型向量的各元素值待确定;
对所述余弦相似度公式进行求解得到所述预设整型向量的各元素值,将已确定各元素值的预设整型向量作为量化更新信息,其中,已确定各元素值的预设整型向量使得所述余弦相似度公式的余弦值最大化。
进一步地,当所述预设本地数据集是图像数据集时,所述采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息的步骤包括:
将所述图像数据集输入本地基础模型得到所述图像数据集中各图像对应的分类预测结果;
基于所述分类预测结果和各图像对应的真实分类标签计算所述本地基础模型的分类损失;
基于所述分类损失计算得到所述本地基础模型中私有部分模型和公有部分模型分别对应的梯度信息,将所述梯度信息作为参数更新信息。
进一步地,当所述预设本地数据集是图像数据集时,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,理器1001还可以用于调用存储器1005中存储的横向联邦建模优化程序,并执行以下操作:
当检测到更新后的本地基础模型满足预设模型条件时,将更新后的本地基础模型作为目标模型;
将待分类图像数据输入所述目标模型的私有部分模型进行处理,得到中间结果;将所述中间结果输入所述目标模型的公有部分模型进行处理,得到所述待分类图像数据的分类结果;或,
将待分类图像数据进行划分得到第一部分图像数据和第二部分图像数据;将所述第一部分图像数据和所述第二部分图像数据分别通过所述目标模型的私有部分模型和公有部分模型进行处理,得到私有结果和公有结果;联合所述私有结果和所述公有结果,得到所述待分类图像数据的分类结果。
基于上述的结构,提出横向联邦建模优化方法的各实施例。
参照图2,图2为本发明横向联邦建模优化方法第一实施例的流程示意图。需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。本发明横向联邦建模优化方法应用于联邦学习中的参与设备,多个参与设备与参与横向联邦学习的协调设备通信连接,参与设备与协调设备可以是智能手机、个人计算机和服务器等设备。在本实施例中,横向联邦建模优化方法包括:
步骤S10,采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
在本实施例中,协调设备与各参与设备可通过握手、身份认证等操作预先建立通信连接,并确定本次联邦建模各个参与设备中的模型结构。各参与设备本地的模型(以下称本地基础模型)可包括私有部分模型和公有部分模型两个部分,各个参与设备的公有部分模型结构相同,以备进行联邦融合,私有部分模型的结构可设置得不同,具体可按照各个参与设备本地的建模任务来进行设置。本地基础模型可以是任意的机器学习模型,其中私有部分模型和公有部分模型的连接方式在本实施例中不作限制,具体可由参与设备根据建模任务进行设置。例如,当建模任务是构建图像分类模型时,本地基础模型可采用图像卷积神经网络结构,其中前面的输入层和卷积层等网络层可设置为公有部分网络,后面的全连接层和输出层等网络层可设置为私有部分网络,那么,各个参与设备可按照各自的图像分类需求设置全连接层和输出层的具体结构,以使得各参与设备的本地基础模型输出不同的图像分类结果,例如,A参与设备设置输出层输出20类分类标签,B参与设备设置输出层输出30类分类标签。
在联邦建模之前,各个参与设备中的本地基础模型的模型参数是随机或其他方式初始化的,联邦建模的过程中各个参与设备进行多轮联合参数更新,以优化更新各自本地基础模型中的模型参数,最终得到符合建模要求的本地基础模型。
具体地,在一轮联合参数更新过程中,参与设备先获取本轮联合参数更新中要采用的预设本地数据集。其中,预设本地数据集可以是预先采集的用于建模的数据集,各个参与设备的数据集中可能包含隐私数据,故各参与设备互相之前不会直接传递数据集。参与设备采用预设本地数据集对本地基础模型进行参数更新操作,其中,若是第一轮联合参数更新,则在进行参数更新操作之前本地基础模型中的模型参数是初始化的,若是第一轮以后的联合参数更新,则在进行参数更新操作之前本地基础模型中的模型参数是上一轮更新后的模型参数。
参与设备进行参数更新操作后得到本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息。其中,参数更新信息可以是模型参数对应的梯度,也可以是更新后的模型参数,由于私有部分模型和公有部分模型中分别有对应的模型参数,故参数更新操作后也得到两个部分分别对应的参数更新信息。具体地,当参数更新信息是模型参数对应的梯度时,参与设备进行参数更新操作的具体过程可以是:将预设本地数据集输入本地基础模型进行处理,得到预测结果;基于预测结果和预设本地数据集对应的真实标签计算本地基础模型的损失函数;基于损失函数计算得到私有部分模型中各个模型参数对应的梯度,以及公有部分模型中各个模型参数对应的梯度。当参数更新信息是更新后的模型参数时,参与设备进行参数更新操作的具体过程可以是上述过程基础上,基于私有部分模型中模型参数的梯度更新私有部分模型中的模型参数,基于公有部分模型中模型参数的梯度更新公有部分模型中的模型参数。其中,损失函数可采用常用的机器学习模型损失函数,根据损失函数计算梯度和根据梯度更新参数的方式均可采用现有的机器学习模型参数更新方式,在此不进行详细赘述。
步骤S20,将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
参与设备将公有部分模型对应的参数更新信息发送给协调设备。协调设备对各个参与设备发送的参数更新信息进行联邦融合,得到全局更新信息。其中,联邦融合可以是对各个参数更新信息进行平均或加权平均,具体可采用常用的联邦融合方式,在此不作限制。协调设备将全局更新信息发送给各个参与设备。
步骤S30,采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
参与设备接收协调设备发送的全局更新信息,并采用全局更新信息更新公有部分模型中的模型参数。具体地,当参数更新信息是梯度时,全局更新信息也是梯度,参与设备根据全局更新信息更新公有部分模型中的模型参数,即根据梯度更新模型参数;当参数更新信息是模型参数时,全局更新信息也是模型参数,参与设备直接采用全局更新信息作为公有部分模型更新后的模型参数。
参与设备采用私有部分模型的参数更新信息更新私有部分模型中的模型参数。具体地,当参数更新信息是梯度时,参与设备根据参数更新信息更新私有部分模型中的模型参数,即根据梯度更新模型参数;当参数更新信息是模型参数时,参与设备直接采用参数更新信息作为私有部分模型更新后的模型参数。在更新私有部分模型和公有部分模型中的模型参数后,本地基础模型得到了更新,至此完成一轮联合参数更新。
经过多轮联合参数更新后,若检测到本地基础模型收敛,或检测到迭代轮次达到预定的一个最大轮次,或检测到联合建模的时间达到预定的一个最大时间,或检测到其他预定的停止条件时,参与设备可结束联合参数更新,将最新更新的本地基础模型作为建模完成的目标模型,并可基于目标模型完成预测任务。
在本实施例中,通过在参与设备中设置包括私有部分模型和公有部分模型的本地基础模型,并设置各个参与设备中的公有部分模型结构相同,各个参与设备采用其本地数据集对本地基础模型进行参数更新操作,得到本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,再将公有部分模型对应的参数更新信息发送给协调设备进行联邦融合得到全局更新信息,基于全局更新信息更新公有部分模型的模型参数,基于私有部分模型的参数更新信息更新各自私有部分模型的模型参数,以更新本地基础模型,完成公私混合的联邦建模。由于各个参与设备本地基础模型中的公有部分模型结构相同,故各参与设备可以联合完成联邦建模,基于联邦建模保证了各参与设备中数据隐私的同时,也扩充了模型的训练数据量,从而使得本地基础模型的模型预测准确率得到优化。同时,相比于现有的横向联邦建模中各个参与设备无法单独修改各自的本地模型,在本实施例中,由于各个参与设备的本地基础模型中还包括私有部分模型,私有部分模型的模型参数更新优化是各个参与设备本地分别进行的,所以各个参与设备可根据各自的建模任务的差异设置不同结构的私有部分模型,并可灵活地调整各自的私有部分模型,而不用联合其他参与设备对私有部分模型进行改动,从而提高了参与设备的建模效率,节省了参与设备内部的计算资源。
进一步地,基于上述第一实施例,提出本发明横向联邦建模优化方法第二实施例,在本实施例中,所述方法还包括:
步骤S40,当检测到本地私有任务后,获取与所述本地私有任务对应的私有替换模型;
在一轮联合参数更新得到更新后的本地基础模型后,或者在结束联合参数更新后,参与设备若检测到本地私有任务,则可获取与该本地私有任务对应的私有替换模型。其中,本地私有任务是参与设备触发的对私有部分模型的模型结构进行更换,以适应新的建模任务的任务,该新的建模任务可以是不同于联邦建模任务的,与其他参与设备也无关。本地私有任务可对应一个私有替换模型,该私有替换模型可以是预先基于该新的建模任务设置的模型结构,私有替换模型中的模型参数可以是通过随机或其他方式初始化的。
步骤S50,采用所述私有替换模型替换更新后的本地基础模型中的私有部分模型得到本地私有任务模型;
参与设备采用私有替换模型替换更新后的本地基础模型中的私有部分模型,公有部分模型则保持不变,替换后得到由原公有部分模型和私有替换模型构成的本地私有任务模型。
步骤S60,采用与所述本地私有任务对应的本地数据集对所述本地私有任务模型进行参数更新操作,以更新所述本地私有任务模型中的模型参数。
参与设备中预先可设置了与本地私有任务对应的本地数据集,参与设备采用该本地数据集对本地私有任务模型进行参数更新操作,以更新本地私有任务模型中的模型参数。其中需要说明的是,本步骤中的参数更新操作与上述第一实施例中的参数更新操作不一定相同。本步骤中,参数更新操作可以是进行一轮或多轮的参数更新,一轮参数更新的过程可以是:将本地数据集输入本地私有任务模型进行处理,得到预测结果;基于预测结果和本地数据集对应的真实标签计算本地私有任务模型的损失函数;基于损失函数计算得到本地私有任务模型中各个模型参数对应的梯度,其中模型参数包括私有替换模型中的模型参数和公有部分模型中的模型参数;根据梯度更新各个模型参数,以完成一轮参数更新。在多轮参数更新后,若参与设备检测到本地私有任务模型收敛,或检测到迭代轮次达到预定的一个最大轮次,或检测到本地参数更新的时间达到预定的一个最大时间,或检测到其他预定的停止条件时,参与设备可结束本地参数更新,将最新更新的本地私有任务模型作为本地建模完成的目标模型,并可基于目标模型完成相应的预测任务。
例如,联邦建模任务是构建一个20类分类标签的图像分类模型,基于该联邦建模任务,参与设备设置的本地基础模型中公有部分模型的模型结构是图像特征提取层,私有部分模型的模型结构是适于做20类分类标签的多分类器,连接于图像特征提取层后;各参与设备联合建模得到优化更新后的本地基础模型后,检测到了一个本地私有任务,该本地私有任务对应的新建模任务是构建一个30类分类标签的图像分类模型,则本地私有任务对应的私有替换模型是一个适于做30类分类标签的多分类器,该多分类器的模型参数是初始化的;采用本地私有任务对应的多分类器替换更新后的本地基础模型中原有的多分类器,而原本的图像特征提取层不变,这样得到一个本地私有任务模型;参与设备采用该本地私有任务对应的本地数据集,也即30类分类标签对应的图像数据集,来对本地私有任务模型进行参数更新操作,优化更新本地私有任务模型中图像特征提取层和多分类器的模型参数。由于图像特征提取层是经过联邦建模得到的,所以已经学习到了大量的图像特征,从而相比于未经过联邦建模的图像特征提取层,其具备更好的特征提取效果,并且,在参与设备本次的参数更新操作后,图像特征提取层在新的数据集下特征提取效果得到了进一步的优化;而本地私有任务模型中的多分类器虽然是初始化的,但图像特征提取层提取到的有效特征给多分类器提供了一个收敛方向,从而使得多分类器能够快速地收敛,从而提高了参与设备新的建模任务的完成速度,降低了对参与设备计算资源的消耗;在此基础上,参与设备也获得了一个能够做30类分类的图像分类模型。
在本实施例中,参与设备在联邦建模后,可基于本地私有任务,对联邦建模中更新后的本地基础模型中的私有部分网络进行替换,以适应新的建模任务,从而实现了参与设备能够灵活地调整本地模型。
进一步地,基于上述第一和/或第二实施例,提出本发明横向联邦建模优化方法第三实施例,在本实施例中,所述方法还包括:
步骤S70,当检测到公有任务后,获取与所述公有任务对应的公有替换模型;
在一轮联合参数更新得到更新后的本地基础模型后,或者在结束联合参数更新后,参与设备若检测到公有任务,则可获取与该公有任务对应的公有替换模型。其中,公有任务是参与设备触发的对公有部分模型的模型结构进行更换,以适应新的联邦建模任务的任务,该新的联邦建模任务可以是不同于之前的联邦建模任务的,该新的联邦建模任务是与其他参与设备一起确定的,而这里的其他参与设备与之前的联邦建模中的其他参与设备可以相同也可以不同。公有任务可对应一个公有替换模型,该公有替换模型可以是与其他参与设备预先协商确定的,或者是由协调设备广播的,公有替换模型中的模型参数可以是通过随机或其他方式初始化的。
步骤S90,采用所述公有替换模型替换更新后的本地基础模型中的公有部分模型得到本地公有任务模型;
参与设备采用公有替换模型替换更新后的本地基础模型中的公有部分模型,私有部分模型则保持不变,替换后得到由公有替换模型和原私有替换模型构成的本地公有任务模型。
步骤S80,将与所述公有任务对应的本地数据集作为预设本地数据集,采用所述本地公有任务模型作为本地基础模型,再执行所述步骤:采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息。
参与设备中预先可设置了与公有任务对应的本地数据集,参与设备将该本地数据集作为预设数据集,也即,作为新一次联邦建模用的数据集,将本地公有任务模型作为本地基础模型,也即作为新一次联邦建模用的本地模型,再执行步骤S10以及后续的步骤。也即,参与设备对于本地公有任务模型,同样地采用本地数据集对其进行参数更新操作,得到本地公有任务模型中功能公有替换模型和私有部分模型分别对应的参数更新信息,将公有替换网络对应的参数更新信息发送给协调设备进行联邦融合,得到全局参数更新,根据全局参数更新来更新公有替换模型中的模型参数,根据私有部分模型对应的参数更新信息更新私有部分模型中的模型参数,以对本地公有任务模型进行更新。经过多轮联合参数更新后,若检测到本地公有任务模型收敛,或检测到迭代轮次达到预定的一个最大轮次,或检测到联合建模的时间达到预定的一个最大时间,或检测到其他预定的停止条件时,参与设备可结束联合参数更新,将最新更新的本地公有任务模型作为建模完成的目标模型,并可基于目标模型完成预测任务。
例如,联邦建模任务是构建一个图像语义分割模型,用于分离图像中的建筑物部分和非建筑物部分,基于该联邦建模任务,参与设备设置的本地基础模型中公有部分模型的模型结构是图像特征提取层,私有部分模型的模型结构是连接于图像特征提取层后的二分类器,用于基于图像特征提取层提取到的输入图像的特征对中各个像素点划分类别,即各个像素点是否属于建筑物;各参与设备联合建模得到优化更新后的本地基础模型后,检测到了一个公有任务,该公有任务对应的新建模任务是构建一个用于分离图像中植被区域和非植被区域的图像语义分割模型,则公有任务对应的公有替换模型是一个新的图像特征提取层,该新图像特征提取层中的模型参数是初始化的;采用公有任务对应的图像特征提取层替换更新后的本地基础模型中原有的图像特征提取层,而原本的二分类器不变,这样得到一个本地公有任务模型;参与设备采用该公有任务对应的本地数据集,也即大量包含植被的图像构成的数据集,来对本地公有任务模型进行参数更新操作,优化更新本地公有任务模型中图像特征提取层和二分类器的模型参数,最终得到用于分离植被区域与非植被区域的图像语义分割模型。由于本地公有任务模型中的二分类器是经过前一次联邦建模得到的,所以已经学习到了大量的分类经验,从而相比于未经过联邦建模的二分类器,其具备更好的分类准确率,并且,在参与设备进行本地联邦建模后,二分类器在新的数据集下分类准确率得到进一步的优化;而本地公有任务模型中的图像特征提取层虽然是初始化的,但二分类器的准确分类结果反过来给图像特征提取层提供了一个收敛方向,从而使得图像特征提取层能够快速收敛,从而提高了参与设备进行新一次联邦建模的速度,降低了对参与设备计算资源的消耗。
在本实施例中,参与设备在联邦建模后,可基于公有任务,对联邦建模中更新后的本地基础模型中的公有部分网络进行替换,以适应新的联邦建模任务,从而实现了参与设备能够灵活地调整本地模型。
进一步地,基于上述第一、第二和/或第三实施例,提出本发明横向联邦建模优化方法第四实施例,在本实施例中,所述步骤S20包括:
步骤S201,对所述公有部分模型对应的参数更新信息进行近似量化操作,得到量化更新信息;
参与设备在得到公有部分模型对应的参数更新信息后,可对公有部分模型对应的参数更新信息进行近似量化操作,量化操作的结果作为量化更新信息。其中,近似量化操作可以是在对参数更新信息进行量化时,保留参数更新信息的关键信息,从而使得得到的量化更新信息与参数更新信息在关键信息上是近似的。具体地,参与设备可基于某种相似度算法,来计算与参数更新信息相似的量化信息,得到参数更新信息的量化更新信息,该量化更新信息与参数更新信息的相似度满足预设相似度条件。其中,相似度算法可采用现有的一些相似度算法,例如余弦相似度公式。预设相似度条件可以是预先设置的一种条件,例如,预设相似度条件可以是需要满足量化更新信息与参数更新信息之间的相似度大于某个阈值,当大于该阈值时,表示量化更新信息与参数更新信息很相似。需要说明的是,量化更新信息中的各个信息可以是一种量化形式的信息,如原始的参数更新信息中各个信息是连续的浮点数,则量化更新信息中各个信息是整型数值,相对于原始的浮点数而言在占用的存储空间上减少了很多,从而能够减少通信开销,提高通信效率。
步骤S202,将所述量化更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的量化更新信息进行联邦融合得到全局更新信息。
参与设备将量化更新信息发送给协调设备。协调设备对从各个参与设备接收到的量化更新信息进行联邦融合得到全局更新信息。其中,联邦融合可以是对各个量化更新信息进行平均或加权平均,具体可采用常用的联邦融合方式,在此不作限制。协调设备将全局更新信息发送给各个参与设备。
在本实施例中,通过对参数更新信息进行量化处理,得到的量化更新信息,将量化更新信息发送给协调设备,由于量化更新信息是对参数更新信息的一种量化信息,所占用的存储空间比原始的参数更新信息小得多,使得信息传递时所需要的通信开销减少,联邦建模过程中的通信效率得到提高。又由于本发明实施例中是对参数更新信息进行近似量化处理,得到的是与参数更新信息近似的量化信息,使得在将量化更新信息发送给协调设备之后,协调设备可以直接使用量化更新信息来进行后续的联邦学习,可以无需对量化更新信息进行还原,从而减少了协调设备的计算量,也减少了协调设备的存储空间占用,提高了联邦学习建模效率。此外,本实施例中,通过将参数更新信息的量化更新信息发送给协调设备,而不是将参数更新信息本身发送给协调设备,使得在信息的传递过程中,即使被第三方攻击者所截获,其获得的也不是原始的参数更新信息,从而无法推导出联邦学习模型的输入数据,也就无法获取到隐私信息,从而提高了联邦学习信息传递过程中的隐私保护力度。
进一步地,所述步骤S201包括:
步骤S2011,将预设整型向量与所述公有部分模型对应的参数更新信息代入余弦相似度公式中,其中,所述预设整型向量的各元素值待确定;
步骤S2012,对所述余弦相似度公式进行求解得到所述预设整型向量的各元素值,将已确定各元素值的预设整型向量作为量化更新信息,其中,已确定各元素值的预设整型向量使得所述余弦相似度公式的余弦值最大化。
公有部分模型对应的参数更新信息可以是梯度信息或模型参数信息,而梯度信息和模型参数信息均可以是向量形式的。
参与设备可将预设整型向量与公有部分模型对应的参数更新信息(以下称为待传递向量)代入余弦相似度公式,也即,计算预设整型向量与待传递向量的余弦值,其中预设整型向量的各元素值是待确定的,具体地,各元素值可以是随机初始化的;基于该余弦相似度公式求解得到该预设整型向量的各元素值,求解得到的各个元素值,使得余弦相似度公式的余弦值最大化,也即使得预设整型向量与待传递向量的余弦值最大化;将已确定各元素值的预设整型向量作为待传递向量的量化更新信息。求解过程可以是:选取预设整型向量多种可能的元素值,根据多种可能的元素值,分别计算得到对应的余弦值,从多个余弦值中选择最大的余弦值,将该余弦值对应的各个元素值,作为预设整型向量最终确定的元素值。可以理解的是,当两个向量的余弦值最大时,两个向量在方向上最接近。
在一实施方式中,还提供一种基于余弦相似度公式计算量化更新信息的方式,该方式使得计算效率更快,进而节省计算资源,提高整个通信效率。
具体地,可先获取待传递向量对应的降序向量。具体可以是将待传递向量的各个元素值计算绝对值后再进行降序排列,得到待传递向量对应的降序向量。得到的降序向量的各个元素值都大于零,且按照数值从大到小排列。
进一步地,获取待传递向量对应的降序向量还可以是:对待传递向量进行单位化处理得到单位化向量;对单位化向量中各元素取绝对值后进行降序排列,得到降序向量。其中,单位化处理过程是保持待传递向量的方向不变,将待传递向量的长度化为1,具体的处理过程可参照现有对向量进行单位化处理的过程,在此不进行详细赘述。
将降序向量和候选数量值代入最大化目标值的最大化公式中进行计算,选取使得目标值最大的候选数量值作为目标数量值,其中,最大化公式是基于余弦相似度公式构建的,在最大化公式中,目标值等于对降序向量中目标元素求和后除以根号下的目标数量得到的结果,目标元素为降序向量中序号小于或等于候选数量值的元素。也即可根据余弦相似度公式构建一个最大化公式,该最大化公式是最大化目标值的公式,在该公式中,目标值等于对降序向量中目标元素求和后除以根号下的所述目标数量得到的结果,其中,目标元素是降序向量中序号小于或等于候选数量值的元素。对最大化公式的求解过程,是将各个候选数量值与降序向量中的目标元素代入最大化公式中,求得使得目标值最大的候选数量值。
在计算得到目标数量值后,可基于目标数量值进行分配量化值的操作,也即,确定量化更新信息的各个元素值,进而得到待传递向量对应的量化更新信息。具体地,量化更新信息的元素个数与单位化向量的元素个数相同,量化更新信息中元素的序号与单位化向量中元素的序号对应,那么,可分别为单位化向量的各个元素分配一个量化值,将该量化值作为量化更新信息对应位置的元素值,从而得到量化更新信息。
进一步地,可以确定降序向量中序号小于或等于该目标数量值的元素作为降序元素,也即将前面最大的几个元素作为降序元素。降序向量是对单位化向量求绝对值后在降序排序的向量,那么单位化向量中的各个元素是与降序向量中的各个元素对应的,可将单位化向量中与各个降序元素对应的元素作为保留元素,也即,将单位化向量中绝对值最大的几个元素作为保留元素。进一步地,为单位化向量中保留元素以外的元素对应分配0,对保留元素中大于零的元素对应分配正1,对保留元素中小于零的元素对应分配负1,若保留元素为0,则对应分配0。进而完成了对单位化向量各个元素对应分配量化值,得到量化更新信息,量化更新信息中各个元素值的取值是0、-1或+1。
其中的原理是:采用W=(w1,w2,…,wn)来表示待传递向量,W0=(a1,a2,…,an)是对W进行单位化处理得到的向量,设量化更新信息T=(t1,t2,…,ti,…tn),其中,ti∈{0、±1}或ti∈{±1},根据余弦相似度公式,建立如图3所示的W、W0和T之间的关系式(1)。根据该关系式(1),要最大化余弦值,需要使得关系式中等式最右边的项分母越大,分子越小。而分子是对T中各个元素值就平方和再求平方根,可以转化为对T中绝对值为1的元素的个数求平方根。而分母是W0的元素对应与T的元素相乘再求和,那么为使得分母越大,T中元素的绝对值为1,且与W0中对应的元素同号时,可使得分母越大,而当T中绝对值为1的元素越多时,分子也会变大。那么,需要找到T中绝对值为1的元素的合适个数,使得结果最大,而当T中绝对值为1的元素,对应的W0中的元素越大时,分母越大,所以将W0中最大的几个元素对应的T中元素分配绝对值为1的量化值。
依据上述推理过程,将关系式(1)转化为如图4所示的式(2),该公式即最大化公式。其中,对W0的各个元素取绝对值得到{∣a1∣,∣a2∣,…,∣an∣},对{∣a1∣,∣a2∣,…,∣an∣}降序排列得到向量B={b1,b2,…,bn},向量B对应的量化向量T’=(t1’,t2’,…,ti’,…tn’),其中ti’表示原ti的换序,T’中非零个数为M(M=1,…,N),则j∈(M+1,…,N)时,ti’都为零。通过求解式(2),可以得到一个M,使得(2)的结果最大,也即使得目标值最大。得到M后,即得到了T中绝对值为1的元素个数,并根据降序向量与单位化向量元素的对应关系,确定了T中哪些元素的绝对值为1,再根据单位化向量中元素的正负,确定了T中绝对值为1的元素的正负,也即,单位化向量中元素为正,对应的T中元素为+1,单位化向量中元素为负,对应的T中元素为-1。
在本实施例中,在基于余弦相似度公式来计算待传递向量的量化更新信息的过程中,将非线性整数问题转变为线性优化问题,也即转换为了求解最大化公式的问题,将优化求解的计算量缩减到了O(n*log n),相比于采用函数变换方式的计算量O(N2),本实施例方案使得联邦学习信息传递过程中的计算量大大减小,从而在提高通信效率的同时,也提高了联邦学习建模过程中的整体效率。
进一步地,进一步地,基于上述第一、第二、第三和/或第四实施例,提出本发明横向联邦建模优化方法第五实施例,在本实施例中,当所述预设本地数据集是图像数据集时,所述步骤S10包括:
步骤S101,将所述图像数据集输入本地基础模型得到所述图像数据集中各图像对应的分类预测结果;
在本实施例中,联邦建模任务可以是构建一个图像分类模型,则预设本地数据集可以是目标分类标签对应的大量图像数据构成的数据集,并预先设置了各个图像数据对应的真实分类标签,即各个图像数据属于哪一类。参与设备将图像数据集输入本地基础模型得到图像数据集中各图像对应的分类预测结果。
步骤S102,基于所述分类预测结果和各图像对应的真实分类标签计算所述本地基础模型的分类损失;
参与设备根据分类预测结果和各个图像对应的真实分类标签计算本地基础模型的分类损失。其中,分类损失可采用常用的图像分类模型的损失函数,计算分类损失的方式也可采用常用的损失函数计算方式,在此不进行详细赘述。
步骤S103,基于所述分类损失计算得到所述本地基础模型中私有部分模型和公有部分模型分别对应的梯度信息,将所述梯度信息作为参数更新信息。
参与设备根据分类损失计算得到本地基础模型中私有部分模型和公有部分模型分别对应的梯度信息。具体地,根据分类损失计算梯度信息的方式可采用常用的根据损失函数计算梯度信息的方式,在此不进行详细赘述。参与设备将梯度信息作为参数更新信息。
进一步地,在另一实施方式中,参与设备可在计算得到梯度信息后,根据梯度信息更新本地基础模型中私有部分模型和公有部分模型的模型参数,将私有部分模型更新后的模型参数作为私有部分模型对应的参数更新信息,将公有部分模型更新后的模型参数作为公有部分模型对应的参数更新信息。
进一步地,当所述预设本地数据集是图像数据集时,所述方法还包括:
A10,当检测到更新后的本地基础模型满足预设模型条件时,将更新后的本地基础模型作为目标模型;
当预设本地数据集是图像数据集,联邦建模任务是构建一个图像分类模型时,本地基础模型的模型结构可采用图像分类模型所常用的模型结构,将图像分类模型划分为私有部分模型和公有部分模型两个部分,例如根据需要将图像分类模型前端的图像特征提取层作为公有部分模型,将后端的多分类器作为私有部分模型,或者将前端的图像特征提取层作为私有部分模型,将后端的多分类器作为公有部分模型。在一轮联合参数更新得到更新后的本地基础模型后,可检测更新后的本地基础模型是否满足预设模型条件,其中,预设模型条件可以根据具体的需要进行设置,例如可以是本地基础模型需收敛,还可以是迭代轮次需达到一个预定的最大轮次,还可以是迭代时间需要达到一个预定的最大时间,还可以是其他条件。当检测到更新后的本地基础模型满足预设模型条件时,将更新后的本地基础模型作为目标模型,也即作为建模完成的图像分类模型。
A20,将待分类图像数据输入所述目标模型的私有部分模型进行处理,得到中间结果;
A30,将所述中间结果输入所述目标模型的公有部分模型进行处理,得到所述待分类图像数据的分类结果。
在本实施例中,当目标模型的私有部分模型在前端,公有部分模型在后端时,也即将模型纵向划分时,可将待分类图像数据输入目标模型的私有部分模型进行处理,得到中间结果,再将中间结果输入待分类模型的公有部分模型进行处理,得到待分类图像数据的分类结果。
在另一实施方式中,所述步骤A10之后包括:
步骤A40,将待分类图像数据进行划分得到第一部分图像数据和第二部分图像数据;
步骤A50,将所述第一部分图像数据和所述第二部分图像数据分别通过所述目标模型的私有部分模型和公有部分模型进行处理,得到私有结果和公有结果;
步骤A60,联合所述私有结果和所述公有结果,得到所述待分类图像数据的分类结果。
当将模型横向划分时,也即,公有部分模型和私有部分模型分别处理一部分输入数据时,可将待分类图像数据划分为第一部分图像数据和第二部分图像数据,分别对应私有部分模型和公有部分模型。其中,划分图像数据的方式可以是将图像直接切分为两个区域,即从中间裁剪开,一部分区域的图像数据作为第一部分图像数据,另一部分区域的图像数据直接作为第二部分图像数据。将第一部分图像数据通过目标模型中的私有部分模型进行处理得到私有结果,将第二部分图像数据通过目标模型中的公有部分模型进行处理得到公有结果。再将私有结果和公有结果进行组合,得到待分类图像数据的分类结果。具体地,可以将私有结果和公有结果以加权平均或加和等方式进行组合,在此不作限制。
在本实施例中,通过在参与设备中设置包括私有部分模型和公有部分模型的图像分类模型,并设置各个参与设备中的公有部分模型结构相同,各个参与设备采用其本地的图像数据集对图像分类模型进行参数更新操作,得到图像分类模型中私有部分模型和公有部分模型分别对应的参数更新信息,再将公有部分模型对应的参数更新信息发送给协调设备进行联邦融合得到全局更新信息,基于全局更新信息更新公有部分模型的模型参数,基于私有部分模型的参数更新信息更新各自私有部分模型的模型参数,以更新图像分类模型,完成公私混合的联邦建模。由于各个参与设备图像分类模型中的公有部分模型结构相同,故各参与设备可以联合完成联邦建模,基于联邦建模保证了各参与设备中数据隐私的同时,也扩充了模型的训练数据量,从而使得图像分类模型的分类准确率得到优化。同时,相比于现有的横向联邦建模中各个参与设备无法单独修改各自的本地模型,在本实施例中,由于各个参与设备的图像分类模型中还包括私有部分模型,私有部分模型的模型参数更新优化是各个参与设备本地分别进行的,所以各个参与设备可根据各自的建模任务的差异设置不同结构的私有部分模型,并可灵活地调整各自的私有部分模型,以实现不同的图像分类任务。
此外本发明实施例还提出一种横向联邦建模优化装置,所述装置部署于参与横向联邦建模的参与设备,参照图5,所述装置包括:
第一更新模块10,用于采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
发送模块20,用于将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
第二更新模块30,用于采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
进一步地,所述装置还包括:
第一获取模块,用于当检测到本地私有任务后,获取与所述本地私有任务对应的私有替换模型;
第一替换模块,用于采用所述私有替换模型替换更新后的本地基础模型中的私有部分模型得到本地私有任务模型;
第三更新模块,用于采用与所述本地私有任务对应的本地数据集对所述本地私有任务模型进行参数更新操作,以更新所述本地私有任务模型中的模型参数。
进一步地,所述装置还包括:
第二获取模块,用于当检测到公有任务后,获取与所述公有任务对应的公有替换模型;
第二替换模块,用于采用所述公有替换模型替换更新后的本地基础模型中的公有部分模型得到本地公有任务模型;
执行模块,用于将与所述公有任务对应的本地数据集作为预设本地数据集,采用所述本地公有任务模型作为本地基础模型,再执行所述步骤:采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息。
进一步地,所述发送模块20包括:
量化单元,用于对所述公有部分模型对应的参数更新信息进行近似量化操作,得到量化更新信息;
发送单元,用于将所述量化更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的量化更新信息进行联邦融合得到全局更新信息。
进一步地,所述量化单元包括:
代入子单元,用于将预设整型向量与所述公有部分模型对应的参数更新信息代入余弦相似度公式中,其中,所述预设整型向量的各元素值待确定;
求解子单元,用于对所述余弦相似度公式进行求解得到所述预设整型向量的各元素值,将已确定各元素值的预设整型向量作为量化更新信息,其中,已确定各元素值的预设整型向量使得所述余弦相似度公式的余弦值最大化。
进一步地,当所述预设本地数据集是图像数据集时,所述第一更新模块10包括:
输入单元,用于将所述图像数据集输入本地基础模型得到所述图像数据集中各图像对应的分类预测结果;
第一计算单元,用于基于所述分类预测结果和各图像对应的真实分类标签计算所述本地基础模型的分类损失;
第二计算单元,用于基于所述分类损失计算得到所述本地基础模型中私有部分模型和公有部分模型分别对应的梯度信息,将所述梯度信息作为参数更新信息。
进一步地,当所述预设本地数据集是图像数据集时,所述装置还包括:
确定模块,用于当检测到更新后的本地基础模型满足预设模型条件时,将更新后的本地基础模型作为目标模型;
分类模块,用于将待分类图像数据输入所述目标模型的私有部分模型进行处理,得到中间结果;将所述中间结果输入所述目标模型的公有部分模型进行处理,得到所述待分类图像数据的分类结果;或,
所述分类模块用于将待分类图像数据进行划分得到第一部分图像数据和第二部分图像数据;将所述第一部分图像数据和所述第二部分图像数据分别通过所述目标模型的私有部分模型和公有部分模型进行处理,得到私有结果和公有结果;联合所述私有结果和所述公有结果,得到所述待分类图像数据的分类结果。
本发明横向联邦建模优化装置的具体实施方式的拓展内容与上述横向联邦建模优化方法各实施例基本相同,在此不做赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述存储介质上存储有横向联邦建模优化程序,所述横向联邦建模优化程序被处理器执行时实现如下所述的横向联邦建模优化方法的步骤。
本发明横向联邦建模优化设备和计算机可读存储介质的各实施例,均可参照本发明横向联邦建模优化方法各实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种横向联邦建模优化方法,其特征在于,所述方法应用于参与横向联邦建模的参与设备,所述方法包括以下步骤:
采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
2.如权利要求1所述的横向联邦建模优化方法,其特征在于,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,还包括:
当检测到本地私有任务后,获取与所述本地私有任务对应的私有替换模型;
采用所述私有替换模型替换更新后的本地基础模型中的私有部分模型得到本地私有任务模型;
采用与所述本地私有任务对应的本地数据集对所述本地私有任务模型进行参数更新操作,以更新所述本地私有任务模型中的模型参数。
3.如权利要求1所述的横向联邦建模优化方法,其特征在于,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,还包括:
当检测到公有任务后,获取与所述公有任务对应的公有替换模型;
采用所述公有替换模型替换更新后的本地基础模型中的公有部分模型得到本地公有任务模型;
将与所述公有任务对应的本地数据集作为预设本地数据集,采用所述本地公有任务模型作为本地基础模型,再执行所述步骤:采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息。
4.如权利要求1所述的横向联邦建模优化方法,其特征在于,所述将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息的步骤包括:
对所述公有部分模型对应的参数更新信息进行近似量化操作,得到量化更新信息;
将所述量化更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的量化更新信息进行联邦融合得到全局更新信息。
5.如权利要求4所述的横向联邦建模优化方法,其特征在于,所述对所述公有部分模型对应的参数更新信息进行量化操作,得到量化更新信息的步骤包括:
将预设整型向量与所述公有部分模型对应的参数更新信息代入余弦相似度公式中,其中,所述预设整型向量的各元素值待确定;
对所述余弦相似度公式进行求解得到所述预设整型向量的各元素值,将已确定各元素值的预设整型向量作为量化更新信息,其中,已确定各元素值的预设整型向量使得所述余弦相似度公式的余弦值最大化。
6.如权利要求1所述的横向联邦建模优化方法,其特征在于,当所述预设本地数据集是图像数据集时,所述采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息的步骤包括:
将所述图像数据集输入本地基础模型得到所述图像数据集中各图像对应的分类预测结果;
基于所述分类预测结果和各图像对应的真实分类标签计算所述本地基础模型的分类损失;
基于所述分类损失计算得到所述本地基础模型中私有部分模型和公有部分模型分别对应的梯度信息,将所述梯度信息作为参数更新信息。
7.如权利要求1至6中任一项所述的横向联邦建模优化方法,其特征在于,当所述预设本地数据集是图像数据集时,所述采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型的步骤之后,还包括:
当检测到更新后的本地基础模型满足预设模型条件时,将更新后的本地基础模型作为目标模型;
将待分类图像数据输入所述目标模型的私有部分模型进行处理,得到中间结果,将所述中间结果输入所述目标模型的公有部分模型进行处理,得到所述待分类图像数据的分类结果;或,
将待分类图像数据进行划分得到第一部分图像数据和第二部分图像数据;将所述第一部分图像数据和所述第二部分图像数据分别通过所述目标模型的私有部分模型和公有部分模型进行处理,得到私有结果和公有结果;联合所述私有结果和所述公有结果,得到所述待分类图像数据的分类结果。
8.一种横向联邦建模优化装置,其特征在于,所述装置部署于参与横向联邦建模的参与设备,所述装置包括:
第一更新模块,用于采用预设本地数据集对本地基础模型进行参数更新操作,得到所述本地基础模型中私有部分模型和公有部分模型分别对应的参数更新信息,其中,各参与设备的公有部分模型结构相同;
发送模块,用于将所述公有部分模型对应的参数更新信息发送给参与横向联邦建模的协调设备,以供所述协调设备对各参与设备发送的参数更新信息进行联邦融合得到全局更新信息;
第二更新模块,用于采用从所述协调设备接收到的所述全局更新信息更新所述公有部分模型中的模型参数,采用所述私有部分模型的参数更新信息更新所述私有部分模型中的模型参数,以更新所述本地基础模型。
9.一种横向联邦建模优化设备,其特征在于,所述横向联邦建模优化设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的横向联邦建模优化程序,所述横向联邦建模优化程序被所述处理器执行时实现如权利要求1至7中任一项所述的横向联邦建模优化方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有横向联邦建模优化程序,所述横向联邦建模优化程序被处理器执行时实现如权利要求1至7中任一项所述的横向联邦建模优化方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010850612.5A CN111967612A (zh) | 2020-08-21 | 2020-08-21 | 横向联邦建模优化方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010850612.5A CN111967612A (zh) | 2020-08-21 | 2020-08-21 | 横向联邦建模优化方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111967612A true CN111967612A (zh) | 2020-11-20 |
Family
ID=73391400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010850612.5A Pending CN111967612A (zh) | 2020-08-21 | 2020-08-21 | 横向联邦建模优化方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111967612A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024031564A1 (en) * | 2022-08-11 | 2024-02-15 | Huawei Cloud Computing Technologies Co., Ltd. | Methods and systems for federated learning with local predictors |
-
2020
- 2020-08-21 CN CN202010850612.5A patent/CN111967612A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024031564A1 (en) * | 2022-08-11 | 2024-02-15 | Huawei Cloud Computing Technologies Co., Ltd. | Methods and systems for federated learning with local predictors |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110782042B (zh) | 横向联邦和纵向联邦联合方法、装置、设备及介质 | |
Xiao et al. | Toward self-learning edge intelligence in 6G | |
Tang et al. | Computational intelligence and deep learning for next-generation edge-enabled industrial IoT | |
Wang et al. | A novel reputation-aware client selection scheme for federated learning within mobile environments | |
CN111522669A (zh) | 横向联邦学习系统优化方法、装置、设备及可读存储介质 | |
CN111461226A (zh) | 对抗样本生成方法、装置、终端及可读存储介质 | |
CN111222628B (zh) | 循环神经网络训练优化方法、设备、系统及可读存储介质 | |
CN114787824A (zh) | 联合混合模型 | |
Huang et al. | Fairness and accuracy in federated learning | |
CN113505882B (zh) | 基于联邦神经网络模型的数据处理方法、相关设备及介质 | |
CN115552429A (zh) | 使用非iid数据的横向联邦学习方法和系统 | |
Fan et al. | DNN deployment, task offloading, and resource allocation for joint task inference in IIoT | |
CN110968426A (zh) | 一种基于在线学习的边云协同k均值聚类的模型优化方法 | |
CN111767411B (zh) | 知识图谱表示学习优化方法、设备及可读存储介质 | |
CN110020022A (zh) | 数据处理方法、装置、设备及可读存储介质 | |
CN112540845A (zh) | 一种基于移动边缘计算的协作系统及方法 | |
Yu et al. | Collaborative computation offloading for multi-access edge computing | |
CN115686846A (zh) | 边缘计算中融合图神经网络和强化学习的容器集群在线部署方法 | |
Feng et al. | Resource allocation for augmented reality empowered vehicular edge metaverse | |
Jiang et al. | Complement sparsification: Low-overhead model pruning for federated learning | |
Liu et al. | Rendered tile reuse scheme based on FoV prediction for MEC-assisted wireless VR service | |
CN111967612A (zh) | 横向联邦建模优化方法、装置、设备及可读存储介质 | |
Sun et al. | Zero-shot multi-level feature transmission policy powered by semantic knowledge base | |
CN116541712B (zh) | 基于非独立同分布数据的联邦建模方法及系统 | |
CN117473415A (zh) | 基于融合特征和自适应权重的物联网流量分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |