如何评估神经网络的"鲁棒性"?一种通用方法:CLEVER

Posted 我爱计算机视觉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何评估神经网络的"鲁棒性"?一种通用方法:CLEVER相关的知识,希望对你有一定的参考价值。




关注公众号,发现CV技术之美





导言:
神经网络鲁棒性评估一直是深度学习领域中一个热门的研究方向,该论文是通用评估神经网络鲁棒性方法的开山之作。作者将神经网络鲁棒性问题转换成局部Lipschitz常数的估计问题,并利用极值理论方法进行评估,进而提出了一种度量神经网络鲁棒性的通用方法-CLEVER,该方法可以对不可知的攻击方式进行评估,并且对于大规模的神经网络计算成本较少。该论文涉及到大量的数学推导,需要沉下心来慢慢琢磨。

详细信息如下:


  • 论文链接:https://arxiv.org/abs/1801.10578v1



  •       01      

    数学符号介绍


    假定表示的是一个神经网络分类器,其中表示输入空间的维度,表示的是输出空间的维度。表示干净的输入样本,表示对抗样本,表示的是对抗扰动,表示的范数,其中表示的是最小的对抗扰动。表示的是对抗扰动的上界,表示的是对抗扰动的下界。表示的是Lipschiz常数,表示的是局部Lipschitz常数。表示的以干净样本为中心,半径为的球体。表示的是累积分布函数。



          02      

    分类器鲁棒性的保证分析


    本文作者对神经网络分类器的鲁棒性给出了严格的数学定理的形式,并且该定理只需要一个很宽泛的假设,即分类器函数是Lipschitz连续的。

    (扰动样本和对抗样本):给定一个输入向量,该样本对应的类别为类,分类函数为,预测类别为。假设是一个干净样本的一个扰动样本 ,则存在扰动

    一、什么是鲁棒性

    鲁棒性这个词汇非常唬人,乍一看也是很难理解,为什么呢,因为这并不是我们日常所使用的词语,并且这两个字很不相干,想要做到根据单字理解含义也是不可能的。

    鲁棒是Robust的音译,也就是健壮和强壮的意思。它也是在异常和危险情况下系统生存的能力。比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。所谓“鲁棒性”,也是指控制系统在一定(结构,大小)的参数摄动下,维持其它某些性能的特性。根据对性能的不同定义,可分为稳定鲁棒性和性能鲁棒性。以闭环系统的鲁棒性作为目标设计得到的固定控制器称为鲁棒控制器。

    二、如何理解鲁棒性

    我们可以简单地理解为健壮性。

    那么怎么才是健壮性呢?你可以理解为一个人站在平地,不管我是

    • 快速敲打身体(DDoS)
    • 跳大神
    • 塞到嘴里不能吃的东西

    等等可能导致混乱的行为,这个人都能一动不动、稳如泰山。

    (此处省略漫画一幅)

    以上是关于如何评估神经网络的"鲁棒性"?一种通用方法:CLEVER的主要内容,如果未能解决你的问题,请参考以下文章

    计算机软件基础如何理解鲁棒性Robust?

    神经网络的准确率和鲁棒性不能兼得?不,让我们来仔细看看

    鲁棒性

    贝叶斯神经网络对梯度攻击的鲁棒性

    什么是鲁棒性

    AI 可靠性论文整理