对抗样本 - 提高机器学习模型的性能

2023-11-01

20200827 -

0. 引言

今天编写文章《DGA生成与检测 - 论文《DeepDGA: Adversarially-Tuned Domain Generation and Detection》阅读》时,那篇论文最后的实验中提到了增强机器学习模型的内容,顺着这个思路在谷歌上进行了简单的搜索,找到了两篇材料,本篇文章就对这两篇文章的内容进行简单的记录。

1. 简介

(1)Protecting the protector: Hardening machine learning defenses against adversarial attacks
(2)Hardening Neural Networks for Computer Security Against Adversarial Attack
上述文章都提到了对抗样本的概念,而且都是针对对抗样本的攻击来提高机器学习模型的性能。
文章1是微软的博客文章,通过列举了一些防御对抗样本攻击的措施,比如利用多层攻击、利用云服务等,这里不再具体描述,文章很简洁,可以直接去原文查看。
这里重点来说一说第二篇文章。

2. 利用惩罚项防御对抗攻击

文章2中提出了相应的案例,通过在某个PE文件上添加了一些字符串,逃避了检测系统的检测,而且能够达到100%,这个数值挺吸引人的。但我个人觉得很不可思议,有几点疑惑:
1)攻击者知道检测模型的具体参数吗?如果知道完全参数或者完全的检测流程,那么能构造这么精巧的攻击就不奇怪了,但是如果不知道,或者仅仅知道一部分,那就非常厉害了。个人感觉应该也是测试出来的。
2)检测模型为什么会这么容易就被绕过呢?
这些疑惑,我没有从文中得到解答,可能得等以后继续思考了。

2.1 模型被这么绕过的原因

一般而言,检测一个恶意样本首先要进行特征的提取,在这个过程之后,才会有相应的模型检测过程。那么,仅仅简单的通过插入字符串,而且保持了原有样本的功能性(文中提到),还能绕过检测,个人感觉应该是知道了可能的模型参数,知道如果是某种类型就不会被检测一样。回到特征的问题,这种通过修改样本之后,绕过检测肯定是一些重要特征发生了变化,导致它到了正常样本的区域。

那么,如果要提高这种攻击样本的检测能力,必须时保证整体的检测模型(包括前面的特征提取部分)能够免除这种噪声的影响。也就是说,它对于这部分的修改,特征对于这部分内容的代表性不受影响。

2.2 文章2提出的解决方案

文章2提出的解决方案就是,创建一个被添加了字符串的克隆样本,这个样本与原始样本的功能性一样,只是添加了新的东西。
在这里插入图片描述
然后,在训练的过程中,讲这两个样本同时输入(个人理解),然后在网络中,添加相应的惩罚向。这种方案很像之前的时候看到的那种孪生网络的形式。一旦两个样本发生了这种不同,就进行相应的惩罚。
这里仅仅记录这篇文章的思路,不进行具体展开。

3. 思考

虽然从文章2的描述中看来,对于这种添加字符串的方式效果不错。但是也引发我另外的思考,这种形式真的是对所有的对抗样本都有效吗?这个不好说。因为你构造样本的时候,就是构造的这种,如果他修改了其他的特征呢?所以这就是问题。
但这引出了另外的一个重要的问题,那就是找出具备区分性的特征,或者说,找到不受这种小干扰的特征组合,保持原有的样本的代表性特征,这种方式才是最关键的。但是,实际情况可能更复杂。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对抗样本 - 提高机器学习模型的性能 的相关文章

随机推荐

  • cURL安装和常用实例

    cURL是一个利用URL语法在命令行下工作的文件传输工具 配置后 可以在命令行直接执行各类操作 也可以作为源码包 载入到各类后端开发 为后端提供文件传输能力 安装 下载 演示电脑是win10 64位 下载对应的包 全部下载地址 zip地址
  • Hibernate中枚举Enum类型的映射策略

    在Java中Enum是一种 奇葩 的存在 奇葩 不代表没用 对于这种比较特殊的存在 hibernate会有很多种选择来完成Enum类型字段的映射 首先要说明的是在hibernate都是把Enum类型的字段映射成基本类型的字段 并且我这里不使
  • moviepy音视频开发:音频剪辑基类AudioClip详解

    前往老猿Python博文目录 一 背景知识介绍 1 1 声音三要素 音调 人耳对声音高低的感觉称为音调 也叫音频 音调主要与声波的频率有关 声波的频率高 则音调也高 音量 也就是响度 人耳对声音强弱的主观感觉称为响度 响度和声波振动的幅度有
  • AIGC发展路径思考:大模型工具化普及迎来新机遇

    来源 腾讯科技 摘要 当前 AIGC引发社会关注 尤其是大模型和开源模式的推动 让AIGC有望成为AI应用落地的新领域 一方面大模型和开源加速降低AIGC应用门槛并拓展应用范围 另一方面AI与创新的界限进一步模糊 两者融合的趋势愈发明显 本
  • Python 多线程 run() 与 start()的关系

    先说结论 1 调用多线程时用start 2 start 中会调用run 3 run 不会启动多线程 代码分析 1 首先看run 的代码 def run self Method representing the thread s activi
  • 二阶系统参数用matlab,实验一基于MATLAB的二阶系统动态性能分析

    实验一 基于MATLAB 的二阶系统动态性能分析 一 实验目的 1 观察学习二阶控制系统的单位阶跃响应 脉冲响应 2 记录单位阶跃响应曲线 脉冲响应曲线 3 掌握时间响应分析的一般方法 4 掌握系统阶跃响应曲线与传递函数参数的对应关系 二
  • sqoop入门

    大数据技术之Sqoop 一 Sqoop简介 Sqoop是hdfs hive hbase和RDBMS结构化数据库之间传输大量数据的工具 二 Sqoop原理 将导入或导出命令翻译成mapreduce程序来实现 在翻译出的mapreduce中主要
  • Linux常用命令介绍(一)——文件与文件夹操作相关命令

    今天继续给大家介绍Linux相关操作 本文主要内容是文件和文件夹的基本操作 包括创建 复制 删除 以及压缩和解压缩命令 一 创建文件 夹 mkdir命令用于创建文件夹 在使用时 我们常常跟 p参数 表示强制创建 没有该参数 则必须目标文件夹
  • ESP32中定时计数器的使用

    一 GPIO常用函数 esp err t gpio reset pin gpio num tgpio num 将 gpio 重置为默认状态 选择 gpio 功能 启用上拉并禁用输入和输出 备注此功能还将此引脚的 IOMUX 配置为 GPIO
  • shiro标签页点击报错: No SecurityManager accessible to the calling code...

    shiro按钮配置标签报错问题 问题 最近的项目需要将按钮也动态配置进去 我按照网上的步骤加上shiro的taglib标签 然后在该页面的某个按钮上加上
  • vue3项目(八)---购物车

    1 购物车业务逻辑梳理拆解 1 整个购物车的实现分为俩个大分支 本地购物车操作和接口购物车操作 2 由于购物车数据的特殊性 采取Pinia管理购物车列表数据并添加持久化缓存 2 本地购物车 加入购物车实现 1 封装cartStore 在st
  • 正则表达式 匹配6到20位含字母和数字

    A Za z0 9 6 20 分别匹配字符串的开始和结束 d a z A Z a zA Z d 6 20 a z A Z a zA Z d 6 20 d 表示字符串中有数字 a z A Z 则分别表示字符串中含有小写字母和大写字母 例如 a
  • 使用R语言绘制散点图是一种常见的数据可视化方法,可以帮助我们观察和分析数据的分布情况

    使用R语言绘制散点图是一种常见的数据可视化方法 可以帮助我们观察和分析数据的分布情况 在散点图中添加自定义文本标签可以进一步丰富图表的信息内容 本文将介绍如何使用R语言的plot函数和mtext函数来创建散点图并添加自定义文本标签 首先 我
  • 域名解析--详细讲解

    1 域名是什么 比如 www baidu com 这一串东西就是域名 2 那么我们买的域名 直接输入到浏览器的地址栏 访问 却什么都没有 是因为域名形象的说只是一个门牌号而已 所以需要将域名解析到服务器 3 怎么解析 以下以阿里云网站操作为
  • 小白入门脑电信号

    是个脑电信号研究小白 今年3月下旬临时换了研究方向 到现在也看了不少论文 试过一些特征提取的代码还有分类的代码 现在也想总结一下这段时间所学的东西 算是做个中期回顾吧 Ps 里面的特征提取的代码以及分类的代码均不是我所写的 后面会附上链接
  • ReactNative WebView组件详解

    源码传送门 在开发Android的时候 一般我们会有一些加载网页的需求 或者执行一些JavaScript 我们都知道在Android中实现这个功能的控件是WebView 在ReactNative中也有实现此类需求额的组件 它的名字也是Web
  • C++:STL:常用算法(下):拷贝,算术,集合算法

    一 常用拷贝和替换算法 学习目标 掌握常用的拷贝和替换算法 算法简介 copy 容器内指定范围的元素拷贝到另一容器中 replace 将容器内指定范围的旧元素修改为新元素 replace if 容器内指定范围满足条件的元素替换为新元素 sw
  • SC不是内部命令或外部命令

    CMD中 输入SC命令或注册odbc时 系统提示sc不是内部或外部命令 解决方法如下 右击我的电脑 点击属性 gt 高级 gt 环境变量 在弹出的新窗口下的系统变量中找到Path 点击编辑 在变量值一行最后添加以下内容 SystemRoot
  • openstack nova 命令行指令大全

    来自官方文档 nova absolute limits Print a list of absolute limits for a user actions Retrieve server actions add fixed ip Add
  • 对抗样本 - 提高机器学习模型的性能

    20200827 0 引言 今天编写文章 DGA生成与检测 论文 DeepDGA Adversarially Tuned Domain Generation and Detection 阅读 时 那篇论文最后的实验中提到了增强机器学习模型的