一种联邦学习训练方法、装置、设备及存储介质与流程
本技术涉及深度学习领域,尤其涉及一种联邦学习训练方法、装置、设备及存储介质。
背景技术:
1、随着数据隐私保护的重要性日益凸显,联邦学习作为分布式机器学习范式可有效解决医疗、金融等需要保护数据隐私的应用场景中的数据安全问题,其核心目标是构建一个基于分布数据集的联邦学习模型,多节点参与其中进行分布式训练并最终聚合得到一个全局模型。常见的联邦平均算法的工作流程是各节点将本地模型的参数上传至服务器,服务器对各个节点的模型参数进行加权平均计算,之后再将计算得到的平均值广播回各个节点设备并反复迭代,直至模型收敛。
2、然而传统的联邦学习模式存在显著的局限性,由于模型参数在节点与服务器之间频繁传输,导致上下行通信开销巨大,严重影响模型训练的效率。因此聚焦于通过量化和稀疏性等技术来压缩模型更新,低比特训练技术应运而生,该技术在模型训练过程中使用低位整数矩阵计算算子替代传统卷积层或线性层中的浮点计算算子。
3、目前已有的低比特训练方法大致可分为三类,第一类运用低位浮点或新的数据类型进行训练,虽能实现与全精度网络相近的性能,但由于采用浮点类型导致在实际加速效果上不如整数量化明显;第二类是对整个网络进行整数量化,虽然量化程度较高,但与全精度网络相比,会造成较大的性能损失;第三类是仅对网络中的卷积层进行量化,该方法在保证性能基本不降低的情况下可加快训练速度,但未充分考虑模型训练不同阶段以及网络中不同层的差异。因此,现有的训练方法尚未能从根本上解决通信开销大的问题,且易造成训练性能的损失。
技术实现思路
1、本发明实施例的目的在于提供一种联邦学习训练方法、装置、设备及存储介质,以解决上述技术问题。
2、本发明提供了一种联邦学习训练方法,所述联邦学习训练方法包括:获取教师样本数据集,所述教师样本数据集包括多个节点在不同训练阶段分别对应的模型层级位宽的样本数据;根据所述教师样本数据集对预设智能体进行训练,以使得所述预设智能体学习在不同训练阶段通过调整模型层级位宽进行节点模型训练;将训练完成的预设智能体部署至联邦学习网络的多个待训练节点,以使所述训练完成的预设智能体对各所述待训练节点进行训练。
3、于本发明的一实施例中,模型层级位宽包括权重位宽、激活位宽和梯度位宽,所述预设智能体的构建包括:构建初始神经网络;对所述初始神经网络构建状态空间,所述状态空间包括时间步长、当前模型层级位宽、当前神经网络中各层级的量化误差以及历史模型层级位宽变化时间信息;对所述初始神经网络构建动作空间,所述动作空间中的动作项包括保持位宽、提升权重位宽、提升激活位宽以及提升梯度位宽;对所述初始神经网络设置奖励函数,所述奖励函数通过计算效率奖励和模型精度奖励的乘积得到;将已构建状态空间和动作空间,且已设置奖励函数的初始神经网络确定为预设智能体。
4、于本发明的一实施例中,奖励函数通过加权累加计算效率奖励和模型精度奖励得到包括:基于当前权重位宽与当前激活位宽的乘积确定当前计算成本,并确定当前计算成本与预设参考位宽计算成本的计算成本减少率,以根据所述计算成本减少率确定计算效率奖励,所述计算效率奖励和所述计算成本减少率成反比;将相同训练时间节点下预设参考位宽准确率与当前训练准确率的数值差确定为准确率减小量,以根据所述准确率减小量确定模型精度奖励,所述模型精度奖励和所述准确率减小量成反比。
5、于本发明的一实施例中,所述当前神经网络中各层级的量化误差的计算包括:获取神经网络各层的权重原始数据和当前权重位宽、激活原始数据和当前激活位宽,以及梯度原始数据和当前梯度位宽;分别计算神经网络各层中权重原始数据和当前权重位宽的相对偏差值、激活原始数据和当前激活位宽的相对偏差值,以及梯度原始数据和当前梯度位宽的相对偏差值,将神经网络各层中权重原始数据和当前权重位宽的相对偏差值、激活原始数据和当前激活位宽的相对偏差值,以及梯度原始数据和当前梯度位宽的相对偏差值确定为当前神经网络中各层级的量化误差。
6、于本发明的一实施例中,将训练完成的预设智能体部署至联邦学习网络的多个待训练节点,以使所述训练完成的预设智能体对各所述待训练节点进行训练包括:将联邦学习网络的多个待训练节点的模型层级位宽调整至第一目标位宽,得到初始化待训练节点;当初始化待训练节点在训练过程中达到预设触发条件,所述预设智能体调整所述初始化待训练节点的模型层级位宽进行调整,所述预设触发条件包括当前神经网络中各层级的量化误差大于或等于量化误差阈值、时间步长达到预设步长调整阈值,或当前时间与历史模型层级位宽变化时间信息中最后一次位宽变化的时间间隔大于或等于预设时间间隔阈值。
7、于本发明的一实施例中,所述预设智能体调整所述初始化待训练节点的模型层级位宽进行调整包括:若当前神经网络中各层级的量化误差大于或等于量化误差阈值,则提升所述初始化待训练节点的权重位宽、激活位宽和梯度位宽中至少之一;若时间步长达到预设步长调整阈值,则提升激活位宽和梯度位宽;若当前时间与历史模型层级位宽变化时间信息中最后一次位宽变化的时间间隔大于或等于预设时间间隔阈值,则提升激活位宽和梯度位宽中至少之一。
8、于本发明的一实施例中,使所述训练完成的预设智能体对各所述待训练节点进行训练之后,还包括:当所述待训练节点进行通信时,将通信过程数据传输的权重位宽配置为训练过程全程保持第一目标位宽,或训练过程中从第一目标位宽调整至第二目标位宽,所述第一目标位宽小于第二目标位宽。
9、本发明实施例还提供了一种联邦学习训练装置,所述联邦学习训练装置包括:样本数据获取模块,用于获取教师样本数据集,所述教师样本数据集包括多个节点在不同训练阶段分别对应的模型层级位宽的样本数据;智能体训练模块,用于根据所述教师样本数据集对预设智能体进行训练,以使得所述预设智能体学习在不同训练阶段通过调整模型层级位宽进行节点模型训练;节点训练模块,用于将训练完成的预设智能体部署至联邦学习网络的多个待训练节点,以使所述训练完成的预设智能体对各所述待训练节点进行训练。
10、本发明实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如上述实施例中任一项所述的联邦学习训练方法。
11、本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上述实施例中任一项所述的联邦学习训练方法。
12、本发明提供的一种联邦学习训练方法、装置、设备及存储介质,通过获取教师样本数据集,根据教师样本数据集对预设智能体进行训练,以使得预设智能体学习在不同训练阶段通过调整模型层级位宽进行节点模型训练,将训练完成的预设智能体部署至联邦学习网络的多个待训练节点,以使训练完成的预设智能体对各待训练节点进行训练;本技术通过区分模型不同层级的特性差异,针对性地实施位宽量化,避免传统方法中统一量化策略的大量数据量传输,其次,在不同训练阶段进行动态的模型层级位宽调整,在尽可能减少训练数据量的前提下可以保证模型训练的最低要求,避免了因模型压缩导致的训练精度受损。
13、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com