主要内容

convolution1dLayer

一维卷积层

    描述

    一维卷积层将滑动卷积滤波器应用于一维输入。该层通过沿输入移动滤波器并计算权重和输入的点积,然后添加偏置项来卷积输入。

    层卷积的维度取决于层的输入:

    • 对于时间序列和矢量序列输入(与通道、观测值和时间步骤对应的三维数据),该层在时间维度上进行卷积。

    • 对于一维图像输入(与空间像素、通道和观测值对应的三维数据),该层在空间维度上进行卷积。

    • 对于一维图像序列输入(数据有四个维度,对应于空间像素、通道、观测值和时间步长),该层在空间维度上卷积。

    创造

    描述

    例子

    =卷积层(filterSizenumFilters创建一维卷积层并设置FilterSizeNumFilters属性。

    =卷积层(filterSizenumFilters名称=值还设置了可选的大步走DilationFactorNumChannels参数和初始化学习率和正规化,名称属性使用一个或多个名称-值参数。要指定输入填充,使用填充名称-值参数。例如,卷积1层(11,96,填充=1)创建一个1- d卷积层,包含96个大小为11的过滤器,并在层输入的左边和右边指定大小为1的填充。

    输入参数

    全部展开

    名称-值对的观点

    指定可选参数对为名称1=Value1,…,名称n=ValueN哪里名称参数名和价值是对应的值。名称值参数必须出现在其他参数之后,但对的顺序无关紧要。

    例子:卷积1层(11,96,填充=1)创建一个1- d卷积层,包含96个大小为11的过滤器,并在层输入的左边和右边指定大小为1的填充。

    要应用于输入的填充,指定为以下内容之一:

    • “相同”-应用填充,使输出大小为装天花板(inputSize /步)哪里输入大小为输入的长度。当大步走1,输出与输入大小相同。

    • “因果”-对输入应用左填充,等于(FilterSize - 1) .*膨胀因子.当大步走1,输出与输入大小相同。

    • 非负整数深圳-添加大小填充深圳输入的两端。

    • 向量(l r)非负整数的填充-添加大小的填充l向左和向右r在输入的右侧。

    例子:填充= (2 - 1)在输入的左边添加大小为2的填充,在右边添加大小为1的填充。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64|烧焦|一串

    性质

    全部展开

    卷积

    此属性是只读的。

    筛选器的宽度,指定为正整数。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

    此属性是只读的。

    筛选器数,指定为正整数。这个数字对应于卷积层中连接到输入中相同区域的神经元数量。此参数确定卷积层输出中的通道数(特征贴图)。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

    遍历输入的步长,指定为正整数。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

    扩张卷积的因子(也称为无功卷积),指定为正整数。

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

    该层通过在每个过滤器元素之间插入零来扩展过滤器。膨胀因子决定了采样输入的步长,或者等效地,滤波器的上采样因子。它对应的有效过滤器尺寸为*膨胀因子+ 1.例如,一个1 × 3的滤波器,其膨胀系数为2等效于元素之间带零的1×5滤波器。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

    要应用于输入的每一边的填充的大小,指定为矢量(l r)两个非负整数,其中l填充是否应用于左侧和r是应用到右边的填充。

    当你创建一个图层时,使用填充参数指定填充大小。

    数据类型:双重的

    此属性是只读的。

    确定填充大小的方法,具体如下:

    • “手动”–使用指定的整数或向量填充填充

    • “相同”-应用填充,使输出大小为装天花板(inputSize /步)哪里输入大小为输入的长度。当大步走1,输出与输入相同。

    • “因果关系”-应用因果填充。用填充大小填充输入的左侧(FilterSize - 1) .*膨胀因子

    要指定图层填充,请使用填充名称-值参数。

    数据类型:烧焦

    此属性是只读的。

    填充数据的值,指定为以下值之一:

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

    3. 1 4 0 0 3. 1 4 0 0

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

    3. 1 3. 1 3. 3. 1 4 4 1

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

    3. 1 4 4 1 3. 1 4 1 3.

    “复制” 使用输入的重复边框元素填充。

    3. 1 3. 3. 3. 3. 1 4 4 4

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64|烧焦|一串

    此属性是只读的。

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

    如果NumChannels“汽车”,则软件在训练时自动确定通道的数量。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64|烧焦|一串

    参数和初始化

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

    • “glorot”-使用gloria初始化器初始化权重[1](也称为Xavier初始值设定项)。Glorot初始值设定项从均匀分布中独立采样,平均值为零,方差为2 / (numIn + numOut)哪里numIn = FilterSize * NumChannelsnumOut=FilterSize*NumFilters

    • “他”-使用He初始化器初始化权值[2]. He初始值设定项从均值和方差为零的正态分布采样2 / numIn哪里numIn = FilterSize * NumChannels

    • “narrow-normal”-通过从均值为0、标准差为0.01的正态分布独立抽样来初始化权重。

    • “零”—初始化权值为0。

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

    • 函数句柄——用自定义函数初始化权重。如果指定函数句柄,则该函数必须是这种形式的重量= func(深圳)哪里深圳是权重的大小。有关示例,请参见指定自定义权重初始化函数

    属性时,层才初始化权重权重属性是空的。

    数据类型:烧焦|一串|function_handle

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

    • “零”–用零初始化偏差。

    • “的”-用1初始化偏差。

    • “narrow-normal”–通过从平均值为零、标准偏差为0.01的正态分布中独立取样来初始化偏差。

    • 函数句柄——用自定义函数初始化偏差。如果指定函数句柄,则该函数必须是这种形式的偏见= func(深圳)哪里深圳是偏差的大小。

    该层仅在偏见属性是空的。

    数据类型:烧焦|一串|function_handle

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

    层权值是可学习的参数。属性可以直接指定权重的初始值权重属性的层。当你训练一个网络,如果权重属性为非空,则trainNetwork使用权重属性作为初始值。如果权重属性为空trainNetwork属性指定的初始化式WeightsInitializer属性的层。

    在培训时,权重是一个FilterSize-借-NumChannels-借-NumFilters数组中。

    数据类型:|双重的

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

    层偏差是可学习的参数。当你训练一个网络,如果偏见那么,它是非空的trainNetwork使用偏见属性作为初始值。如果偏见是空的,然后trainNetwork使用指定的初始化式BiasInitializer

    在培训时,偏见是1 -NumFilters数组中。

    数据类型:|双重的

    学习率和正规化

    权值的学习率因子,指定为非负标量。

    软件将该系数乘以全局学习率,以确定该层中权重的学习率。例如,如果加权比率因子2,则该层权重的学习率为当前全局学习率的两倍。该软件根据您指定的设置来确定全局学习率trainingOptions函数。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

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

    软件将这个因子乘以全局学习率,以确定这一层偏差的学习率。例如,如果BiasLearnRateFactor2,则该层偏差的学习率是当前全局学习率的两倍。该软件根据您指定的设置来确定全局学习率trainingOptions函数。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

    l2权值的正则化因子,指定为非负标量。

    软件将这个因素乘以全球l2正则化因子的确定l2此层中权重的正则化。例如,如果WeightL2Factor2,那么l2该层中权重的正则化是全局权重的两倍l2正则化因子。您可以指定全局变量l2正则化因子trainingOptions函数。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

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

    软件将这个因素乘以全球l2正则化因子的确定l2此层中偏差的正则化。例如,如果BiasL2Factor2,那么l2这一层偏见的正规化程度是全球的两倍l2正则化因子。您可以指定全局变量l2正则化因子trainingOptions函数。

    数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

    层名,指定为字符向量或字符串标量。为数组输入trainNetworkassembleNetworklayerGraph,数据链路网络函数会自动将名称指定给具有名称设置为''

    数据类型:烧焦|一串

    此属性是只读的。

    层的输入数。这一层只接受单个输入。

    数据类型:双重的

    此属性是只读的。

    输入层名。这一层只接受单个输入。

    数据类型:细胞

    此属性是只读的。

    层输出的数量。这一层只有一个输出。

    数据类型:双重的

    此属性是只读的。

    输出层的名称。这一层只有一个输出。

    数据类型:细胞

    例子

    全部折叠

    创建一个1-D卷积层,96个宽度为11的滤镜。

    层= convolution1dLayer (96)
    layer = Convolution1DLayer with properties: Name: " Hyperparameters FilterSize: 11 NumChannels: 'auto' NumFilters: 96 Stride: 1 DilationFactor: 1 PaddingMode: 'manual' PaddingSize: [0 0] PaddingValue: 0 Learnable Parameters Weights: [] Bias:[]显示所有属性

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

    layers = [sequenceInputLayer(12) convolution1dLayer(11,96) reluLayer globalMaxPooling1dLayer fulllyconnectedlayer (10) softmaxLayer classificationLayer]
    层x1 = 7层阵列层:1“12维度2序列输入序列输入”卷积96 11旋转步1和填充[0 0]3”ReLU ReLU 4”一维全球最大池一维全球最大池5“完全连接10完全连接层6”Softmax Softmax crossentropyex 7”分类输出

    算法

    全部展开

    参考文献

    [1] 格洛特、泽维尔和约书亚·本吉奥,《理解训练深度前馈神经网络的困难》,年第十三届国际人工智能和统计会议论文集, 249 - 356。撒丁岛,意大利:AISTATS, 2010。

    何开明,张翔宇,任少青,孙健深入研究整流器:在图像网分类上超越人类水平的表现。在2015 IEEE计算机视觉国际会议论文集,1026–1034。华盛顿特区:IEEE计算机视觉学会,2015年。

    介绍了R2021b