社会焦点

深度 | 理解深度学习中的卷积(2)

字号+ 作者: 来源: 2017-03-29

卷积神经网络就是干这个的。不同于刚才使用固定数字的卷积核,我们赋予参数给这些核,参数将在数据上得到训练。随着卷积神经网络的训练,这些卷积核为了得到有用信息,在图像或 feature map 上的过滤工作会变得越来

卷积神经网络就是干这个的。不同于刚才使用固定数字的卷积核,我们赋予参数给这些核,参数将在数据上得到训练。随着卷积神经网络的训练,这些卷积核为了得到有用信息,在图像或 feature map 上的过滤工作会变得越来越好。这个过程是自动的,称作特征学习。特征学习自动适配新的任务:我们只需在新数据上训练一下自动找出新的过滤器就行了。这是卷积神经网络如此强大的原因——不需要繁重的特征工程了!

通常卷积神经网络并不学习单一的核,而是同时学习多层级的多个核。比如一个 32x16x16 的核用到 256×256 的图像上去会产生 32 个 241×241(latex.png)的 feature map。所以自动地得到了 32 个有用的新特征。这些特征可以作为下个核的输入。一旦学习到了多级特征,我们简单地将它们传给一个全连接的简单的神经网络,由它完成分类。这就是在概念上理解卷积神经网络所需的全部知识了(池化也是个重要的主题,但还是在另一篇博客中讲吧)。

第二部分:高级概念

我们现在对卷积有了一个良好的初步认识,也知道了卷积神经网络在干什么、为什么它如此强大。现在让我们深入了解一下卷积运算中到底发生了什么。我们将认识到刚才对卷积的讲解是粗浅的,并且这里有更优雅的解释。通过深入理解,我们可以理解卷积的本质并将其应用到许多不同的数据上去。万事开头难,第一步是理解卷积原理。

卷积定理

要理解卷积,不得不提 convolution theorem,它将时域和空域上的复杂卷积对应到了频域中的元素间简单的乘积。这个定理非常强大,在许多科学领域中得到了广泛应用。卷积定理也是快速傅里叶变换算法被称为 20 世纪最重要的算法之一的一个原因。

  

深度 | 理解深度学习中的卷积

第一个等式是一维连续域上两个连续函数的卷积;第二个等式是二维离散域(图像)上的卷积。这里指的是卷积,指的是傅里叶变换,表示傅里叶逆变换,是一个正规化常量。这里的「离散」指的是数据由有限个变量构成(像素);一维指的是数据是一维的(时间),图像则是二维的,视频则是三维的。

为了更好地理解卷积定理,我们还需要理解数字图像处理中的傅里叶变换。

快速傅里叶变换

快速傅里叶变换是一种将时域和空域中的数据转换到频域上去的算法。傅里叶变换用一些正弦和余弦波的和来表示原函数。必须注意的是,傅里叶变换一般涉及到复数,也就是说一个实数被变换为一个具有实部和虚部的复数。通常虚部只在一部分领域有用,比如将频域变换回到时域和空域上;而在这篇博客里会被忽略掉。你可以在下面看到一个信号(一个以时间为参数的有周期的函数通常称为信号)是如何被傅里叶变换的:

  

深度 | 理解深度学习中的卷积

红色是时域,蓝色为频域

你也许会说从没见过这些东西,但我敢肯定你在生活中是见过的:如果红色是一首音乐的话,那么蓝色值就是你在你的 MP3 播放器屏幕上看到的频谱:

  

深度 | 理解深度学习中的卷积

傅里叶域上的图像

  

深度 | 理解深度学习中的卷积

我们如何想象图片的频率呢?想象一张只有两种模式的纸片,现在把纸片竖起来顺着线条的方向看过去,就会看到一个一个的亮点。这些以一定间隔分割黑白部分的波就代表着频率。在频域中,低频率更接近中央而高频率更接近边缘。频域中高强度(亮度、白色)的位置代表着原始图像亮度改变的方向。这一点在接下来这张图与其对数傅里叶变换(对傅里叶变换的实部取对数,这样可以减小像素亮度的差别,便于观察更广的亮度区域)中特别明显:

  

深度 | 理解深度学习中的卷积

我们马上就可以发现傅里叶变换包含了关于物体朝向的信息。如果物体被旋转了一个角度,从图像像素上可能很难判断,但从频域上可以很明显地看出来。

这是个很重要的启发,基于傅里叶定理,我们知道卷积神经网络在频域上检测图像并且捕捉到了物体的方向信息。于是卷积神经网络就比传统算法更擅长处理旋转后的图像(虽然还是比不上人类)。

频率过滤与卷积

为什么卷积经常被描述为过滤,为什么卷积核经常被称为过滤器呢?通过下一个例子可以解释:

  

深度 | 理解深度学习中的卷积

如果我们对图像执行傅里叶变换,并且乘以一个圆形(背景填充黑色,也就是 0),我们可以过滤掉所有的高频值(它们会成为 0,因为填充是 0)。注意过滤后的图像依然有条纹模式,但图像质量下降了很多——这就是 jpeg 压缩算法的工作原理(虽然有些不同但用了类似的变换),我们变换图形,然后只保留部分频率,最后将其逆变换为二维图片;压缩率就是黑色背景与圆圈的比率。

我们现在将圆圈想象为一个卷积核,然后就有了完整的卷积过程——就像在卷积神经网络中看到的那样。要稳定快速地执行傅里叶变换还需要许多技巧,但这就是基本理念了。

现在我们已经理解了卷积定理和傅里叶变换,我们可以将这些理念应用到其他科学领域,以加强我们对深度学习中的卷积的理解。

流体力学的启发

流体力学为空气和水创建了大量的微分方程模型,傅里叶变换不但简化了卷积,也简化了微分,或者说任何利用了微分方程的领域。有时候得到解析解的唯一方法就是对微分方程左右同时执行傅里叶变换。在这个过程中,我们常常将解写成两个函数卷积的形式,以得到更简单的表达。这是在一个维度上的应用,还有在两个维度上的应用,比如天文学。

扩散

你可以混合两种液体(牛奶和咖啡),只要施加一个外力(汤勺搅拌)——这被称为对流,而且是个很快的过程。你也可以耐心等待两种液体自然混合——这被称为扩散,通常是很慢的过程。

想象一下,一个鱼缸被一块板子隔开,两边各有不同浓度的盐水。抽掉板子后,两边的盐水会逐步混合为同一个浓度。浓度差越大,这个过程越剧烈。

转载请注明出处。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 案例 | 抑郁症、精神分裂,初中生家境优渥,父母为何不让吃药

    案例 | 抑郁症、精神分裂,初中生家境优渥,父母为何不让吃药

  • 实录 |12名女大学生被侵犯,色魔竟然是个老乞丐

    实录 |12名女大学生被侵犯,色魔竟然是个老乞丐

  • 地震最新消息 今天泰安发生2.9级地震 深度7千米 地震来了怎么办

    地震最新消息 今天泰安发生2.9级地震 深度7千米 地震来了怎么办

  • 地震最新消息 今天新疆阿克陶县发生3.4级地震 震源深度9千米

    地震最新消息 今天新疆阿克陶县发生3.4级地震 震源深度9千米