Wang Y., Huang G., Song S., Pan X., Xia Y. and Wu C. Regularizing Deep Networks with Semantic Data Augmentation.

TPAMI.

通过data augments来对数据进行扩充, 可以有效提高网络的泛化性.

但是这些transformers通常只有一些旋转, 剪切等较为简单的变换, 想要施加更为复杂的语义不变变换(如切换背景), 可能就需要GAN等引入额外的网络来进行.

本文提出的ISDA算法是基于特征的变化进行的, 技能进行语义层面的变换, 又没有GAN等方法的计算昂贵的缺点.

主要内容

作者认为, 在最后的特征层, 通过增加一定的平移对应不同的语义上的变换.

但是, 作者也指明了, 并非所有的方向都是一个有意义的方向, 比如这个方向可能是戴上眼镜, 这个方向对于人来说是有意义的, 但是对于汽车飞机就没有意义了.

所以我们需要从一个有意义的分布中采样, 作者假设该分布是一个零均值的正态分布, 即

\[\mathcal{N}(0, \Sigma).
\]

于是乎, 现在的问题就是如何选择这个协方差矩阵\(\Sigma\).

就像之前讲的, 有些方向是否有意义与类别有关系, 所以不同的类别的样本会从不同的正态分布

\[\mathcal{N}(0, \Sigma_i),
\]

中采样.

对于每一个协方差矩阵, 作者采用online的更新方式更新:



上图是式子就是普通的协方差估计式子

\[\frac{1}{n}\sum_{i=1}^n (x_i-\mu)(x_i - \mu)^T,
\]

的online更新版本.

如果假设样本\(x\)经过encoder之后的特征为\(a\), 则其变换后的版本

\[a' \sim \mathcal{N}(a, \Sigma_y),
\]

其中\(y\)为\(x\)的类别标签. 于是一般的对应的损失函数即为

\[\mathcal{L}_{M}(M, b, \Theta) = \frac{1}{N}\sum_{i=1}^N\frac{1}{M}\sum_{m=1}^M - \log (\frac{e^{w_{y_i}^Ta_i^m+b_{y_i}}}{\sum_{j=1}^Ce^{w_{j}^Ta_i^m+b_{j}}}),
\]

当我们令\(M\)趋于无穷大的时候,

\[\mathcal{L}_{M}(M, b, \Theta) = \frac{1}{N}\sum_{i=1}^N\mathbb{E}_{a_i}- \log (\frac{e^{w_{y_i}^Ta_i+b_{y_i}}}{\sum_{j=1}^Ce^{w_{j}^Ta_i+b_{j}}}).
\]

这个式子没有显示解, 故作者退而求其次, 最小化其上界.

这个证明不难, 这里就练习一下

\[\mathbb{E}[e^{tX}]=e^{t\mu + \frac{1}{2}\sigma^2t^2}, \quad X \sim \mathcal{N}(\mu, \sigma^2).
\]

既然

\[\mathbb{E}[e^{tX}] = e^{\frac{(t\sigma^2+\mu)^2-\mu^2}{2\sigma^2}}.
\]

代码

原文代码

Regularizing Deep Networks with Semantic Data Augmentation的更多相关文章

  1. 【论文考古】联邦学习开山之作 Communication-Efficient Learning of Deep Networks from Decentralized Data

    B. McMahan, E. Moore, D. Ramage, S. Hampson, and B. A. y Arcas, "Communication-Efficient Learni ...

  2. Communication-Efficient Learning of Deep Networks from Decentralized Data

    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! Proceedings of the 20th International Conference on Artificial Intell ...

  3. 论文解读(GraphDA)《Data Augmentation for Deep Graph Learning: A Survey》

    论文信息 论文标题:Data Augmentation for Deep Graph Learning: A Survey论文作者:Kaize Ding, Zhe Xu, Hanghang Tong, ...

  4. paper 147:Deep Learning -- Face Data Augmentation(一)

    1. 在深度学习中,当数据量不够大时候,常常采用下面4中方法:  (1)人工增加训练集的大小. 通过平移, 翻转, 加噪声等方法从已有数据中创造出一批"新"的数据.也就是Data ...

  5. Fully Convolutional Networks for Semantic Segmentation 译文

    Fully Convolutional Networks for Semantic Segmentation 译文 Abstract   Convolutional networks are powe ...

  6. Deep Learning 8_深度学习UFLDL教程:Stacked Autocoders and Implement deep networks for digit classification_Exercise(斯坦福大学深度学习教程)

    前言 1.理论知识:UFLDL教程.Deep learning:十六(deep networks) 2.实验环境:win7, matlab2015b,16G内存,2T硬盘 3.实验内容:Exercis ...

  7. 论文笔记:Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks

    Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks ICML 2017 Paper:https://arxiv.org/ ...

  8. 【DeepLearning】Exercise: Implement deep networks for digit classification

    Exercise: Implement deep networks for digit classification 习题链接:Exercise: Implement deep networks fo ...

  9. 深度学习材料:从感知机到深度网络A Deep Learning Tutorial: From Perceptrons to Deep Networks

    In recent years, there’s been a resurgence in the field of Artificial Intelligence. It’s spread beyo ...

随机推荐

  1. 大数据学习day26----hive01----1hive的简介 2 hive的安装(hive的两种连接方式,后台启动,标准输出,错误输出)3. 数据库的基本操作 4. 建表(内部表和外部表的创建以及应用场景,数据导入,学生、分数sql练习)5.分区表 6加载数据的方式

    1. hive的简介(具体见文档) Hive是分析处理结构化数据的工具   本质:将hive sql转化成MapReduce程序或者spark程序 Hive处理的数据一般存储在HDFS上,其分析数据底 ...

  2. 【Reverse】每日必逆0x01

    附件:https://files.buuoj.cn/files/7458c5c0ce999ac491df13cf7a7ed9f1/SimpleRev 题解 查壳 64位ELF文件,无壳 IDApro处 ...

  3. stlink 无法再keil中识别 按下复位键可以识别

    最近遇到一个很是头痛的问题 本来板子是好好的,就是从公司带回的家里 然后再次用stlink烧写程序的时候就出现了问题: 但是查看电脑端,上面是有stlink的 也就是电脑是好的, 我立刻又试了一下家中 ...

  4. Android Handler 消息机制原理解析

    前言 做过 Android 开发的童鞋都知道,不能在非主线程修改 UI 控件,因为 Android 规定只能在主线程中访问 UI ,如果在子线程中访问 UI ,那么程序就会抛出异常 android.v ...

  5. winXP 下安装python3.3.2

    1. 安装python-3.3.2 2. 安装setuptools 下载解压后,进入路径 python setup.py install 3.安装pip 下载解压后,进入路径 python setup ...

  6. mysql explain using filesort

    创建表,字段tid上无索引(mysql 5.7) CREATE TABLE `test` ( `tid` int(11) DEFAULT NULL, `tname` varchar(12) DEFAU ...

  7. LR中的快捷建

    Ctrl+F  弹出搜索对话框 CTRL+F8  弹出view tree 界面 (寻找关联) 觉得不错的可关注微信公众号在手机上观看,让你用手机边玩边看

  8. JDBC(1):JDBC介绍

    一,JDBC介绍 SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范(接口),称之为JDBC.这套接口由数据库厂商去实现,这样,开发人员只需要学习jdbc接口,并通过jdbc加 ...

  9. .net 5 开发跨平台客户端程序

    介绍下.net 跨平台开发服务端程序的过程, .net 5发布已经有段时间了,.net 5根据微软官方的说法将来只有一个.net版本,也就是不在有core之分.从.net5开始整合.net frame ...

  10. DT10功能介绍--DT10多波示波器

    功能介绍 有些嵌入式软件方面的问题,利用传统的调试器可能无法解决,而通过逻辑分析器则能有效地解决.请仔细阅读本文, 看我们如何一步一步地讲解在这种情况下所需的配置. 但是,从传统意义上讲,逻辑分析器是 ...