论文笔记《Deep Hand: How to Train a CNN on 1 Million Hand Images When Your Data Is Continuous and Weakly Labelled》
一、概述
这个是最近的核心工作了,基本上都是靠着这篇paper的model过日子了啊..
论文主要讲的是hand gesture recognition,实际上是用googlenet做的一个classification的工作,他的工作也就是在googlenet上做了fine-tuning,那么论文的关键是什么呢...当然就是标题啦..关键工作是CNN+EM,通过EM算法对隐变量参数进行预测,用CNN代替stepE的高斯模型的预测,这样迭代下来,最终训练了在这个值标记了3000张但是有1 Million的数据集上训练了一个CNN模型。
二、state-of-the-Art
最牛逼的地方在于解决了对大量continuous且weakly labeled的数据的处理,这个在其他地方也会有很好的应用,所以得了CVPR 2016的oral啊..
1. 首次在CNN上用weakly labelled data sets 来训练
2.第一次使用posture and pose-independent hand shape classification,也就是当你的pose(手势)固定以后,把它作为一个符号,即使你旋转或者翻转,只要作为刚体的pose不变,那么就是一类的,这个在手语识别和一些其他地方还是有不错的用处的。
3.其他都是在自吹自擂..
三、weakly supervised CNN training
对他的算法进行了说明,对于一个视频序列而言,首先提取手部画面,然后他对每个image有一个标记,其中识别不出来的术语garbage class,然后通过CNN+Em来迭代计算,这里就是之前说的,用CNN来预测类别来代替传统EM中用Guassian mixtures做概率预测,每次迭代的时候,都会有个新的预测,有时候可能会改变之前的label。然后关键也是每个类别之间的boundaries的改变。
然后这里有一句对整体算法最好的一个概括:we solve the problem in an iterative fashion withthe EM algorithm in a HMM setting and use the CNN for modelling p(k|x).
四、一堆废话以及没搞懂的HMM在其中的应用。
有时间要去彻底弄懂HMM。
五、整体流程
1、数据准备
在数据集上跑我之前的一篇dp跟踪手的程序,得到手部画面的数据集。
2、建立字典
个人理解是不同的数据集的表示不同。这里是把他们统一起来,可能有问题。
3、初始化算法
随机的对整个视频序列进行label,并且认为每个video的开始和结束时garbage class
4.隐马尔科夫模型的设置
这里它是基于一个RASR的开源软件,具体不是很清楚
5、CNN训练
CNN训练的一些tricks
六、拓展-手语识别
这里话是前面工作的衍生了,首先把最后fc变回了1024层,整个CNN作为了一个feature提取的工具,然后通过PCA降维到200,具体的实现方法他也是参考的另一篇paper,以后要是用到这里可以去看一下。
七、总结
总的来说两点是state of art 的:1、用CNN+EM的方法对大量连续弱标记数据的处理
2、在手势识别的时候是pose-independt的。
论文笔记《Deep Hand: How to Train a CNN on 1 Million Hand Images When Your Data Is Continuous and Weakly Labelled》的更多相关文章
- 《Vision Permutator: A Permutable MLP-Like ArchItecture For Visual Recognition》论文笔记
论文题目:<Vision Permutator: A Permutable MLP-Like ArchItecture For Visual Recognition> 论文作者:Qibin ...
- [place recognition]NetVLAD: CNN architecture for weakly supervised place recognition 论文翻译及解析(转)
https://blog.csdn.net/qq_32417287/article/details/80102466 abstract introduction method overview Dee ...
- 论文笔记系列-Auto-DeepLab:Hierarchical Neural Architecture Search for Semantic Image Segmentation
Pytorch实现代码:https://github.com/MenghaoGuo/AutoDeeplab 创新点 cell-level and network-level search 以往的NAS ...
- 论文笔记——Rethinking the Inception Architecture for Computer Vision
1. 论文思想 factorized convolutions and aggressive regularization. 本文给出了一些网络设计的技巧. 2. 结果 用5G的计算量和25M的参数. ...
- 论文笔记:Fast Neural Architecture Search of Compact Semantic Segmentation Models via Auxiliary Cells
Fast Neural Architecture Search of Compact Semantic Segmentation Models via Auxiliary Cells 2019-04- ...
- 论文笔记:ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware
ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware 2019-03-19 16:13:18 Pape ...
- 论文笔记:DARTS: Differentiable Architecture Search
DARTS: Differentiable Architecture Search 2019-03-19 10:04:26accepted by ICLR 2019 Paper:https://arx ...
- 论文笔记:Progressive Neural Architecture Search
Progressive Neural Architecture Search 2019-03-18 20:28:13 Paper:http://openaccess.thecvf.com/conten ...
- 论文笔记:Auto-DeepLab: Hierarchical Neural Architecture Search for Semantic Image Segmentation
Auto-DeepLab: Hierarchical Neural Architecture Search for Semantic Image Segmentation2019-03-18 14:4 ...
- 论文笔记系列-DARTS: Differentiable Architecture Search
Summary 我的理解就是原本节点和节点之间操作是离散的,因为就是从若干个操作中选择某一个,而作者试图使用softmax和relaxation(松弛化)将操作连续化,所以模型结构搜索的任务就转变成了 ...
随机推荐
- Mysql语句 AND 和 OR 的运用
数据记录 查询方式1 -- 查询info=1或者info=2同时bookname=java的数据 AND bookname='java'; 查询方式2 -- 查询info=3同时bookname=ja ...
- hadoop-2.0.0-cdh4.1.2升级到hadoop-2.7.2
升级前准备: 如果是 centos6.x的系统得升级glibc和pam包 在/etc/ld.so.conf 文件里添加 /usr/src/jdk1.6.0_23/jre/lib/amd64/serve ...
- input标签中的name
<input>标签是java web的jsp页面中最常用的标签,特别是用来在页面和servlet中传递内容, 但是我们看到<input>标签中有很多内容,这边我们只提一下主要的 ...
- java的有用基础知识(2013-05-02-bd 写的日志迁移
JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库.是java开发工具包 jre是java的运行环境(如果不做开发就不用安装jdk单独安装jre就可以运行java程序 ...
- 特殊sql查询方法实例
一.if条件查询:SELECT sum(if(is_buy > 0 ,1,0)) AS friend_count_all_cj, sum(if(is_buy = 0 ,1,0)) AS frie ...
- python——“/”运算符和“//”运算符的区别
首先先看单斜杆的用法:举几个例子 >>> print(5/3),type(5/3)1.6666666666666667(None, <class 'float'>) &g ...
- 设置默认以管理员运行的WinForm
右键工程名, 属性; 选择"安全性"; 勾选"启用ClickOnce安全设置"与"这是完全可信的应用程序"; 退出该页面, app.mani ...
- 《数据结构与算法分析:C语言描述》复习——第五章“堆”——二叉堆
2014.06.15 22:14 简介: 堆是一种非常实用的数据结构,其中以二叉堆最为常用.二叉堆可以看作一棵完全二叉树,每个节点的键值都大于(小于)其子节点,但左右孩子之间不需要有序.我们关心的通常 ...
- 图解-Excel的csv格式特殊字符处理方式尝试笔记(个人拙笔)
Excel格式如下.(截图来自,WPS Office) CSV是一种文本格式的Excel文档格式.不支持Excel的字体特效(比如加粗,颜色)等等的保存. 每一行数据用 "\n" ...
- Monkey、Monkeyrunner之间的区别
Monkey.Monkeyrunner之间的区别 一.Monkey Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输 ...