您的位置:首页 > 其它

CNN的超参数 & 宽卷积和窄卷积的理解及tensorflow中的实现

2017-01-01 10:17 513 查看
窄卷积 vs 宽卷积

在上文中解释卷积运算的时候,我忽略了如何使用滤波器的一个小细节。在矩阵的中部使用3x3的滤波器没有问题,在矩阵的边缘该怎么办呢?左上角的元素没有顶部和左侧相邻的元素,该如何滤波呢?解决的办法是采用补零法(zero-padding)。所有落在矩阵范围之外的元素值都默认为0。这样就可以对输入矩阵的每一个元素做滤波了,输出一个同样大小或是更大的矩阵。补零法又被称为是宽卷积,不使用补零的方法则被称为窄卷积。1D的例子如图所示:



当滤波器长度相对输入向量的长度较大时,你会发现宽卷积很有用,或者说很有必要

所以,在NLP中,如果滤波器的长度相对于输入向量的长度比较大

,要记住使用宽卷积。在上图中,窄卷积输出的长度是 (7-5)+1=3,宽卷积输出的长度是(7+2*4-5)+1=11。

一般形式为:

      


在tensorflow的实现中,conv2d的padding=‘SAME',默认的就是宽卷积的方式,会进行补零。padding = ’VALID'就是窄卷积的方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐