2020-11-13 12:00

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

#5分钟科普

卷积神经网络的核心当然是卷积。


在 CNN 的卷积层中,存在着一个个填充着数字的正方形小格子,它们被称为卷积核(Kernel)。原始图片经过输入层后会变为灰度或是 RGB 数值填充的矩阵,将卷积核与图片矩阵对齐,对应格子中的数字相乘后再相加,再将得到的数字填入新矩阵,这就是卷积。


卷积核以一定的距离在图像上移动运算,这被称为步长(Stride),得到的新矩阵能反映图像的部分特征,因此被称为特征图(Feature Map)。它们既是这一层的输出,也是下一层的输入。


设定不同的卷积核,我们就能找到各种各样特征。要如何设计它们?


还记得训练吗?对于 CNN 来说,训练就是让网络根据已有的数据和它们的标签,自动确定卷积核中的数字。以拥有 5 个卷积层的 AlexNet 为例,边缘、纹理、组成……以人眼的角度观察,越靠后的卷积层提取出的特征越抽象。


除了卷积层, CNN 还有另外两个重要配件:池化层(Pooling)和全连接层。


池化层能选取图像的主要特征。常用的 Maxpooling 是保留窗口覆盖区域的最大数值,矩阵被池化后,参数会大量减少。


全连接层通常在网络的最后,能将提取到的特征集合在一起,给出图片可能是某种事物的概率。


CNN 非常擅长处理图像,正是它在各类比赛中的优异表现引领了深度学习潮流。不仅如此,将声音当作图谱处理可以完成语音识别,将词语作为向量处理可以完成机器翻译。


总而言之,CNN 是个不可多得的好工具。

本内容为作者独立观点,不代表虎嗅立场。未经允许不得转载,授权事宜请联系hezuo@huxiu.com
如对本稿件有异议或投诉,请联系tougao@huxiu.com
正在改变与想要改变世界的人,都在 虎嗅APP
赞赏
关闭赞赏 开启赞赏

支持一下   修改

确定