发表在2017年CVPR。

读后总结

这篇论文旨在说明:反馈学习比单纯的前向学习更有效,并且给出了一些理由,并予以实验证明。本文通过ConvLSTM予以实现,同时考察了课程学习方法对coarse-to-fine分类原理(同时也是反馈学习框架的优势)的应用。

现在看着蛮平庸的。虽然想法很直接,也很容易想到,但本文的实验充分,有理有据,还是不错的。

动机

对于图像分类问题,我们通常采用前向CNN网络。但作者认为我们还可以采取反馈的方式代替前向模式,有以下几点优势:

  1. 可以实现提前判决,这在查询时特别有效。

  2. 符合标签化的分类原理,从大类到小类(coarse to fine)逐步判断,如图1。

  3. 为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的更多相关文章

  1. Paper | Highway Networks

    目录 1. 网络结构 2. 分析 解决的问题:在当时,人们认为 提高深度 是 提高精度 的法宝.但是网络训练也变得很困难.本文旨在解决深度网络训练难的问题,本质是解决梯度问题. 提出的网络:本文提出的 ...

  2. Paper | Squeeze-and-Excitation Networks

    目录 1. 故事 2. SENet 2.1 概况 2.2 具体 3. 实验 本文的贡献点在于:通过显式建模特征注意力机制,达到了很好的效果.这是以往被默认隐式学习的操作.并且注意,此时建模出来的注意力 ...

  3. CVPR 2017 Paper list

    CVPR2017 paper list Machine Learning 1 Spotlight 1-1A Exclusivity-Consistency Regularized Multi-View ...

  4. Awesome Deep Vision

    Awesome Deep Vision  A curated list of deep learning resources for computer vision, inspired by awes ...

  5. Res-Family: From ResNet to SE-ResNeXt

    Res-Family: From ResNet to SE-ResNeXt 姚伟峰 http://www.cnblogs.com/Matrix_Yao/ Res-Family: From ResNet ...

  6. 图像超分辨-DBPN

    本文译自2018CVPR DeepBack-Projection Networks For Super-Resolution 代码: github 特点:不同于feedback net,引入back ...

  7. Awesome Torch

    Awesome Torch This blog from: A curated list of awesome Torch tutorials, projects and communities. T ...

  8. OpAmp Voltage Follower/Regulator

    LDO Regulator High accuracy voltage regulator Vout = 2.5V * (1 + ( 5.6 / 6.8 ) ) = 4.55V Recently th ...

  9. [Paper Reading]--Exploiting Relevance Feedback in Knowledge Graph

    <Exploiting Relevance Feedback in Knowledge Graph> Publication: KDD 2015 Authors: Yu Su, Sheng ...

随机推荐

  1. POJ1961Period(kmp+循环节)

    传送门 题目大意:输出字符串所有前缀的循环节个数,下标从1开始,i 和1-i循环节的个数 题解:网上摘得 KMP最小循环节.循环周期: 定理:假设S的长度为len,则S存在最小循环节,循环节的长度L为 ...

  2. Python程序中的进程操作-进程同步(multiprocess.Lock)

    目录 一.多进程抢占输出资源 二.使用锁维护执行顺序 三.多进程同时抢购余票 四.使用锁来保证数据安全 通过刚刚的学习,我们千方百计实现了程序的异步,让多个任务可以同时在几个进程中并发处理,他们之间的 ...

  3. TypeScript + Webpack 4 开发环境搭建(转)

    前段时间接触到 Microsoft 的 Microsoft.AspNetCore.SpaTemplates 模板,生成的项目使用的默认语言是 TypeScript,虽然以前在此之前并没有用过TypeS ...

  4. C语言程序设计100例之(7):级数求和

    例7    级数求和 题目描述 已知: Sn =1+1/2+1/3+…+1/n.显然对于任意一个整数 k,当 n 足够大的时候,Sn>k. 现给出一个整数 k,要求计算出一个最小的 n,使得 S ...

  5. 【MySQL报错】ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

    ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec ...

  6. java自定义equals函数和hashCode函数

    所有类都继承自Object类,他所有的非final方法:equals,hashCode, toString, clone 和 finalize,它们都有通用约定. 我们在覆盖这些方法的时候需要遵循这些 ...

  7. RabbitMQ Node.js 示例

    RabbitQM 处理和管理消息队列的中间人(broker).可简单理解为邮局,你在程序中写好消息,指定好收件人,剩下的事件就是 RabbitMQ 的工作了,它会保证收件人正确收到邮件. 任何发送邮件 ...

  8. wpf 单例模式和异常处理 (原发布 csdn 2017-04-12 20:34:12)

    第一次写博客,如有错误,请大家及时告知,本人立即改之. 如果您有好的想法或者建议,我随时与我联系. 如果发现代码有误导时,请与我联系,我立即改之. 好了不多说,直接贴代码. 一般的错误,使用下面三个就 ...

  9. 30段极简Python代码:这些小技巧你都Get了么

    学 Python 怎样才最快,当然是实战各种小项目,只有自己去想与写,才记得住规则.本文是 30 个极简任务,初学者可以尝试着自己实现:本文同样也是 30 段代码,Python 开发者也可以看看是不是 ...

  10. python数据挖掘之数据探索第一篇

    目录 数据质量分析   当我们得到数据后,接下来就是要考虑样本数据集的数据和质量是否满足建模的要求?是否出现不想要的数据?能不能直接看出一些规律或趋势?每个因素之间的关系是什么?   通过检验数据集的 ...