主要内容

imageInputLayer

图像输入层

描述

图像输入层将二维图像输入到神经网络并应用数据归一化。

对于3d图像输入,使用image3dInputLayer

创建

描述

= imageInputLayer (inputSize返回一个图像输入层并指定InputSize财产。

例子

= imageInputLayer (inputSize名称,值设置可选的归一化NormalizationDimension的意思是StandardDeviation最小值马克斯SplitComplexInputs,名字使用一个或多个名称-值参数的属性。将属性名称用引号括起来。

属性

全部展开

图像输入

该属性是只读的。

输入数据的大小,指定为整数的行向量[qh],在那里hw,c分别对应通道的高度、宽度和数量。

  • 对于灰度图像,指定带有的矢量c等于1

  • 对于RGB图像,用c等于3.

  • 对于多光谱或高光谱图像,指定带有的矢量c等于通道数。

对于3d图像或体积输入,使用image3dInputLayer

例子:[224 224 3]

该属性是只读的。

每次数据通过输入层前向传播时应用数据规范化,指定为以下之一:

  • “zerocenter”-减去指定的平均值的意思是

  • “zscore”-减去指定的平均值的意思是然后除以StandardDeviation

  • “rescale-symmetric”—使用最小值和最大值重新调整输入,使其在[- 1,1]范围内最小值马克斯,分别。

  • “rescale-zero-one”—使用最小值和最大值重新调整输入,使其在[0,1]范围内最小值马克斯,分别。

  • “没有”—输入数据不进行规范化处理。

  • function handle -使用指定的函数对数据进行规范化。函数必须是这样的形式Y = func(X),在那里X是输入数据和输出Y是规范化的数据。

提示

在默认情况下,软件会自动计算规范化统计trainNetwork函数。为节省训练时的时间,请指定规范化所需的统计数据,并设置ResetInputNormalization选项trainingOptions0).

归一化维度,指定为下列之一:

  • “汽车”—如果培训选项为你指定任何一个标准化统计(的意思是StandardDeviation最小值,或马克斯),然后对与统计数据匹配的维度进行规范化。否则,在训练时重新计算统计数据并应用信道标准化。

  • “通道”-信道标准化。

  • “元素”-元素标准化。

  • “所有”—使用标量统计将所有值归一化。

数据类型:字符|字符串

零中心和z-score归一化的平均值,指定为ah——- - - - - -w——- - - - - -c数组,一个1 × 1 ×c每个通道的平均数数组,一个数字标量,或[],在那里hw,c分别对应于均值的高度、宽度和通道数。

如果您指定的意思是属性,然后归一化必须“zerocenter”“zscore”。如果的意思是[],然后是trainNetwork函数计算平均值。训练…dlnetwork对象,或者组装一个网络而不使用assembleNetwork函数时,必须设置的意思是属性设置为数值标量或数值数组。

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

z-score归一化的标准差,用a表示h——- - - - - -w——- - - - - -c数组,一个1 × 1 ×c每个通道的平均数数组,一个数字标量,或[],在那里hw,c分别对应标准偏差的高度、宽度和通道数。

如果您指定StandardDeviation属性,然后归一化必须“zscore”。如果StandardDeviation[],然后是trainNetwork函数计算标准偏差。训练…dlnetwork对象,或者组装一个网络而不使用assembleNetwork函数时,必须设置StandardDeviation属性设置为数值标量或数值数组。

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

重新缩放的最小值,指定为h——- - - - - -w——- - - - - -c数组,一个1 × 1 ×c每通道最小值的数组、数字标量或[],在那里hw,c分别对应于最小值的高度、宽度和通道数。

如果您指定最小值属性,然后归一化必须“rescale-symmetric”“rescale-zero-one”。如果最小值[],然后是trainNetwork函数计算最小值。训练…dlnetwork对象,或者组装一个网络而不使用assembleNetwork函数时,必须设置最小值属性设置为数值标量或数值数组。

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

重新缩放的最大值,指定为h——- - - - - -w——- - - - - -c数组,一个1 × 1 ×c每个通道最大值的数组、数字标量或[],在那里hw,c分别对应于最大值的高度、宽度和通道数量。

如果您指定马克斯属性,然后归一化必须“rescale-symmetric”“rescale-zero-one”。如果马克斯[],然后是trainNetwork函数计算最大值。训练…dlnetwork对象,或者组装一个网络而不使用assembleNetwork函数时,必须设置马克斯属性设置为数值标量或数值数组。

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

该属性是只读的。

将输入数据分割为实数和虚数的标志,指定为以下值之一:

  • 0) -不要分割输入数据。

  • 1真正的) -将数据拆分为实组件和虚组件。

SplitComplexInputs1,则该层输出的通道数是输入数据的两倍。例如,如果输入数据是复数值numChannels通道,然后层输出数据2 * numChannels渠道,其中渠道1通过numChannels包含实际组件的输入数据和numChannels + 1通过2 * numChannels包含输入数据的虚分量。如果输入的数据是真实的,那么通道numChannels + 1通过2 * numChannels都是0。

将复值数据输入到神经网络中SplitComplexInputs输入层的选项必须为1

有关如何使用复值数据训练网络的示例,请参见复值数据下的训练网络

该属性是只读的。

请注意

DataAugmentation属性不推荐使用。要使用裁剪、反射和其他几何变换预处理图像,请使用augmentedImageDatastore代替。

数据增强转换为在训练期间使用,指定为以下之一。

  • “没有”—不扩充数据

  • “randcrop”-从训练图像中随机裁剪。随机裁剪的大小与输入大小相同。

  • “randfliplr”-随机翻转输入图像水平与50%的机会。

  • 单元阵列“randcrop”“randfliplr”。该软件按照在单元阵列中指定的顺序应用增强。

图像数据的增强是另一种减少过拟合的方法[1][2]

数据类型:字符串|字符|细胞

图层名称,指定为字符向量或字符串标量。为数组输入trainNetworkassembleNetworklayerGraph,dlnetwork函数会自动将名称分配给具有该名称的层

数据类型:字符|字符串

该属性是只读的。

层的输入数。层没有输入。

数据类型:

该属性是只读的。

输入图层的名称。层没有输入。

数据类型:细胞

该属性是只读的。

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

数据类型:

该属性是只读的。

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

数据类型:细胞

例子

全部折叠

创建一个图像输入层为28 × 28彩色图像与名称“输入”。默认情况下,该层通过从每个输入图像中减去训练集的平均图像来执行数据归一化。

inputlayer = imageInputLayer([28 28 3],“名字”“输入”
inputlayer = ImageInputLayer with properties: Name: 'input' InputSize: [28 28 3] SplitComplexInputs: 0 Hyperparameters DataAugmentation: 'none' Normalization: 'zerocenter' NormalizationDimension: 'auto' Mean: []

包含一个图像输入层数组中。

图层= [imageInputLayer([28 28 1]) convolution2dLayer(5,20) reluLayer maxPooling2dLayer(2,“步”,2) fulllyconnectedlayer (10) softmaxLayer classificationLayer]
Layer = 7x1 Layer array with layers: 1 " Image Input 28x28x1 Image with 'zerocenter' normalization 2 " 2d Convolution 20个5x5个卷积,stride[1 1]和padding [0 0 0 0] 3 " ReLU ReLU 4 " 2d Max Pooling 2x2 Max Pooling, stride[2 2]和padding [0 0 0 0] 5 " Fully Connected 10 " Softmax Softmax 7 " Classification Output crossentropyex

参考文献

[1] Krizhevsky, A. I. Sutskever和G. E. Hinton。“基于深度卷积神经网络的ImageNet分类”。神经信息处理系统研究进展。2012年第25期。

[10]刘建军,刘建军,刘建军,等。用于图像分类的多列深度神经网络。计算机视觉与模式识别IEEE会议, 2012年。

扩展功能

版本历史

在R2016a中引入

全部展开