首页 > 解决方案 > 在卷积过程中翻转过滤器背后的直觉是什么?

问题描述

我看到,在使用 Theano 的 conv2d 函数时,过滤器在垂直和水平方向上都翻转了。这是为什么?在卷积神经网络的情况下是否重要?

标签: filterconv-neural-networktheanoconvolution

解决方案


因为这是在数学上定义卷积的方式。没有过滤器的翻转,该操作称为互相关。卷积的优点是它具有更好的数学特性。

然而,在卷积神经网络的上下文中,使用卷积还是互相关并不重要,它们是等价的。这是因为过滤器的权重是在训练期间学习的,即更新它们以最小化成本函数。在使用互相关操作的 CNN 中,学习的过滤器将等于使用卷积操作的 CNN 的翻转学习过滤器(假设两者的训练条件完全相同,即相同的初始化、输入、时期数等.)。因此,对于相同的输入,这两个 CNN 的输出将是相同的。

互相关操作更直观,更易于实现(因为不执行翻转),这可能是其他框架(如 Tensorflow 和 Pytorch)使用它而不是实际卷积的原因(尽管他们仍然称其为卷积,可能是由于历史原因或在术语上与使用实际卷积的其他框架保持一致)。


推荐阅读