深度学习的hand-crafted和end-to-end的一些概念和区别

1 基本概念

hand-crafted: 传统手工方法就是人工设计的一步步能够说出理由来的方法。

end-to-end: 即端到端方法,意思是只有输入端和输出端,当中不需要设计和具体算法,就是一个神经网络。输入原始数据,输出结果即可。神经网络方法就是所谓end-to-end的

2 缘由:特征提取的区别

特征提取是CV领域核心问题之一(之二自然是分类问题,没有之三),特征提取从思路上有两大类:一类是手动设计(hand-crafted)的方式,一类是纯学习的方式,这两种方式都是在某些生物神经理论的基础下进行的, 不同之处是hand-crafted的方式设计的是特征本身,而纯学习的方式设计的是特征提取的框架结构。换种方式来说,就好比是hand-crafted特征是模仿我们所知的人类视觉的流程得到特征,而纯学习的方式重点是学习这个流程本身。这里都是针对无监督(unsupervised)的特征,也就是在没有label的情况下,直接从数据中学习特征,如果是结合label的特征学习就是监督学习了(supervised)。

hand-crafted特征:

顾名思义人为设计的特征,即直接设计特征本身,根据仿照人类视觉的特点对什么样的特征敏感,什么样的特征不敏感提取图像中有区分能力的特征,因此提取出来的特征每一维往往都有具体的物理含义。目前最牛X的hand crafted 的特征常见的有反应纹理特点的方向梯度类特征sift,surf,hog等,反应轮廓形状的shape context等,它们都是经过了很长的时间对人眼敏感信息的特点设计出来的,如果把所需学习的目标换成视频,则也同样需要把这些算法扩展到3D,比如HOG3D,3Dsurf。这些基本属于底层视觉特征,理论依据一般是V1区视觉特性。

其不足之处在于:

  • 需要根据数据的特点精心设计,虽然是在众多的视觉神经理论依据下,但是难免有人为的想当然的成分。
  • 往往依赖于数据库,也就是说设计的特征只对某些数据库表现好,而对其它的数据库效果并不能保证就好。或者当把数据来源发生变化,比如对RGB数据设计的特征换成Kinect深度图像,这些特征点就不一定适应了,因此又得重新设计。
  • 提取过程所花时间很长,不利用大数据特征的提取(貌似不一定对)。

纯学习方式的特征:

设计的是特征提取的规则,一般就是一个model,如神经网络,人为设计的部分是model的结构以及学习的规则,至于model的参数则需要通过学习得到,通过训练得到一个具体的model,而特征则需要通过这个model去对具体的图像或视频提取,因此得到的特征往往无法解释具体每一维的物理含义。构建人的思考过程,这是神经网络理论提出的初衷。神经网络方法在沉默了若干年后,在坚持如一,锲而不舍的大牛Hinton的引领下进入了一个全面开花的阶段,deep learning, Deep belief nets被研究的如火如荼。deep learning框架就是模拟人脑的大脑皮层工作(生物神经理论上的支持),因为大脑皮层的视觉区域也是分层次工作的,越底层的视觉皮层对那些底层特征就越敏感,Feature learning就是以deep learning框架下学习图像或视频的特征,系统的输入为raw data,你只要设计好model的框架,通过训练得到model的参数,至于特征学习出来是什么样子,完全交给机器。

3 分类步骤

Handcrafted action representations:

它首先从空间显著性和动作运动(时间)中提取局部统计数据,然后将这些局部统计数据组合成视频级的表示,并反馈给判别性分类器(如 支持向量机(SVM))完成分类识别。

End-to-End / Learning-based action representations:

手工制作的动作特征之上进行操作,或者建立从像素级别到动作类别的端到端动作识别框架。我们只要管输入数据的结构,即系统的输入为raw data,只要设计好model的框架,通过训练得到model的参数,至于特征学习出来是什么样子,完全交给机器。

4 小结

图像像素数太多,数据维度高,会产生维度灾难,所以原来一个思路是手工提取图像的一些关键特征,这实际就是就一个降维的过程。

那么问题来了,特征怎么提,这是分类识别的关键:

特征提取的好坏异常关键,甚至比学习算法还重要,举个例子,对一系列人的数据分类,分类结果是性别,如果你提取的特征是头发的颜色,无论分类算法如何,分类效果都不会好,如果你提取的特征是头发的长短,这个特征就会好很多,但是还是会有错误,如果你提取了一个超强特征,比如染色体的数据,那你的分类基本就不会错了。

这就意味着,特征需要足够的经验去设计,这在数据量越来越大的情况下也越来越困难。

于是就出现了端到端网络,特征可以自己去学习,所以特征提取这一步也就融入到算法当中,不需要人来干预了。简单来说就是深度神经网络处理问题不需要像传统模型那样,如同生产线般一步步去处理输入数据直至输出最后的结果(其中每一步处理过程都是经过人为考量设定好的 (“hand-crafted” function))。

  • 12
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值