主要内容

Convolution2Dlayer.

二维卷积层

描述

二维卷积层将滑动卷积滤波器应用于输入。该图层通过垂直和水平沿输入沿输入和计算重量和输入的点乘积来使滤波器旋转输入,然后添加偏置术语。

创建

描述

= convolution2dLayer (filterSizenumFilters创建一个二维卷积层,并设置过滤numfilters.属性。

例子

= convolution2dLayer (filterSizenumFilters名称,价值设置可选稀释物料NumChannels参数和初始化学习速率和正规化, 和的名字属性使用名称值对。要指定输入填充,请使用'填充'名称-值对的论点。例如,convolution2dLayer(11, 96,“大步”4“填充”,1)创建一个2-D卷积层,96个尺寸过滤器(11 11),一步[4 4],以及沿图层输入的所有边缘大小为1的填充。可以指定多个名称-值对。将每个属性名用单引号括起来。

输入参数

展开全部

名称值对参数

使用逗号分隔的名称-值对参数指定要沿层输入的边缘添加的填充的大小或设置稀释物料NumChannels参数和初始化学习速率和正规化, 和的名字属性。将名字用单引号括起来。

例子:convolution2dLayer(16日“填充”,“相同”)创建一个带有16个大小过滤器的2d卷积层[3]'相同的'填充。在训练时间时,软件计算并设置填充的大小,使得图层输出具有与输入相同的大小。

输入边缘填充,指定为逗号分隔对'填充'其中一个价值观是:

  • '相同的'- 在训练或预测时添加软件计算的大小的填充,使得输出在步幅等于1时具有与输入相同的尺寸。如果步幅大于1,则输出大小为CEIL(投入/迈出), 在哪里inputSize输入的高度或宽度和宽度是在相应的尺寸的步幅。该软件添加填充相同数量的顶部和底部,左,右,如果可能的话。如果必须垂直添加填充有奇数值,那么该软件添加额外填充底部。如果必须水平添加填充有奇数值,那么该软件添加额外填充的权利。

  • 非负整数p-添加大小填充p到输入的所有边缘。

  • 向量[b]非负整数-添加大小填充一个到输入的顶部和底部和尺寸的填充b左,右。

  • 向量[t b l r]非负整数-添加大小填充t前,b底部,l向左,和r在输入的右边。

例子:“填充”,1在输入的顶部和底部添加一行填充,并在输入的左侧和右侧添加一列填充。

例子:'填充','同样'添加填充,使得输出的大小与输入相同(如果步幅等于1)。

属性

展开全部

卷积

滤镜的高度和宽度,指定为矢量[H W]的两个正整数,其中h是高度和w宽度。过滤定义输入中神经元连接到的局部区域的大小。

在创建图层时,可以指定过滤作为标量使用相同的值作为高度和宽度。

例子:5 [5]指定高度和宽度分别为5和5的过滤器。

过滤器数量,指定为正整数。这个数量对应于在卷积层连接到相同的区域中的输入神经元的数目。此参数决定了卷积层的输出通道(特征映射)的数量。

例子:96.

垂直和水平遍历输入的步长,指定为向量[b]的两个正整数,其中一个垂直步长和b是水平台阶。在创建图层时,可以指定作为标量用于两个步长大小的值。

例子:[2 3]指定垂直步长为2,水平步长为3。

指定为载体的扩张卷积的因素(也称为不足卷积)[H W]的两个正整数,其中h是垂直扩张和w为水平膨胀。在创建图层时,可以指定稀释物料作为标量以用于水平和垂直胀缩相同的值。

使用扩展卷积来增加层的接受域(层可以看到的输入区域),而不增加参数或计算的数量。

通过在每个滤波器元件之间插入零来扩展滤波器。扩张因子确定用于采样输入的步骤或等效地对滤波器的上采样因子进行采样。它对应于有效的滤波器大小(过滤尺寸- 1) *扩张因子+ 1。例如,一个3×3滤波器与扩张因子(2 - 2)相当于元素之间的5×5滤波器。

例子:[2 3]

应用于输入边框的填充大小,指定为矢量[t b l r]四个非负整数,在哪里t填充是施加到顶部的,b是底部的填充物,l填充是否应用于左侧,和r是应用到右边的填充。

当你创建一个图层时,使用'填充'参数的名称-值对指定填充大小。

例子:[1 1 2 2]在输入的顶部和底部添加一行填充,并在输入的左侧和右侧添加两列填充。

确定填充大小的方法,指定为'手动的'或者'相同的'

该软件自动设置值PaddingMode基础上,'填充'创建图层时指定值。

  • 如果你设置'填充'选项到标量或非负整数的向量,然后自动设置软件PaddingMode'手动的'

  • 如果你设置'填充'选项'相同的',则软件自动设定PaddingMode'相同的'并计算训练时填充的大小,使stride等于1时输出的大小与输入的大小相同。如果步幅大于1,则输出大小为CEIL(投入/迈出), 在哪里inputSize输入的高度或宽度和宽度是在相应的尺寸的步幅。该软件添加填充相同数量的顶部和底部,左,右,如果可能的话。如果必须垂直添加填充有奇数值,那么该软件添加额外填充底部。如果必须水平添加填充有奇数值,那么该软件添加额外填充的权利。

请注意

填充物业将在未来的版本中删除。用PaddingSize反而。创建图层时,使用'填充'参数的名称-值对指定填充大小。

填充的大小垂直和水平地应用于输入边框,指定为矢量[b]两个非负整数,其中一个填充是否应用于输入数据的顶部和底部b是应用于左边和右边的填充。

例子:[1]在输入的顶部和底部添加一行填充,并在输入的左侧和右侧添加一列填充。

值来填充数据,指定为以下其中之一:

PaddingValue 描述 例子
标量子 用指定的标量值填充。

3. 1 4 1 5 9 2 6 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3. 1 4 0 0 0 0 1 5 9 0 0 0 0 2 6 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

“symmetric-include-edge” 使用输入的镜像值(包括边值)填充。

3. 1 4 1 5 9 2 6 5 5 1 1 5 9 9 5 1 3. 3. 1 4 4 1 1 3. 3. 1 4 4 1 5 1 1 5 9 9 5 6 2 2 6 5 5 6 6 2 2 6 5 5 6 5 1 1 5 9 9 5

“symmetric-exclude-edge” 使用镜像输入值(不包括边值)的Pad。

3. 1 4 1 5 9 2 6 5 5 6 2 6 5 6 2 9 5 1 5 9 5 1 4 1 3. 1 4 1 3. 9 5 1 5 9 5 1 5 6 2 6 5 6 2 9 5 1 5 9 5 1 4 1 3. 1 4 1 3.

'复制' 使用输入的重复边框元素填充

3. 1 4 1 5 9 2 6 5 3. 3. 3. 1 4 4 4 3. 3. 3. 1 4 4 4 3. 3. 3. 1 4 4 4 1 1 1 5 9 9 9 2 2 2 6 5 5 5 2 2 2 6 5 5 5 2 2 2 6 5 5 5

每个过滤器的通道数,指定为“汽车”或一个正整数。

此参数始终等于输入到卷积层的输入的通道数。例如,如果输入是彩色图像,则输入的通道数为3.如果在电流层之前的卷积层的滤波器的数量为16,则当前层的通道数为16.

如果NumChannels“汽车”,然后软件在培训时确定通道的数量。

例子:256

参数和初始化

函数来初始化权重,指定为以下情况之一:

  • “glorot”-使用gloria初始化器初始化权重[4](也称为Xavier Initializer)。Glorot Initializer从均匀分布的独立样本,零均匀和方差2 / (numIn + numOut), 在哪里努敏= FilterSize(1)* FilterSize(2)* NumChannelsnumOut = FilterSize (1) * FilterSize (2) * NumFilters

  • '他'- 使用初始化程序初始化权重[5].初始化器的样本来自均值和方差为零的正态分布2 / numIn, 在哪里努敏= FilterSize(1)* FilterSize(2)* NumChannels

  • '窄正常'- 初始化权重通过从正态分布独立地采样具有零均值和标准偏差0.01。

  • “零”- 用零初始化权重。

  • “的”—使用“1”初始化权重。

  • 功能句柄 - 使用自定义功能初始化权重。如果指定函数句柄,则函数必须是表单权重= func(sz), 在哪里深圳是权重的大小。对于一个示例,请参见指定自定义权重初始化功能

该图层仅初始化权重权重属性是空的。

数据类型:char|字符串|function_handle

函数初始化偏差,指定为以下任意一个:

  • “零”- 初始化用零偏置。

  • “的”- 初始化偏差。

  • '窄正常'- 初始化偏置通过从正态分布独立地采样具有零均值和标准偏差0.01。

  • 功能句柄 - 使用自定义功能初始化偏差。如果指定函数句柄,则函数必须是表单BIAS = FUNC(SZ), 在哪里深圳是偏见的大小。

该图层仅初始化偏差时偏见属性是空的。

数据类型:char|字符串|function_handle

层的权重卷积层,指定为数字阵列。

层权重是可学习参数。您可以直接指定权重的初始值权重层的财产。培训网络时,如果权重属性为非空,则Trainnetwork.用来权重属性作为初始值。如果权重属性为空Trainnetwork.使用指定的初始化程序WeightsInitializer层的财产。

在培训时,权重是一个FilterSize (1)-经过-过滤(2)-经过-NumChannels-经过-numfilters.数组中。

数据类型:|双倍的

层偏差为卷积层,指定为数字数组。

层偏差是可学习的参数。当训练一个网络时,如果偏见非空的,那么Trainnetwork.用来偏见属性作为初始值。如果偏见是空的,然后Trainnetwork.使用指定的初始化程序偏见初始化器

在培训时,偏见是一个1×1逐numfilters.数组中。

数据类型:|双倍的

学习速率和正规化

学习权重的因素,指定为非负标量。

该软件乘以这个系数由全局学习速率,以确定在该层的权重学习速率。例如,如果WeightLearnRateFactor是2,那么该层中权重的学习率是当前全球学习率的两倍。该软件根据指定的设置确定全局学习速率培训选项函数。

例子:2

偏差的学习率因子,指定为非负标量。

软件将这个因子乘以全局学习率,以确定这一层偏差的学习率。例如,如果Biaslearnratefactor.是2,那么层中偏差的学习率是当前全球学习率的两倍。该软件根据指定的设置确定全局学习速率培训选项函数。

例子:2

L2正则化因子的权重,指定为一个非负的标量。

该软件将这个因子乘以全局L2正则化因子,以确定该层权重的L2正则化。例如,如果掌权2factor.为2,则该层权值的L2正则化是全局L2正则化因子的两倍。的方法可以指定全局L2正则化因子培训选项函数。

例子:2

L2正则化因子的偏差,指定为一个非负的标量。

该软件将该因子乘以L2的全局正则化因子,以确定该层偏差的L2正则化。例如,如果BiasL2Factor为2,则该层偏差的L2正则化是全局L2正则化因子的两倍。的方法可以指定全局L2正则化因子培训选项函数。

例子:2

层名,指定为字符向量或字符串标量。若要在层图中包含层,必须指定非空的唯一层名。如果你用层和的名字被设置为'',然后软件会自动为培训时间分配给图层的名称。

数据类型:char|字符串

层的输入数。此图层仅接受单个输入。

数据类型:双倍的

图层的输入名称。此图层仅接受单个输入。

数据类型:细胞

图层的输出数。此图层仅具有单个输出。

数据类型:双倍的

图层的输出名称。此图层仅具有单个输出。

数据类型:细胞

例子

全部收缩

创建一个带有96个滤镜的卷积层,每个滤镜的高度和宽度为11。在水平和垂直方向上使用4步。

图层=卷积2dlayer(11,96,“步”4)
图层=具有属性的卷积2dlayer:''''''Quand参数过滤:[11 11] NumChannels:'Auto'NumFilters:96步(96步):[4 4] DilationFactor:[1] PaddingMode:'手动'拼接:[0 0 0]PaddingSvalue:0 Learnable参数权重:[]偏置:[]显示所有属性

中包含一个卷积层数组中。

图层= [ImageInputLayer([28 28 1])卷积2dlayer(5,20)rululayer maxpooling2dlayer(2,“步”,2)全连接列(10)SoftMaxLayer分类层]
图层= 7x1层阵列,图层:1''图像输入28x28x1图像与'zerocenter'归一化2''卷积20 5x5卷积与步幅[1 1]和填充[0 0 0 0] 3''Relu Relu 4''Max汇集2x2 max汇集步进[2 2]和填充[0 0 0 0] 5''完全连接的10完全连接的第6层''softmax softmax 7''分类输出crossentropyex

要指定权重和偏差初始化式函数,请使用WeightsInitializer偏见初始化器属性分别。要直接指定权重和偏差,请使用权重偏见属性分别。

指定初始化功能

创建一个带有32个过滤器的卷积层,每个过滤器的高度和宽度都为5,并指定权重初始化器为He初始化器。

filterSize = 5;numFilters = 32;层= convolution2dLayer (filterSize numFilters,...'掌控itializer''他'
层= Convolution2DLayer与属性:名称: '' 超参数FilterSize:[5 5] NumChannels: '自动' NumFilters:32步:[1 1] DilationFactor:[1 1] PaddingMode: '手动' PaddingSize:[0 0 0 0]PaddingSvalue:0 Learnable参数权重:[]偏置:[]显示所有属性

请注意,权重偏见属性是空的。在训练时,软件使用指定的初始化函数初始化这些属性。

指定自定义初始化函数

要为权重和偏差指定自己的初始化函数,请设置WeightsInitializer偏见初始化器函数句柄的属性。对于这些属性,请指定将权重和偏置大小的函数处理作为输入和输出初始化值。

创建一个带有32个滤镜的卷积层,每个滤镜的高度和宽度为5,并指定初始化器,该初始化器从高斯分布中采样权重和偏差,标准差为0.0001。

filterSize = 5;numFilters = 32;层= convolution2dLayer (filterSize numFilters,...'掌控itializer', @(sz) rand(sz) * 0.0001,...'偏见的人', @(sz) rand(sz) * 0.0001)
层= Convolution2DLayer与属性:名称: '' 超参数FilterSize:[5 5] NumChannels: '自动' NumFilters:32步:[1 1] DilationFactor:[1 1] PaddingMode: '手动' PaddingSize:[0 0 0 0]PaddingSvalue:0 Learnable参数权重:[]偏置:[]显示所有属性

再一次,权重偏见属性是空的。在训练时,软件使用指定的初始化函数初始化这些属性。

指定权重和偏差直接

创建具有10的输出尺寸的完全连接层和设定的权重和偏置到Wb在MAT文件中Conv2dWeights.mat分别。

filterSize = 5;numFilters = 32;加载conv2dweights.层= convolution2dLayer (filterSize numFilters,...“重量”W,...“偏见”,b)
层= Convolution2DLayer与属性:名称: '' 超参数FilterSize:[5 5] NumChannels:3个NumFilters:32步:[1 1] DilationFactor:[1 1] PaddingMode: '手动' PaddingSize:[0 0 0 0] PaddingValue:0可学习参数重量:[5x5x3x32双]偏压:[1x1x32双]显示所有属性

在这里,权重偏见属性包含指定的值。在培训时间,如果这些属性是非空的,则软件将指定的值用作初始权重和偏差。在这种情况下,该软件不使用初始化器功能。

假设输入的大小是28 × 28 × 1。创建一个带有16个滤镜的卷积层,每个滤镜的高度为6,宽度为4。将水平和垂直步幅设置为4。

确保卷积完全覆盖输入。对于卷积完全覆盖输入时,两个水平和垂直输出尺寸必须是整数。用于水平输出尺寸是整数,需要在图像的顶部和底部填充的一行:(28 - 6+ 2 * 1)/ 4 + 1 = 7,对垂直输出尺寸为整数中,不需要零填充:(28 - 2 4+ * 0)/ 4 + 1 = 7。

构建卷积层。

layer = convolution2dLayer([6 4],16,“步”4'填充',[1 0])
layer = Convolution2DLayer with properties: Name: " Hyperparameters FilterSize: [6 4] NumChannels: 'auto' NumFilters: 16 Stride: [4 4] DilationFactor: [1 1] PaddingMode: 'manual' PaddingSize: [1 1 0] PaddingValue: 0 Learnable Parameters Weights: [] Bias:[]显示所有属性

更多关于

展开全部

兼容性考虑因素

展开全部

行为在R2019a中改变

参考文献

莱昆,Y. B. Boser, J. S. Denker, D. Henderson, R. E. Howard, W. Hubbard,和L. D. jackkel。“基于反向传播网络的手写数字识别”在神经信息处理系统研究进展2(D. Touretzky,Ed。)。旧金山:摩根Kaufmann,1990。

[2] Lecun,Y.,L.Pottou,Y.Bengio和P. Haffner。“基于渐变的学习应用于文件识别”。IEEE论文集.1998年第86卷第11期,第2278-2324页。

K. P.墨菲机器学习:概率视角.剑桥,马:2012年MIT Press。

[4] Glorot,Xavier和Yoshua Bengio。“了解训练深馈神经网络的难度。”在第十三届国际人工智能和统计会议论文集, 249 - 356。撒丁岛,意大利:AISTATS, 2010。

[5]他,开明,象屿张,少卿仁和健太阳“深入研究了整流器:超越人类水平的性能上ImageNet分类。”在2015年IEEE计算机愿景会议的诉讼程序,1026年至1034年。华盛顿特区:IEEE计算机视觉协会,2015年。

扩展功能

介绍了R2016a

1图片来源:卷积运算执照