Connect with us

AI 入门 101

什么是 CNNs(卷积神经网络)?

mm

也许你曾经想知道 Facebook 或 Instagram 如何能够自动识别图像中的面部,或者 Google 如何让你通过上传自己的照片在网上搜索类似的照片。这些功能是计算机视觉的例子,它们是由 卷积神经网络 (CNNs) 提供的。那么,什么是卷积神经网络?让我们深入了解 CNN 的架构,并了解它们的工作原理。

什么是神经网络?

在我们开始讨论卷积神经网络之前,让我们先定义一下普通的神经网络。关于神经网络的主题有 另一篇文章 可供参考,所以我们这里不会对其进行过多的介绍。然而,为了简要地定义它们,神经网络是受人类大脑启发的计算模型。神经网络通过调整“权重”来操作数据,这些权重是关于输入特征之间以及对象类别之间的关系的假设。随着网络的训练,权重的值会被调整,希望它们能够收敛到能够准确捕捉特征之间关系的权重。
这就是前馈神经网络的工作原理,而 CNN 由两个部分组成:一个前馈神经网络和一组卷积层。

什么是卷积神经网络 (CNNs)?

卷积神经网络中的“卷积”是什么?卷积是一种数学运算,创建一组权重,基本上是创建图像部分的表示。这种权重集被称为 核或滤波器。创建的滤波器比整个输入图像小,仅覆盖图像的一个子部分。滤波器中的值与图像中的值相乘。然后,滤波器被移动以形成图像新部分的表示,这个过程被重复,直到整个图像被覆盖。
另一种思考方式是想象一个砖墙,砖代表输入图像中的像素。一个“窗口”被滑动在墙上,这就是滤波器。通过窗口可见的砖就是像素,其值被滤波器中的值乘以。因此,这种使用滤波器创建权重的方法通常被称为“滑动窗口”技术。
滤波器在整个输入图像上移动的输出是一个二维数组,表示整个图像。这个数组被称为“特征图”。

为什么卷积是必需的

为什么要创建卷积?卷积是必要的,因为神经网络必须能够将图像中的像素解释为数字值。卷积层的功能是将图像转换为神经网络可以解释的数字值,然后从中提取相关模式。卷积网络中的滤波器的作用是创建一个二维数组的值,可以传递到神经网络的后续层,这些层将学习图像中的模式。
滤波器和通道

Photo: cecebur via Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Convolutional_Neural_Network_NeuralNetworkFeatureLayers.gif)


博客作者和程序员,专攻 Machine Learning Deep Learning 领域。Daniel 希望帮助他人利用 AI 的力量为社会做好事。