您的位置:首页 > 其它

CNN不同领域的共性 & 1X1卷积核

2017-08-08 22:45 162 查看
CNN最成功的应用是在CV领域,现阶段也广泛应用于NLP和Speech领域。
1)在这个看似不相关的领域,其相似性在哪里?CNN通过什么手段抓住了其中的共性?
CNN就是一个超级N-Gram,而N-Gram就是考虑局部统计信息的语言模型。
CNN应用的条件一般是要求卷积对象有局部相关性,而文本是符合这个条件的。卷积的过程实际上是一种模式匹配的过程,在CV的人脸识别中一个卷积核匹配的可能是眼镜或者鼻子等局部部位,而对于NLP的文本分类任务,一个卷积核匹配的则是特定的关键词或关键短语。后面提取出来的特征实际上就是表示句子中是否出现过这样的关键词或者关键短语,相当于低维空间的词袋模型,这样的特征信息对文本分类任务自然是非常有用的。





 
CNN的核心是来提取localrepeating
feature,只要数据存在这种local repeating feature,CNN就可以用。语言中存在这种repeating
feature了,语言和图像的唯一区别就是,语言是1D的,但是图像是2D的,假定kerneldize是2,对1D的东西,只有2个数据点,但是2D的情况下,就有4个,所以整体来说,CNN对图片这种2D的数据表现更好一些,可能这也是CNN在图像上首先获得突破的原因。

2)CNN的卷积核大小如果是1,此时卷积有什么作用?
1X1卷积核就是对输入的一个比例缩放,因为1X1卷积核只有一个参数,这个核在输入上滑动,就相当于给输入数据乘以一个系数。
1×1的卷积大概有两个方面的作用吧:
1. 实现跨通道的交互和信息整合
2. 进行卷积核通道数的降维和升维,即改变通道数。原图像 3*64*64的rgb,通过5个1X1卷积核就变成了5*64*64.用5个卷积核代替了原来RGB三通道的表示方法。这通常用在网络比较靠后的位置,大概是为了学习高层特征的表达吧。

1.在NIN的结构中,论文的想法是利用MLP代替传统的线性卷积核,从而提高网络的表达能力。文中同时利用了跨通道pooling的角度解释,认为文中提出的MLP其实等价于在传统卷积核后面接cccp层,从而实现多个feature
map的线性组合,实现跨通道的信息整合。而cccp层是等价于1×1卷积的,因此NIN的caffe实现,就是在每个传统卷积层后面接了两个cccp层(其实就是接了两个1×1的卷积层)。
2. 进行降维和升维是在GoogLeNet里。对于每一个Inception模块(如下图),原始模块是左图,右图中是加入了1×1卷积进行降维的。虽然左图的卷积核都比较小,但是当输入和输出的通道数很大时,乘起来也会使得卷积核参数变的很大,而右图加入1×1卷积后可以降低输入的通道数,卷积核参数、运算复杂度也就跟着降下来了。 http://blog.csdn.net/u011534057/article/details/53408682
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: