【导读】CNN在图像和视频识别,推荐系统和自然语言处理中有着广泛的应用。在这篇文章中举的例子是计算机视觉,但是,基本概念是一致的,可以应用于任何其他用例。
作者 | Harsh Pokharna
编译 | 专知
参与 | Yingying, Xiaowen
The best explanation of Convolutional Neural Networks on the Internet!
CNN由由可学习权重和偏置的神经元组成。每个神经元接收多个输入,对它们进行加权求和,将其传递给一个激活函数并用一个输出作为响应。整个网络有一个损失函数,在神经网络开发过程中的技巧和窍门仍然适用于CNN。很简单,对吧?
那么,卷积神经网络与神经网络有什么不同呢?
和神经网络输入不同,这里的输入是一个多通道图像(在这种情况下是3通道,如RGB)。
在我们深入之前,让我们先了解一下卷积的含义。
我们用5 * 5 * 3的滤波器滑过整个图像,并在滑动过程中与滑过的图像部分点积。
每个点积的结果都是标量。
那么,当我们将整个图像与滤波器进行卷积时会发生什么?
卷积结果的大小28是怎么来的留给读者思考。(提示:有28 * 28个独特的位置,滤波器可以放在图像上)
卷积层是卷积神经网络的重要部分。
卷积层包含一组独立的滤波器(在所示的例子中是6个)。每个滤波器都与图像独立卷积,最终形成6个形状为28 * 28 * 1的特征图。
假设我们有多个卷积层。然后会发生什么?
所有这些滤波器都是随机初始化的,并在网络训练过程中学习参数。
下面是训练好的网络的例子。
看看第一层中的滤波器(在这是5 * 5 * 3的滤波器)。通过反向传播,逐渐调整成为彩色碎片和边缘的斑点。当层次变深时,滤波器与先前一层的输出做点积。所以,他们正在用较小的彩色碎片或边缘制作出更大的碎片。
对于特定的特征图,每个神经元仅与输入图像的一小块连接,并且所有神经元具有相同的连接权重,这就是CNN与神经网络的最大区别。
局部连接是每个神经只与输入图像的一个子集连接(不同于全连接的神经网络)
这有助于减少整个系统中的参数数量,并使计算更加高效。
池化层是CNN的另一个构建块。
其功能是逐步缩小表示空间的大小,以减少网络中的参数和计算量。池化层独立地在每个特征映射上工作。
最常用的方法是最大池化(max pooling)。
RELU只是一个应用于神经单元的非线性激活函数。
FC是CNN末端的全连接层。全连接层中的神经元与前一层中的所有激活都有完全连接,如常规神经网络中所见,并以相似的方式工作。
CNN架构有许多变化,但正如我之前提到的,基本概念保持不变。
原文链接:
https://medium.com/technologymadeeasy/the-best-explanation-of-convolutional-neural-networks-on-the-internet-fbb8b1ad5df8
更多教程资料请访问:人工智能知识资料全集
-END-
专 · 知
人工智能领域主题知识资料查看与加入专知人工智能服务群:
【专知AI服务计划】专知AI知识技术服务会员群加入与人工智能领域26个主题知识资料全集获取
[点击上面图片加入会员]
请PC登录www.zhuanzhi.ai或者点击阅读原文,注册登录专知,获取更多AI知识资料!
请加专知小助手微信(扫一扫如下二维码添加),加入专知主题群(请备注主题类型:AI、NLP、CV、 KG等)交流~
请关注专知公众号,获取人工智能的专业知识!
点击“阅读原文”,使用专知