写点什么

苹果研究人员提出集成反演技术,可从不同机器学习模型中重建训练数据

  • 2021-12-07
  • 本文字数:1473 字

    阅读完需:约 5 分钟

苹果研究人员提出集成反演技术,可从不同机器学习模型中重建训练数据

MI 攻击


近几年,模型反演(Model inversion, MI)攻击备受关注。MI 攻击是指滥用经过训练的机器学习(ML)模型,并借此推断模型原始训练数据中的敏感信息。遭受攻击的模型经常会在反演期间被冻结,从而被攻击者用于引导训练生成对抗网络之类的生成器,最终重建模型原始训练数据的分布。


因此,审查 MI 技术对正确建立模型保护机制至关重要。


借助单一模型高质量地重建训练数据的过程非常复杂,然而,现有的 MI 相关文献并没有考虑到多个模型同时被攻击的可能性,这类情况中攻击者可以找到额外的信息和切入点。


如果攻击成功,原始训练样本泄露,而其训练数据中如果包含个人的身份信息,那么数据集中的数据本体的隐私将会受到威胁。

集成反演技术


苹果的研究人员提出了一种集成反演的技术,借助生成器来估计模型原始训练数据的分布,而该生成器则被限制在一系列共享对象或实体的训练模型之中。


对比使用单一机器学习模型的 MI,使用该技术生成的样本质量得到了显著的提升,并具备了区分数据集实体间属性的能力。这证明了如果借助与预期训练结果相类似的辅助数据集,可以在不使用任何数据集的情况下依旧可以得到高质量结果,改善反演的结果。通过深入研究集成中模型多样性对结果的影响,并添加多重限制以激励重建样本获得高精确度和高激活度,训练图片的重建准确程度得到了提升。


对比针对单一模型的 MI 攻击,该研究所提出的模型在重建性能上展现了明显的提升。该研究不仅利用最远模型采样法(FMS)进行集成中模型多样性的优化,还创建了一个模型间等级对应关系明确的反演集成,模型的输出向量中的增强信息也被用来生成更优的限制条件,以更好地确定目标质量的高低。


通过随机训练的形式,小批量随机梯度下降(SGD)这类的主流动态卷积神经网络(DCNN),可以使用任意的大型数据集进行训练。DCNN 模型对训练数据集中最初的随机权重和统计上的噪音非常敏感,而由于学习算法的随机性,同一训练集可能会生成侧重特征不同的模型。因此,为减少差异性,研究者一般会使用集成学习,一种简单的技巧来提升 DCNN 辨别式训练的性能。



虽然这篇论文是以集成学习为基础进行的研究,但论文对“集成”一词却有不同的定义。


若想成功对模型进行反演,攻击者不能假定目标模型一定是通过集成学习进行训练的,但他们却可以通过搜集有关联的模型搭建一个攻击模型的集成。换句话来说,在“集成反演攻击”这个语境下,“集成”不是要求模型一定要经过集成训练,而是指攻击者从各种来源所收集到相关模型的集合。


举例来说,研究者可以通过不断收集新的训练数据,对当前模型进行训练并更新结果,而攻击者则可以将这些模型收集为一个集合并加以利用。


借助该策略,无数据的 MNIST 手写数字的反演准确率提升了 70.9%,而基于辅助数据的试验准确率则提高了 17.9%;对比基准实验,人脸反演的准确率提升了 21.1%。论文的目标是,以更系统的方式对现有模型反演策略进行评估。在未来的研究中,需以针对这类集成的模型反演攻击开发相应的保护机制为重点。

结论


论文中提出的集合反演技术,可以利用机器学习模型集合中的多样性特质提升模型反演的性能表现;通过结合 one-hot 损失和最大化输出激活损失函数,让样本质量得到了更进一层的提升。除此之外,过滤掉攻击模型中含有较小最大化激活的生成样本也可以让反演表现更加突出。同时,为确定目标模型的多样性对集合反演性能的影响,研究者深入探索研究了各种差异下目标模型的表现情况。


论文原文:利用集成反演从各类机器学习模型中重建训练数据


英文原文Apple Researchers Propose A Method For Reconstructing Training Data From Diverse Machine Learning Models By Ensemble Inversion

2021-12-07 10:262510

评论

发布
暂无评论
发现更多内容

CPU虚拟化系列文章1——x86架构CPU虚拟化

华章IT

云计算 Linux cpu 操作系统 虚拟化

看了 5 种分布式事务方案,我司最终选择了 Seata,真香!

程序员小富

Java 分布式事务 seata

GitHub 标星 1.3k+,一款超赞的用于字符串处理的 Java 8 库,附带源码分析

沉默王二

Java GitHub 字符串

继linux命令之后,我又给你们整理了网络命令归纳,快给我来收藏

北游学Java

Linux 网络协议 网络 网络层

没想到我费劲心力学的kafka,还不如阿里大佬整理的这份学习手册,真的是差距啊

小Q

Java kafka 学习 架构 面试

接口测试和性能测试的区别

测试人生路

软件测试 性能测试 接口测试

广电总局严打劣迹主播:净化行业环境迫在眉睫

石头IT视角

秋招offer收割机——后台服务器开发方向(专业学习路线图总结)

程序员小灰

c++ Linux 后台开发 架构师 服务器端开发

谈谈持续集成、持续交付和持续部署三者究竟是什么,有何联系和区别呢!

ShenDu_Linux

Linux 持续集成 架构师 持续交付 持续部署

Spring 源码阅读环境的搭建

程序员小航

spring 源码 环境安装 源码阅读 spring 5

11.11数据可视化大屏设计揭秘

京东科技开发者

大数据 AI 数据分析 数据可视化 交互设计

甲方日常 58

句子

工作 随笔杂谈 日常

高德最佳实践:Serverless 规模化落地有哪些价值?

阿里巴巴云原生

阿里云 Serverless 云原生

监控之美——Prometheus云原生监控

华章IT

运维 云原生 监控 Prometheus

支付宝阿牛整合Netty+Redis+ZooKeeper「终极版」高并发手册

Java架构追梦

Java redis zookeeper 面试 Netty

基于 GraphQL 的信息聚合网关的实现与展望

QiLab

高并发系统设计 graphql

前嗅教你大数据:常见的网站反爬策略与解决方案

前嗅大数据

大数据 数据采集 代理IP 网站反爬 反爬策略

感恩,改变世界的开发者们!

京东科技开发者

开发者 程序人生

技术实践丨基于MindSpore框架Yolov3-darknet模型的篮球动作检测体验

华为云开发者联盟

AI 华为云 modelarts

最详细的Linux TCP/IP 协议栈源码分析

linux大本营

Linux 后台开发 网络编程 C/C++ TCP/IP

【领福利啦】广受欢迎的人工智能实战课程+“智能音箱”教程免费领!

小冬

人工智能 技术 福利 项目实战 智能音箱

Linux笔记(二): vim 基本操作

Leo

Linux 学习 大前端

红外遥控接收发射原理及ESP8266实现

IoT云工坊

人工智能 物联网 esp8266 红外遥控 pwm

收藏 | 阿里程序员常用的 15 款开发者工具(2020 版)

阿里巴巴云原生

阿里云 程序员 开发者 云原生 Java 25 周年

Week1 命题作业

J

极客大学架构师训练营

一文带你了解两种Transformer文字识别方法

华为云开发者联盟

人工智能 AI 文字识别

区块链可信数据服务平台搭建解决方案

t13823115967

区块链 可信区块链

微前端架构初探

徐小夕

Java 大前端

索引为什么能提供查询性能...

小林coding

MySQL 索引 数据结构与算法 B+树

Linux 服务器开发学习路线总结(配图 c/c++ )后台开发、Golang后台开发、后端技术栈

Linux服务器开发

Linux 后台开发 后端 Linux服务器 Go 语言

LeetCode题解:17. 电话号码的字母组合,队列,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

苹果研究人员提出集成反演技术,可从不同机器学习模型中重建训练数据_文化 & 方法_Nitish Kumar_InfoQ精选文章