首页 > 编程知识 正文

卷积神经网络cnn原理,两个相同门函数卷积

时间:2023-05-06 14:26:06 阅读:24366 作者:2555

首先,我们将发布tf2.0中tf.keras.layers.Conv2D ()函数的官方文档,介绍每个参数的含义和用法。

TF.Keras.layers.conv2d(filters,kernel_size,strides=(1,padding='valid ',data_format=None,kernel kernel_regularizer=None,bias _ regullarizer kernel _ constraint=none,bias_constraint=None,**kwargs是否定义此函数

后面的多参数都是关键字参数(有等于符号的),都有默认值,不用写。 下面,我们逐一分析一下各参数的含义。1、函数的位置参数filters,

这是第一个参数,位置是固定的。 含义是过滤器的个数或卷积核心的个数。 这与卷积后的输出通道数相同。 例如,如果以下过滤器为5,则卷积输出的通道数(最后一位)为5

当filters卷积核数为8时,输出的通道数为8 2、函数的第二个位置参数 kernel_size,

卷积内核的大小通常为33或55。 这里,如[ 3,3 ]、[ 5,5 ]那样,用两个整数的组或列表表示。 如果height、width的纵横相同,则可以直接用1个整数表示。 例如,如果是3或5,则是卷积后的height、width

hight=width=(p-s )/strides 1,

这里输入形状为2020,卷积核为33,滑动步长为1,所以输出为[20-3]/1=18

其中,由于输入为2020、卷积核为55、滑动步长为22,所以输出形状为(20-5 )/2 ) 1向下舍入为8,

3、关键字参数strides=(1, 1),滑动步长,

默认的横向和纵向滑块都是1,它与上面的卷积核心size结合使用,用于计算输出的形状。

hight=width=(p-s )/strides 1,

4、关键字参数padding = “valid”,默认是边缘不填充,

这里只有两个取值,另一个取值为“same”,表示边由0填充。 如果填充=“same”,则输出形状为height=width=P/strides,并向上舍入。 如下图所示,

5 、关键字参数 data_format = ’ channels_first’,输入的数据格式,

这里只能取两个值: channels_first和channels_last。 也就是说,在输入的数据格式中,通道数是第一个还是最后一个,缺省值为channels_last,即在缺省输入数据格式中通道数是最后一个。

如果data_format='channels_first ',则输入和输出的形状格式如下

(batch_size、channels、height、width )即(图像数、通道数、长度、宽度)如下图所示。

6、关键字参数dalition_rate = (1,1)这个含义是卷积核的膨胀系数,

这里的作用是使卷积核形状膨胀,用0填充新位置。 新的卷积核尺寸和膨胀系数计算公式如下。

设原积核尺寸为s、膨胀系数为k,则膨胀后的卷积核的尺寸为

size=k(s-1 ) 1

7 、关键字参数activation = “relu”,此处的含义是激活函数,

相当于经过卷积输出后,经过一次激活函数后,一般的激活函数有relu、softmax、selu等

8、关键字参数use_bias =0 、1,偏置项,

此处的值是布尔值,0或1。 0意味着bias没有增加,1意味着有。

9 、后面的关键字参数一般不常用,

kernel_initializer :卷积核初始化、

bias_initializer :偏差值初始化、

kernel_regularizer :卷积核正则化

bias_regularizer :偏差归一化

activity_regularizer这个地方也是正则化的

kernel_constraint :卷积核约束

bias_constraint :偏差约束。

这些参数不常见,但、

10 、最后还有几个可选 的关键字参数,input_shape,

这是输入的形式,一般是4D。 (batch size,height,width,channels ),不用定义。 那是默认的输入形式。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。