CN116150622B - 一种模型训练方法、装置、存储介质及电子设备 - Google Patents
一种模型训练方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN116150622B CN116150622B CN202310183952.0A CN202310183952A CN116150622B CN 116150622 B CN116150622 B CN 116150622B CN 202310183952 A CN202310183952 A CN 202310183952A CN 116150622 B CN116150622 B CN 116150622B
- Authority
- CN
- China
- Prior art keywords
- gradient
- training sample
- determining
- model
- 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
- 238000012549 training Methods 0.000 title claims abstract description 339
- 238000000034 method Methods 0.000 title claims abstract description 124
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 230000008569 process Effects 0.000 claims abstract description 65
- 230000003044 adaptive effect Effects 0.000 claims abstract description 49
- 238000012804 iterative process Methods 0.000 claims description 48
- 238000009826 distribution Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 15
- 238000005070 sampling Methods 0.000 claims description 15
- 238000012954 risk control Methods 0.000 claims description 14
- 230000007423 decrease Effects 0.000 claims description 9
- 230000000694 effects Effects 0.000 abstract description 9
- 230000006870 function Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 9
- 230000006872 improvement Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 206010000117 Abnormal behaviour Diseases 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003121 nonmonotonic effect Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
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
- 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)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书公开了一种模型训练方法、装置、存储介质及电子设备。确定当前迭代过程对应的噪声值,以及基于每个训练样本分别确定出的调整模型参数的梯度,根据各梯度以及预设的第一超参数,分别确定各梯度权重,根据各梯度以及各梯度权重,确定各自适应梯度,基于训练样本确定出的梯度越大则自适应梯度与预设的梯度期望值的差越小,根据噪声值对各各自适应梯度之和加噪,以得到当前迭代过程的批次平均梯度,最后根据批次平均梯度,调整所述待训练模型的参数。可以减少小梯度样本对模型参数影响程度,使得模型训练效果更好,基于训练得到的模型执行业务的结果更准确。
Description
技术领域
本说明书涉及机器学习领域,尤其涉及一种模型训练方法、装置、存储介质及电子设备。
背景技术
随着互联网技术的发展,信息传播的途径越来越多,人们也越来越重视保护自己的隐私信息。而在机器学习中往往需要大量的高质量数据,其中大部分通常包含敏感的个人数据。
因此,在满足隐私保护的前提下,如何训练模型是亟待解决的问题,为此本说明书提供一种模型训练方法。
发明内容
本说明书提供一种模型训练方法、装置、存储介质及电子设备,以至少部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种模型训练方法,包括:
在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值;
针对当前迭代过程中的每个训练样本,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度训练样本对应的梯度;
根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重;
根据该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小;
根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度;
根据所述批次平均梯度,调整所述待训练模型的参数。
可选地,确定当前迭代过程对应的噪声值,具体包括:
根据当前迭代过程采用的训练样本,确定隐私预算;根据所述隐私预算以及采样率,确定当前迭代过程对应的噪声值,其中,隐私预算与所述噪声值负相关,所述采样率与所述噪声值正相关。
可选地,确定基于该训练样本得到的调整模型参数的梯度,具体包括:
根据该训练样本的标签及当前迭代模型输出的结果,确定当前迭代的损失值,根据所述损失值,确定基于该训练样本得到的调整模型参数的梯度。
可选地,根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重,具体包括:
根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
训练样本对应的梯度训练样本对应的梯度训练样本对应的梯度可选地,根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重,具体包括:
根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
训练样本对应的梯度训练样本对应的梯度训练样本对应的梯度可选地,根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度,具体包括:
根据所述梯度裁剪阈值与所述噪声值,确定高斯分布;
根据所述高斯分布,确定加入当前迭代过程中的噪声;
对所述当前迭代过程的各训练样本的自适应梯度之和添加所述噪声,确定加入所述噪声后的梯度和;
根据所述梯度和除以当前迭代的样本数,确定所述当前迭代过程的批次平均梯度。
可选地,根据所述批次平均梯度,调整所述待训练模型的参数,具体包括:
根据学习率与所述梯度裁剪阈值的乘积,确定第二超参数;
根据所述批次平均梯度以及所述第二超参数,调整所述待训练模型的参数。
可选地,根据所述批次平均梯度,调整所述待训练模型的参数,具体包括:
根据多次迭代过程确定出的批次平均梯度,以批次平均梯度下降的方向,调整所述第二超参数。
可选地,所述方法还包括:
响应于用户操作,确定目标业务,并获取执行所述目标业务的业务数据;
将所述业务数据输入训练完成的模型中,确定所述模型输出的风险识别结果;
根据所述模型输出结果,确定是否对所述目标业务进行风险控制。
本说明书提供了一种模型训练装置,包括:
噪声值确定模块,用于在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值;
梯度确定模块,用于针对当前迭代过程中的每个训练样本,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度训练样本对应的梯度;
权重确定模块,用于根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重;
自适应梯度模块,用于该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小;
批次平均梯度确定模块,用于根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度;
参数调整模块,用于根据所述批次平均梯度,调整所述待训练模型的参数。
可选地,所述噪声值确定模块,具体用于根据当前迭代过程采用的训练样本,确定隐私预算;根据所述隐私预算以及采样率,确定当前迭代过程对应的噪声值,其中,所述隐私预算与所述噪声值负相关,所述采样率与所述噪声值正相关。
可选地,所述梯度确定模块,具体用于根据该训练样本的标签及当前迭代模型输出的结果,确定当前迭代的损失值,根据所述损失值,确定基于该训练样本得到的调整模型参数的梯度。
可选地,所述权重确定模块,具体用于根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
训练样本对应的梯度训练样本对应的梯度训练样本对应的梯度可选地,所述权重确定模块,具体还用于根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
训练样本对应的梯度训练样本对应的梯度训练样本对应的梯度可选地,所述批次平均梯度确定模块,具体用于根据所述梯度裁剪阈值与所述噪声值,确定高斯分布;根据所述高斯分布,确定加入当前迭代过程中的噪声;对所述当前迭代过程的各训练样本的自适应梯度之和添加所述噪声,确定加入所述噪声后的梯度和;根据所述梯度和除以当前迭代的样本数,确定所述当前迭代过程的批次平均梯度。
可选地,所述参数调整模块,具体用于根据学***均梯度以及所述第二超参数,调整所述待训练模型的参数。
可选地,所述参数调整模块,具体还用于根据多次迭代过程确定出的批次平均梯度,以批次平均梯度下降的方向,调整所述第二超参数。
本说明书提供了一种模型训练装置,所述装置还包括:
业务执行模块,用于响应于用户操作,确定目标业务,并获取执行所述目标业务的业务数据;将所述业务数据输入训练完成的模型中,确定所述模型输出的风险识别结果;根据所述模型输出结果,确定是否对所述目标业务进行风险控制。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述模型训练方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述模型训练方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的一种模型训练方法中,在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值,针对每个训练样本,确定对模型参数调整的梯度,作为该训练样本对应的梯度训练样本对应的梯度,根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重,根据该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,该训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小,根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度,根据所述批次平均梯度,调整所述待训练模型的参数。
从上述方法中可以看出,本方法可以减少小梯度样本对模型参数影响程度,使得模型训练效果更好,执行业务的结果更准确。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附
图中:
图1为本说明书中一种模型训练方法的流程示意图;
图2为本说明书提供的一种模型训练装置的示意图;
图3为本说明书提供的对应于图1的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书提供的一种模型训练方法的流程示意图,具体包括以下步骤:
S100:在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值。
目前,机器学习已经发展得较为成熟并广泛应用在各个领域,包括图像处理、自然语言处理、网络安全、自动驾驶、风险控制等。而机器学习的核心在于模型训练,通常由于训练模型所需算力较多,因此通常通过服务器进行模型训练。同理,本说明书提供的模型训练方法也可由服务器执行。其中,该服务器可以是单独的一台设备,或者有多台设备组成的***,即,分布式服务器。
通常,由于训练样本是基于用户数据确定的,当训练用于码风控的模型时,由于训练的是用于识别标识码是否存在安全风险的模型,因此该服务器可以确定作为训练样本的数据来源的用户,例如,申请过支付码或者开通过二维码业务的用户。然后针对这类用户,根据用户的用户地理位置、商户投诉数据、订单数据等用户数据,确定训练样本。而训练用于识别游戏外挂的模型时,该服务器可以根据游戏账户,确定用户的实名认证信息、游戏账号上线时间、充值记录等用户数据,作为训练样本。
而用户数据属于敏感数据,因此在训练模型时,需要进行隐私保护。尤其是在分布式训练模型场景下,通常需要在分布式的不同节点之间传输模型参数的梯度,增加了敏感数据泄露的风险。模型训练的迭代次数越多,用户数据泄露的风险越大,所以可在模型训练时通过差分的手段进行隐私保护。
本说明书提出了一种模型训练过程中保护用户敏感数据的方法,首先,在对待训练模型进行迭代训练的过程中,针对每次迭代过程,确定该次迭代过程对应的噪声值。即,确定当前迭代过程对应的噪声值。
具体的,该服务器可先根据当前迭代过程采用的训练样本,确定隐私预算。
需要说明的是,由于训练样本参与训练过程次数越多,训练样本泄露的概率就越高。因此通常基于隐私预算的机制添加噪声,以减少训练样本泄露的概率。其中,针对每个训练样本,该训练样本每次参与训练,都会扣除部分隐私预算,直至隐私预算消耗完毕,则确定不再采用该训练样本参与训练。具体如何确定隐私预算已经有多种手段,且较为成熟,因此,本说明书对如何确定隐私预算不再赘述。例如,在训练用于码风控的模型时,用户数据被应用于训练模型的次数达到10次时,认为继续应用该用户数据的训练样本可能有较大该率造成用户数据的泄露,或者被第三方破解得到用户数据,因此对于每个训练样本,每次在采用该训练样本训练模型时,可根据该训练样本历史上被用于训练该模型的次数,确定该训练样本的隐私预算。例如,首次使用时隐私预算为10,第二是使用时隐私预算为9,当隐私预算为0时不再使用该训练样本训练模型。
其次,该服务器在确定出隐私预算之后,可根据该隐私预算以及采样率,确定当前迭代过程对应的噪声值。其中,该隐私预算与确定出的噪声值负相关,该采样率与确定出噪声值正相关。具体可以采用下式确定噪声值:
其中,(δ,ε)为预设的隐私预算取值范围,σ是指加入的噪声值,C2是指常数,Q是指采样率,B是指当前迭代过程所需训练样本量,N是指整个数据集中包含的训练样本量,t是指当前迭代次数。添加的噪声越多,则加噪后结果与加噪前的结果差异就越大,越难以通过加噪后的结果推算训练样本。可见,通过上式确定噪声值时,随着迭代次数t的增加,训练样本泄露的概率会增加,加入的噪声值σ越大。并且,由于隐私预算ε会随着使用训练样本的次数增加而减少,而隐私预算越少,加入的噪声值σ越大,以降低训练样本泄露的概率。也就是说,根据迭代次数t及隐私预算ε的变化,加入的噪声值σ也是变化的。上述数值可根据实际需求设定,本说明书不做限制。
当预设的隐私预算取值范围为(δ,ε)时,加入的噪声值σ至少要与上述表达式右边相等,才能保证用于当前迭代过程的训练样本不被泄露。例如,当预设的隐私预算取值范围为(10-5,1),C2=100,B=10,N=100,T=125,则加入的噪声值至少为250,才能保证用于当前迭代过程的训练样本不被泄露。若加入的噪声值为1,则对当前迭代过程的训练样本的扰动十分微小,不足以保护该训练样本。
此外,服务器也不能加入过大的噪声,若加入的噪声过大,对该训练样本的扰动过大,会影响该训练样本的可用性。例如,当需要加入至少250的噪声量,但若服务器实际加入的噪声量为2500的,则会导致加入噪声后的训练样本完全被覆盖,无法识别出原始训练样本,则该加入噪声后的训练样本不能继续使用。
S102:针对当前迭代过程中的每个训练样本,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度。
由于本说明书确定的是当前迭代过程对应的噪声值,所以可以在当前迭代开始前确定对应噪声值,但是步骤S100与步骤S102是异步执行的,所以只要在步骤S108执行加噪声操作前,执行步骤S100,确定出对应噪声值即可。
在本说明书一个或多个实施例中,根据当前迭代过程所需训练样本量从数据集中,确定各训练样本。之后,将各训练样本分别输入该待训练模型,确定该待训练模型分别输出的各训练样本对应的输出结果。最后,针对每个训练样本,根据该训练样本对应的输出结果以及该训练样本的标签,确定对模型参数调整的梯度。当该待训练模型应用于风控领域中的码风控业务时,该训练样本对应的输出结果可以是当前通过支付码进行支付是否存在风险,该训练样本的标签为当前通过支付码进行支付存在风险或者当前通过支付码进行支付不存在风险。当该模型用于识别游戏外挂时,该训练样本对应的输出结果可以是用户在游戏中是否存异常行为,则该训练样本的标签为用户存在异常行为或者用户不存在异常行为。则根据训练样本的标签以及待训练模型的输出结果,可以确定该训练样本对应的梯度。为了方便描述,后续将基于该训练样本得到的调整模型参数的梯度,作为训练样本对应的梯度。
具体的,针对当前迭代过程中的每个训练样本,服务器通过比较该训练样本的标签与当前迭代模型输出的结果的差异大小,确定当前迭代的损失值,并构建损失函数,根据链式法则对该损失函数进行求导,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度,其中,可通过最小二乘法、极大似然估计法及交叉熵等方法构建损失函数,本说明书对此并不做具体限定,能确定该损失函数即可。
S104:根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重。
由于大梯度的训练样本对模型输出结果影响较大,小梯度的训练样本对模型输出结果影响较小。若服务器对不同梯度的训练样本使用固定的裁剪量进行梯度裁剪,再基于裁剪后的梯度调整模型参数,则该模型输出结果会与训练样本的标签的差值较大。但实际上该差值越小表示该模型训练的效果越好,所以本说明书通过确定梯度权重,根据梯度权重对训练样本对应的梯度进行裁剪,减小该差值。
在本说明书一个或多个实施例中,该服务器可根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重。通过该方式确定该训练样本对应的梯度权重,可以保证小梯度的样本裁剪后的自适应梯度对模型输出结果的影响小于大梯度的样本裁剪后的自适应梯度对模型输出结果的影响。避免了当训练样本对应的梯度远小于预设的梯度裁剪阈值,但服务器为了使得该训练样本梯度重新接近于预设的梯度裁剪阈值,仍对采用该训练样本对模型进行训练的情况。减少了小梯度训练样本对模型参数的影响,从而减少了模型训练次数,解决了模型收敛较慢的问题。对不同梯度的训练样本赋予不同的权重,以此减少模型输出结果与训练样本的标签的偏差。
具体的,该服务器针对每个训练样本,根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重。其中,第一超参数以r表示,用于保证确定出的梯度权重不为零。因此,为了避免第一超参数对调整后的梯度影响过大,因此该第一超参数通常取值范围在0~1之间,并且取值较小。例如,取值为0.01或者0.001等等。并且,在本说明书一个或多个实施例中,自适应的确定梯度权重,使得当训练样本对应的梯度较大时,加权后的梯度值的最大值小于1/r,而当训练样本对应的梯度较小时,可以减少加权对梯度的增益。
进一步地,该函数还可以为非单调函数,使得当梯度小于指定值时,确定出的梯度权重下降,进一步减少极小梯度对调整模型参数的影响。其中,该指定值与训练样本对应的梯度和第一超参数相关。当训练样本对应的梯度从无穷小或无穷大趋近于0的过程中,该自适应权重函数ω(gt,i)会先增大后减小,并在零点趋于1。
在本说明书一个或多个实施例中,该服务器可采用下式确定梯度权重ω1(gt,i),为方便描述将下式称为第一自适应权重函数:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。设置该第一超参数r是为了使自适应权重函数ω1(gt,i)的分母不为零,避免了除零错误的问题。
当gt,i变大时,第一自适应权重函数ω1(gt,i)会减小,再与该梯度gt,i相乘得到的ω1(gt,i)gt,i会增大。
例如,训练用于码风控的模型为例,该模型的输出结果可以确定该训练样本存在风险或者不存在风险结果,则可根据输出结果的风险概率与训练样本的标签,确定该训练样本的梯度。当第3次迭代的第3个训练样本对应的梯度g3,3=100,第一超参数r=0.01时,ω1(g3,3)=0.009999,当第3次迭代的第4个训练样本对应的梯度g3,4=0.01,第一超参数r=0.01时,ω1(g3,4)=1.960784,显然,ω1(g3,4)要远大于ω1(g3,3),即标签不一致的训练样本确定的第一自适应权重,远大于标签一致的训练样本确定的第一自适应权重。则通过该第一自适应权重函数ω1(gt,i)达到了不同梯度的训练样本被赋予了不同权重的效果,从而达到减少模型输出结果与训练样本的标签的偏差的目的。
S106:根据该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小。
在本说明书一个或多个实施例中,针对当前迭代过程中的每个训练样本,根据自适应权重函数确定该训练样本的权重后,即可根据该训练样本的权重及预设的梯度裁剪阈值,确定该训练样本的自适应梯度,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小,自适应梯度计算公式具体如下式所示:
将该训练样本对应的梯度gt,i、预设的梯度裁剪阈值C与该训练样本的权重ω(gt,i)相乘即可得到该训练样本的自适应梯度其中,该梯度裁剪阈值C是为了限制该训练样本自适应梯度的最大值。
需要说明的是,针对每次迭代,预设的梯度裁剪阈值是定值。但对于不同次的迭代过程,可根据预设的裁剪阈值区间对该梯度裁剪阈值进行调整。
S108:根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度。
为了保护用户的敏感数据,服务器通过在模型训练样本对应的梯度中加入噪声,对训练样本对应的梯度进行扰动,防止用户的敏感数据泄露。
在本说明书一个或多个实施例中,在根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声前,先根据该梯度裁剪阈值C与该噪声值σ,确定高斯分布N(0,C2σ2),其中,方差C2σ2决定了该高斯分布的幅度。由于每次迭代过程中,每使用一次该训练样本,则该隐私预算会变大,使得每次迭代所加入的噪声值σ不同。那么,每次迭代的高斯分布也会动态变化,则从该高斯分布中抽取的噪声也会不同,使得该模型具有更高的稳定性。
得到该高斯分布后,对该高斯分布进行采样,获取加入当前迭代过程中的噪声,其中,可通过逆变换法、拒绝采样法及博克斯-穆勒(Box-Muller)算法等对该高斯分布进行采样。本说明书对此不作限定,可根据需要设置。
本说明书针对每次迭代过程,基于当前迭代过程中所有训练样本进行计算。因此,需要将噪声加入至当前迭代过程中的批次平均梯度中。
具体的,对当前迭代过程的各训练样本的自适应梯度进行求和,并将从高斯分布中采样的噪声加入至当前迭代过程的各训练样本的自适应梯度之和中,得到加入该噪声后的梯度和具体如下式所示:
将该梯度和除以当前迭代的样本数B,得到当前迭代过程的批次平均梯度/>
S110:根据所述批次平均梯度,调整所述待训练模型的参数。
在本说明书一个或多个实施例中,根据所述批次平均梯度,调整待训练模型的参数,通过调整该模型的参数Δxt,完成对该模型的优化。
具体如下式所示:
其中,Δxt是指待训练模型的参数,根据实现对模型下一次的迭代。
可见,通过对不同梯度的训练样本进行自适应的权重调整,使得在保证模型训练安全时采用梯度剪裁的方式,可以减少小梯度样本的影响增加过多,而大梯度样本的影响减少过多的情况。通过减少小梯度样本对模型参数影响程度,使得模型训练时对参数调整的波动更少,加速模型的收敛,减轻模型训练的成本。尤其是当模型迭代更新较快时,可以有效减少模型训练占用时间,提高模型有效使用时间。例如,模型一周更新一次,如果训练时间从2天减少到1天,可以有效提高模型有效的使用时间,即从原来只能用5天提高到每周可以用6天。
并且,除了有效提高模型训练效率以外,还可以减少小梯度训练样本在模型训练时对模型参数调整的影响,由于需要进行梯度剪裁,所以小梯度训练样本目前会出现增益过高的情况,即,小梯度训练样本对模型参数调整幅度的比例,高于了大梯度训练样本对模型参数调整幅度的比例。而通过上述过程可以对不同梯度的训练样本自适应的调整权重,即自适应的调整梯度剪裁的程度,大大增加了大梯度训练样本对模型参数调整幅度的占比,使得模型参数调整可以更加准确。则通过模型执行业务时,模型输出结果更准确,业务执行效果更好。例如,对于用于码风控的模型,通过上述训练过程训练的模型,可以给出更为准确的输出结果,可以更准确的确定当前用户使用标识码执行的业务是否存在风险,减少用户损失。对于用于识别游戏外挂的模型,可以减少误判情况的出现,提高对更加隐蔽的异常行为的识别成功率,减少用户权益受到损害的概率。
基于图1所示的模型训练方法,在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值,针对每个训练样本,确定对模型参数调整的梯度训练样本对应的梯度,作为该训练样本对应的梯度,根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重,根据该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,该训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小,根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度,根据所述批次平均梯度,调整所述待训练模型的参数。
从上述方法中可以看出,本方法可以减少小梯度样本对模型参数影响程度,使得模型训练效果更好,执行业务的结果更准确。
针对步骤S104,在本说明书还提供了一种确定梯度权重的方式,为第二自适应权重函数ω2(gt,i),第一自适应权重函ω1(gt,i)与第二自适应权重函数ω2(gt,i)的差别仅在于,第二自适应权重函数ω2(gt,i)中的将第一超参数r除以该训练样本对应的梯度的平方与该第一超参数的和。因此,确定该第二自适应权重函数ω2(gt,i)的过程与确定第一自适应权重函数ω1(gt,i)一致,本说明书在此不再赘述。第二自适应权重函数ω2(gt,i)具体如下式所示:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
当gt,i变大时,第二自适应权重函数ω2(gt,i)会减小,再将与该梯度gt,i相乘得到的ω2(gt,i)gt,i会比ω1(gt,i)gt,i更小。也就是说,当训练样本对应的梯度相同时,根据第二自适应权重函数ω2(gt,i)得到的自适应裁剪梯度与预设的梯度期望值的差比,根据第一自适应权重函数ω1(gt,i)得到的自适应裁剪梯度与预设的梯度期望值的差更小,所以最终模型训练输出的结果与训练样本的标签的偏差也更小。
此外,对于自适应权重函数ω(gt,i)来说,针对当前迭代过程中的每个训练样本,要满足该训练样本的自适应梯度是根据该训练样本对应的梯度及该训练样本对应的梯度权重确定的,训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小以及该训练样本裁剪后的自适应梯度小于预设的梯度裁剪阈值C,本说明书对自适应权重函数ω(gt,i)不做限制,可根据需要设置。
针对步骤S110,本说明书还提供另一种调整待训练模型的参数的方式,即根据该批次平均梯度及该第二超参数,调整所述待训练模型的参数。
在本说明书一个或多个实施例中,一个良好的学习率ηt能够使模型在合适的时间内训练到较好的程度,学习率ηt也是一个可调优的值,与该梯度裁剪阈值C调优过程相似,也需要耗费额外的隐私预算。由于一般需要对该梯度裁剪阈值C及学习率ηt进行多次调优才能符合模型需求,而对该梯度裁剪阈值C及学习率ηt进行过多的调优有泄露用户敏感数据的风险。因此,可以将该梯度裁剪阈值C与学习率ηt进行耦合,就可以减少一个调参的维度,使得模型更易于使用和更容易调整参数。
将该梯度裁剪阈值C与学***均梯度以及该第二超参数,调整待训练模型的参数,减少了调参次数,降低了泄露用户敏感数据的风险。
具体的,根据多次迭代过程确定出的批次平均梯度,以批次平均梯度下降的方向,调整该第二超参数,且该调整第二超参数的过程可以在模型训练过程中进行。当批次平均梯度的变化小于预设批次平均梯度阈值时,停止调整第二超参数A。具体如下式所示:/>
对该第二超参数A调整后,即可实现对该模型的优化。
本说明书提出的方法训练得到模型可以应用在许多领域,应用该模型执行业务时,服务器可先响应于用户操作,确定目标业务,其中,该目标业务可以添加好友业务、更改密码业务等,只要该模型应用于该目标业务,能解决与目标业务相关的问题即可。
接着,服务器获取执行该目标业务的业务数据,其中,该业务数据可以是用户的个人认证信息、人脸图像、环境信息或其他等用于执行该目标业务所需的数据,本说明书对此不作限制。
然后,服务器将该业务数据输入训练完成的模型中,确定该模型输出的风险识别结果,其中,由于执行的该目标业务不同,则该结果也会不同。当服务器执行添加好友业务时,该结果为显示该好友有较多人投诉,用于提示用户,该好友可能进行过诈骗、人身攻击等不良行为。当服务器执行更改密码业务时,该结果为显示当前使用的是非安全网络或设备为非常用登录设备,用于提示用户是否在此环境下继续更改密码等。
最后,根据该模型输出结果,确定是否对该目标业务进行风险控制。在添加好友时,该模型输出结果后,服务器询问使用终端的用户是否继续添加该好友。在更改密码时,该模型输出结果后,服务器询问使用终端的用户是否继续更改密码。
需要说明的是,利用本说明书的方法训练出的模型,输出的结果与训练样本的标签差异较小。那么,该模型执行目标业务输出的结果就会较为准确,还可以更好地保护用户的敏感数据。
当模型应用于风控领域中的码风控业务时,首先,响应于用户操作,服务器确定目标业务,该目标业务可以是扫码添加好友,也可以是扫码支付,还可以是扫码识别物品等。
接着,服务器要确定出执行该码风控业务的业务数据。当该目标业务是扫码支付时,该业务数据可以是用户地理位置、商户投诉数据、订单数据等,且该模型的训练样本的标签是指该码风控业务存在支付风险。
然后,将上述数据输入至该训练完成的模型中,确定该模型输出的结果。具体的,服务器对上述数据进行分析,并输入该模型中,该模型根据上述数据输出当前通过支付码进行支付是否存在风险的结果。
最后,根据该模型输出的结果,确定是否对当前扫码支付进行风险控制。若该模型输出的结果表示当前支付存在风险,则服务器可执行向使用终端的用户发送风险提示的信息操作、停止执行支付操作或记录该支付操作等。若该模型输出的结果表示当前支付不存在风险,则用户可继续扫码支付业务。
由于该模型是通过本说明书提出的方法训练出的模型,则该模型输出的当前支付存在风险的结果与训练样本的标签的差值较小。那么,该模型输出的当前支付是否存在风险的结果较为准确,从而使得该模型对当前支付进行风险控制的效果较好。
当模型应用于风控领域中的聊天内容业务时,首先,确定出聊天内容的文本、图片、用户账号等业务数据,且该模型的训练样本的标签是指聊天内容存在诈骗行为。
然后,将上述数据输入该模型中,确定该模型输出的结果,其中,该结果是指当前用户聊天内容是否存在诈骗行为。
最后,根据该模型输出的结果,确定是否对当前用户聊天进行风险控制。若该模型输出的结果表示用户存在诈骗行为,则向用户发送对方可能在诈骗的提示信息或发送用户是否切断对话的提示信息。若该模型输出的结果表示表示用户不存在诈骗行为,则继续当前聊天。
当该模型应用于风控领域时,该模型使用的训练样本跟用户的敏感数据相关性更高。所以,通过本说明书提出的方法不仅可以提高模型的训练效果,使得最终风险判断较为准确,还可以更好地保护用户的敏感数据。
当模型用于在某游戏中,确定用户是否存在作弊行为,该作弊行为是指通过一些外挂或其他手段,使得游戏能自动进行或者总是能获得胜利等非人为操控的行为。
该模型在训练前要先获取当前用户的数据,比如用户的实名认证信息、游戏账号上线时间、充值记录等,根据该用户数据进行训练。
当该模型训练完成并部署到该游戏中时,服务器可以判断该用户的账号状态是否异常,比如该账户是否在常用登录地区登录,在登录前通过人脸识别或发送短信的方式验证是否为本人登录等,再根据用户的游戏历史胜率、局内表现等判断用户是否存在作弊行为,并是否进行封号处理等。
当然通过本说明书完成训练的模型也可以应用于其他领域,本说明书对此不做限制。
需要说明的是,当本说明书中训练得到的是风控模型时,该风控模型可部署在终端也可部署在服务器。当部署在终端时,终端响应于用户在操作,确定用户需要执行的目标业务,并确定该目标业务的业务数据。之后将该业务数据输入该风控模型中,并确定该风控模型输出的风控结果。最后基于该风控结果,确定是否对该目标业务进行风险控制。当部署在服务器时,确定终端发送的业务数据,该业务数据为终端响应于用户操作启动的目标业务的业务数据,之后将该业务数据输入该风控模型,确定该风控模型输出的风控结果。最后,若该风控结果为需要进行风险控制,则向该终端发送风控指令,或者在接收到该终端发送的该目标业务的业务请求时,进行风险控制。若该风控结果为无需进行风险控制,则向该终端发送继续执行指令,或者在接收到该终端发送的该目标业务的业务请求时,执行业务。
以上为本说明书的一个或多个实施例提供的模型训练方法,基于同样的思路,本说明书还提供了相应的模型训练装置,如图2所示。
图2为本说明书提供的一种模型训练装置示意图,具体包括:
噪声值确定模块200,用于在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值;
梯度确定模块202,用于针对当前迭代过程中的每个训练样本,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度训练样本对应的梯度;
权重确定模块204,用于根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重;
自适应梯度模块206,用于根据该训练样本对应的梯度及该训练样本对应的梯度权重,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小;
批次平均梯度确定模块208,用于根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度;
参数调整模块210,用于根据所述批次平均梯度,调整所述待训练模型的参数。
可选地,所述噪声值确定模块200,具体用于根据当前迭代过程采用的训练样本,确定隐私预算;根据所述隐私预算以及采样率,确定当前迭代过程对应的噪声值,其中,隐私预算与所述噪声值负相关,所述采样率与所述噪声值正相关。
可选地,所述梯度确定模块202,具体用于根据该训练样本的标签及当前迭代模型输出的结果,确定当前迭代的损失值,根据所述损失值,确定基于该训练样本得到的调整模型参数的梯度。
可选地,所述权重确定模块204,具体用于根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
可选地,所述权重确定模块204,具体还用于根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,gt,i是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
可选地,所述批次平均梯度确定模块208,具体用于根据所述梯度裁剪阈值与所述噪声值,确定高斯分布;根据所述高斯分布,确定加入当前迭代过程中的噪声;对所述当前迭代过程的各训练样本的自适应梯度之和添加所述噪声,确定加入所述噪声后的梯度和;根据所述梯度和除以当前迭代的样本数,确定所述当前迭代过程的批次平均梯度。
可选地,所述参数调整模块210,具体用于根据学***均梯度以及所述第二超参数,调整所述待训练模型的参数。
可选地,所述参数调整模块210,具体还用于根据多次迭代过程确定出的批次平均梯度,以批次平均梯度下降的方向,调整所述第二超参数。
本说明书提供了一种模型训练装置,所述装置还包括:
业务执行模块212,用于响应于用户操作,确定目标业务,并获取执行所述目标业务的业务数据;将所述业务数据输入训练完成的模型中,确定所述模型输出的风险识别结果;根据所述模型输出结果,确定是否对所述目标业务进行风险控制。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的模型训练方法。
本说明书还提供了图3所示的电子设备的结构示意图。如图3所述,在硬件层面,该无人驾驶设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的模型训练方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、***或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (16)
1.一种模型训练方法,所述方法包括:
在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值;
针对当前迭代过程中的每个训练样本,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度;
根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重;
根据该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小;
根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度;
根据所述批次平均梯度,调整所述待训练模型的参数;
响应于用户操作,确定目标业务,并获取执行所述目标业务的业务数据;
将所述业务数据输入训练完成的模型中,确定所述模型输出的风险识别结果;
根据所述模型输出结果,确定是否对所述目标业务进行风险控制;
根据该训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重具体包括:
根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数,用于保证确定出的梯度权重不为零。
2.如权利要求1所述的方法,确定当前迭代过程对应的噪声值,具体包括:
根据当前迭代过程采用的训练样本,确定隐私预算;
根据所述隐私预算以及采样率,确定当前迭代过程对应的噪声值,其中,隐私预算与所述噪声值负相关,所述采样率与所述噪声值正相关。
3.如权利要求1所述的方法,确定基于该训练样本得到的调整模型参数的梯度,具体包括:
根据该训练样本的标签及当前迭代模型输出的结果,确定当前迭代的损失值,根据所述损失值,确定基于该训练样本得到的调整模型参数的梯度。
4.如权利要求1所述的方法,根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重的方法还包括:
根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
5.如权利要求1所述的方法,根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度,具体包括:
根据所述梯度裁剪阈值与所述噪声值,确定高斯分布;
根据所述高斯分布,确定加入当前迭代过程中的噪声;
对所述当前迭代过程的各训练样本的自适应梯度之和添加所述噪声,确定加入所述噪声后的梯度和;
根据所述梯度和除以当前迭代的样本数,确定所述当前迭代过程的批次平均梯度。
6.如权利要求1所述的方法,根据所述批次平均梯度,调整所述待训练模型的参数,具体包括:
根据学习率与所述梯度裁剪阈值的乘积,确定第二超参数;
根据所述批次平均梯度以及所述第二超参数,调整所述待训练模型的参数。
7.如权利要求6所述的方法,所述方法还包括:
根据多次迭代过程确定出的批次平均梯度,以批次平均梯度下降的方向,调整所述第二超参数。
8.一种模型训练装置,所述装置包括:
噪声值确定模块,用于在对待训练模型进行迭代训练的过程中,确定当前迭代过程对应的噪声值;
梯度确定模块,用于针对当前迭代过程中的每个训练样本,确定基于该训练样本得到的调整模型参数的梯度,作为该训练样本对应的梯度训练样本对应的梯度;
权重确定模块,用于根据该训练样本对应的梯度训练样本对应的梯度以及预设的第一超参数,确定该训练样本对应的梯度权重;
自适应梯度模块,用于根据该训练样本对应的梯度及该训练样本对应的梯度权重,确定该训练样本的自适应梯度,其中,所述训练样本对应的梯度越大,则基于所述梯度权重确定的自适应梯度与预设的梯度期望值的差越小;
批次平均梯度确定模块,用于根据所述当前迭代过程对应的噪声值,对各训练样本的自适应梯度之和添加噪声,确定加入所述噪声后的梯度和,并根据所述梯度和确定所述当前迭代过程的批次平均梯度;
参数调整模块,用于根据所述批次平均梯度,调整所述待训练模型的参数;
业务执行模块,用于响应于用户操作,确定目标业务,并获取执行所述目标业务的业务数据;将所述业务数据输入训练完成的模型中,确定所述模型输出的风险识别结果;根据所述模型输出结果,确定是否对所述目标业务进行风险控制;
所述权重确定模块,具体用于根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数,用于保证确定出的梯度权重不为零。
9.如权利要求8所述的装置,所述噪声值确定模块,具体用于根据当前迭代过程采用的训练样本,确定隐私预算;根据所述隐私预算以及采样率,确定当前迭代过程对应的噪声值,其中,隐私预算与所述噪声值负相关,所述采样率与所述噪声值正相关。
10.如权利要求8所述的装置,所述梯度确定模块,具体用于根据该训练样本的标签及当前迭代模型输出的结果,确定当前迭代的损失值,根据所述损失值,确定基于该训练样本得到的调整模型参数的梯度。
11.如权利要求8所述的装置,所述权重确定模块,具体用于根据该训练样本对应的梯度以及预设的第一超参数,通过以下公式确定该训练样本对应的梯度权重:
其中,是指第t次迭代的第i个训练样本对应的梯度,r是指第一超参数。
12.如权利要求8所述的装置,所述批次平均梯度确定模块,具体用于根据所述梯度裁剪阈值与所述噪声值,确定高斯分布;根据所述高斯分布,确定加入当前迭代过程中的噪声;对所述当前迭代过程的各训练样本的自适应梯度之和添加所述噪声,确定加入所述噪声后的梯度和;根据所述梯度和除以当前迭代的样本数,确定所述当前迭代过程的批次平均梯度。
13.如权利要求8所述的装置,所述参数调整模块,具体用于根据学***均梯度以及所述第二超参数,调整所述待训练模型的参数。
14.如权利要求13所述的装置,所述参数调整模块,具体还用于根据多次迭代过程确定出的批次平均梯度,以批次平均梯度下降的方向,调整所述第二超参数。
15.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
16.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310183952.0A CN116150622B (zh) | 2023-02-17 | 2023-02-17 | 一种模型训练方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310183952.0A CN116150622B (zh) | 2023-02-17 | 2023-02-17 | 一种模型训练方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116150622A CN116150622A (zh) | 2023-05-23 |
CN116150622B true CN116150622B (zh) | 2023-08-11 |
Family
ID=86361763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310183952.0A Active CN116150622B (zh) | 2023-02-17 | 2023-02-17 | 一种模型训练方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116150622B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117972436B (zh) * | 2024-03-29 | 2024-07-05 | 蚂蚁科技集团股份有限公司 | 大语言模型的训练方法、训练装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110084365A (zh) * | 2019-03-13 | 2019-08-02 | 西安电子科技大学 | 一种基于深度学习的服务提供***及方法 |
CN111539769A (zh) * | 2020-04-27 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 基于差分隐私的异常检测模型的训练方法及装置 |
CN112288100A (zh) * | 2020-12-29 | 2021-01-29 | 支付宝(杭州)信息技术有限公司 | 一种基于联邦学习进行模型参数更新的方法、***及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455996B (zh) * | 2012-05-31 | 2016-05-25 | 富士通株式会社 | 边缘提取方法和设备 |
-
2023
- 2023-02-17 CN CN202310183952.0A patent/CN116150622B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110084365A (zh) * | 2019-03-13 | 2019-08-02 | 西安电子科技大学 | 一种基于深度学习的服务提供***及方法 |
CN111539769A (zh) * | 2020-04-27 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 基于差分隐私的异常检测模型的训练方法及装置 |
CN112288100A (zh) * | 2020-12-29 | 2021-01-29 | 支付宝(杭州)信息技术有限公司 | 一种基于联邦学习进行模型参数更新的方法、***及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116150622A (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6991341B2 (ja) | ロボットの顧客サービスから人間の顧客サービスへの移行のための方法および装置 | |
EP3754571A1 (en) | Risk control rule generation method and apparatus | |
CN107423883B (zh) | 待处理业务的风险识别方法及装置、电子设备 | |
Fokianos et al. | Interventions in INGARCH processes | |
CN109616139B (zh) | 语音信号噪声功率谱密度估计方法和装置 | |
CN116150622B (zh) | 一种模型训练方法、装置、存储介质及电子设备 | |
CN109389412B (zh) | 一种训练模型的方法、装置、服务设备以及用户设备 | |
CN116186772A (zh) | 一种基于联邦学习的模型训练方法及装置 | |
CN111325444B (zh) | 一种风险防控决策方法、装置、***及设备 | |
CN105760361B (zh) | 一种语言模型建立方法及装置 | |
WO2024113932A1 (zh) | 一种模型优化的方法、装置、设备及存储介质 | |
CN111881399A (zh) | 一种消息推送方法及装置 | |
CN116069933A (zh) | 一种业务风控方法、装置、存储介质及电子设备 | |
CN116402108A (zh) | 一种模型训练及图数据的处理方法、装置、介质及设备 | |
CN114943307A (zh) | 一种模型训练的方法、装置、存储介质以及电子设备 | |
CN113792889B (zh) | 一种模型的更新方法、装置及设备 | |
CN114494747A (zh) | 模型的训练方法、图像处理方法、装置、电子设备及介质 | |
US11487650B2 (en) | Diagnosing anomalies detected by black-box machine learning models | |
CN116306990A (zh) | 一种模型的处理方法、装置及设备 | |
CN114387480A (zh) | 一种人像加扰的方法及装置 | |
CN115564450A (zh) | 一种风控方法、装置、存储介质及设备 | |
JP2024510634A (ja) | 可変分布保存を用いて機密データを変換するための学習 | |
CN116128072B (zh) | 一种风险控制模型的训练方法、装置、设备及存储介质 | |
CN117036869B (zh) | 一种基于多样性和随机策略的模型训练方法及装置 | |
CN117114392A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |