Paper | Feedback Networks
发表在2017年CVPR。
读后总结
这篇论文旨在说明:反馈学习比单纯的前向学习更有效,并且给出了一些理由,并予以实验证明。本文通过ConvLSTM予以实现,同时考察了课程学习方法对coarse-to-fine分类原理(同时也是反馈学习框架的优势)的应用。
现在看着蛮平庸的。虽然想法很直接,也很容易想到,但本文的实验充分,有理有据,还是不错的。
动机
对于图像分类问题,我们通常采用前向CNN网络。但作者认为我们还可以采取反馈的方式代替前向模式,有以下几点优势:
可以实现提前判决,这在查询时特别有效。
符合标签化的分类原理,从大类到小类(coarse to fine)逐步判断,如图1。
为Curriculum Learning提供了基础。
作者通过ConvLSTM实现了这种思想,其性能超越了前向网络。注意,本文提出的反馈,指的是在隐藏空间中的反馈。这样就不需要针对特定任务,设计误差-输入转换。

故事
反馈是循环因果系统的产物[13] =>
反馈是一种在控制论和物理学中被广泛使用的强大手段[一堆文献]。大脑也是[一堆文献],表明了反馈在视觉中有重要意义 =>
因此,本文就提出了基于反馈的学习方法,相较传统前向方法具有上述优点。
ConvLSTM图像分类网络

本文中,ConvLSTM单元是权值共享的。其中还有红线代表短连接。
注意,ConvLSTM有两个维度:时间t和深度d。具体gate和推导操作见3.1节。核心:中间层状态同时由当前输入和上一层隐藏层状态决定。3.2节介绍了图2中ConvLSTM单元的具体结构。
进一步,作者还通过短连接,将若干时刻前的隐藏层状态与当前输入求和,得到新的输入。这种短连接是有效的,见表1给出的溶解实验结果。
损失函数
方法的精髓在于:作者在每一个时间步都计算一次loss。最终的loss是这些loss的加权组合。这样,我们就避免网络成为一个前向推导网络,而是成为一个具有coarse-to-fine特点的推导网络。更进一步,我们还可以结合课程学习的方法,见下一节。
与Episodic Curriculum Learning的结合
很简单。作者设计了一个动态变化的loss。在训练早期,loss将重点惩罚大类错误,后期再重点惩罚小类错误。就像一个孩子,我们让TA循序渐进地学习,从分大类开始,再到细致分类。
实验方法
并没有对early exit设置判决方法。相反,作者是让网络完整地进行推导,然后看看在每一层的准确率是多少。
作者将反馈网络与前向网络相比,观察到:反馈网络在相同层级上准确率更高。

此外还有一个实验:有一些样本在大类是正确的,但小类是错误的。通过增加网络深度,作者看看网络是否能逐渐得到正确的小类。具体见论文。结论是反馈结构更具有这种能力。
Paper | Feedback Networks的更多相关文章
- Paper | Highway Networks
目录 1. 网络结构 2. 分析 解决的问题:在当时,人们认为 提高深度 是 提高精度 的法宝.但是网络训练也变得很困难.本文旨在解决深度网络训练难的问题,本质是解决梯度问题. 提出的网络:本文提出的 ...
- Paper | Squeeze-and-Excitation Networks
目录 1. 故事 2. SENet 2.1 概况 2.2 具体 3. 实验 本文的贡献点在于:通过显式建模特征注意力机制,达到了很好的效果.这是以往被默认隐式学习的操作.并且注意,此时建模出来的注意力 ...
- CVPR 2017 Paper list
CVPR2017 paper list Machine Learning 1 Spotlight 1-1A Exclusivity-Consistency Regularized Multi-View ...
- Awesome Deep Vision
Awesome Deep Vision A curated list of deep learning resources for computer vision, inspired by awes ...
- Res-Family: From ResNet to SE-ResNeXt
Res-Family: From ResNet to SE-ResNeXt 姚伟峰 http://www.cnblogs.com/Matrix_Yao/ Res-Family: From ResNet ...
- 图像超分辨-DBPN
本文译自2018CVPR DeepBack-Projection Networks For Super-Resolution 代码: github 特点:不同于feedback net,引入back ...
- Awesome Torch
Awesome Torch This blog from: A curated list of awesome Torch tutorials, projects and communities. T ...
- OpAmp Voltage Follower/Regulator
LDO Regulator High accuracy voltage regulator Vout = 2.5V * (1 + ( 5.6 / 6.8 ) ) = 4.55V Recently th ...
- [Paper Reading]--Exploiting Relevance Feedback in Knowledge Graph
<Exploiting Relevance Feedback in Knowledge Graph> Publication: KDD 2015 Authors: Yu Su, Sheng ...
随机推荐
- ssh 免密码登录服务器
本机生成 ssh key ssh-keygen -t rsa -C "your_email@example.com" 上传公钥文件(假设用户为 user,服务器 ip 为 1.2. ...
- java之获取变量的类型
java要获取变量的类型必须自己定义一个函数: public class Test{ public static void main(String[] args) { short a = 1; a + ...
- celery生产者-消费者
Celery是一个简单,灵活,可靠的分布式系统,用于处理大量消息,同时为操作提供维护此类系统所需的工具. 它是一个任务队列,专注于实时处理,同时还支持任务调度. celery解决了什么问题: 示例一: ...
- IT兄弟连 Java语法教程 Java语法基础 经典面试题
1.Java语言中有几种基本类型?分别是什么?请详细说明每种类型的范围以及所占的空间大小? Java语言中有8中基本类型,分别是代表整形的byte.short.int和long,代表浮点型的float ...
- 在windows系统上面部署springboot项目并设置其开机启动
前言 最近的项目需要在客户的服务器上面部署一个项目然后进行测试,服务器的系统是windows server2008的,以前部署的项目都是在linux系统上面居多,就算是在windows系统上面自己玩的 ...
- oracle trunc 日期 数字 的使用例子
/**************日期********************/1.select trunc(sysdate) from dual --2013-01-06 今天的日期为2013-01-0 ...
- 【趣学程序】Linux上安装Tengine(Nginx)
linux 安装tengine tengine是什么 tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳 ...
- Elastic:如何在一个机器上同时模拟多个node
Elastic:如何在一个机器上同时模拟多个node /bin/elasticsearch -E node.name=node1 -E cluster.name=my-application -E p ...
- yolov3和ssd的区别
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/BlowfishKing/article/d ...
- 关于wordpress其他分类页面正常单一分类页面白屏的解决
关于wordpress其他分类页面正常单一分类页面白屏的解决 朋友的一个站,10个分类页面,9个正常,其中一个打开白屏或者500错误 下载 nginx的日志文件查看 收到如下提示: ecv() fai ...