CN112329052A - 一种模型隐私保护方法及装置 - Google Patents
一种模型隐私保护方法及装置 Download PDFInfo
- Publication number
- CN112329052A CN112329052A CN202011155392.0A CN202011155392A CN112329052A CN 112329052 A CN112329052 A CN 112329052A CN 202011155392 A CN202011155392 A CN 202011155392A CN 112329052 A CN112329052 A CN 112329052A
- Authority
- CN
- China
- Prior art keywords
- model
- training
- data
- data set
- final
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000012549 training Methods 0.000 claims abstract description 226
- 230000008569 process Effects 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 49
- 235000015250 liver sausages Nutrition 0.000 claims abstract 3
- XYSQXZCMOLNHOI-UHFFFAOYSA-N s-[2-[[4-(acetylsulfamoyl)phenyl]carbamoyl]phenyl] 5-pyridin-1-ium-1-ylpentanethioate;bromide Chemical compound [Br-].C1=CC(S(=O)(=O)NC(=O)C)=CC=C1NC(=O)C1=CC=CC=C1SC(=O)CCCC[N+]1=CC=CC=C1 XYSQXZCMOLNHOI-UHFFFAOYSA-N 0.000 claims abstract 3
- 238000010801 machine learning Methods 0.000 claims description 13
- 238000012360 testing method Methods 0.000 claims description 8
- 230000002776 aggregation Effects 0.000 claims description 7
- 238000004220 aggregation Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioethics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种模型隐私保护方法,该方法包括以下步骤:基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式;如果目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型;如果目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用训练数据集进行模型训练过程中,对将训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。应用本申请所提供的技术方案,可以较好地且有效地进行隐私保护,提高训练数据及模型的安全性。本申请还公开了一种模型隐私保护装置,具有相应技术效果。
Description
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种模型隐私保护方法及装置。
背景技术
随着计算机技术的快速发展,机器学习的发展也日趋成熟。机器学习广泛应用在各种场景中,如推荐系统、人脸识别、智能家居、无人汽车等,给人们生活带来诸多变化。
机器学习模型的性能与训练数据集的大小相关。训练数据可能涉及到购物信息、体检病历等,用户并不希望购物信息、体检病历等涉及到个人隐私的数据被泄露,但机器学习模型往往会在训练过程中隐式记住这些细节,并且在推理、预测过程中无意间透露,而且还可能被恶意者通过数据窃取方式获取。所以说,机器学习本身存在着隐私安全、隐私泄露等安全问题。
综上所述,如何在模型训练过程中有效进行隐私保护,提高训练数据及其模型的安全性,是目前本领域技术人员急需解决的技术问题。
发明内容
本申请的目的是提供一种模型隐私保护方法及装置,以在模型训练过程中有效进行隐私保护,提高训练数据及模型的安全性。
为解决上述技术问题,本申请提供如下技术方案:
一种模型隐私保护方法,包括:
基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式;
如果所述目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型;
如果所述目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用所述训练数据集进行模型训练过程中,对将所述训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。
在本申请的一种具体实施方式中,所述训练数据集包括隐私数据集和公共数据集,所述在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型,包括:
将所述隐私数据集划分为不相交的N个隐私数据子集,N为正整数;
分别使用每个隐私数据子集进行机器学习模型的训练,获得N个教师模型;
利用所述N个教师模型对所述公共数据集中的每个数据进行类别预测,获得所述公共数据集中每个数据的各个类别的投票数;
对获得的投票数进行噪声聚合处理,确定每个数据的最终标签;
使用所述公共数据集中的数据和相应数据的最终标签,训练学生模型;
将训练完成的学生模型确定为最终的待使用第一模型。
在本申请的一种具体实施方式中,所述对获得的投票数进行噪声聚合处理,确定每个数据的最终标签,包括:
对所述公共数据集中每个数据各个类别的投票数进行加噪扰动处理;
基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签。
在本申请的一种具体实施方式中,所述基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签,包括:
针对每个数据,基于加噪扰动处理后的各个类别的投票数,确定该数据最大投票数的类别;
如果该最大投票数的类别的投票数大于预设的票数阈值,则将该数据最大投票数的类别确定为该数据的最终标签。
在本申请的一种具体实施方式中,所述隐私数据集中的数据具有历史标签,所述基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签,包括:
基于加噪扰动处理后的各个类别的投票数,确定多个不同的判定阈值中每个判定阈值下每个数据的待用标签;
针对所述多个不同的判定阈值中每个判定阈值,基于该判定阈值下每个数据的待用标签与相应数据的历史标签,确定该判定阈值下的判定结果准确率;
将最高的判定结果准确率对应的判定阈值下每个数据的待用标签确定为相应数据的最终标签。
在本申请的一种具体实施方式中,所述在使用所述训练数据集进行模型训练过程中,对将所述训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型,包括:
在每一轮的每一批的迭代训练过程中,将对所述训练数据集进行采样得到的预设的批大小的数据输入到模型,计算梯度;
将计算得到的梯度进行裁剪处理,并添加噪声扰乱梯度,获得新梯度;
使用所述新梯度更新模型参数;
在进行多轮迭代训练之后,获得最终的待使用第二模型。
在本申请的一种具体实施方式中,还包括:
在迭代训练过程中,确定首轮训练后的模型准确率;
如果所述首轮训练后的模型准确率不低于预设的准确率阈值,则继续进行迭代训练;
如果所述首轮训练后的模型准确率低于所述准确率阈值,则重新进行网络初始化并重新进行迭代训练。
在本申请的一种具体实施方式中,所述准确率阈值为通过以下步骤确定:
在正式进行迭代训练之前,进行多次预测试,每次预测试执行M轮训练,M为正整数;
确定每次预测试每轮训练后的模型准确率;
基于确定的每次预测试每轮训练后的模型准确率,确定准确率阈值。
在本申请的一种具体实施方式中,还包括:
根据训练过程中的参数,确定差分隐私预算。
一种模型隐私保护装置,包括:
保护方式确定模块,用于基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式;
第一模型获得模块,用于如果所述目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型;
第二模型获得模块,用于如果所述目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用所述训练数据集进行模型训练过程中,对将所述训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。
应用本申请实施例所提供的技术方案,先基于当前训练场景,确定出用于对模型进行隐私保护的目标保护方式,在确定的目标保护方式为PATE方式时,在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得待使用第一模型,在确定的目标保护方式为DPSGD方式时,在使用训练数据集进行模型训练过程中,对训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。得到待使用第一模型或者待使用第二模型后,可以将其应用到实际应用场景中。在模型训练过程中,对中间产生的投票结果进行加噪处理,或者对计算得到的梯度进行加噪处理,可以较好地且有效地进行隐私保护,提高训练数据及模型的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一种模型隐私保护方法的实施流程图;
图2为本申请实施例中教师模型和学生模型的训练过程示意图;
图3为本申请实施例中迭代训练过程示意图;
图4为本申请实施例中一种模型隐私保护装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1所示,为本申请实施例提供的一种模型隐私保护方法的实施流程图,该方法可以包括以下步骤:
S110:基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式。
在本申请实施例中,不同训练场景可以对应于不同的对模型进行隐私保护的目标保护方式。可以通过试验、历史数据等预先建立训练场景与目标保护方式的对应关系。
如训练场景为具有较大训练数据集的场景,则其对应的目标保护方式可以是PATE(Private Aggregation of Teacher Ensemble)方式;
再如训练场景为深度学习或传统机器学习模型中使用梯度下降场景,则其对应的目标保护方式可以是DPSGD(Differentially Private Stochastic Gradient Descent)方式。
在需要进行模型训练时,可以先确定当前训练场景,如训练数据集的大小、是否使用梯度下降等。基于当前训练场景,可以确定用于对模型进行隐私保护的目标保护方式为PATE方式还是DPSGD方式。
S120:如果目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型。
基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式后,如果确定目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型。
如图2所示,在本申请的一种具体实施方式中,训练数据集包括隐私数据集和公共数据集,该步骤可以包括以下步骤:
步骤一:将隐私数据集划分为不相交的N个隐私数据子集,N为正整数;
步骤二:分别使用每个隐私数据子集进行机器学习模型的训练,获得N个教师模型;
步骤三:利用N个教师模型对公共数据集中的每个数据进行类别预测,获得公共数据集中每个数据的各个类别的投票数;
步骤四:对获得的投票数进行噪声聚合处理,确定每个数据的最终标签;
步骤五:使用公共数据集中的数据和相应数据的最终标签,训练学生模型;
步骤六:将训练完成的学生模型确定为最终的待使用第一模型。
为便于描述,将上述几个步骤结合起来进行说明。
在本申请实施例中,训练数据集可以包括隐私数据集和公共数据集。
在要进行模型数据时,可以将隐私数据集划分为不相交的N个隐私数据子集,如图2所示的数据集1、数据集2、……、数据集N,N为正整数。分别使用每个隐私数据子集进行机器学习模型的训练,可以获得N个教师模型。即在每个隐私数据子集上独立训练得到相应的教师模型。
利用N个教师模型对公共数据集中的每个数据进行类别预测,可以获得公共数据集中每个数据的各个类别的投票数。在这里,每个教师模型的预测视为一次投票。公共数据集中的每个数据都可以得到针对类别预测结果的N个投票,每个数据的各个类别具有相应的投票数。
对获得的投票数进行噪声聚合处理,可以确定公共数据集中每个数据的最终标签。具体的,可以先对公共数据集中每个数据各个类别的投票数进行加噪扰动处理,然后基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终的标签。对中间产生的投票结果进行加噪处理,可以引入随机性,使得单一数据个体造成的影响不固定,但总体数据的影响依然存在,以保护个体隐私的同时能够进行模型训练。
在本申请的一种实施方式中,对公共数据集中每个数据各个类别的投票数进行加噪扰动处理后,可以得到公共数据集中每个数据各个类别的加噪扰动后的投票数,针对每个数据,可以将其最大投票数的类别确定为该数据的最终标签。举例而言,公共数据集中一个数据的类别A的加噪扰动后的投票数为45,类别B的加噪扰动后的投票数为55,可以直接将类别B确定为该数据的最终标签。
在本申请的另一种具体实施方式中,针对公共数据集中的每个数据,可以基于加噪扰动处理后的各个类别的投票数,确定该数据最大投票数的类别,如果该最大投票数的类别的投票数大于预设的票数阈值,则将该数据最大投票数的类别确定为该数据的最终标签。
在该实施例中,可以预设一个票数阈值,该票数阈值可以根据实际情况进行设定和调整。当一个数据的一个类别的投票数大于该票数阈值时,认为教师共识程度较高,将该类别确定为该数据的最终标签,对于后续进行学生模型的训练效果更好。以上例为例,如果票数阈值为60,则虽然类别B的加噪扰动后的投票数最大,但因为其投票数55小于票数阈值60,所以,在本申请实施例中并不会将类别B确定为该数据的最终标签,放弃使用该数据进行后续学生模型的训练。如果票数阈值为52,则因为类别B的加噪扰动后的投票数最大,且其投票数55大于票数阈值52,所以,可以将类别B确定为该数据的最终标签。
在本申请的另一种具体实施方式中,公共数据集中的数据具有历史标签,在进行每个数据的最终标签的确定时,还可以基于加噪扰动处理后的各个类别的投票数,确定多个不同的判定阈值中每个判定阈值下每个数据的待用标签,针对多个不同的判定阈值中每个判定阈值,基于该判定阈值下每个数据的待用标签与相应数据的历史标签,确定该判定阈值下的判定结果准确率,将最高的判定结果准确率对应的判定阈值下每个数据的待用标签确定为相应数据的最终标签。
在该实施例中,公共数据集中的每个数据具有历史标签,该历史标签可以是先前模型训练时标定的。可以预先设定多个判定阈值。在获得公共数据集中每个数据的各个类别的投票数后,对每个数据各个类别的投票数进行加噪扰动处理,得到每个数据各个类别的加噪扰动后的投票数。可以基于加噪扰动处理后的各个类别的投票数,确定多个不同的判定阈值中每个判定阈值下每个数据的待用标签。即针对于多个判定阈值中的每个判定阈值,如果一个数据的加噪扰动后的最大投票数的类别的投票数大于该判定阈值,则将该数据最大投票数的类别确定为该数据的待用标签。如果不大于,则放弃使用该数据进行后续学生模型的训练。
针对多个不同的判定阈值中每个判定阈值,可以基于该判定阈值下每个数据的待用标签与相应数据的历史标签,确定该判定阈值下的判定结果准确率。举例而言,有判定阈值X、判定阈值Y两个判定阈值,在判定阈值X下,得到数据1的待用标签为类别A,数据2的待用标签为类别A,在判定阈值Y下,得到数据1的待用标签为类别B,数据2的待用标签为类别A。而数据1的历史标签为类别B、数据2的历史标签为类别A。通过对每个数据的待用标签和历史标签的对比,可知,在判定阈值1下,判定结果准确率为50%,在判定阈值2下,判定结果准确率为100%。
得到每个判定阈值下的判定结果准确率后,可以将最高的判定结果准确率对应的判定阈值下每个数据的待用标签确定为相应数据的最终标签。判定结果的正确性依赖于教师模型共识的高度一致性,判定结果准确率越高,意味着教师模型预测的共识性越高,即认为是同一种标签的教师模型数量越多,这代表该判定结果具有普适性,也就暴露了更少的个体隐私。直观地体现了隐私和学习之间的一些良好的协同作用。
确定每个数据的最终标签,有的数据未获得最终标签,则将放弃使用这样的数据进行后续学生模型的训练。
使用公共数据集中的数据和相应数据的最终标签,可以训练学生模型。将训练完成的学生模型确定为最终的待使用第一模型。进而可以将该待使用第一模型应用到实际应用场景中,如推荐系统、人脸识别、智能家居、无人汽车等应用场景。使用教师模型标注的数据集训练学生模型,使用学生模型进行预测服务,可以在不使用敏感数据的情况下间接训练用于公开的学生模型,可以防止模型反演攻击对原始数据的窃取。
S130:如果目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用训练数据集进行模型训练过程中,对将训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。
基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式后,如果目标保护方式为DPSGD方式,则可以在使用训练数据集进行模型训练过程中,对将训练数据集输入到模型后计算得到的梯度进行加噪处理,即在随机梯度下降的迭代过程中对梯度添加扰动。训练完成后,获得最终的待使用第二模型。
在本申请的一种具体实施方式中,该步骤可以包括以下步骤:
步骤一:在每一轮的每一批的迭代训练过程中,将对训练数据集进行采样得到的预设的批大小的数据输入到模型,计算梯度;
步骤二:将计算得到的梯度进行裁剪处理,并添加噪声扰乱梯度,获得新梯度;
步骤三:使用新梯度更新模型参数;
步骤四:在进行多轮迭代训练之后,获得最终的待使用第二模型。
为便于描述,将上述几个步骤结合起来进行说明。
在进行模型训练时,可以进行多轮迭代训练,每一轮训练可以包括多批。
需要说明的是,在该实施例中,进行模型训练时,每一轮迭代训练中可以执行多批训练,轮可表示为Epoch,每轮可使用预设批大小的数据进行训练,每轮进行多批训练,每轮训练完成后,训练数据集中的数据将全部被使用过。批可表示为Batch。
如图3所示,可以先设定模型参数C和σ。其中,C为裁剪阈值,用来区分是否需要裁剪,σ为标准差,用于控制噪声的添加量。在每一轮的每一批的迭代训练过程中,可以对训练数据集进行采样得到预设的批大小的数据,然后将采样得到的批大小的数据输入到模型,计算梯度g。将计算得到的梯度进行裁剪处理。可以先计算梯度g的二阶范数E,判断E/C是否大于1,如果大于,则确定需要进行裁剪处理,令g=g*C/E,如果不大于,则可以不进行裁剪处理。然后添加噪声扰乱梯度,获得新梯度。可以添加标准差为σC的高斯噪音。这样可以使得单一梯度影响不会太大。使用新梯度更新模型网络参数。对于每一轮每一批的迭代训练均进行上述操作。在进行多轮迭代训练之后,获得最终的待使用第二模型。
在实际应用中,可以设定总迭代轮数,在达到总迭代轮数时获得最终的待使用第二模型,或者可以设定准确率阈值,在进行多轮迭代训练之后,如果模型预测准确率达到准确率阈值,则停止训练,将当前模型确定为待使用第二模型。进而可以将该待使用第二模型应用到实际应用场景中,如推荐系统、人脸识别、智能家居、无人汽车等应用场景。
在实践过程中发现,受到采样、噪音的随机性以及初始化等因素的影响,在初始阶段,如果模型准确率较低,则经过若干轮迭代训练后,最终效果也不理想,甚至在训练过程中出现模型准确率持续下降的情况。
鉴于此,在本申请实施例中,可以先确定首轮训练后的模型准确率,如果首轮训练后的模型准确率不低于预设的准确率阈值,则继续进行迭代训练。可以预先设定一个模型准确率阈值,在第一轮迭代训练完成后,确定首轮训练后的模型准确率,如果该模型准确率不低于模型准确率阈值,则可以认为当前训练效果较好,可以继续进行迭代训练。如果首轮训练后的模型准确率低于准确率阈值,则可以停止迭代训练,重新进行网络初始化并重新进行迭代训练。这样可以有效避免模型准确率持续较低的情况的发生,避免无效的资源占用,提高训练模型的精度。
模型准确率阈值可以根据实际情况进行设定和调整。
在一种具体实施方式中,模型准确率可以通过以下步骤确定:
在正式进行迭代训练之前,进行多次预测试,每次预测试执行M轮训练,M为正整数;
确定每次预测试每轮训练后的模型准确率;
基于确定的每次预测试每轮训练后的模型准确率,确定准确率阈值。
即在正式进行迭代训练之前,可以先进行多次预测试,每次预测试可以执行M轮训练,M为正整数。可以确定每次预测试每轮训练后的模型准确率。每次预测试可以得到M个模型准确率。
基于确定的每次预测试每轮训练后的模型准确率,可以确定准确率阈值。具体的,可以先确定每次预测试中得到的M个模型准确率的中位数,然后将这些中位数的均值确定为准确率阈值。
在本申请的一个实施例中,模型训练完成后,还可以根据训练过程中的参数,确定差分隐私预算。具体的,可以使用教师投票数据或者噪音量、迭代轮次等数据使用Rényidifferential privacy进行隐私分析,以定量表示隐私保护程度,确定隐私保护效果,寻求模型性能与隐私保护程度之间的平衡。
应用本申请实施例所提供的方法,先基于当前训练场景,确定出用于对模型进行隐私保护的目标保护方式,在确定的目标保护方式为PATE方式时,在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得待使用第一模型,在确定的目标保护方式为DPSGD方式时,在使用训练数据集进行模型训练过程中,对训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。得到待使用第一模型或者待使用第二模型后,可以将其应用到实际应用场景中。在模型训练过程中,对中间产生的投票结果进行加噪处理,或者对计算得到的梯度进行加噪处理,可以较好地且有效地进行隐私保护,提高训练数据及模型的安全性。
本申请实施例所提供的模型隐私保护方法,可以解决当前机器学习服务中对于训练数据的隐私保护问题,即对抗可能来自恶意攻击者的训练数据窃取,包括模型逆向攻击(模型反演攻击)、成员推理攻击等。通过在机器学习模型的训练过程中,引入符合一定规律的噪音,使得用于训练的数据个体对最终模型的影响有限,而总体统计规律仍然可用,从而在能完成模型训练的同时,保护训练数据的个体隐私。
相应于上面的方法实施例,本申请实施例还提供了一种模型隐私保护装置,下文描述的模型隐私保护装置与上文描述的模型隐私保护方法可相互对应参照。
参见图4所示,该装置可以包括以下模块:
保护方式确定模块410,用于基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式;
第一模型获得模块420,用于如果目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型;
第二模型获得模块430,用于如果目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用训练数据集进行模型训练过程中,对将训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。
应用本申请实施例所提供的装置,先基于当前训练场景,确定出用于对模型进行隐私保护的目标保护方式,在确定的目标保护方式为PATE方式时,在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得待使用第一模型,在确定的目标保护方式为DPSGD方式时,在使用训练数据集进行模型训练过程中,对训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。得到待使用第一模型或者待使用第二模型后,可以将其应用到实际应用场景中。在模型训练过程中,对中间产生的投票结果进行加噪处理,或者对计算得到的梯度进行加噪处理,可以较好地且有效地进行隐私保护,提高训练数据及模型的安全性。
在本申请的一种具体实施方式中,训练数据集包括隐私数据集和公共数据集,第一模型获得模块420,用于:
将隐私数据集划分为不相交的N个隐私数据子集,N为正整数;
分别使用每个隐私数据子集进行机器学习模型的训练,获得N个教师模型;
利用N个教师模型对公共数据集中的每个数据进行类别预测,获得公共数据集中每个数据的各个类别的投票数;
对获得的投票数进行噪声聚合处理,确定每个数据的最终标签;
使用公共数据集中的数据和相应数据的最终标签,训练学生模型;
将训练完成的学生模型确定为最终的待使用第一模型。
在本申请的一种具体实施方式中,第一模型获得模块420,用于:
对公共数据集中每个数据各个类别的投票数进行加噪扰动处理;
基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签。
在本申请的一种具体实施方式中,第一模型获得模块420,用于:
针对每个数据,基于加噪扰动处理后的各个类别的投票数,确定该数据最大投票数的类别;
如果该最大投票数的类别的投票数大于预设的票数阈值,则将该数据最大投票数的类别确定为该数据的最终标签。
在本申请的一种具体实施方式中,隐私数据集中的数据具有历史标签,第一模型获得模块420,用于:
基于加噪扰动处理后的各个类别的投票数,确定多个不同的判定阈值中每个判定阈值下每个数据的待用标签;
针对多个不同的判定阈值中每个判定阈值,基于该判定阈值下每个数据的待用标签与相应数据的历史标签,确定该判定阈值下的判定结果准确率;
将最高的判定结果准确率对应的判定阈值下每个数据的待用标签确定为相应数据的最终标签。
在本申请的一种具体实施方式中,第二模型获得模块430,用于:
在每一轮的每一批的迭代训练过程中,将对训练数据集进行采样得到的预设的批大小的数据输入到模型,计算梯度;
将计算得到的梯度进行裁剪处理,并添加噪声扰乱梯度,获得新梯度;
使用新梯度更新模型参数;
在进行多轮迭代训练之后,获得最终的待使用第二模型。
在本申请的一种具体实施方式中,第二模型获得模块430,还用于:
在迭代训练过程中,确定首轮训练后的模型准确率;
如果首轮训练后的模型准确率不低于预设的准确率阈值,则继续进行迭代训练;
如果首轮训练后的模型准确率低于准确率阈值,则重新进行网络初始化并重新进行迭代训练。
在本申请的一种具体实施方式中,第二模型获得模块430,还用于通过以下步骤确定准确率阈值:
在正式进行迭代训练之前,进行多次预测试,每次预测试执行M轮训练,M为正整数;
确定每次预测试每轮训练后的模型准确率;
基于确定的每次预测试每轮训练后的模型准确率,确定准确率阈值。
在本申请的一种具体实施方式中,还包括隐私预算模块,用于:
根据训练过程中的参数,确定差分隐私预算。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种模型隐私保护方法,其特征在于,包括:
基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式;
如果所述目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型;
如果所述目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用所述训练数据集进行模型训练过程中,对将所述训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。
2.根据权利要求1所述的方法,其特征在于,所述训练数据集包括隐私数据集和公共数据集,所述在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型,包括:
将所述隐私数据集划分为不相交的N个隐私数据子集,N为正整数;
分别使用每个隐私数据子集进行机器学习模型的训练,获得N个教师模型;
利用所述N个教师模型对所述公共数据集中的每个数据进行类别预测,获得所述公共数据集中每个数据的各个类别的投票数;
对获得的投票数进行噪声聚合处理,确定每个数据的最终标签;
使用所述公共数据集中的数据和相应数据的最终标签,训练学生模型;
将训练完成的学生模型确定为最终的待使用第一模型。
3.根据权利要求2所述的方法,其特征在于,所述对获得的投票数进行噪声聚合处理,确定每个数据的最终标签,包括:
对所述公共数据集中每个数据各个类别的投票数进行加噪扰动处理;
基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签。
4.根据权利要求3所述的方法,其特征在于,所述基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签,包括:
针对每个数据,基于加噪扰动处理后的各个类别的投票数,确定该数据最大投票数的类别;
如果该最大投票数的类别的投票数大于预设的票数阈值,则将该数据最大投票数的类别确定为该数据的最终标签。
5.根据权利要求3所述的方法,其特征在于,所述隐私数据集中的数据具有历史标签,所述基于加噪扰动处理后的各个类别的投票数,确定每个数据的最终标签,包括:
基于加噪扰动处理后的各个类别的投票数,确定多个不同的判定阈值中每个判定阈值下每个数据的待用标签;
针对所述多个不同的判定阈值中每个判定阈值,基于该判定阈值下每个数据的待用标签与相应数据的历史标签,确定该判定阈值下的判定结果准确率;
将最高的判定结果准确率对应的判定阈值下每个数据的待用标签确定为相应数据的最终标签。
6.根据权利要求1所述的方法,其特征在于,所述在使用所述训练数据集进行模型训练过程中,对将所述训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型,包括:
在每一轮的每一批的迭代训练过程中,将对所述训练数据集进行采样得到的预设的批大小的数据输入到模型,计算梯度;
将计算得到的梯度进行裁剪处理,并添加噪声扰乱梯度,获得新梯度;
使用所述新梯度更新模型参数;
在进行多轮迭代训练之后,获得最终的待使用第二模型。
7.根据权利要求6所述的方法,其特征在于,还包括:
在迭代训练过程中,确定首轮训练后的模型准确率;
如果所述首轮训练后的模型准确率不低于预设的准确率阈值,则继续进行迭代训练;
如果所述首轮训练后的模型准确率低于所述准确率阈值,则重新进行网络初始化并重新进行迭代训练。
8.根据权利要求7所述的方法,其特征在于,所述准确率阈值为通过以下步骤确定:
在正式进行迭代训练之前,进行多次预测试,每次预测试执行M轮训练,M为正整数;
确定每次预测试每轮训练后的模型准确率;
基于确定的每次预测试每轮训练后的模型准确率,确定准确率阈值。
9.根据权利要求1至8之中任一项所述的方法,其特征在于,还包括:
根据训练过程中的参数,确定差分隐私预算。
10.一种模型隐私保护装置,其特征在于,包括:
保护方式确定模块,用于基于当前训练场景,确定用于对模型进行隐私保护的目标保护方式;
第一模型获得模块,用于如果所述目标保护方式为PATE方式,则在使用训练数据集进行模型训练过程中,对中间产生的投票结果进行加噪处理,训练完成后,获得最终的待使用第一模型;
第二模型获得模块,用于如果所述目标保护方式为差分隐私随机梯度下降DPSGD方式,则在使用所述训练数据集进行模型训练过程中,对将所述训练数据集输入到模型后计算得到的梯度进行加噪处理,训练完成后,获得最终的待使用第二模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011155392.0A CN112329052B (zh) | 2020-10-26 | 2020-10-26 | 一种模型隐私保护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011155392.0A CN112329052B (zh) | 2020-10-26 | 2020-10-26 | 一种模型隐私保护方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112329052A true CN112329052A (zh) | 2021-02-05 |
CN112329052B CN112329052B (zh) | 2024-08-06 |
Family
ID=74311704
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011155392.0A Active CN112329052B (zh) | 2020-10-26 | 2020-10-26 | 一种模型隐私保护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112329052B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112766422A (zh) * | 2021-03-15 | 2021-05-07 | 山东大学 | 一种基于轻量级人脸识别模型的隐私保护方法 |
CN113360945A (zh) * | 2021-06-29 | 2021-09-07 | 招商局金融科技有限公司 | 基于差分隐私的噪声添加方法、装置、设备及介质 |
CN113536373A (zh) * | 2021-07-07 | 2021-10-22 | 河南大学 | 一种脱敏气象数据的生成方法 |
CN114003949A (zh) * | 2021-09-30 | 2022-02-01 | 清华大学 | 基于隐私数据集的模型训练方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784091A (zh) * | 2019-01-16 | 2019-05-21 | 福州大学 | 一种融合差分隐私gan和pate模型的表格数据隐私保护方法 |
CN110647765A (zh) * | 2019-09-19 | 2020-01-03 | 济南大学 | 协同学习框架下基于知识迁移的隐私保护方法及系统 |
CN111091199A (zh) * | 2019-12-20 | 2020-05-01 | 哈尔滨工业大学(深圳) | 一种基于差分隐私的联邦学习方法、装置及存储介质 |
CN111400754A (zh) * | 2020-03-11 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 保护用户隐私的用户分类系统的构建方法及装置 |
-
2020
- 2020-10-26 CN CN202011155392.0A patent/CN112329052B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784091A (zh) * | 2019-01-16 | 2019-05-21 | 福州大学 | 一种融合差分隐私gan和pate模型的表格数据隐私保护方法 |
CN110647765A (zh) * | 2019-09-19 | 2020-01-03 | 济南大学 | 协同学习框架下基于知识迁移的隐私保护方法及系统 |
CN111091199A (zh) * | 2019-12-20 | 2020-05-01 | 哈尔滨工业大学(深圳) | 一种基于差分隐私的联邦学习方法、装置及存储介质 |
CN111400754A (zh) * | 2020-03-11 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 保护用户隐私的用户分类系统的构建方法及装置 |
Non-Patent Citations (1)
Title |
---|
谭作文等: "机器学习隐私保护研究综述", 软件学报, 15 July 2020 (2020-07-15), pages 2127 - 2156 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112766422A (zh) * | 2021-03-15 | 2021-05-07 | 山东大学 | 一种基于轻量级人脸识别模型的隐私保护方法 |
CN113360945A (zh) * | 2021-06-29 | 2021-09-07 | 招商局金融科技有限公司 | 基于差分隐私的噪声添加方法、装置、设备及介质 |
CN113536373A (zh) * | 2021-07-07 | 2021-10-22 | 河南大学 | 一种脱敏气象数据的生成方法 |
CN114003949A (zh) * | 2021-09-30 | 2022-02-01 | 清华大学 | 基于隐私数据集的模型训练方法和装置 |
CN114003949B (zh) * | 2021-09-30 | 2022-08-30 | 清华大学 | 基于隐私数据集的模型训练方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112329052B (zh) | 2024-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112329052A (zh) | 一种模型隐私保护方法及装置 | |
US11734353B2 (en) | Multi-sampling model training method and device | |
CN109583332B (zh) | 人脸识别方法、人脸识别系统、介质及电子设备 | |
CN111260620B (zh) | 图像异常检测方法、装置和电子设备 | |
Lockwood et al. | Controlling for individual heterogeneity in longitudinal models, with applications to student achievement | |
CN106778357B (zh) | 一种网页篡改的检测方法及装置 | |
CN110245488B (zh) | 密码强度检测方法、装置、终端和计算机可读存储介质 | |
CN111126623B (zh) | 一种模型更新方法、装置及设备 | |
CN110210242A (zh) | 一种数据脱敏的方法、装置、存储介质及计算机设备 | |
CN114417427A (zh) | 一种面向深度学习的数据敏感属性脱敏系统及方法 | |
CN113221104A (zh) | 用户异常行为的检测方法及用户行为重构模型的训练方法 | |
CN115481441A (zh) | 面向联邦学习的差分隐私保护方法及装置 | |
CN114742319A (zh) | 法考客观题成绩预测方法、系统及存储介质 | |
CN115659183A (zh) | 产品检测方法、装置、设备及存储介质 | |
CN114626553A (zh) | 财务数据监测模型的训练方法、装置和计算机设备 | |
CN114169439A (zh) | 异常通信号码的识别方法、装置、电子设备和可读介质 | |
CN116545764B (zh) | 一种工业互联网的异常数据检测方法、系统和设备 | |
CN111026087B (zh) | 基于数据的含权重非线性工业系统故障检测方法及装置 | |
CN112884480A (zh) | 异常交易识别模型的构造方法、装置、计算机设备和介质 | |
CN113298264A (zh) | 基于浅层自学习算法拒绝推断的设备认证方法及系统、电子设备 | |
CN117522586A (zh) | 金融异常行为检测方法及装置 | |
CN112116358A (zh) | 一种交易欺诈行为的预测方法、装置及电子设备 | |
CN115204322B (zh) | 行为链路异常识别方法和装置 | |
CN114050941B (zh) | 一种基于核密度估计的失陷账号检测方法及系统 | |
CN114707420A (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 |