目录

Pang T, Du C, Zhu J, et al. Max-Mahalanobis Linear Discriminant Analysis Networks[C]. international conference on machine learning, 2018: 4013-4022.

@article{pang2018max-mahalanobis,

title={Max-Mahalanobis Linear Discriminant Analysis Networks},

author={Pang, Tianyu and Du, Chao and Zhu, Jun},

pages={4013--4022},

year={2018}}

本文介绍了从最大化马氏距离的角度提出了一种defense.

主要内容

对于俩个分布来说, 区分样本属于哪一个分布, 最好的分类器就是贝叶斯分类, 特别的, 如果是高斯分布, 且协方差矩阵一致, 则其分类平面为

\[w^T(x-x_0)=0,
\]

其中

\[w=\Sigma^{-1} (\mu_1 - \mu_2),
\]
\[x_0=\frac{1}{\mu_1+\mu_2} - \ln (\frac{P(w_1)}{P(w_2)}) \frac{\mu_1-\mu_2}{\|\mu_1-\mu_2\|_{\Sigma^{-1}}^2}.
\]

特别的, 当\(\Sigma\)为对角矩阵的时候, 其分类平面只与\(\mu_1-\mu_2\)有关.

设一个混合高斯分布:

\[P(y=i)=\pi_i, P(x|y=i)=\mathcal{N}(\mu_i, \Sigma), \quad i \in [L]:=1,\ldots,L,
\]

并定义

\[\Delta_{i,j} := [(\mu_i-\mu_j)^T \Sigma^{-1} (\mu_i - \mu_j)]^{1/2}.
\]

因为神经网络强大的拟合分布能力, 我们可以假设\(\Sigma=I\)(文中将\Sigma$分解, 然后用变量替换可以得到, 马氏距离在此情况下具有不变性, 我觉得不如直接这么解释比较实在).

设想, 从第i个分布中采样\(x_{(i)} \sim \mathcal{N}(\mu_i, I)\), 将\(x_{(i)}\)移动到与\(j\)类的分类平面的距离设为\(d_{(i,j)}\),

定理: 如果\(\pi_i=\pi_j\), 则\(d_{(i,j)}\)的期望为

\[\mathbb{E}[d_{(i,j)}] = \sqrt{\frac{2}{\pi}} \exp(-\frac{\Delta_{i,j}^2}{8})+\frac{1}{2} \Delta_{i,j} [1-2\Phi(-\frac{\Delta_{i, j}}{2})],
\]

其中\(\Phi\)表示正态分布函数.

注意, 这里的\(d_{i,j}\)是\(x\)到分类平面的距离, 也就是说, 如果\(x_{(i)}\)如果本身就位于别的类中, 同样也计算这个距离, 不公平, 当然如果这么考虑, 证明起来就相当麻烦了.

如果定义

\[\mathrm{RB} = \min_{i,j\in [L]} \mathbb{E}[d_{(i,j)}],
\]

则我们自然希望\(\mathrm{RB}\)越大越好(越鲁棒, 但是根据我们上面的分析, 这个定义是存在瑕疵的). 然后通过导数, 进一步发现

\[\mathrm{RB} \approx \bar{\mathrm{RB}} := \min_{i,j \in [L]} \Delta_{i,j} / 2.
\]

有定理:

所以, 作者的结论就是, 最后一层

\[z_i =\mu_i^Tf(x)+b_i,
\]

满足\((4)\), 为此作者设计了一个算法



去构造. 所以, 这最后一层的参数是固定不训练的. 余下的与普通的网络没有区别.

Max-Mahalanobis Linear Discriminant Analysis Networks的更多相关文章

  1. 线性判别分析(Linear Discriminant Analysis,LDA)

    一.LDA的基本思想 线性判别式分析(Linear Discriminant Analysis, LDA),也叫做Fisher线性判别(Fisher Linear Discriminant ,FLD) ...

  2. 线性判别分析(Linear Discriminant Analysis, LDA)算法分析

    原文来自:http://blog.csdn.net/xiazhaoqiang/article/details/6585537 LDA算法入门 一. LDA算法概述:       线性判别式分析(Lin ...

  3. 线性判别分析(Linear Discriminant Analysis, LDA)算法初识

    LDA算法入门 一. LDA算法概述: 线性判别式分析(Linear Discriminant Analysis, LDA),也叫做Fisher线性判别(Fisher Linear Discrimin ...

  4. 机器学习: Linear Discriminant Analysis 线性判别分析

    Linear discriminant analysis (LDA) 线性判别分析也是机器学习中常用的一种降维算法,与 PCA 相比, LDA 是属于supervised 的一种降维算法.PCA考虑的 ...

  5. Linear Discriminant Analysis Algorithm

    线性判别分析算法. 逻辑回归是一种分类算法,传统上仅限于两类分类问题. 如果有两个以上的类,那么线性判别分析算法是首选的线性分类技术.LDA的表示非常直接.它包括数据的统计属性,为每个类计算.对于单个 ...

  6. 线性判别分析(Linear Discriminant Analysis)转载

    1. 问题 之前我们讨论的PCA.ICA也好,对样本数据来言,可以是没有类别标签y的.回想我们做回归时,如果特征太多,那么会产生不相关特征引入.过度拟合等问题.我们可以使用PCA来降维,但PCA没有将 ...

  7. 线性判别分析(Linear Discriminant Analysis)

    1. 问题 之前我们讨论的PCA.ICA也好,对样本数据来言,可以是没有类别标签y的.回想我们做回归时,如果特征太多,那么会产生不相关特征引入.过度拟合等问题.我们可以使用PCA来降维,但PCA没有将 ...

  8. [ML] Linear Discriminant Analysis

    虽然名字里有discriminat这个字,但却是生成模型,有点意思. 判别式 pk 生成式 阅读:生成方法 vs 判别方法 + 生成模型 vs 判别模型 举例: 判别式模型举例:要确定一个羊是山羊还是 ...

  9. Linear Discriminant Analysis

    Suppose that we model each class density as multivariate Gaussian, in practice we do not know the pa ...

随机推荐

  1. 零基础学习java------day3-运算符 以及eclipse的使用

    今日内容: 1. 算数运算符 2. 赋值运算符 3. 关系运算符 4. 逻辑运算符 5. 位运算符 6.三目运算符 一 运算符 运算:对常量和变量进行操作的过程称为运算 运算符:对常量和变量进行操作的 ...

  2. 规范——Java后端开发规范

    Java后端开发规范 一.技术栈规约 二.命名规范 三.Java代码规范(注释规范.异常与日志.代码逻辑规范) 四.Mybatis与SQL规范 五.结果检查(单元测试及代码扫描) 六.安全规范 一.技 ...

  3. react中在hooks方法useEffect中加载异步数据

    useEffect( ()=>{ (async function getPipeList(value:any) { let result= await GetPipeList(value); s ...

  4. 【C/C++】从矩阵左上角走到右下角

    tx的笔试,但是只过了10%,就离谱 #include <bits/stdc++.h> using namespace std; const int maxn = 1010; long d ...

  5. 带你揭开WebSerivce的面纱

    最近在工作中遇到这样的一个项目(暂且定为项目A),项目A本身是用PHP开发的,但是其数据是来自于另一个使用java开发的项目(暂且定为项目B),项目A不能操作项目B的数据库,它有其自己的一套数据库,只 ...

  6. Apifox(1)比postman更优秀的接口自动化测试平台

    Apifox介绍 Apifox 是 API 文档.API 调试.API Mock.API 自动化测试一体化协作平台,定位 Postman + Swagger + Mock + JMeter.通过一套系 ...

  7. markDodn使用技巧

    markdown 标题 一级标题书写语法: 井符(#)加上空格加上标题名称 二级标题书写语法: 两个井符(#)加上空格加上标题名称 三级标题书写语法: 三个井符(#)加上空格加上标题名称 字体 字体加 ...

  8. 6、Redis五大数据类型---列表(List)

    一.列表(List)简介 单键多值:Redis 列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(左边)或者尾部(右边). 它的底层实际是个双向链表,对两端的操作性能很高,通过 ...

  9. IO多路复用技术总结

    来源:微信公众号「编程学习基地」 IO 多路复用概述 I/O 多路复用技术是为了解决进程或线程阻塞到某个 I/O 系统调用而出现的技术,使进程不阻塞于某个特定的 I/O 系统调用. 在IO多路复用技术 ...

  10. [BUUCTF]REVERSE——[BJDCTF 2nd]guessgame

    [BJDCTF 2nd]guessgame 附件 步骤: 例行查壳儿,64位程序,没有壳儿 64位ida载入,习惯性的检索程序里的字符串,看到了一串类似flag的字符串,拿去提交,成功 BJD{S1m ...