PubDef:使用公共模型防御迁移攻击
对抗性攻击对机器学习系统的可靠性和安全性构成了严重威胁。通过对输入进行微小的变动,攻击者就可以导致模型生成完全错误的输出。防御这种攻击是一个很活跃的研究领域,但大多数提议的防御措施都存在重大的缺点。
这篇来自加州大学伯克利分校研究人员的论文则介绍了一种名为PubDef的新防御方法,在这个问题上取得了一些进展。在保持干净输入准确性的同时,PubDef在面对现实攻击时获得了更高的稳健性。本文解释了这项研究的背景、PubDef的工作原理、结果及其局限性。
对抗性威胁领域
人们研究了许多类型的对抗性攻击,最常见的是白盒攻击。在这里,攻击者可全面访问模型的参数和架构。这让他们得以计算梯度,以精确地设计导致错误分类的输入。像对抗性训练这样的防御措施已经被提议,但它们在面对干净输入时性能会大大降低。
迁移攻击更现实。攻击者使用可访问的代理模型来设计对抗性示例。他们希望这些迁移骗过受害者的模型。迁移攻击很容易执行,并且不需要访问受害者模型。
基于查询的攻击对模型进行重复查询以推断其决策边界。一些防御措施通过监视使用情况来检测和限制这些攻击。
总的来说,迁移攻击在实践中非常合理,但无法通过典型的防御措施来加以解决,比如对抗性训练或限制查询的系统。
博弈论观点

图1. 该论文的配图显示了一个威胁模型,低成本攻击者使用公共模型进行迁移攻击,还显示了PubDef防御
PubDef专门旨在抵抗来自公开可用模型的迁移攻击。作者将攻防之间的交互描述为一种游戏:
- 攻击者的策略是选择一个公共源模型和攻击算法来设计对抗性示例。
- 防御者的策略是为模型选择参数,使其具有稳健性。
- 博弈论为最佳策略的推理提供了工具。重要的是,防御者可以同时针对来自多个源模型的攻击进行训练。这种类似集成的方法使模型对各种攻击具有稳健性。
PubDef的工作原理
PubDef通过以下方式训练模型:
1. 选择一组不同的公开可用源模型。
2. 使用训练损失,最大限度地减少来自这些源模型的迁移攻击的错误。
这种对抗性训练过程调整模型,以抵抗从公共源迁移过来的特定威胁模型。
训练损失根据当前的错误率对每个攻击动态加权。这侧重于训练最有效的攻击。
源模型的选择涵盖不同的训练方法:标准、对抗性和破坏稳健性等。这提供了对未知攻击的广泛覆盖。
试验结果
论文作者们在CIFAR-10、CIFAR-100和ImageNet数据集上针对264个不同的迁移攻击评估了PubDef。
结果显示,PubDef明显优于之前的防御措施,比如对抗性训练:
- 在CIFAR-10上,PubDef达到了89%的准确率,而对抗性训练只达到了69%的准确性。
- 在CIFAR-100上,准确率为51%比33%。
- 在ImageNet上,准确率为62%比36%。
值得注意的是,PubDef实现了这一改进,并且面对干净输入的准确性几乎没有下降:
- 在CIFAR-10上,准确率仅从96.3%下降到96.1%。
- 在CIFAR-100上,准确率从82%下降到76%。
- 在ImageNet上,准确率从80%下降到79%。

图2. PubDef实现了这一改进,面对干净输入的准确性几乎没有下降
因此,与对抗性训练相比,PubDef提供了更好的稳健性,对未受扰动的数据的性能影响要小得多。
局限性和未来工作
PubDef特别关注来自公共模型的迁移攻击,解决不了白盒攻击等其他威胁。另外一些限制如下:
- 依赖模型保密。
- 可以通过训练一个私人代理模型来加以规避。
- 需要防御基于查询的攻击的其他方法。
鉴于预期范围,PubDef提供了与实际攻击者能力相一致的实用防御。但还需要做进一步的工作,才能处理其他威胁,并减轻对保密的依赖。
总的来说,这项工作在可部署防御方面取得了重大进展。通过针对一个合理的威胁模型,稳健性的提高几乎是免费的,精确度损耗最小。这些想法有望推动进一步的研究,从而产生更有效和实用的防御措施。
结论
对抗性攻击为部署可靠的机器学习系统提出了一个紧迫的挑战。虽然已提议了许多防御措施,但很少有防御措施在面对干净输入不降低性能的情况下在稳健性方面取得实质性进展。
PubDef代表着朝开发可以实际部署在实际系统中的防御迈出了大有希望的一步。在处理其他类型的攻击和对模型保密减轻依赖的程度方面仍有工作要做。然而,这里介绍的技术(即通过博弈论为模型建立交互、针对各种威胁进行训练,以及关注于可行的攻击)为进一步的进展提供了蓝图。
对抗性攻击可能仍然是机器学习安全的一个问题。随着模型不断渗入到医疗保健、金融和交通等关键领域,对有效防御的需求变得更加迫切。PubDef表明,如果力求防御与实际威胁相一致,可以在无需兼顾取舍的情况下大幅提升稳健性。开发实用的防御措施,将额外成本降到最低,这是安全可靠地部署机器学习安全的最切实可行的途径。
原文标题:PubDef: Defending Against Transfer Attacks Using Public Models,作者:Mike Young
相关文章:
PubDef:使用公共模型防御迁移攻击
对抗性攻击对机器学习系统的可靠性和安全性构成了严重威胁。通过对输入进行微小的变动,攻击者就可以导致模型生成完全错误的输出。防御这种攻击是一个很活跃的研究领域,但大多数提议的防御措施都存在重大的缺点。 这篇来自加州大学伯克利分校研究人员的…...
【QT5之QFtp模块】编译及使用
下载 传送门:https://github.com/qt/qtftp 或者 git clone https://github.com/qt/qtftp.git 下载ZIP,解压待用。 编辑 使用QtCreator打开qtftp.pro; 修改如下: qtftp.pro中,将第21行注释; src/qftp.pro中,将第4行…...
数据结构 编程1年新手视角的平衡二叉树AVL从C与C++实现②
接下来,是数据的插入 我们需要对数据插入的结点先进行判断,有如下三个情况 当插入的数据value<结点的value,应该递归地插入该结点的左子树(的左子树...的左子树) 当插入的数据value>结点的value,应…...
代码随想录二刷Day 59
647. 回文子串 这个题的dp定义想不到,递推公式也想不到但是看题解都很容易理解,遍历顺序不太好理解。 class Solution { public:int countSubstrings(string s) {vector<vector<bool>> dp(s.size(), vector<bool>(s.size(), false)…...
由一个自动化脚本运维展开的思考
今天分享一个思路,如何通过脚本集中管理程序的启停。减少人工的介入。 例子 好的,这里有一个基本的shell脚本示例,你可以根据你的具体需求进行修改。 启动脚本(start.sh): #!/bin/bash ./test_server_1…...
STM32F103C8T6第二天:按键点灯轮询法和中断法、RCC、电动车报警器(振动传感器、继电器、喇叭、433M无线接收发射模块)
1. 点亮LED灯详解(307.11) 标号一样的导线在物理上是连接在一起的。 将 PB8 或 PB9 拉低,就可以实现将对应的 LED 灯点亮。常用的GPIO HAL库函数: void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init);//I/…...
路由器基础(九):防火墙基础
防火墙 (Fire Wall) 是网络关联的重要设备,用于控制网络之间的通信。外部网络用户的访问必须先经过安全策略过滤,而内部网络用户对外部网络的访问则无须过滤。现在的防火墙还具有隔离网络、提供代理服务、流量控制等功能。 一、三种防火墙技术 常见的…...
免费(daoban)gpt,同时去除广告
一. 内容简介 免费(daoban)gpt,同时去除广告,https://chat18.aichatos.xyz/,也可当gpt用,就是有点广告,大家也可以支持一下 二. 软件环境 2.1 Tampermonkey 三.主要流程 3.1 创建javascript脚本 点击添加新脚本 …...
如何使用Plex在Windows系统上搭建一个全能私人媒体影音站点
文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 用手机或者平板电脑看视频,已经算是生活中稀松平常的场景了,特别是各…...
vue如何实现视频全屏切换
最近项目开发中遇到一个视频窗口全屏切换功能,为此在这里做个记录。 具体的实现思路: <template><div class"content-box"><div class"container"><div id"screen" class"screen"><…...
Shopee买家通系统一款全自动操作虾皮买家号的软件
Shopee买家通系统可以全自动批量注册虾皮买家号,注册时可以自动调用手机号、自动接收短信验证、自动绑地址及支付卡,注册成功后还能自动绑定邮箱进行验证。 软件支持5个国家使用,越南、泰国、菲律宾、印度尼西亚、马来西亚。 内置防指纹技术 …...
希亦内衣洗衣机和小米哪个品牌好?内衣洗衣机横评对比
内衣洗衣机作为一种小型家电,受到越来越多人的欢迎。内衣洗衣机虽然体积小,但功能并不简单。我们可以选择具备多种洗涤模式、容量适中、节能环保的洗衣机,以满足我们的不同需求。那么面对希亦以及小米这两个热门的洗衣机品牌,我们…...
下载安装各种版本的Vscode以及解决VScode官网下载慢的问题
下载指定版本 在Vscode官网 Vscode官网更新子页 这里的左侧栏点击其中一个会跳转到某个版本,或者在官网子页 https://code.visualstudio.com/updates的后面跟上需要的版本号即可完成目标版本下载页面的跳转 选择Linux里的ARM包不会自动下载而是跳转到另一个页面 …...
双十一电视盒子哪个牌子好?测评工作室整理口碑电视盒子排名
在挑选电视盒子的时候,新手朋友们不知道从何下手,最近很多粉丝评论想要我们分享双11电视盒子推荐,于是我们根据用户的评价整理了目前口碑最好的电视盒子排名,给不懂电视盒子哪个牌子好的朋友们做个参考。 TOP 1、泰捷WEBOX WE40S电…...
11.1总结
11.1总结 文章目录 11.1总结A. 集合题目大意考场思路 B. 差后队列题目大意考场思路正解 C. 蛋糕题目大意考场思路正解 D. 字符替换题目大意考场思路正解 总结 A. 集合 题目大意 给定一个长度为 n n n 的整数序列 a a a ,问该序列有多少个子区间满足这个区间内数…...
Proteus仿真--1602LCD显示电话拨号键盘按键实验(仿真文件+程序)
本文主要介绍基于51单片机的LCD1602显示电话拨号键盘按键实验(完整仿真源文件及代码见文末链接) 仿真图如下 其中右下方12个按键模拟仿真手机键盘,使用方法同手机键一样,拨打手机号码则在液晶显示屏上显示对应的号码 仿真运行…...
如何防范AI诈骗
如何防范AI诈骗 😇博主简介:我是一名正在攻读研究生学位的人工智能专业学生,我可以为计算机、人工智能相关本科生和研究生提供排忧解惑的服务。如果您有任何问题或困惑,欢迎随时来交流哦!😄 ✨座右铭&#…...
ICCV2023 Tracking paper汇总(一)(多目标跟随、单目标跟随等)
一、PVT: A Simple End-to-End Latency-Aware Visual Tracking Framework paper: https://openaccess.thecvf.com/content/ICCV2023/papers/Li_PVT_A_Simple_End-to-End_Latency-Aware_Visual_Tracking_Framework_ICCV_2023_paper.pdf github: https://…...
【PG】PostgreSQL查看与修改参数
文章目录 一 查看参数1. 使用 SHOW 命令:2. 查询 pg_settings 视图:3. 查看 postgresql.conf 文件:4. 使用 pg_settings 函数: 二 修改参数通过修改 postgresql.conf 文件:使用 ALTER SYSTEM 命令修改参数(…...
openGauss学习笔记-115 openGauss 数据库管理-设置安全策略-设置密码安全策略
文章目录 openGauss学习笔记-115 openGauss 数据库管理-设置安全策略-设置密码安全策略115.1 操作步骤 openGauss学习笔记-115 openGauss 数据库管理-设置安全策略-设置密码安全策略 115.1 操作步骤 用户密码存储在系统表pg_authid中,为防止用户密码泄露ÿ…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...
C/C++ 中附加包含目录、附加库目录与附加依赖项详解
在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
【Linux】Linux 系统默认的目录及作用说明
博主介绍:✌全网粉丝23W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...
如何在Windows本机安装Python并确保与Python.NET兼容
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...
职坐标物联网全栈开发全流程解析
物联网全栈开发涵盖从物理设备到上层应用的完整技术链路,其核心流程可归纳为四大模块:感知层数据采集、网络层协议交互、平台层资源管理及应用层功能实现。每个模块的技术选型与实现方式直接影响系统性能与扩展性,例如传感器选型需平衡精度与…...
