zoukankan      html  css  js  c++  java
  • 安全算法基础(一)

    安全算法是算法的分支之一,还的依靠大量的数学基础进行计算,本文参照兜哥的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层。

  • 相关阅读:
    向存储过程中传入列表参数
    TRUNCATE TABLE (Transact-SQL)
    Program.cs
    联想G40-30 安装win10系统
    完美解决github访问速度慢[转]
    关于Visual studio 2017安装方法的若干问题
    [转载] 中国象棋软件-引擎实现(七)测试程序
    [转载] 中国象棋软件-引擎实现(六)局面评估
    [转载] 中国象棋软件-引擎实现(五)历史启发及着法排序
    [转载] 中国象棋软件-引擎实现(四)搜索算法
  • 原文地址:https://www.cnblogs.com/xinxin999/p/14930293.html
Copyright © 2011-2022 走看看