卷积神经网络(CN)的核心是进行卷积运算。 在实际应用中,经常使用多层网络结构,因此称为深度卷积神经网络。 本文将从单个卷积的计算开始,教您卷积神经网络中的层如何工作。
2.1单个卷积的计算
要理解神经网络中卷积层过程的计算,我们首先需要了解单个“卷积”是如何工作的。
相信大家在学习CNN的过程中都看过这张图(源码在这里,与里面的有不同的卷积):
input_shape=(5,5)、nucleosize=(3,3)、padding='same'、noise=1、output_shape=(5,5
在此表中:
在此计算器中:
卷积参数:input_shape=(8,8,3)、kernel=(3,3)、padding='same'、pass=i、output_shape=(8,8,2
在这个表中:
在这个卷积表的作中:
首先我们注意一下输入和输出有3个通道。
接下来就是进入尽可能熟悉的核卷积计算,但是首先我们要知道这个作进行了多少次核卷积计算?有的朋友可能会说,卷积的一大特点就是“权重共享”。 但这确实很糟糕!
对于卷积核的数量,必须有“与输出通道数量相同的卷积核,并且每组中的卷积核数量等于输入通道的数量。 ”和我在上表中画的一样:
至此,这个卷积层的作就全部完成了。
2.3“可训练参数”验证
现在对话框是空的,大家都知道卷积层中的“可训练参数”实际上是指卷积核和偏移量的值。 我们可以知道:
我们可以得到:
那么问题是参数的数量必须是可控的:
我们使用kerassummary()来验证:
太棒了!
记住,尺寸参数是一个普通的卷积层参数:
Ps:它也是一个衡量尺寸和复杂度的量。 一个名为“FLOPs”(浮点运算)量的理论计算的模型。 通常只考虑Conv、FC等参数层的乘法和加法运算次数,而“纯加法”运算是也忽略(作为偏差)。 卷积运算层FLOPs的计算公式为:
Ps:这里还需要澄清一下“感受野”的概念,简单来说就是:3、我们可以看到,左上层的像素与左下层的7个像素值相关,这意味着它的感受野为7。 我们可以清楚地得出这两个结论:
这个感受野会在讲解卷积时用到
II、如何更好的理解分析深度卷积神经网络作者:杨燕生上一篇:深度神经网络的工作原理
下一篇:卷积在神经网络中的作用