CN111915023B - 一种基于联邦学习的超参数确定方法及装置 - Google Patents
一种基于联邦学习的超参数确定方法及装置 Download PDFInfo
- Publication number
- CN111915023B CN111915023B CN202010884802.9A CN202010884802A CN111915023B CN 111915023 B CN111915023 B CN 111915023B CN 202010884802 A CN202010884802 A CN 202010884802A CN 111915023 B CN111915023 B CN 111915023B
- Authority
- CN
- China
- Prior art keywords
- parameter
- model
- hyper
- server
- training
- 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.)
- Active
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
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computing Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书实施例提供一种基于联邦学习的超参数确定方法及装置。该方法用于确定业务预测模型的超参数,该业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,第一部分模型部署在服务器中,第二部分模型部署在多个训练成员中。在任意一次超参迭代过程中,服务器将第一超参数组中的多个超参数向量分别发送至对应的训练成员,并与多个训练成员之间,多次执行针对业务预测模型的模型迭代过程,在多次模型迭代过程完成后,利用安全聚合算法,基于多个训练成员利用各自的测试集得到的业务预测模型的分立预测性能值,确定聚合预测性能值,基于聚合预测性能值,更新第一超参数组。
Description
技术领域
本说明书一个或多个实施例涉及机器学习技术领域,尤其涉及一种基于联邦学习的超参数确定方法及装置。
背景技术
随着人工智能技术的发展,神经网络已逐渐应用于风险评估、语音识别、自然语言处理等领域。不同应用场景下的神经网络结构已经相对固定,为了实现更好的模型性能,需要更多的训练数据。在医疗、服务等领域,不同的企业或机构拥有不同的数据样本,一旦将这些数据样本进行联合训练,将在很大程度上提升模型精度。然而,不同企业或机构拥有的数据样本通常包含大量的用户隐私和商业机密,它们之间无法直接分享数据样本。联邦学习的模型训练方式,很好地解决了不同企业或机构之间既要联合训练,又要保护数据隐私的问题。在联邦学习的应用场景下,为了进一步提高模型精度,可以进一步优化模型的超参数。
因此,希望能有改进的方案,可以在联邦学习场景下,在保护训练成员的隐私数据的要求下,确定更加准确的模型超参数,进而提高模型性能。
发明内容
本说明书一个或多个实施例描述了基于联邦学习的超参数确定方法及装置,以便在联邦学习场景下,在保护训练成员的隐私数据的要求下,确定更加准确的模型超参数,进而提高模型性能。具体的技术方案如下。
第一方面,实施例提供了一种基于联邦学习的超参数确定方法,用于确定业务预测模型的超参数,业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个训练成员中;所述方法在所述服务器中执行,包括多次超参迭代过程,任意一次超参迭代过程包括:
获取所述业务预测模型的第一超参数组,其中包括针对多个训练成员中的各个训练成员的多个超参数向量;
将所述多个超参数向量分别发送至对应的训练成员;
多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:将所述第一部分模型的第一模型参数分别发送至多个训练成员,利用安全聚合算法,基于多个训练成员各自针对所述第一部分模型得到的分立参数梯度,确定聚合参数梯度,基于所述聚合参数梯度对所述第一模型参数进行更新;其中,任意一个训练成员的分立参数梯度,基于该训练成员存储的训练集和所述第二部分模型、以及接收的超参数向量和所述第一模型参数得到的预测损失而确定;
在多次模型迭代过程完成后,利用安全聚合算法,基于多个训练成员利用各自的测试集得到的所述业务预测模型的分立预测性能值,确定聚合预测性能值;
基于所述聚合预测性能值,更新所述第一超参数组。
一种实施方式中,任意一个超参数向量包括:第一部分模型的超参数和第二部分模型的超参数。
一种实施方式中,当所述任意一次超参迭代过程为第一次超参迭代过程时,在所述第一超参数组中,多个训练成员的超参数向量的取值相同或不同。
一种实施方式中,该方法还包括,当针对所述第一超参数组的更新操作满足预设终止条件时,终止所述超参迭代过程。
一种实施方式中,在所述超参迭代过程终止之后,还包括:
从多次超参迭代过程的第一超参数组和对应的聚合预测性能值中,确定多个聚合预测性能值中的最优值,将所述最优值对应的第一超参数组选择为所述业务预测模型的超参数组。
一种实施方式中,所述基于所述聚合预测性能值,更新所述第一超参数组的步骤,包括,基于所述聚合预测性能值,利用贝叶斯优化算法,更新所述第一超参数组。
一种实施方式中,所述确定聚合参数梯度的步骤,包括:
利用安全聚合算法,基于与多个训练成员之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
一种实施方式中,所述确定聚合预测性能值的步骤,包括:
利用安全聚合算法,基于与多个训练成员之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
一种实施方式中,所述安全聚合算法包括秘密分享算法。
一种实施方式中,所述样本特征包括以下特征组中的多个:对象的基本属性特征、对象的历史行为特征、对象的关联关系特征、对象的交互特征、对象的身体指标特征;所述对象包括:用户、店铺、商品、事件中的一种。
第二方面,实施例提供了一种基于联邦学习的超参数确定方法,用于确定业务预测模型的超参数,所述业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个训练成员中;所述方法在多个训练成员中的任意一个第一训练成员中执行,包括多次超参迭代过程,任意一次超参迭代过程包括:
接收所述服务器发送的第一超参数向量,其为第一超参数组中与所述第一训练成员对应的超参数向量;
多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:接收所述服务器发送的第一部分模型的第一模型参数;基于所述第一训练成员存储的训练集和所述第二部分模型、以及接收的所述第一超参数向量和所述第一模型参数,确定预测损失;基于所述预测损失确定针对所述第一部分模型的分立参数梯度;利用安全聚合算法,基于所述第一训练成员得到的分立参数梯度,以及其他训练成员各自针对所述第一部分模型得到的分立参数梯度,使得所述服务器确定聚合参数梯度,进而使得所述服务器基于所述聚合参数梯度对所述第一模型参数进行更新;
在多次模型迭代过程完成后,利用测试集、第二部分模型和第一模型参数,对所述业务预测模型的预测性能进行测试,得到分立预测性能值;
利用安全聚合算法,基于所述第一训练成员的分立预测性能值,以及其他训练成员的分立预测性能值,使得所述服务器确定聚合预测性能值,进而使得所述服务器基于所述聚合预测性能值更新所述第一超参数组。
一种实施方式中,所述使得所述服务器确定聚合参数梯度的步骤,包括:
利用安全聚合算法,基于与其他训练成员和所述服务器之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
一种实施方式中,所述使得所述服务器确定聚合预测性能值的步骤,包括:
利用安全聚合算法,基于与其他训练成员和所述服务器之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
第三方面,实施例提供了一种基于联邦学习的超参数确定装置,用于确定业务预测模型的超参数,所述业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个训练成员中;所述装置部署在所述服务器中,所述装置在确定超参数时包括多次超参迭代过程,任意一次超参迭代过程包括:
超参获取模块,配置为,获取所述业务预测模型的第一超参数组,其中包括针对多个训练成员中的各个训练成员的多个超参数向量;
向量发送模块,配置为,将所述多个超参数向量分别发送至对应的训练成员;
第一迭代模块,配置为,多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:将所述第一部分模型的第一模型参数分别发送至多个训练成员,利用安全聚合算法,基于多个训练成员各自针对所述第一部分模型得到的分立参数梯度,确定聚合参数梯度,基于所述聚合参数梯度对所述第一模型参数进行更新;其中,任意一个训练成员的分立参数梯度,基于该训练成员存储的训练集和所述第二部分模型、以及接收的超参数向量和所述第一模型参数得到的预测损失而确定;
性能确定模块,配置为,在多次模型迭代过程完成后,利用安全聚合算法,基于多个训练成员利用各自的测试集得到的所述业务预测模型的分立预测性能值,确定聚合预测性能值;
超参更新模块,配置为,基于所述聚合预测性能值,更新所述第一超参数组。
一种实施方式中,任意一个超参数向量包括:第一部分模型的超参数和第二部分模型的超参数。
一种实施方式中,当所述任意一次超参迭代过程为第一次超参迭代过程时,在所述第一超参数组中,多个训练成员的超参数向量的取值相同或不同。
一种实施方式中,该装置还包括,迭代终止模块,配置为,当针对所述第一超参数组的更新操作满足预设终止条件时,终止所述超参迭代过程。
一种实施方式中,该装置还包括,超参选择模块,配置为,在所述超参迭代过程终止之后,从多次超参迭代过程的第一超参数组和对应的聚合预测性能值中,确定多个聚合预测性能值中的最优值,将所述最优值对应的第一超参数组选择为所述业务预测模型的超参数组。
一种实施方式中,所述超参更新模块,具体配置为,基于所述聚合预测性能值,利用贝叶斯优化算法,更新所述第一超参数组。
一种实施方式中,所述第一迭代模块,确定聚合参数梯度时,包括:
利用安全聚合算法,基于与多个训练成员之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
一种实施方式中,所述性能确定模块,确定聚合预测性能值时,包括:
利用安全聚合算法,基于与多个训练成员之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
一种实施方式中,所述安全聚合算法包括秘密分享算法。
一种实施方式中,所述样本特征包括以下特征组中的多个:对象的基本属性特征、对象的历史行为特征、对象的关联关系特征、对象的交互特征、对象的身体指标特征;所述对象包括:用户、店铺、商品、事件中的一种。
第四方面,实施例提供了一种基于联邦学习的超参数确定装置,用于确定业务预测模型的超参数,所述业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个训练成员中;所述装置部署在多个训练成员中的任意一个第一训练成员中,所述装置在确定超参数时包括多次超参迭代过程,任意一次超参迭代过程包括:
超参接收模块,配置为,接收所述服务器发送的第一超参数向量,其为第一超参数组中与所述第一训练成员对应的超参数向量;
第二迭代模块,配置为,多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:接收所述服务器发送的第一部分模型的第一模型参数;基于所述第一训练成员存储的训练集和所述第二部分模型、以及接收的所述第一超参数向量和所述第一模型参数,确定预测损失;基于所述预测损失确定针对所述第一部分模型的分立参数梯度;利用安全聚合算法,基于所述第一训练成员得到的分立参数梯度,以及其他训练成员各自针对所述第一部分模型得到的分立参数梯度,使得所述服务器确定聚合参数梯度,进而使得所述服务器基于所述聚合参数梯度对所述第一模型参数进行更新;
性能测试模块,配置为,在多次模型迭代过程完成后,利用测试集、第二部分模型和第一模型参数,对所述业务预测模型的预测性能进行测试,得到分立预测性能值;
性能聚合模块,配置为,利用安全聚合算法,基于所述第一训练成员的分立预测性能值,以及其他训练成员的分立预测性能值,使得所述服务器确定聚合预测性能值,进而使得所述服务器基于所述聚合预测性能值更新所述第一超参数组。
一种实施方式中,所述第二迭代模块,使得所述服务器确定聚合参数梯度时,包括,利用安全聚合算法,基于与其他训练成员和所述服务器之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
一种实施方式中,所述性能聚合模块,使得所述服务器确定聚合预测性能值时,包括,利用安全聚合算法,基于与其他训练成员和所述服务器之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
第五方面,实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面至第二方面中任一项所述的方法。
第六方面,实施例提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面至第二方面中任一项所述的方法。
本说明书实施例提供的方法和装置,通过多次执行针对业务预测模型的模型迭代过程,训练成员可以分别基于各自的测试集确定业务预测模型的分立预测性能值,并利用安全聚合算法,基于多个训练成员的分立预测性能值,确定聚合预测性能值,并通过该聚合预测性能值,对包含多个训练成员的多个超参数向量的第一超参数组进行更新。安全聚合算法能够使得服务器获得对多个训练成员的分立参数梯度聚合后的聚合参数梯度,而不会泄露各个训练成员的参数梯度;安全聚合算法还能够使得服务器获得对多个训练成员的分立预测性能值聚合后的聚合预测性能值,而不会泄露各个训练成员的分立预测性能值,因此能够在联邦学习场景下,在保护训练成员的隐私数据的要求下,确定更加准确的模型超参数,进而提高模型性能。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2为实施例提供的基于联邦学习的模型迭代过程的一种流程示意图;
图3为实施例提供的基于联邦学习的超参数确定方法的一种流程示意图;
图4为实施例提供的基于联邦学习的超参数确定装置的一种示意性框图;
图5为实施例提供的基于联邦学习的超参数确定装置的一种示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。其中,服务器与多个训练成员通信连接,图1中示出训练成员的总数为N,N为大于1的整数。业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测。业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,M为大于1且小于业务预测模型的总计算层数的整数。此处第一部分模型和第二部分模型中的“第一”“第二”,以及下文中相应的“第一”“第二”等等,仅仅是为了便于区分和描述,并不具有任何限定意义。
本实施例中的计算层可以理解为神经网络中的隐藏层。第一部分模型部署在服务器中,第二部分模型部署在多个训练成员中,且每个训练成员均部署第二部分模型。每个训练成员中还可以部署业务预测模型的输入层。并且,第二部分模型的输出作为第一部分模型的输入。
训练成员为数据拥有者,每个训练成员中均存储对应的训练集,训练集中包含大量训练样本。多个训练成员基于自身存储的训练集,通过联邦学习的方式,与服务器共同实现对业务预测模型的训练。训练成员例如可以为各类企业或机构等。例如,训练成员可以为支付宝、银行等,或者可以为不同商家,或者可以为医院、体检机构等。不同的训练成员中可以存储不同的训练样本,训练样本的样本特征中包含隐私数据,这些训练样本,用于对业务预测模型进行训练。
由于训练成员常常是不同的企业或者机构,其面向的用户可能不同,提供的服务不同,对象所处地域不同,数据采集的时间窗口不同等等,这些因素导致其存储的训练集往往具有不同的特征分布或标签分布,这类数据集可以称为非独立同分布(Non-Identicallyand Independently Distributed,Non-IID)。例如,不同训练成员的训练样本的样本特征中,多个特征属性可以完全不同,也可以存在部分重叠;特征属性或标签值可以对应不同的取值范围;用户可能存在重叠,也可以完全不重叠。举例来说,假设有两个训练成员1、2和3,训练成员1的训练集中样本特征包括第1号特征属性至第10号特征属性,训练成员2的训练集中样本特征包括第7号特征属性至第15号特征属性,训练成员3的训练集中样本特征包括第16号特征属性至第25号特征属性。其中,第1至第25号特征属性各不相同。或者,训练成员1的训练集中例如第5号特征属性(例如年龄)的取值范围在15至25岁,训练成员2的训练集中第5号特征属性的取值范围在27至38岁,训练成员3的训练集中第5号特征属性的取值范围在38至60岁,等等。
在本说明书提供的应用场景中,采用联邦学习的方式进行训练,能够更好地融合各个训练成员中的训练样本,训练得到更有效的业务预测模型。下面首先结合具体实施例,对本说明书实施例提供的基于联邦学习的模型迭代过程进行说明。
图2为实施例提供的基于联邦学习的模型迭代过程的一种流程示意图。下面将结合图1所示的实施场景示意图,对图2所示实施例进行说明。该模型迭代过程包括以下步骤S210~S240。
步骤S210,服务器将第一部分模型I的第一模型参数H1分别发送至多个训练成员,训练成员接收服务器发送的第一模型参数H1。具体的,服务器可以将第一模型参数H1分别发送至每个训练成员,每个训练成员均能接收到第一模型参数H1。第一模型参数H1可以是由多个模型参数构成的参数向量。初始时,第一模型参数H1的取值可以是预设值。
每个训练成员中存储有第二部分模型II的模型参数,结合接收到的第一模型参数H1,即可以实现拥有整个业务预测模型的模型参数。服务器还可以向每个训练成员发送业务预测模型的超参数向量,例如向多个训练成员中的任意一个第一训练成员发送第一超参数向量X1,第一训练成员接收服务器发送的第一超参数向量X1。这样,每个训练成员即可以拥有业务预测模型的超参数和所有模型参数,进而可以进行后续步骤中的模型训练过程。服务器向训练成员发送超参数向量的步骤,可以参见后续内容的介绍,此处不再赘述。
步骤S220,第一训练成员,基于第一训练成员存储的训练集和第二部分模型II,以及接收的第一超参数向量X1和第一模型参数H1,确定预测损失Loss1,基于该预测损失Loss1确定针对第一部分模型I的分立参数梯度。多个训练成员中除第一训练成员之外的每个其他训练成员,均按照本步骤,确定对应的分立参数梯度。分立参数梯度表示每一个训练成员基于自身的预测损失确定的针对第一部分模型I的参数梯度,可以采用向量来表示。本实施例中,以第一训练成员为例来说明每个训练成员执行的操作。
其中,第一训练成员存储的训练集中包含多个训练样本和对应的标签,该训练集属于第一训练成员的隐私数据。
第一训练成员可以从训练集中读取一批训练样本,将其输入包含第一超参数向量X1中的超参数的第二部分模型II,得到中间结果,将该中间结果再输入包含第一超参数向量X1中的超参数和第一模型参数H1的第一部分模型I,得到预测值,基于预测值与该批训练样本对应的标签,确定预测损失Loss1。针对一批训练样本中的每个训练样本,可以基于该训练样本的预测值和对应的标签的差异,确定该训练样本的子预测损失;对多个训练样本的多个子预测损失求和,得到预测损失Loss1。
在步骤S220中,基于该预测损失Loss1确定针对第一部分模型I的分立参数梯度时,具体可以采用反向传播算法,基于该预测损失Loss1确定第一部分模型I的分立参数梯度。各个训练成员,包括第一训练成员,还可以基于该预测损失Loss1确定针对各自的第二部分模型II的参数梯度,并基于该参数梯度对第二部分模型II的模型参数进行更新。
步骤S230,利用安全聚合算法,基于第一训练成员得到的分立参数梯度,以及其他训练成员各自针对第一部分模型I得到的分立参数梯度,使得服务器确定聚合参数梯度。各个训练成员均可以确定分立参数梯度,但是出于隐私安全考虑,不会将该分立参数梯度直接明文发送至服务器或其他训练成员。因此,本实施例中,利用安全聚合算法,通过训练成员与服务器之间的数据交互,可以使得服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度。
在一种实施方式中,确定聚合参数梯度的步骤可以包括,利用安全聚合算法,基于与多个训练成员之间的数据交互,使得服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。当分立参数梯度采用向量表示时,聚合参数梯度可以是多个分立参数梯度向量的和值或者均值。
其中,上述安全聚合算法可以包括秘密分享算法或者同态加密算法等。
步骤S240,服务器基于聚合参数梯度对第一模型参数H1进行更新。在对第一模型参数H1进行更新之后,可以继续返回执行步骤S210,这样使得步骤S210~S240可以循环迭代地执行,对业务预测模型进行模型迭代训练。
上述模型迭代训练终止的条件可以包括,迭代训练次数达到预设次数阈值,或者各个训练成员确定的预测损失Loss1小于预设损失阈值,或者迭代训练时长达到预设时长等等。
从上述模型迭代过程可以看出,每个训练成员均保存业务预测模型,其中包括第一部分模型I的第一模型参数H1和第二部分模型II的模型参数。不同训练成员之间的第二部分模型的模型参数不同。当不同训练成员的训练集具有不同的特征分布或标签分布时,第二部分模型II可以体现对应的训练成员的训练集的个体性,而共同聚合训练的第一部分模型I则能够体现各个训练成员的训练集之间的共性。在一种具体实施方式中,针对训练成员中数据集之间的差异性,各个训练成员中部署的第二部分模型II的结构可以是相同的,也可以是不同的。当各个训练成员中部署的第二部分模型II的结构相同时,为了适应不同训练成员中训练集的个性化,可以对应地对第二部分模型II中的部分模型参数进行特殊设置,例如设置为0等。当各个训练成员中部署的第二部分模型II的结构不相同时,还可以对各个训练成员中第二部分模型输出的中间结果进行归一化,使得归一化后的中间结果具有相同的向量维度,这样能更好地将其输入第一模型参数对应的第一部分模型I中进行运算。
上述实施例采用的安全聚合算法,能够使得服务器获得对多个训练成员的分立参数梯度聚合后的聚合参数梯度,而不会泄露各个训练成员的参数梯度,很好地保护了训练成员的隐私数据,又实现了对业务预测模型的联合训练。
在各个训练成员的训练集中,训练样本的样本特征包含隐私数据。例如,样本特征可以包括以下特征组中的多个:对象的基本属性特征、对象的历史行为特征、对象的关联关系特征、对象的交互特征、对象的身体指标特征。对象可以是用户、店铺、商品、事件中的一种。
其中,当对象为用户时,用户的基本属性特征可以包括用户的性别、年龄、收入等,用户的历史行为特征可以包括用户历史的交易行为、支付行为、购买行为等,用户的关联关系特征可以包括与用户存在关联关系的其他用户、公司、地区等,用户的交互特征可以包括用户在某个网站进行的点击、查看、参与的某个活动等特征,用户的身体指标特征可以包括用户的各项体检指标特征等。
当对象是店铺时,店铺的基本属性特征可以包括店铺的注册日期、规模、销售种类等,店铺的历史行为特征可以包括店铺历史的交易行为、退款行为、售卖行为等,店铺的关联关系特征可以包括与店铺存在关联关系的其他店铺、用户、公司、地区等。当对象是商品时,商品的基本属性信息可以包括商品的生产日期、产地、规格等,商品的关联关系特征可以包括与商品存在关联关系的买家、卖家、地区等。
当对象是事件时,事件中涉及的个人的信息、企业的信息等也属于隐私信息。在对事件的业务预测中,也可能存在无法兼顾预测精度和隐私保护的问题。
上述业务预测模型,可以用于对输入的包含隐私数据的样本特征进行业务预测,包括对对象进行分类,例如预测用户属于高风险用户或者低风险用户;或者,预测用户对多个推荐项是否会进行点击;或者,预测用户参与某项活动的可能性等;或者,预测商品适用于哪一种用户群里,预测店铺的进货方式;或者,预测事件带来的将是正向影响或者负向影响。基于各个训练成员的训练集,采用联邦学习的方式对业务预测模型进行训练,能够提高业务预测模型的准确性和有效性。
为了进一步提高业务预测模型的性能,还可以通过改变业务预测模型的超参数以期提高业务预测模型的性能。超参数是模型开始训练之前需要设置的参数,在模型的训练过程中可以不对超参数进行调整。超参数例如可以包括模型学习率、小批量数据大小,还可以包括eta、max_depth、colsample_bytree、num_round等等。在本实施例中,业务预测模型的超参数组包括针对多个训练成员中每个训练成员的多个超参数向量。例如,针对N个训练成员,各个训练成员的超参数向量分别为X1、X2、X3、…、XN,业务预测模型的超参数组S可以表示为S={X1,X2,X3,…,XN}。超参数向量可以是各种超参数的取值构成的向量,例如超参数向量可以包括模型学习率、eta等等超参数的取值。
为了确定更好的超参数,可以在预设范围内选择不同的超参数取值,通过训练处于该超参数取值下的业务预测模型,并确定业务预测模型的预测性能值,进而通过更高的预测性能值选择超参数取值,得到更高性能的业务预测模型。在服务器和多个训练成员进行联邦学习的实施场景中,在选择不同的超参数取值时,可以针对每个训练成员对应的超参数向量分别进行选择,并采用图2所示的模型迭代过程对业务预测模型分别进行训练,各个训练成员分别基于各自拥有的第二部分模型和第一模型参数H1确定业务预测模型的评价指标,并基于各个训练成员得到的评价指标分别对各自的超参数向量进行更新。选择不同的超参数取值的过程,也是对超参数进行更新的过程。
采用上述方式能够实现对超参数的更新。为了进一步提高更新超参数取值时的效率,减少针对每个训练成员分别更新超参数时的耗时,本说明书实施例还提供了一种基于联邦学习的超参数确定方法。在本实施例中,服务器获取业务预测模型的第一超参数组,并将其中的多个超参数向量分别发送至对应的训练成员,并多次执行针对业务预测模型的模型迭代训练过程,在多次模型迭代过程完成后,利用安全聚合算法,基于多个训练成员利用各自的测试集得到的业务预测模型的分立预测性能值,确定聚合预测性能值,基于聚合预测性能值,更新第一超参数组。
本实施例中,安全聚合算法能够使得服务器获得对多个训练成员的分立预测性能值聚合后的聚合预测性能值,而不会泄露各个训练成员的分立预测性能值,因此能够在联邦学习场景下,在保护训练成员的隐私数据的要求下,确定更加准确的模型超参数,进而提高模型性能。并且,服务器根据业务预测模型的聚合预测性能值,更新包含多个训练成员的多个超参数向量的第一超参数组,每次更新超参数都可以对所有训练成员的超参数进行整体更新,而在每次超参迭代过程中仅需完成一系列针对业务预测模型的模型迭代过程,因此能够从整体上提高迭代效率。下面结合具体所示实施例,对本说明书进行详细说明。
图3为实施例提供的基于联邦学习的超参数确定方法的一种流程示意图。该方法用于确定业务预测模型的超参数,业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测,包括对对象进行分类、预测对象对多个推荐项是否会进行点击、预测对象参与某项活动的可能性等。本方法涉及服务器和多个训练成员,包括多次超参迭代过程,任意一次超参迭代过程包括以下步骤S310~S360。
步骤S310,服务器获取业务预测模型的第一超参数组S1,其中包括针对多个训练成员中的各个训练成员的多个超参数向量。任意一个超参数向量可以包括第一部分模型I的超参数和第二部分模型II的超参数,还可以包括针对整个业务预测模型的模型迭代过程的超参数。例如,针对N个训练成员,第一超参数组S1可以表示为S1={X1,X2,X3,…,XN},其中分别包括每个训练成员的超参数向量。针对多个训练成员中任意一个第一训练成员,例如可以采用X1代表与第一训练成员对应的第一超参数向量。
在下面的描述中,将着重以第一训练成员为例来说明每个训练成员执行的操作。
步骤S320,服务器将多个超参数向量分别发送至对应的训练成员,多个训练成员可以接收对应的超参数向量,第一训练成员可以接收服务器发送的第一超参数向量X1。
步骤S330,多次执行针对业务预测模型的模型迭代过程,任意一次模型迭代过程包括:服务器将第一部分模型I的第一模型参数H1分别发送至多个训练成员,服务器利用安全聚合算法,基于多个训练成员各自针对第一部分模型I得到的分立参数梯度,确定聚合参数梯度,基于聚合参数梯度对第一模型参数I进行更新。其中,任意一个训练成员的分立参数梯度,基于该训练成员存储的训练集和第二部分模型II、以及接收的超参数向量和第一模型参数H1得到的预测损失而确定。
本步骤S330中的模型迭代过程涉及服务器与多个训练成员之间的数据交互,具体的模型迭代过程可以参见图2所示实施例,此处不再赘述。
步骤S340,在多次模型迭代过程完成后,第一训练成员利用测试集、第二部分模型II和第一模型参数H1,对业务预测模型的预测性能进行测试,得到分立预测性能值。该分立预测性能值表示每个训练成员利用各自的测试集、各自的第二部分模型II和各自的第一模型参数H1,对业务预测模型的预测性能值进行测试之后得到的预测性能值。多次模型迭代过程完成,可以理解为模型迭代过程达到了终止的条件,因而终止了模型迭代过程。模型迭代过程是否完成可以由服务器进行判断,也可以由多个训练成员进行判断。当由服务器判断得到模型迭代过程完成时,服务器可以向多个训练成员发送通知消息,用于通知各个训练成员模型迭代过程已经完成。训练成员在接收到该通知消息时可以进行对业务预测模型的测试。当由多个训练成员判断得到模型迭代过程完成时,可以直接对业务预测模型进行测试。
各个训练成员中各自的测试集可以是对应的训练成员的隐私数据,也可以是服务器统一下发给各个训练成员的。本步骤S340中的第二部分模型II和第一模型参数H1可以是模型迭代过程完成后得到的。在对业务预测模型进行测试时,第一训练成员可以将测试集中的测试样本输入第二部分模型II,得到中间结果,将该中间结果再输入第一模型参数H1对应的第一部分模型I,第一部分模型输出预测值,基于该预测值和测试样本的标签值,确定分立预测性能值。在确定分立预测性能值时,可以基于多个测试样本的预测值和对应的标签值,采用曲线下面积(Area Under Curve,AUC)算法,确定AUC值,作为分立预测性能值。
步骤S350,服务器利用安全聚合算法,基于多个训练成员得到的多个分立预测性能值,确定聚合预测性能值。分立预测性能值属于训练成员中的隐私数据,出于隐私安全考虑,各个训练成员不会将该分立预测性能值直接明文发送至服务器或其他训练成员。具体的,服务器可以利用安全聚合算法,基于与多个训练成员之间的数据交互,使得服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。其中,在确定加权均值时,可以基于针对每个训练成员设置的权重值,确定多个分立预测性能值的加权均值。
本实施例中,可以采用秘密分享算法,基于多个训练成员利用各自的测试集得到的业务预测模型的分立预测性能值,确定聚合预测性能值。秘密分享算法通过将秘密以适当的方式进行拆分,拆分后的每一个份额由不同的参与者管理,这使得单个参与者无法恢复秘密信息,进而实现对秘密的分享。在本实施例中,每个训练成员中的分立预测性能值即为待分享的隐私数据。
下面通过一个具体的例子来说明采用秘密分享算法,使得服务器得到多个分立预测性能值的和值的过程。例如,针对训练成员1和2,训练成员1得到的分立预测性能值为a,训练成员2得到的分立预测性能值为b,训练成员1可以随机地将a分成a1和a2两个分片,并将其中一个分片例如a1发送至训练成员2。训练成员2也可以将b随机地分成b1和b2两个分片,并将其中一个分片例如b1发送至训练成员1。训练成员1和2均无法根据接收的分片反推出对方的隐私数据。然后,训练成员1将b1和a2发送至服务器,训练成员2将a1和b2发送至服务器,这样服务器即可以基于得到的b1和a2、a1和b2得到两个分立预测性能值的和值(a+b),服务器无法根据得到的数据反推训练成员1和2的隐私数据。当训练成员的个数更多时,服务器更加无法反推训练成员的隐私数据。基于上述例子,通过训练成员将自身的权重值叠加至自身的分立预测性能值,服务器还可以确定多个分立预测性能值的加权和值。步骤S230中确定聚合参数梯度时,也可以参考上述例子进行实施。
步骤S360,服务器基于聚合预测性能值,更新第一超参数组S1。具体的,服务器在更新第一超参数组S1时,可以基于多次超参迭代过程得到的聚合预测性能值,从各个超参数对应的取值范围中重新选择对应超参数的取值,得到更新后的第一超参数组S1。为了提高超参数的更新效率(即搜索效率),也可以基于聚合预测性能值,利用贝叶斯优化算法,更新第一超参数组S1。具体可以将聚合预测性能值和第一超参数组S1输入基于贝叶斯优化算法训练的模型,该模型可以输出更新后的第一超参数组。
上述步骤S310~S360为一次超参迭代过程。当该超参迭代过程为第一次超参迭代过程,在第一超参数组S1中,多个训练成员的超参数向量的取值可以相同或不同。随着超参数的不断更新,多个训练成员的超参数向量的取值会各自变化。
当针对第一超参数组S1的更新操作满足预设终止条件时,终止上述超参迭代过程。预设终止条件可以包括:迭代训练次数达到预设次数阈值,或者迭代训练时长达到预设时长等等。
在上述超参迭代过程终止之后,还可以从多次超参迭代过程的第一超参数组和对应的聚合预测性能值中,确定多个聚合预测性能值中的最优值,将最优值对应的第一超参数组选择为业务预测模型的超参数组。并且,还可以将选择的超参数组中的各个超参数向量发送至对应的训练成员,继续对包含该超参数的业务预测模型进行训练,提高业务预测模型的预测性能。
下面结合具体应用实例,再对上述本说明书的实施例进行说明。
在对用户进行风险分类的应用领域中,可以基于多个训练成员的训练集,利用联邦学习的方式训练业务预测模型。该业务预测模型可以用于对输入的用户特征数据进行用户风险分类,例如可以将用户分类为高风险用户和低风险用户。
服务器可以获取业务预测模型的第一超参数组,将多个超参数向量分别发送至对应的训练成员。服务器和多个训练成员之间,多次执行针对业务预测模型的模型迭代过程,任意一次模型迭代过程包括:服务器将第一部分模型I的第一模型参数H1分别发送至多个训练成员。第一训练成员基于自身存储的训练集中训练样本的第一用户的用户特征,以及第二部分模型II、第一超参数向量X1和第一模型参数H1,确定该第一用户是否为高风险用户的分类结果,并基于该分类结果与训练样本的标签值之间的差异确定预测损失Loss1。然后,利用安全聚合算法,基于第一训练成员得到的分立参数梯度,以及其他训练成员各自针对第一部分模型I得到的分立参数梯度,使得服务器确定聚合参数梯度,服务器基于聚合参数梯度对第一模型参数H1进行更新。
在多次模型迭代过程完成后,服务器利用安全聚合算法,基于多个训练成员利用各自的测试集得到的所述业务预测模型的分立预测性能值,确定聚合预测性能值,基于聚合预测性能值,更新第一超参数组。
多次更新第一超参数组之后,可以基于聚合预测性能值,选择性能值最优的第一超参数组,作为业务预测模型的超参数,基于此形成的业务预测模型,其性能较高,预测准确度也更高。
上述内容对本说明书的特定实施例进行了描述,其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行,并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的,或者可能是有利的。
图4为实施例提供的基于联邦学习的超参数确定装置的一种示意性框图。该装置400用于确定业务预测模型的超参数,业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测。其中,业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,第一部分模型部署在服务器中,第二部分模型部署在多个训练成员中。本实施例中的服务器或多个训练成员,均可以通过任何具有计算、处理能力的设备、平台或设备集群来实现。该装置实施例与图3所示方法实施例中的服务器侧相对应。该装置400部署在服务器中,并且该装置400在确定超参数时包括多次超参迭代过程,任意一次超参迭代过程包括:
超参获取模块410,配置为,获取所述业务预测模型的第一超参数组,其中包括针对多个训练成员中的各个训练成员的多个超参数向量;
向量发送模块420,配置为,将所述多个超参数向量分别发送至对应的训练成员;
第一迭代模块430,配置为,多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:将所述第一部分模型的第一模型参数分别发送至多个训练成员,利用安全聚合算法,基于多个训练成员各自针对所述第一部分模型得到的分立参数梯度,确定聚合参数梯度,基于所述聚合参数梯度对所述第一模型参数进行更新;其中,任意一个训练成员的分立参数梯度,基于该训练成员存储的训练集和所述第二部分模型、以及接收的超参数向量和所述第一模型参数得到的预测损失而确定;
性能确定模块440,配置为,在多次模型迭代过程完成后,利用安全聚合算法,基于多个训练成员利用各自的测试集得到的所述业务预测模型的分立预测性能值,确定聚合预测性能值;
超参更新模块450,配置为,基于所述聚合预测性能值,更新所述第一超参数组。
在一种实施方式中,任意一个超参数向量包括:第一部分模型的超参数和第二部分模型的超参数。
在一种实施方式中,当任意一次超参迭代过程为第一次超参迭代过程时,在第一超参数组中,多个训练成员的超参数向量的取值相同或不同。
在一种实施方式中,装置400还包括:
迭代终止模块(图中未示出),配置为,当针对第一超参数组的更新操作满足预设终止条件时,终止所述超参迭代过程。
在一种实施方式中,装置400还包括:
超参选择模块(图中未示出),配置为,在所述超参迭代过程终止之后,从多次超参迭代过程的第一超参数组和对应的聚合预测性能值中,确定多个聚合预测性能值中的最优值,将所述最优值对应的第一超参数组选择为所述业务预测模型的超参数组。
在一种实施方式中,超参更新模块450具体配置为:
基于所述聚合预测性能值,利用贝叶斯优化算法,更新所述第一超参数组。
在一种实施方式中,第一迭代模块430,确定聚合参数梯度时,包括:
利用安全聚合算法,基于与多个训练成员之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
在一种实施方式中,性能确定模块440,确定聚合预测性能值时,包括:
利用安全聚合算法,基于与多个训练成员之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
在一种实施方式中,所述安全聚合算法包括秘密分享算法。
在一种实施方式中,样本特征包括以下特征组中的多个:对象的基本属性特征、对象的历史行为特征、对象的关联关系特征、对象的交互特征、对象的身体指标特征;对象包括:用户、店铺、商品、事件中的一种。
图5为实施例提供的基于联邦学习的超参数确定装置的一种示意性框图。该装置500用于确定业务预测模型的超参数,业务预测模型用于对输入的包含隐私数据的样本特征进行业务预测。其中,业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,第一部分模型部署在服务器中,第二部分模型部署在多个训练成员中。本实施例中的服务器或多个训练成员,均可以通过任何具有计算、处理能力的设备、平台或设备集群来实现。该装置实施例与图3所示方法实施例中的第一训练成员侧相对应。该装置500部署在多个训练成员中的任意一个第一训练成员中,并且该装置500在确定超参数时包括多次超参迭代过程,任意一次超参迭代过程包括:
超参接收模块510,配置为,接收所述服务器发送的第一超参数向量,其为第一超参数组中与所述第一训练成员对应的超参数向量;
第二迭代模块520,配置为,多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:接收所述服务器发送的第一部分模型的第一模型参数;基于所述第一训练成员存储的训练集和所述第二部分模型、以及接收的所述第一超参数向量和所述第一模型参数,确定预测损失;基于所述预测损失确定针对所述第一部分模型的分立参数梯度;利用安全聚合算法,基于所述第一训练成员得到的分立参数梯度,以及其他训练成员各自针对所述第一部分模型得到的分立参数梯度,使得所述服务器确定聚合参数梯度,进而使得所述服务器基于所述聚合参数梯度对所述第一模型参数进行更新;
性能测试模块530,配置为,在多次模型迭代过程完成后,利用测试集、第二部分模型和第一模型参数,对所述业务预测模型的预测性能进行测试,得到分立预测性能值;
性能聚合模块540,配置为,利用安全聚合算法,基于所述第一训练成员的分立预测性能值,以及其他训练成员的分立预测性能值,使得所述服务器确定聚合预测性能值,进而使得所述服务器基于所述聚合预测性能值更新所述第一超参数组。
在一种实施方式中,第二迭代模块520,使得所述服务器确定聚合参数梯度时,包括:
利用安全聚合算法,基于与其他训练成员和所述服务器之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
在一种实施方式中,性能聚合模块540,使得所述服务器确定聚合预测性能值时,包括:
利用安全聚合算法,基于与其他训练成员和所述服务器之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
上述装置实施例与方法实施例相对应,具体说明可以参见方法实施例部分的描述,此处不再赘述。装置实施例是基于对应的方法实施例得到,与对应的方法实施例具有同样的技术效果,具体说明可参见对应的方法实施例。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行图1至图3任一项所述的方法。
本说明书实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现图1至图3任一项所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (28)
1.一种业务预测模型的训练方法,所述业务预测模型用于对输入的包含隐私数据的对象的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个成员设备中;所述方法在所述服务器中执行,包括:
通过多次超参迭代过程确定第一超参数组,基于多个成员设备的训练集对包含该第一超参数组的业务预测模型进行训练;所述训练集包括对象的样本特征,所述对象包括用户、店铺、商品、事件中的一种;
其中,所述多次超参迭代过程中的任意一次超参迭代过程包括:
获取所述业务预测模型的第一超参数组,其中包括针对多个成员设备中的各个成员设备的多个超参数向量;
将所述多个超参数向量分别发送至对应的成员设备;
多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:将所述第一部分模型的第一模型参数分别发送至多个成员设备,利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度,基于所述聚合参数梯度对所述第一模型参数进行更新;其中,任意一个成员设备的分立参数梯度,基于该成员设备存储的训练集和所述第二部分模型、以及接收的超参数向量和所述第一模型参数得到的预测损失而确定;
在多次模型迭代过程完成后,利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值;所述分立预测性能值基于多个成员设备利用各自的测试集对所述业务预测模型的预测性能进行测试而得到;
基于所述聚合预测性能值,更新所述第一超参数组。
2.根据权利要求1所述的方法,任意一个超参数向量包括:第一部分模型的超参数和第二部分模型的超参数。
3.根据权利要求1所述的方法,其中,当所述任意一次超参迭代过程为第一次超参迭代过程时,在所述第一超参数组中,多个成员设备的超参数向量的取值相同或不同。
4.根据权利要求1所述的方法,还包括:
当针对所述第一超参数组的更新操作满足预设终止条件时,终止所述超参迭代过程。
5.根据权利要求4所述的方法,在所述超参迭代过程终止之后,还包括:
从多次超参迭代过程的第一超参数组和对应的聚合预测性能值中,确定多个聚合预测性能值中的最优值,将所述最优值对应的第一超参数组选择为所述业务预测模型的超参数组。
6.根据权利要求1所述的方法,所述基于所述聚合预测性能值,更新所述第一超参数组的步骤,包括:
基于所述聚合预测性能值,利用贝叶斯优化算法,更新所述第一超参数组。
7.根据权利要求1所述的方法,所述使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度的步骤,包括:
利用安全聚合算法,基于与多个成员设备之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
8.根据权利要求1所述的方法,所述使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值的步骤,包括:
利用安全聚合算法,基于与多个成员设备之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
9.根据权利要求1所述的方法,所述安全聚合算法包括秘密分享算法。
10.根据权利要求1所述的方法,所述样本特征包括以下特征组中的多个:对象的基本属性特征、对象的历史行为特征、对象的关联关系特征、对象的交互特征、对象的身体指标特征。
11.一种业务预测模型的训练方法,所述业务预测模型用于对输入的包含隐私数据的对象的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个成员设备中;所述方法在多个成员设备中的任意一个第一成员设备中执行,包括:
通过多次超参迭代过程确定第一超参数组,基于多个成员设备的训练集对包含该第一超参数组的业务预测模型进行训练;所述训练集包括对象的样本特征,所述对象包括用户、店铺、商品、事件中的一种;
其中,所述多次超参迭代过程中的任意一次超参迭代过程包括:
接收所述服务器发送的第一超参数向量,其为第一超参数组中与所述第一成员设备对应的超参数向量;
多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:接收所述服务器发送的第一部分模型的第一模型参数;基于所述第一成员设备存储的训练集和所述第二部分模型、以及接收的所述第一超参数向量和所述第一模型参数,确定预测损失;基于所述预测损失确定针对所述第一部分模型的分立参数梯度;利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度,进而使得所述服务器基于所述聚合参数梯度对所述第一模型参数进行更新;
在多次模型迭代过程完成后,利用测试集、第二部分模型和第一模型参数,对所述业务预测模型的预测性能进行测试,得到分立预测性能值;
利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值,进而使得所述服务器基于所述聚合预测性能值更新所述第一超参数组。
12.根据权利要求11所述的方法,所述使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度的步骤,包括:
利用安全聚合算法,基于与其他成员设备和所述服务器之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
13.根据权利要求11所述的方法,所述使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值的步骤,包括:
利用安全聚合算法,基于与其他成员设备和所述服务器之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
14.一种业务预测模型的训练装置,所述业务预测模型用于对输入的包含隐私数据的对象的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个成员设备中;所述装置部署在所述服务器中,包括:
第一训练单元,配置为,通过多次超参迭代过程确定第一超参数组,基于多个成员设备的训练集对包含该第一超参数组的业务预测模型进行训练;所述训练集包括对象的样本特征,所述对象包括用户、店铺、商品、事件中的一种;
其中,所述多次超参迭代过程中的任意一次超参迭代过程包括:
超参获取模块,配置为,获取所述业务预测模型的第一超参数组,其中包括针对多个成员设备中的各个成员设备的多个超参数向量;
向量发送模块,配置为,将所述多个超参数向量分别发送至对应的成员设备;
第一迭代模块,配置为,多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:将所述第一部分模型的第一模型参数分别发送至多个成员设备,利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度,基于所述聚合参数梯度对所述第一模型参数进行更新;其中,任意一个成员设备的分立参数梯度,基于该成员设备存储的训练集和所述第二部分模型、以及接收的超参数向量和所述第一模型参数得到的预测损失而确定;
性能确定模块,配置为,在多次模型迭代过程完成后,利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值;所述分立预测性能值基于多个成员设备利用各自的测试集对所述业务预测模型的预测性能进行测试而得到;
超参更新模块,配置为,基于所述聚合预测性能值,更新所述第一超参数组。
15.根据权利要求14所述的装置,任意一个超参数向量包括:第一部分模型的超参数和第二部分模型的超参数。
16.根据权利要求14所述的装置,其中,当所述任意一次超参迭代过程为第一次超参迭代过程时,在所述第一超参数组中,多个成员设备的超参数向量的取值相同或不同。
17.根据权利要求14所述的装置,还包括:
迭代终止模块,配置为,当针对所述第一超参数组的更新操作满足预设终止条件时,终止所述超参迭代过程。
18.根据权利要求17所述的装置,还包括:
超参选择模块,配置为,在所述超参迭代过程终止之后,从多次超参迭代过程的第一超参数组和对应的聚合预测性能值中,确定多个聚合预测性能值中的最优值,将所述最优值对应的第一超参数组选择为所述业务预测模型的超参数组。
19.根据权利要求14所述的装置,所述超参更新模块,具体配置为:
基于所述聚合预测性能值,利用贝叶斯优化算法,更新所述第一超参数组。
20.根据权利要求14所述的装置,所述第一迭代模块,使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度时,包括:
利用安全聚合算法,基于与多个成员设备之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
21.根据权利要求14所述的装置,所述性能确定模块,使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值时,包括:
利用安全聚合算法,基于与多个成员设备之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
22.根据权利要求14所述的装置,所述安全聚合算法包括秘密分享算法。
23.根据权利要求14所述的装置,所述样本特征包括以下特征组中的多个:对象的基本属性特征、对象的历史行为特征、对象的关联关系特征、对象的交互特征、对象的身体指标特征。
24.一种业务预测模型的训练装置,所述业务预测模型用于对输入的包含隐私数据的对象的样本特征进行业务预测;其中,所述业务预测模型的多个计算层被划分为包含连续后M个计算层的第一部分模型和包含剩余计算层的第二部分模型,所述第一部分模型部署在服务器中,所述第二部分模型部署在多个成员设备中;所述装置部署在多个成员设备中的任意一个第一成员设备中,包括:
第二训练单元,配置为,通过多次超参迭代过程确定第一超参数组,基于多个成员设备的训练集对包含该第一超参数组的业务预测模型进行训练;所述训练集包括对象的样本特征,所述对象包括用户、店铺、商品、事件中的一种;
其中,所述多次超参迭代过程中的任意一次超参迭代过程包括:
超参接收模块,配置为,接收所述服务器发送的第一超参数向量,其为第一超参数组中与所述第一成员设备对应的超参数向量;
第二迭代模块,配置为,多次执行针对所述业务预测模型的模型迭代过程,任意一次模型迭代过程包括:接收所述服务器发送的第一部分模型的第一模型参数;基于所述第一成员设备存储的训练集和所述第二部分模型、以及接收的所述第一超参数向量和所述第一模型参数,确定预测损失;基于所述预测损失确定针对所述第一部分模型的分立参数梯度;利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度,进而使得所述服务器基于所述聚合参数梯度对所述第一模型参数进行更新;
性能测试模块,配置为,在多次模型迭代过程完成后,利用测试集、第二部分模型和第一模型参数,对所述业务预测模型的预测性能进行测试,得到分立预测性能值;
性能聚合模块,配置为,利用安全聚合算法,通过成员设备与服务器之间的数据交互,使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值,进而使得所述服务器基于所述聚合预测性能值更新所述第一超参数组。
25.根据权利要求24所述的装置,所述第二迭代模块,使得所述服务器得到将多个分立参数梯度进行聚合之后的聚合参数梯度时,包括:
利用安全聚合算法,基于与其他成员设备和所述服务器之间的数据交互,使得所述服务器得到多个分立参数梯度的和值或者均值,作为聚合参数梯度。
26.根据权利要求24所述的装置,所述性能聚合模块,使得所述服务器得到将多个分立预测性能值进行聚合之后的聚合预测性能值时,包括:
利用安全聚合算法,基于与其他成员设备和所述服务器之间的数据交互,使得所述服务器得到多个分立预测性能值的均值或加权均值,作为聚合预测性能值。
27.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-13中任一项所述的方法。
28.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010884802.9A CN111915023B (zh) | 2020-08-28 | 2020-08-28 | 一种基于联邦学习的超参数确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010884802.9A CN111915023B (zh) | 2020-08-28 | 2020-08-28 | 一种基于联邦学习的超参数确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111915023A CN111915023A (zh) | 2020-11-10 |
CN111915023B true CN111915023B (zh) | 2021-09-07 |
Family
ID=73266485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010884802.9A Active CN111915023B (zh) | 2020-08-28 | 2020-08-28 | 一种基于联邦学习的超参数确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111915023B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112101579B (zh) * | 2020-11-18 | 2021-02-09 | 杭州趣链科技有限公司 | 基于联邦学习的机器学习方法、电子装置和存储介质 |
CN112464278B (zh) * | 2020-11-24 | 2023-07-21 | 平安科技(深圳)有限公司 | 基于非均匀分布数据的联邦建模方法及相关设备 |
CN114580651A (zh) * | 2020-11-30 | 2022-06-03 | 华为技术有限公司 | 联邦学习方法、装置、设备、系统及计算机可读存储介质 |
CN112508205B (zh) * | 2020-12-04 | 2024-07-16 | 中国科学院深圳先进技术研究院 | 一种联邦学习调度方法、装置及系统 |
CN112906903B (zh) * | 2021-01-11 | 2024-02-09 | 北京源堡科技有限公司 | 网络安全风险预测方法、装置、存储介质及计算机设备 |
CN112766514B (zh) * | 2021-01-22 | 2021-12-24 | 支付宝(杭州)信息技术有限公司 | 一种联合训练机器学习模型的方法、系统及装置 |
CN113033824B (zh) * | 2021-04-21 | 2023-04-07 | 支付宝(杭州)信息技术有限公司 | 模型超参数确定方法、模型训练方法及系统 |
CN113032835B (zh) * | 2021-04-21 | 2024-02-23 | 支付宝(杭州)信息技术有限公司 | 一种隐私保护的模型训练方法、系统及装置 |
CN113313266B (zh) * | 2021-06-15 | 2023-10-24 | 厦门大学 | 基于两阶段聚类的联邦学习模型训练方法和存储设备 |
CN113379042B (zh) * | 2021-07-23 | 2022-05-17 | 支付宝(杭州)信息技术有限公司 | 保护数据隐私的业务预测模型训练方法及装置 |
CN113609785B (zh) * | 2021-08-19 | 2023-05-09 | 成都数融科技有限公司 | 基于贝叶斯优化的联邦学习超参数选择系统及方法 |
CN115081642B (zh) * | 2022-07-19 | 2022-11-15 | 浙江大学 | 一种多方协同更新业务预测模型的方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109754105B (zh) * | 2017-11-07 | 2024-01-05 | 华为技术有限公司 | 一种预测方法及终端、服务器 |
CN111178524B (zh) * | 2019-12-24 | 2024-06-14 | 中国平安人寿保险股份有限公司 | 基于联邦学习的数据处理方法、装置、设备及介质 |
CN111291401B (zh) * | 2020-05-09 | 2020-11-03 | 支付宝(杭州)信息技术有限公司 | 基于隐私保护的业务预测模型训练方法和装置 |
-
2020
- 2020-08-28 CN CN202010884802.9A patent/CN111915023B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111915023A (zh) | 2020-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111915023B (zh) | 一种基于联邦学习的超参数确定方法及装置 | |
US11941691B2 (en) | Dynamic business governance based on events | |
CN110599336B (zh) | 一种金融产品购买预测方法及系统 | |
CN112465627B (zh) | 基于区块链和机器学习的金融借贷审核方法及系统 | |
CN112039702B (zh) | 基于联邦学习和相互学习的模型参数训练方法及装置 | |
US20130124448A1 (en) | Method and system for selecting a target with respect to a behavior in a population of communicating entities | |
CN113379042B (zh) | 保护数据隐私的业务预测模型训练方法及装置 | |
WO2021189926A1 (zh) | 业务模型训练方法、装置、系统及电子设备 | |
Hayne et al. | Modeling reputation as a time‐series: evaluating the risk of purchase decisions on eBay | |
Saitulasi et al. | Deep Belief Network and Sentimental analysis for extracting on multi-variable Features to predict Stock market Performance and accuracy | |
WO2020018392A1 (en) | Monitoring and controlling continuous stochastic processes based on events in time series data | |
CN111738441A (zh) | 兼顾预测精度和隐私保护的预测模型训练方法及装置 | |
Khedmati et al. | Applying support vector data description for fraud detection | |
CN110851482B (zh) | 为多个数据方提供数据模型的方法及装置 | |
Rony et al. | Identifying long-term deposit customers: a machine learning approach | |
CA3069987A1 (en) | System and method for detecting and responding to transaction patterns | |
Wong et al. | Insights into fairness through trust: Multi-scale trust quantification for financial deep learning | |
Lian-Ying et al. | Combined appetency and upselling prediction scheme in telecommunication sector using support vector machines | |
US20220366421A1 (en) | Method and system for assessing the reputation of a merchant | |
Vidanelage et al. | Study on machine learning techniques with conventional tools for payment fraud detection | |
Zimal et al. | Customer churn prediction using machine learning | |
Raj et al. | Efficacy of Customer Churn Prediction System | |
Kumar et al. | Short Term Memory Recurrent Neural Network-based Machine Learning Model for Predicting Bit-coin Market Prices | |
CN115034333B (zh) | 联邦学习方法、联邦学习装置及联邦学习系统 | |
Vercosa et al. | Impact of unusual features in credit scoring problem |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |