本发明涉及数据安全,尤其涉及一种模型训练方法、装置、设备及存储介质。
背景技术:
1、线性回归(linear regression)作为一种广泛使用的基础型机器学习算法,是通过对多个影响因素和结果进行拟合,从而以线性模型来建模一个或多个自变量与因变量之间相关关系的一种方法。线性回归模型的训练通常依赖于大量的数据,而现实中数据集一般由不同的用户持有且包含用户的隐私信息,当多个用户想要集中大量的数据训练效果更好的模型时,会不可避免地涉及用户的隐私问题。
2、目前可以通过同态加密技术解决模型计算中的隐私泄露问题,如在运营商和银行需要使用双方的数据及线性回归对人员进行画像时,一般双方需要分别将数据给一个第三方训练服务器,并由第三方训练服务器进行模型训练,此时传输的数据是通过同态加密技术进行加密的。但即使数据是经过同态加密的,仍然存在泄露的风险,从而影响用户体验。
技术实现思路
1、本发明的主要目的在于提供了一种模型训练方法、装置、设备及存储介质,旨在解决现有技术中在训练线性回归模型时一般需要将数据给第三方进行模型训练,容易导致用户隐私泄露的技术问题。
2、为实现上述目的,本发明提供了一种模型训练方法,所述方法应用于包含至少两个参与方的系统中,各参与方中均部署有初始用户画像构建模型,所述模型训练方法包括:
3、根据所述初始用户画像构建模型的模型预测结果确定第一预测误差,并将所述第一预测误差发送至其他参与方,所述其他参与方基于所述第一预测误差反馈第二训练参数;
4、根据所述其他参与方反馈的第二预测误差确定第一训练参数,所述第二预测误差由所述其他参与方根据自身训练数据输出的模型预测结果确定;
5、基于所述第一训练参数和所述第二训练参数对所述初始用户画像构建模型进行参数更新,获得目标用户画像构建模型。
6、可选地,所述根据所述初始用户画像构建模型的模型预测结果确定第一预测误差,并将所述第一预测误差发送至其他参与方的步骤之前,还包括:
7、根据第一初始训练参数和所述其他参与方反馈的加密后的第二初始训练参数确定第一加密训练参数,所述加密后的第二初始训练参数由所述其他参与方对第二初始训练参数进行加密后获得,所述第二初始训练参数为所述其他参与方的训练参数;
8、根据所述其他参与方反馈的加密密钥对第一训练集数据进行加密,获得目标半加密矩阵;
9、基于所述第一加密训练参数和所述目标半加密矩阵确定所述初始用户画像构建模型的模型预测结果。
10、可选地,所述根据所述初始用户画像构建模型的模型预测结果确定第一预测误差,并将所述第一预测误差发送至其他参与方的步骤,包括:
11、根据所述加密密钥对第一数据标签进行加密,获得第一加密数据标签;
12、基于所述初始用户画像构建模型的模型预测结果和所述第一加密数据标签确定第一预测误差,并将所述第一预测误差发送至其他参与方。
13、可选地,所述根据所述其他参与方反馈的第二预测误差确定第一训练参数的步骤,包括:
14、通过第一解密密钥对所述其他参与方反馈的第二预测误差进行解密,获得解密后的第二标签误差;
15、基于第一标签误差和所述第二标签误差确定目标标签误差,所述第一标签误差由所述其他参与方通过第二解密密钥对所述第一预测误差进行解密后获得;
16、基于所述第一训练集数据和所述目标标签误差确定第一训练参数。
17、可选地,所述基于所述第一训练集数据和所述目标标签误差确定第一训练参数的步骤,包括:
18、基于所述第一训练集数据、所述第一标签误差、所述第二标签误差、第二训练集数据和所述目标标签误差确定梯度变化共享值,所述第二训练集数据为所述其他参与方的训练集数据;
19、基于所述梯度变化共享值、所述第一初始训练参数确定第一训练参数。
20、可选地,所述根据所述初始用户画像构建模型的模型预测结果确定第一预测误差,并将所述第一预测误差发送至其他参与方的步骤之前,还包括:
21、获取当前模型训练的学习率和最大迭代次数;
22、所述基于所述梯度变化共享值、所述第一初始训练参数确定第一训练参数的步骤,包括:
23、基于所述梯度变化共享值、所述第一初始训练参数、所述学习率和所述最大迭代次数,通过批量梯度下降法确定第一训练参数。
24、可选地,所述基于所述第一训练参数和所述第二训练参数对所述初始用户画像构建模型进行参数更新,获得目标用户画像构建模型的步骤,包括:
25、基于所述第一训练参数和所述第二训练参数对所述初始用户画像构建模型进行参数更新,获得更新后的用户画像构建模型;
26、根据预设损失函数判断所述更新后的用户画像构建模型是否收敛;
27、若是,则将所述更新后的用户画像构建模型确定为目标用户画像构建模型。
28、此外,为实现上述目的,本发明还提出一种模型训练装置,所述装置包括:
29、误差确定模块,用于根据所述初始用户画像构建模型的模型预测结果确定第一预测误差,并将所述第一预测误差发送至其他参与方,所述其他参与方基于所述第一预测误差反馈第二训练参数;
30、参数确定模块,用于根据所述其他参与方反馈的第二预测误差确定第一训练参数,所述第二预测误差由所述其他参与方根据自身训练数据输出的模型预测结果确定;
31、参数更新模块,用于基于所述第一训练参数和所述第二训练参数对所述初始用户画像构建模型进行参数更新,获得目标用户画像构建模型。
32、此外,为实现上述目的,本发明还提出一种模型训练设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的模型训练程序,所述模型训练程序配置为实现如上文所述的模型训练方法的步骤。
33、此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有模型训练程序,所述模型训练程序被处理器执行时实现如上文所述的模型训练方法的步骤。
34、在本发明中,公开了根据初始用户画像构建模型的模型预测结果确定第一预测误差,并将第一预测误差发送至其他参与方,其他参与方基于第一预测误差反馈第二训练参数;根据其他参与方反馈的第二预测误差确定第一训练参数,第二预测误差由其他参与方根据自身训练数据输出的模型预测结果确定;基于第一训练参数和第二训练参数对初始用户画像构建模型进行参数更新,获得目标用户画像构建模型;相较于现有技术提供数据的双方需要分别将数据给一个第三方训练服务器,并由第三方训练服务器进行模型训练,由于本发明将根据模型预测结果确定的第一预测误差发送至其他参与方,以使其他参与方反馈第二训练参数,并根据其他参与方反馈的第二预测误差确定第一训练参数,再基于第一训练参数和第二训练参数进行模型参数更新,获得更新后的目标用户画像构建模型,从而解决了现有技术中在训练线性回归模型时一般需要将数据给第三方进行模型训练,容易导致用户隐私泄露的技术问题。