AidLux智慧交通AI安全之对抗攻击算法

这篇具有很好参考价值的文章主要介绍了AidLux智慧交通AI安全之对抗攻击算法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

AI对抗攻击算法划分
目前主流对抗 攻击算法的总体分支与逻辑:

AidLux智慧交通AI安全之对抗攻击算法

 文章来源地址https://www.toymoban.com/news/detail-440283.html

        其中,当算法模型参数和训练数据等信息被攻击者所掌握,并且攻击者在此基础上进行的针对性攻击称为白盒攻击。白盒攻击主要分为基于梯度的攻击,基于优化的攻击以及基于GAN的攻击。而在对算 法模型的结构和参数一无所知,甚至相关训练数据也一无所知的情况下,进行攻击的过程称为黑盒攻击。 黑盒攻击主要分为基于迁移的攻击和基于查询的攻击两大类。
基于迁移的攻击逻辑由白盒攻击延伸而来,一般会有一个白盒模型作为替身模型(surrogate)进行攻 击,而生成的对抗样本一般也会对其他模型有一定的迁移攻击性。 基于查询的攻击其主要是通过查询黑盒模型的输出信息,对黑盒模型进行直接的攻击,但完成整个攻击流程往往需要大量的查询,容易被模型所有者检测到异常。再者,基于此我们再介绍两个有趣的攻击策略有目标攻击(targeted attack):通过攻击使得模型将特定数据错误输出到指定的label上。 无目标攻击:通过攻击使得模型将特定数据错误输出到除真实label外的其他任何label上。类模型,针对有目标攻击,我们通过生成对抗样本,想让分类模型将猫的类别错判成狗。而无目标攻 击,并不限定特定类别,只要模型发生错判即可。

(一)白盒攻击

        基于迁移的攻击,我们先介绍最经典的FGSM算法,YOLOv4使用的SAT(self adversarial training技术就是基于FGSM开展。
FGSM(Fast Gradient Sign Method) 是第一个使用模型梯度信息来进行对抗攻击的算法。
为什么使用梯度信息进行攻击会有效果呢? 直观地来说,我们想要模型输出错误预测,那就要增大模型对输入数据的loss,而这正好与模型训练时往梯度下降,loss减少的方向相反。 由于模型的参数与结构保持不变,那么我们只有通过原图+梯度信息->更新图像的步骤来实现这个逻辑。
AidLux智慧交通AI安全之对抗攻击算法

 

        PGD(Projected Gradient descent)是FGSM算法的一个优化版本。其在FGSM基础上引入了迭代攻击的思想,将多次攻击后的数据作为最终的对抗样本。
而基于优化的攻击算法的基本逻辑是将攻击流程转换为一个优化问题,以更小的扰动来生成更加高效的对抗样本。
       其中Deepfool攻击算法是基于超平面分类的攻击方法,其通过迭代计算的方法生成最小规范对抗扰动,将位于分类边界内的图像逐步推到边界外,直到出现错误预测。

AidLux智慧交通AI安全之对抗攻击算法

 

        基于GAN的攻击。AdvGAN将GAN思想引对抗攻击,通过生成器生成对抗扰动,添加到干净样本中。而判别器主要负责判别输入的是对抗样本还是干净样本。整个对抗训练过程转化成GAN经典博弈过程。

 AidLux智慧交通AI安全之对抗攻击算法

 

(二)黑盒攻击

        黑盒攻击主要有基于迁移的攻击和基于查询的攻击。基于迁移的攻击主要由白盒攻击扩展,一般来说,通过白盒攻击生成的对抗样本,一般对不同的算法模型具备一定的迁移攻击性。 而基于查询的对抗攻击首先设定一个搜索空间,并通过不断的查询模型的输出来优化对抗扰动。

AidLux智慧交通AI安全之对抗攻击算法

 https://zhuanlan.zhihu.com/p/493333024

源码链接:https://pan.baidu.com/s/1RIduv6ngpCM3jx63D3PQGA  提取码:aid6

import os
import torch
import torch.nn as nn
from torchvision.models import mobilenet_v2
from advertorch.utils import predict_from_logits
from advertorch.utils import NormalizeByChannelMeanStd

from advertorch.attacks import LinfPGDAttack
from advertorch_examples.utils import ImageNetClassNameLookup
from advertorch_examples.utils import bhwc2bchw
from advertorch_examples.utils import bchw2bhwc

device = "cuda" if torch.cuda.is_available() else "cpu"


### 读取图片
def get_image():
    img_path = os.path.join("./images", "school_bus.png")


    def _load_image():
        from skimage.io import imread
        return imread(img_path) / 255.

    if os.path.exists(img_path):
        return _load_image()



def tensor2npimg(tensor):
    return bchw2bhwc(tensor[0].cpu().numpy())

### 展示攻击结果
def show_images(model, img, advimg, enhance=127):
    np_advimg = tensor2npimg(advimg)
    np_perturb = tensor2npimg(advimg - img)

    pred = imagenet_label2classname(predict_from_logits(model(img)))
    advpred = imagenet_label2classname(predict_from_logits(model(advimg)))

    import matplotlib.pyplot as plt

    plt.figure(figsize=(10, 5))
    plt.subplot(1, 3, 1)
    plt.imshow(np_img)

    plt.axis("off")
    plt.title("original image\n prediction: {}".format(pred))
    plt.subplot(1, 3, 2)
    plt.imshow(np_perturb * enhance + 0.5)

    plt.axis("off")
    plt.title("the perturbation,\n enhanced {} times".format(enhance))
    plt.subplot(1, 3, 3)
    plt.imshow(np_advimg)
    plt.axis("off")
    plt.title("perturbed image\n prediction: {}".format(advpred))
    plt.show()


normalize = NormalizeByChannelMeanStd(
    mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])


### 常规模型加载
model = mobilenet_v2(pretrained=True)
model.eval()
model = nn.Sequential(normalize, model)
model = model.to(device)


### 数据预处理
np_img = get_image()
img = torch.tensor(bhwc2bchw(np_img))[None, :, :, :].float().to(device)
imagenet_label2classname = ImageNetClassNameLookup()


### 测试模型输出结果
pred = imagenet_label2classname(predict_from_logits(model(img)))
print("test output:", pred)

### 输出原label
pred_label = predict_from_logits(model(img))


### 对抗攻击:PGD攻击算法
adversary = LinfPGDAttack(
    model, eps=8 / 255, eps_iter=2 / 255, nb_iter=80,
    rand_init=True)


### 完成攻击,输出对抗样本
advimg = adversary.perturb(img, pred_label)


### 展示源图片,对抗扰动,对抗样本以及模型的输出结果
show_images(model, img, advimg)

输出结果:校车误判为缝纫机

AidLux智慧交通AI安全之对抗攻击算法

 

到了这里,关于AidLux智慧交通AI安全之对抗攻击算法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从物联网到智慧交通:让城市出行更美好,共创安全、高效的出行新篇章

    目录 一、物联网技术:智慧交通的基石 二、智慧交通系统的优势:提高效率,降低成本 三、物联网在智慧交通中的应用实例 四、物联网与智慧交通的未来展望 五、物联网与智慧交通如何改变我们的生活方式 六、安全、高效的出行:物联网与智慧交通的共同目标 七、智慧交

    2024年01月24日
    浏览(22)
  • 基于AidLux的智慧教育版面分析应用

    融合架构操作系统AidLux,可以为单一ARM设备同时提供Android和Linux运行环境,双系统既能独立使用又能相互通信。 非虚拟机方式实现双系统融合并行 同时拥有两个系统的完整用户体验 无需重启即可在两个系统之间自由切换 非虚拟机模式,原生,稳定 支持Android/鸿蒙和Linux.互调

    2024年02月01日
    浏览(18)
  • 【网安AIGC专题10.11】①代码大模型的应用:检测、修复②其安全性研究:模型窃取攻击(API和网页接口) 数据窃取攻击 对抗攻击(用途:漏洞隐藏) 后门攻击(加触发器+标签翻转)

    本文为 邹德清教授的《网络安全专题》课堂笔记系列 的文章,本次专题主题为大模型。 第一次课上,文明老师的博士生杜小虎学长进行了 代码大模型的应用及其安全性研究 的相关介绍 将我之前不太明白的一些概念解释得深入浅出,醐醍灌顶 另有部分个人不成熟的理解,欢

    2024年02月04日
    浏览(23)
  • 大数据毕业设计:智慧交通数据分析系统 python 时间序列预测算法 爬虫 出行速度预测 拥堵预测(源码)✅

    博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌感兴趣的可以先收藏起来,点赞、关注不迷路✌ 毕业设计:2023-2024年计算机毕业设计1000套(建议收藏)

    2024年02月22日
    浏览(25)
  • 将闲置手机变废为宝——基于AidLux平台的智慧教育版面分析应用

            随着互联网技术以及社会经济等的高速发展, 教育行业迎来了人工智能技术的蓬勃发展,而 近年来随着教育信息化的不断推进,智能教育成为国家的重要战略之一。尤其在经过新冠疫情之后,社会对智能在线教育的迫切需求,使得对教科书、习题册等文档的自动分

    2024年01月19日
    浏览(21)
  • 【AI算法学习】基于AutoEncoder的生成对抗网络

    \\\" 生成模型 (Generative modeling)\\\"已成为机器学习的一个较为广泛的领域。在图像这种流行数据上,每张图像都有数千数万的维度(像素点), 生成模型的工作就是通过某种方式来捕获像素之间的依赖,而具体捕获哪些依赖关系,就取决于我们想用模型来做些什么 。 通常来讲

    2024年02月01日
    浏览(34)
  • AI for Security:智能化安全对抗的困境

    本篇文章主要结合自己的亲身经历和体会表达一下对AI for Security的看法,整体态度偏消极。 本段将由大到小从国家、网上公开资料、项目三个方面说明智能化安全对抗时代的来临。 正如有时候觉得学得好不如嫁得好,在网络安全方面有时也是学得好不如运气好跟上了历史的

    2024年02月08日
    浏览(22)
  • AI赋能智能交通:人工智能如何改善交通流量管理和道路安全?

    *作者简介:国内 985在读博士生,人工智能、机器学习、云原生研究方向,发表多篇高水平CS论文。 *博客介绍: 主要分享攻读博士期间的所见所闻,欢迎交流合作科研项目。 导言: 当下,交通问题已成为城市化进程中的一个重要挑战。交通流量管理和道路安全一直是政府和

    2024年04月12日
    浏览(21)
  • AI大模型时代网络安全攻防对抗升级,瑞数信息变革“下一代应用与数据安全”

      AI与大模型技术加速普及,安全领域也在以创新视角聚焦下一代应用安全WAAP变革,拓展新一代数据安全领域。近日瑞数信息重磅发布了瑞数全新API扫描器、API安全审计、数据安全检测与应急响应系统及分布式数据库备份系统四大新品。此次发布在延续瑞数信息Bot自动化攻击

    2024年02月06日
    浏览(29)
  • 后门攻击 & 对抗攻击 resources

    后门攻击 知乎问答 公众号: 后门学习(Backdoor Learning)介绍及资源汇总 浅谈深度学习后门攻击 Backdoor Learning: A SurveyAI中的后门攻击及防御-实战篇 如何攻击深度学习系统——后门攻防 毒墨水:一种隐蔽且鲁棒的后门攻击 深度学习中的后门攻击综述【 信 息 安 全 学 报】 对深度

    2024年02月09日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包