机器学习隐私问题综述总结
作者:贺崇德
来源:SegmentFault 思否社区
社会进步科技发展,人工智能地位突出。机器学习面临着巨大的隐私泄露问题。
机器学习隐私基础知识
机器学习隐私泄露:
不可靠的数据收集者泄露信息(直接泄露) 攻击者分析机器学习模型输出结果,逆向推出训练数据中的用户敏感信息(间接泄露)
隐私保护的两个方向:
以同态加密和安全多方计算为代表的加密方法 以差分隐私为代表的扰动方法
两个方向的对比:
加密方法运算量大,性能开销大,往往难以落地 扰动方法仅用噪音添加机制,对性能影响较小,但会对模型预测准确性产生影响。它面临的主要挑战是:设计合理的扰动算法,平衡隐私保护和可用性。
机器学习的分类:
【集中学习】:数据首先被数据收集者收集,再由数据分析者分析,用户失去数据控制权 【分布式学习】:训练数据和计算负载都分布在工作节点。各参与方稳定,负载均衡,数据独立同分布。 【联邦学习】:数据在本地的同时训练出全局模型。各方自主决定何时加入或退出,各方负载不均衡,数据可能不是独立同分布。
补充:
联邦学习:首先用户抽取一组满足条件的客户端,被选中的客户端从服务器下载当前模型权重 参数和一个训练程序,然后客户端在本地计算对模型参数的更新。接着,服务器收集客户端上传的参数。最后,服务器更新共享模型,如此迭代,直到收敛。
间接泄露信息的攻击者攻击方式:
重构攻击(攻击者试图重构个体敏感信息或者重构训练模型) 模型反演攻击(试图重构用户个体信息) 模型窃取攻击(试图重构训练模型) 成员推断攻击(试图验证某个成员是否为训练模型成员)
机器学习敌手模型
敌手目标:训练数据隐私、模型隐私、预测结果隐私 敌手知识:白盒、黑盒 敌手能力:强敌手、弱敌手 敌手策略:模型逆向攻击、模型提取攻击、成员推断攻击
机器学习安全威胁及防御技术
常见安全威胁:
训练阶段的安全威胁 投毒攻击(放入有害数据或者修改数据) 预测阶段的安全威胁 对抗攻击(敌手精心设计对抗样本,使模型分类错误) 询问攻击(主要针对黑盒攻击)
机器学习安全防御技术
正则化(为代价函数添加正则项/惩罚项) 对抗训练(添加对抗样本训练) 防御精馏 直接拒绝对抗样本(数据清洗)
机器学习隐私威胁及保护
机器学习常见的隐私威胁
训练阶段的隐私威胁 窃取训练数据 联邦学习易受不诚实的参与者的攻击 预测阶段的隐私威胁(在预测阶段通过逆向攻击可以提取训练数据或者训练数据的统计特性) 提取目标模型信息 成员推理攻击
注:机器学习各阶段隐私保护问题
数据收集阶段:保护原始数据,避免因数据挖掘而泄露 数据预处理阶段:保证数据处理各方不能泄露隐私 模型训练和测试阶段:多个参与方之间如何安全的完成各种不同的机器学习计算工作 预测阶段:保证模型隐私性及输出结果的隐私性
机器学习隐私保护方案分类
按机器学习模型的种类分类
监督学习的隐私保护 半监督学习的隐私保护 无监督学习的隐私保护 强化学习的隐私保护
按机器学习过程分类
机器学习模型的训练阶段 机器学习模型的预测阶段
按模型训练方式分类
集中式学习的隐私保护 分布式学习的隐私保护 联邦学习的隐私保护
传统机器学习、深度学习、联邦学习的隐私保护
传统机器学习隐私保护
隐私保护技术:
加密 扰动(代表性方法:差分隐私) 几种差分隐私概念 敏感度:输入数据中任意一条改变,输出结果中变化的最大值。
全局隐私:统一收集,然后扰动
本地隐私:数据收集前,先在本地扰动。
本地化差分隐私:以上两种均不再适用。最新提出。
差分隐私保护的经验风险最小化:
输入扰动(分析前扰动) 输出扰动(对经验风险最小化得出的最优参数扰动) 目标扰动(向经验风险最小化的目标函数表达式中加入随机项) 梯度扰动(在利用梯度下降求解最优模型参数过程中引入随机噪音)
注:扰动后要满足差分隐私。
不足:复杂的多分类任务存在问题。深度学习的经验风险最小化目标函数是一个非凸函数,故输出扰动和目标扰动不再适用
深度学习隐私保护
宽松差分隐私 绝对的差分隐私会导致天平倾向隐私,而导致系统不可用 集成模型 一种基于知识迁移的深度学习隐私保护框架。引入学生模型和教师模型
不足:隐私性降低,泄露风险的可能性变大。另外,差分隐私仅能实现单点的隐私保护,若不同记录之间存在关联,攻击者仍可对满足差分隐私的算法进行攻击。
联邦学习隐私保护
加密 有一种基于秘密共享的安全多方计算协议---安全聚合 差分隐私机制 对上传至服务器端的参数添加扰动。但无法保证参数传递过程中的机密性。 区块链技术 区块链技术因其去中心化、安全可信、不可篡改 等特性,能够监测服务端或设备在联邦学习中存在 的恶意行为,保证训练过程的透明,从而为隐私保护 提供一种新的解决思路 区块链技术本身仍存在吞吐量有限、可扩展性差等问题,故此类方法在实际场景中难 以支撑大规模的应用,其有效性仍有待商榷
不足:处于起步阶段,存在很多挑战。
常用隐私保护密码技术
通用安全多方计算
基础知识
安全多方计算定义:有m个参与方,他们各自拥有各自的数据集,在无可信第第三方的情况下,如何安全地计算一个约定函数f,同时要求每个参与方除了计算结果外,得不到任何其他参与方的任何输入信息。
任何一份函数都有一个等价的电路。对任意函数的安全多方计算可以转换为等价电路c的安全多方计算。
逻辑电路的安全多方计算:只需解决“与门”、“或门”、“非门” 算数电路的安全多方计算:只需解决“加法门”、“乘法门”
安全性:(一般先设计半诚实安全的协议,然后转换为恶意敌手安全)
半诚实模型安全 恶意敌手模型安全
通用安全多方计算协议的主流构造方法
基于YAO混乱电路的构造:安全两方计算协议 基于秘密共享的构造:安全多方计算协议
基础密码协议:
OT协议:不经意传输协议/遗忘传输协议 OT协议是一个两方计算协议,一方是发送方,一方是接收方 接收方获得了一些信息,但发送方不知道接收方收到了了哪些信息。 恶意敌手模型下,会进行大量OT计算,这使得OT协议常常成为两方计算瓶颈。因此尽可能少的OT调用,或者使用OT扩展技术,用少的OT计算实现大量OT实例。 GC协议:混乱电路协议。一种通用高效的两方计算协议 SS协议:秘密共享,秘密分割协议 GMW协议:一种高效的多方计算协议。与GC类似需要将计算描述为布尔电路。与GC不同,GMW每一层布尔门都需要一次交互。与GC相比,GMW需要更少的数据通信。
分析
多方计算方案只在学习过程中保护了训练的隐私而不能防止对结果模型的推理攻击。
构建关键:
根据不同协议特点,选择合适的基础密码学工具以保证安全性。 对机器学习模型中的非线性函数设计高效的替代表达式。
同态加密技术
如果一个加密算法能够把明文空间及其运算形成的代数系统同态映射到密文空间及对应运算形成的代数系统,则称公该加密算法为同态加密算法,
同台加密算法不需要对密文解密,而可直接对密文进行运算,得到的运算结果,等同于对应明文所作相应运算计算结果的密文。不解密而进行计算,对于隐私保护,具备得天独厚的优势。
部分同态加密PHE:加法同态、乘法同态 类同态加密SHE:仅支持有限次加法和乘法 全同态加密FHE:计算开销大,仍不能成为实用方案
解决同态加密无法计算非线性运算的缺陷:(造成了效率和精度的下降)
无需多项式近似的同态加密隐私保护方案。 同态加密安全可靠,但是它只能计算加法和乘法,不能计算非线性计算。所以一种方法是依靠数据持有者完成非线性计算。 基于多项式近似的同态加密隐私保护方案。 为了解决同态加密无法计算非线性运算的问题,另一种解决方案是利用多项式逼近
隐私保护集合计算
使持有私有数据集合的参与方合作产生集合运算的结果,而不泄露各自私有数据集的隐私。
隐私保护集合求交协议PSI
PSI协议允许 持有各自私有集合的两方共同计算两个集合的交 集,协议完成后,一方或者两方得到正确的交集, 且不会得到交集以外的另一方集合中的任何信息 PSI协议可以通过通用安全多方计算协议来实现,但更多的是采用特殊的算法来实现。
未来的挑战与方向
未来挑战与方向
存在问题:
存在大多数人忽视的盲区。 隐私保护方法较为单一。同态加密、安全多方、差分隐私存在固有缺陷,缺乏本质创新。
可探索的方向:
推进无监督学习下的隐私保护研究 权衡差分隐私保护的模型可用性与隐私性 探索多种技术结合的保护方法 (差分隐私、加密方法、区块链 各有优缺) 支持单点和全局隐私保护 开发机器学习隐私保护框架(目前是针对特定的攻击,需要通用的) 研究训练阶段基于密文的高效机器学习隐私保护方法 目前的方法多用于预测阶段,因为同态加密生成的密文大、复杂随着运算次数增多深度增加,一旦超过阈值将得不到正确结果。另一方面,深度学习本身运算量大,没有加密也需要高吞吐量的计算单元。 设计适用于机器学习各个阶段的通用隐私保护体系结构 提出针对半结构化、非结构化数据隐私的切实可行解决方案 现有的隐私保护几乎都是针对结构化 数据的,而大数据很多都是非结构化。
总结
机器学习不可分割,隐私泄露巨大威胁。
在数据隐私性、高效性、可用性的矛盾下,如何提供符合给定场景隐私保护方法,最小化隐私泄露风险,将是个长期挑战。