论文笔记 Spatial contrasting for deep unsupervised learning
在我们设计无监督学习模型时,应尽量做到
- 网络结构与有监督模型兼容
- 有效利用有监督模型的基本模块,如dropout、relu等
无监督学习的目标是为有监督模型提供初始化的参数,理想情况是“这些初始化的参数能够极大提高后续有监督模型准确率,即使有监督任务的训练样本数很少”。类别理解就是,我们在Imagenet上通过有监督的方式训练得到了表达能力很强的网络,在我们迁移至新的任务时(该任务带有训练标签的样本有限),我们一般固定在Imagenet上训练好模型的前N层(N可以根据实际需要调整),然后微调剩余的层。无监督学习的目的,简单理解就是“即使不用label,我也能学到表达能力很强,甚至更好的网络”,然后我们可以根据具体任务微调网络。
作者在文中指出“It is empirically observed that deeper layers tend to contain more abstract information from the image. Intuitively, features describing different regions within the same image are likely to be semantically similar and indeed the corresponding deep representations tend to be similar. Conversely, regions from two probably unrelated images tend to be far from each other in the deep representations”。
简单理解就是“一幅图像内一个区域的deep representations应该尽可能与另一个区域的deep representations相似,与不相关图像区域的deep representations尽可能相异”。
下图图示了以上含义(请仔细理解一下loss函数的语义,是不是就是上述的“简单理解”呢?):

为了能够应用有监督深度学习标准训练流程(SGD, Batch),作者对上图目标函数进行了一些处理。核心就是Batch内每一幅图片取两个区域,所有这些区域两两进行对比,得到:

这样就能够采取标准的有监督深度学习训练流程进行训练了。此外有监督深度学习的任何模块,该框架都可以无缝的引入。
我们可以通过下面这个流程图更加对流程有一个更加“程序化”认识(也即,可以用代码实现上述流程)

总结:这种做法可以概括为“基于patch的无监督范式”,这篇文章的思路很简单,也给了我很大启发(也即,将需要在整个数据集上进行的两两对比简化到Batch内的两两对比)。论文中的实验结果很好(但github上有一位网友,难以复现论文的结果)。
论文笔记 Spatial contrasting for deep unsupervised learning的更多相关文章
- 【论文笔记】多任务学习(Multi-Task Learning)
1. 前言 多任务学习(Multi-task learning)是和单任务学习(single-task learning)相对的一种机器学习方法.在机器学习领域,标准的算法理论是一次学习一个任务,也就 ...
- 【论文笔记】DeepOrigin: End-to-End Deep Learning for Detection of New Malware Families
DeepOrigin: End-to-End Deep Learning for Detection of New Malware Families 标签(空格分隔): 论文 论文基本信息 会议: I ...
- 【转载】论文笔记系列-Tree-CNN: A Deep Convolutional Neural Network for Lifelong Learning
一. 引出主题¶ 深度学习领域一直存在一个比较严重的问题——“灾难性遗忘”,即一旦使用新的数据集去训练已有的模型,该模型将会失去对原数据集识别的能力.为解决这一问题,本文提出了树卷积神经网络,通过先将 ...
- 论文笔记之:Continuous Deep Q-Learning with Model-based Acceleration
Continuous Deep Q-Learning with Model-based Acceleration 本文提出了连续动作空间的深度强化学习算法. 开始正文之前,首先要弄清楚两个概念:Mod ...
- 论文笔记 — MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching
论文:https://github.com/ei1994/my_reference_library/tree/master/papers 本文的贡献点如下: 1. 提出了一个新的利用深度网络架构基于p ...
- (论文笔记Arxiv2021)Walk in the Cloud: Learning Curves for Point Clouds Shape Analysis
目录 摘要 1.引言 2.相关工作 3.方法 3.1局部特征聚合的再思考 3.2 曲线分组 3.3 曲线聚合和CurveNet 4.实验 4.1 应用细节 4.2 基准 4.3 消融研究 5.总结 W ...
- 论文笔记:(ICML2020)On Learning Sets of Symmetric Elements
目录 摘要 一.引言 二.先前的工作 三.基础 3.1 符号和基本定义 3.2 G-不变网络 3.3 描述等变层 3.4 Deep sets 四.DSS层 4.1 对称元素集合 4.2 等变层的表征 ...
- 论文笔记之:DeepCAMP: Deep Convolutional Action & Attribute Mid-Level Patterns
DeepCAMP: Deep Convolutional Action & Attribute Mid-Level Patterns CVPR 2016 本文提出一种 分割图像 patch 的 ...
- 论文笔记之:Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation
Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation xx
随机推荐
- Elasticsearch搜索之explain评分分析
Lucene的IndexSearcher提供一个explain方法,能够解释Document的Score是怎么得来的,具体每一部分的得分都可以详细地打印出来.这里用一个中文实例来纯手工验算一遍Luce ...
- 基于jquery 的分页插件,前端实现假分页效果
上次分享了一款jquery插件,现在依旧分享这个插件,不过上一次分享主要是用于regular框件,且每一页数据都是从后端获取过来的,这一次的分享主要是讲一次性获取完数据 然后手动进行分页.此需求基本上 ...
- Google Chrome 默认非安全端口列表
1, // tcpmux7, // echo 9, // discard 11, // systat 13, // daytime 15, // netstat 17, // qotd 19, // ...
- 【Android N_启示录】
[啰嗦~]自从接触Android以来,大概也有3年时间,基本是跟着项目走,做过的东西不算多也不算少,从当初做上层应用到系统级应用,再到Framework,以及后来接触功耗.性能优化等需求.给我的感觉就 ...
- 详解 Node + Redux + MongoDB 实现 Todolist
前言 为什么要使用 Redux? 组件化的开发思想解放了繁琐低效的 DOM 操作,以 React 来说,一切皆为状态,通过状态可以控制视图的变化,然后随着应用项目的规模的不断扩大和应用功能的不断丰富, ...
- Android Weekly Notes Issue #254
Android Weekly Issue #254 April 23rd, 2017 Android Weekly Issue #254 本期内容包括: 如何用Kotlin写一个Gradle Plug ...
- 如何解决 chrome 58 版本更新导致的 fiddler https 抓包不可用问题
注意!如果该方法不生效,请先卸载原有 fiddler 后再进行新版本 fiddler 安装步骤即可. chrome 于(上周?上上周?)推送了chrome 58 版本的更新,这次更新中直接去掉了证书未 ...
- CAShapeLayer+CADisplayLink 波浪动画
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #1e9421 } p.p2 { margin: 0.0px 0. ...
- Xcode旧项目引入CocoaPod遇到的问题与解决
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...
- Linux图形界面与字符界面切换
1. 启动时进入字符界面,后来想切换到图形界面:使用startx 或 init 5 (注:startx只是在原有运行级别3上加了图形界面,运行级别没变,而init 5 则是切换到运行级别5,所以要重新 ...