安全算法基础(一)

news/2024/12/23 20:54:43 标签: 安全, 算法

安全算法算法的分支之一,还的依靠大量的数学基础进行计算,本文参照兜哥的AI安全样本对抗,做一个简单的算法安全概括,从零学习。

最新的安全算法对于我们常规的攻击样本检测,效果是不理想的,为了探究其原因,决定学习ai安全,神经网络。

常见的对抗样本的方法分为白盒,黑盒,以及真实世界物理攻击,难度依次递增。一下就照着书抄,一下几种方法的检测以及加固。

白盒攻击算法列举:

ILCM(最相似迭代算法)

FGSM(快速梯度算法)

BIM(基础迭代算法)

JSMA(显著图攻击算法)

DeepFool(DeepFool算法) C/W(C/W算法)

常见的黑盒攻击方法列举:

Single Pixel Attack(单像素攻击)

Local Search Attack(本地搜索攻击)

安全算法加固:

Feature squeezing(特征凝结)

Spatial smoothing(空间平滑)

Label smoothing(标签平滑)

Adversarial training(对抗训练)

Virtual adversarial training (虚拟对抗训练)

Gaussian data augmentation (高斯数据增强)

所谓的深度学习,AI算法,也是基于机器不断的学习打造成的模型,这是我基于安全算法模型的理解。对抗模拟样本采用的攻击是百度的AdvBox。

深度学习通常分为2个步骤,训练和预测2个过程,在这之前,首先要做的就是数据预处理,因为算法,不管算什么,都是基于虚拟的建模,所以,我们首先要预处理,将物理的东西,比如图片,汽车,放在我们的平面直角坐标系中,当然是多维的那种,进行关键点位定坐标。完成数据预处理后,就需要定义网络结构,定义网络结构分为2个部分,一个是对网络结构的描述,二是每层网络的具体参数值是什么。说了这么多模糊的概念,那我们就举一个列子。

我们有一个网站,www.axgg.com  访问的时候有2种人,一个是普通用户,一个是黑客,就相当于二进制的0和1。那我们现在设计一个初略的算法需要把这2类用户给统计出来,那我们就引用一个一元一次函数,y=wx+b,w和b是我们的多维变量,当我们的x取同一值,我们y的值若大于超平面,则为黑客,小于则反之。

我说的一元一次方程只是便于大家理解,但是他们是多维的,不是随随便便就计算出来了,因为还要考虑到网络结构参数的赋值。接下来介绍常用的网络层,Dense层、Activation层、Dropout层、Flatten层、Reshape层和Permute层。


http://www.niftyadmin.cn/n/5796990.html

相关文章

如何正确计算显示器带宽需求

1. 对显示器的基本认识 一个显示器的参数主要有这些: 分辨率:显示器屏幕上像素点的总数,通常用横向像素和纵向像素的数量来表示,比如19201080(即1080p)。 刷新率:显示器每秒钟画面更新的次数&…

upload-labs-master第21关超详细教程

目录 环境配置解题思路利用漏洞 操作演示 环境配置 需要的东西 phpstudy-2018 链接: phpstudy-2018 提取码:0278 32 位 vc 9 和 11 运行库 链接: 运行库 提取码:0278 upload-labs-master 靶场 链接: upload-lasb-ma…

python多线程爬取药品信息

多线程爬取药品信息 利用多线程来获取药品信息可以实现高效的爬取,方便我们自己对药品的名称、价格以及功效进行了解和掌握 导入需要使用到的包 from concurrent.futures.thread import ThreadPoolExecutor from lxml import etree import requests import rando…

C++面试八股文:指针与引用的区别

引言 这也是一道C开发工程师在面试中经常被问到的题目,本文将从指针和引用的几方面区别和各自的常用用途展开讲解,助力各位在面试中大放异彩。 指针和引用的区别 1、指针是一个变量,储存的是一个地址,通过该地址可以操作内存中…

List反转的方法

1.list循环 List<String> strsnew ArrayList<>();for (int i 0; i <100 ; i) {strs.add("a"i);}List<String> fzstrsnew ArrayList<>();for (int i strs.size()-1; i >0 ; i--) {fzstrs.add(strs.get(i));}System.out.println(fzstr…

微服务详细教程之nacos和sentinel实战

前言 上一篇文章中已经介绍了java的高并发编程中的问题&#xff0c;现在主要介绍微服相关的问题&#xff0c;其中在网上面经中经常出现的几个微服问题。这也是我们工作中经常遇到的几个问题。 一.微服务有哪些好处&#xff1f; 微服务优点很多&#xff0c;但是我们通常说一个东…

Elasticsearch:什么是查询语言?

查询语言定义 查询语言包括数据库查询语言 (database query language - DQL)&#xff0c;是一种用于查询和从数据库检索信息的专用计算机语言。它充当用户和数据库之间的接口&#xff0c;使用户能够管理来自数据库管理系统 (database management system - DBMS) 的数据。 最广…

使用开源在线聊天工具Fiora轻松搭建个性化聊天平台在线交流

文章目录 前言1.关于Fiora2.安装Docker3.本地部署Fiora4.使用Fiora5.cpolar内网穿透工具安装6.创建远程连接公网地址7.固定Uptime Kuma公网地址 前言 今天给大家介绍一款免费开源的在线聊天工具——Fiora。它不仅是一款功能强大的即时通讯软件&#xff0c;更是开发者们展现创造…