主要内容

预测

使用训练过的深度学习神经网络预测反应

描述

你可以使用经过训练的神经网络在CPU或GPU上进行深度学习。使用GPU需要并行计算工具箱™和受支持的GPU设备。金宝app有关受支持设备的信息,请参见金宝appGPU支金宝app持版本(并行计算工具箱)属性指定硬件需求ExecutionEnvironment名称-值参数。

使用此函数预测使用训练的响应SeriesNetworkDAGNetwork对象。有关使用a预测反应的信息dlnetwork对象,看到预测

例子

Y=预测(图片使用训练过的网络预测指定图像的响应

例子

Y=预测(序列使用训练过的网络预测指定序列的响应

Y=预测(特性利用训练好的网络预测指定特征数据的响应

Y=预测(X1,…,XN预测数值或单元格数组中数据的响应X1、……XN对于多输入网络.输入西对应于网络输入net.InputNames(我)

Y=预测(混合使用训练过的网络预测响应使用混合数据类型的多个输入。

日元…,预测,预测___预测响应使用任何前面的输入参数的多输出网络的输出。输出Yj对应网络输出net.OutputNames (j).若要返回分类输出层的类别输出,请设置ReturnCategorical选项1(真正的)。

___=预测(___名称=值使用一个或多个名称-值参数指定的附加选项预测响应。

提示

  • 使用预测函数使用回归网络预测响应或使用多输出网络对数据进行分类。若要使用单输出分类网络对数据进行分类,请使用分类函数。

  • 当您使用不同长度的序列进行预测时,小批大小可能会影响添加到输入数据中的填充量,从而导致不同的预测值。尝试使用不同的值,看看哪个最适合你的网络。要指定小批处理大小和填充选项,请使用MiniBatchSizeSequenceLength选项,分别。

  • 用于预测响应dlnetwork对象,看到预测

例子

全部折叠

加载预训练的网络digitsRegressionNet.该网络是一种预测手写体数字旋转角度的回归卷积神经网络。

负载digitsRegressionNet

查看网络层次。网络的输出层是回归层。

层=净。层
图层数组:1' imageinput'图像输入28x28x1图像,'zerocenter'归一化2' conv_1'卷积8个3x3x1卷积,stride[1 1],填充'same' 3 'batchnorm_1'批量归一化8通道批量归一化4 'relu_1' ReLU ReLU 5 'avgpool2d_1'平均池化2x2平均池化,stride[2 2],填充[0 0 0 0 0]6 'conv_2'卷积16个3x3x8卷积,stride[1 1],填充'same' 7 'batchnorm_2'批量归一化16通道批量归一化8'relu_2' ReLU ReLU 9 'avgpool2d_2' Average Pooling 2x2 Average Pooling with stride [2 2] and padding [0 0 0 0 0] 10 'conv_3' Convolution 32 3x3x16 convolutions with stride [1 1] and padding 'same' 11 'batchnorm_3' Batch Normalization Batch Normalization with stride [1 1] and padding 'same' 14 'batchnorm_4' Batch Normalization Batch Normalization with 32 channels 15 'relu_4' ReLU ReLU 16 'dropout' dropout 20%dropout 17 'fc'全连接1 '全连接层18 'regressionoutput'回归输出均方误差与响应' response '

加载测试图像。

XTest = digitTest4DArrayData;

方法预测输入数据的响应预测函数。

YTest =预测(net,XTest);

随机查看一些测试图像及其预测。

numPlots = 9;idx = randperm(size(XTest,4),numPlots);sz = size(XTest,1);Offset = sz/2;图tiledlayout (“流”i = 1:numPlots nexttile imshow(XTest(:,:,:,idx(i))) title(“观察”+ idx(i))稍等情节(抵消* [1-tand(欧美(idx (i))) 1 +罐内(欧美(idx (i)))),(深圳0),“r——”)举行结束

图中包含9个轴对象。标题为Observation 4074的坐标轴对象1包含2个图像、直线类型的对象。标题为Observation 4529的坐标轴对象2包含2个图像、直线类型的对象。标题为Observation 635的坐标轴对象3包含2个图像、直线类型的对象。标题为Observation 4565的坐标轴对象4包含2个图像、直线类型的对象。标题为Observation 3160的坐标轴对象5包含2个图像、直线类型的对象。标题为Observation 488的坐标轴对象6包含2个图像、直线类型的对象。标题为Observation 1391的坐标轴对象7包含2个图像、直线类型的对象。标题为Observation 2731的坐标轴对象8包含2个图像、直线类型的对象。轴对象9,标题为Observation 4780,包含2个图像、直线类型的对象。

加载预训练的网络freqNet.该网络是一个LSTM回归神经网络,用于预测波形的频率。

负载freqNet

查看网络层次。网络的输出层是回归层。

网层
ans = 4x1带有层的层数组:1 'sequenceinput'序列输入3维序列输入2 'lstm' lstm lstm 100个隐藏单元3 'fc'全连接1全连接层4 'regressionoutput'回归输出均方误差与响应' response '

加载测试序列。

负载WaveformDataX =数据;

方法预测输入数据的响应预测函数。由于网络是使用截断为每个迷你批的最短序列长度的序列来训练的,因此也可以通过设置截断测试序列SequenceLength选项“最短”

Y = predict(net,X,SequenceLength=“最短”);

将前几个预测在一个图中可视化。

图tiledlayout (2, 2)nexttile stackedplot(X{i}',DisplayLabels=“通道”+ (1:3)) xlabel(“时间步”)标题(“预测频率:”+字符串(Y (i)))结束

图中包含类型为stackedplot的对象。类型堆叠图的图表标题为预测频率:5.0212。类型堆叠图的图表标题为预测频率:2.7818。类型堆叠图的图表标题为预测频率:4.4988。类型堆叠图的图表标题为预测频率:4.4981。

输入参数

全部折叠

训练过的网络,指定为SeriesNetwork或者一个DAGNetwork对象。可以通过导入预训练的网络(例如,通过使用googlenet函数)或通过训练自己的网络使用trainNetwork

有关预测响应的信息dlnetwork对象,看到预测

图像数据,指定为下列之一。

数据类型 描述 示例使用
数据存储 ImageDatastore 保存在磁盘上的图像的数据存储

使用保存在磁盘上的图像进行预测,其中图像大小相同。

当图像大小不同时,请使用AugmentedImageDatastore对象。

AugmentedImageDatastore 应用随机仿射几何变换的数据存储,包括调整大小、旋转、反射、剪切和平移

使用保存在磁盘上的图像进行预测,其中图像大小不同。

TransformedDatastore 使用自定义转换函数转换从底层数据存储读取的批量数据的数据存储

  • 对不支持输出的数据存储进行转换金宝app预测

  • 对数据存储输出应用自定义转换。

CombinedDatastore 从两个或多个底层数据存储中读取的数据存储

  • 使用多输入网络进行预测。

  • 组合来自不同数据源的预测器。

自定义小批量数据存储 返回小批量数据的自定义数据存储

使用其他数据存储不支持的格式的数据进行预测。金宝app

详细信息请参见开发自定义小批量数据存储

数字数组 指定为数值数组的图像 使用适合内存的数据进行预测,不需要像调整大小这样的额外处理。
表格 指定为表的映像 使用存储在表格中的数据进行预测。

当使用具有多个输入的网络的数据存储时,该数据存储必须是TransformedDatastoreCombinedDatastore对象。

提示

对于图像序列,例如视频数据,请使用序列输入参数。

数据存储

数据存储读取小批量的图像和响应。当您有不适合内存的数据时,或者当您想要调整输入数据的大小时,请使用数据存储。

这些数据存储直接与预测对于图像数据。

请注意,ImageDatastore对象允许使用预取批量读取JPG或PNG图像文件。如果使用自定义函数读取图像,则ImageDatastore对象不预取。

提示

使用augmentedImageDatastore用于深度学习图像的有效预处理,包括图像大小调整。

请勿使用readFcn选项imageDatastore函数用于预处理或调整大小,因为此选项通常显着较慢。

属性可以使用其他内置数据存储进行预测变换结合功能。这些函数可以将从数据存储读取的数据转换为所需的格式分类

所需的数据存储输出格式取决于网络架构。

网络体系结构 数据存储输出 示例输出
单输入

表或单元格数组,其中第一列指定预测器。

表元素必须是标量、行向量或包含数字数组的1乘1单元格数组。

自定义数据存储必须输出表。

数据=读取(ds)
data = 4×1 table Predictors __________________ {224×224×3 double} {224×224×3 double} {224×224×3 double} {224×224×3 double}
数据=读取(ds)
Data = 4×1 cell array {224×224×3 double} {224×224×3 double} {224×224×3 double} {224×224×3 double}
多个输入

单元格数组至少numInputs列,numInputs是网络输入的数量。

第一个numInputs列指定每个输入的预测器。

输入的顺序由InputNames网络属性。

数据=读取(ds)
Data = 4×2 cell array {224×224×3 double} {128×128×3 double} {224×224×3 double} {128×128×3 double} {224×224×3 double} {128×128×3 double} {224×224×3 double} {128×128×3 double}

预测器的格式取决于数据的类型。

数据 格式
二维图像

h——- - - - - -w——- - - - - -c数字数组,其中hw,c图像的高度、宽度和通道数是否分别为

三维图像 h——- - - - - -w——- - - - - -d——- - - - - -c数字数组,其中hwd,c图像的高度、宽度、深度和通道数是否分别为

有关更多信息,请参见用于深度学习的数据存储

数字数组

对于适合内存且不需要额外处理(如增强)的数据,可以将图像数据集指定为数值数组。

数值数组的大小和形状取决于图像数据的类型。

数据 格式
二维图像

h——- - - - - -w——- - - - - -c——- - - - - -N数字数组,其中hw,c图像的高度、宽度和通道数分别是和N是图像的数量吗

三维图像 h——- - - - - -w——- - - - - -d——- - - - - -c——- - - - - -N数字数组,其中hwd,c图像的高度、宽度、深度和通道数分别为和N是图像的数量吗

表格

作为数据存储或数字数组的替代方法,还可以在表中指定映像。

在表中指定图像时,表中的每一行都对应一个观察值。

对于图像输入,预测器必须在表的第一列中,指定为以下之一:

  • 图像的绝对或相对文件路径,指定为字符向量

  • 包含a的1乘1单元格数组h——- - - - - -w——- - - - - -c表示二维图像的数字数组,其中hw,c分别对应于图像的高度、宽度和通道数

序列或时间序列数据,指定为下列之一。

数据类型 描述 示例使用
数据存储 TransformedDatastore 使用自定义转换函数转换从底层数据存储读取的批量数据的数据存储

  • 对不支持输出的数据存储进行转换金宝app预测

  • 对数据存储输出应用自定义转换。

CombinedDatastore 从两个或多个底层数据存储中读取的数据存储

  • 使用多输入网络进行预测。

  • 组合来自不同数据源的预测器。

自定义小批量数据存储 返回小批量数据的自定义数据存储

使用其他数据存储不支持的格式的数据进行预测。金宝app

详细信息请参见开发自定义小批量数据存储

数字或单元格数组 指定为数值数组的单个序列或指定为数值数组的单元格数组的序列数据集 使用适合内存的数据进行预测,不需要像自定义转换这样的额外处理。

数据存储

数据存储读取小批量的序列和响应。当您拥有不适合内存的数据时,或者当您希望对数据应用转换时,请使用数据存储。

这些数据存储直接与预测序列数据:

属性可以使用其他内置数据存储进行预测变换结合功能。这些函数可以将从数据存储读取的数据转换为所需的表或单元格数组格式预测.例如,您可以转换和组合从内存数组和CSV文件读取的数据ArrayDatastore和一个TabularTextDatastore对象,分别。

数据存储必须返回表或单元格数组中的数据。自定义小批量数据存储必须输出表。

数据存储输出 示例输出
表格
数据=读取(ds)
data = 4×2表预测  __________________ { 12×50双}{12×50双}{12×50双}{12×50双}
单元阵列
数据=读取(ds)
Data = 4×2 cell array {12×50 double} {12×50 double} {12×50 double} {12×50 double}

预测器的格式取决于数据的类型。

数据 预测词的格式
向量序列

c——- - - - - -年代矩阵,c序列的特征数和年代是序列长度

一维图像序列

h——- - - - - -c——- - - - - -年代数组,hc分别对应于图像的高度和通道数,和年代是序列长度。

小批中的每个序列必须具有相同的序列长度。

二维图像序列

h——- - - - - -w——- - - - - -c——- - - - - -年代数组,hw,c分别对应图像的高度、宽度和通道数,和年代是序列长度。

小批中的每个序列必须具有相同的序列长度。

三维图像序列

h——- - - - - -w——- - - - - -d——- - - - - -c——- - - - - -年代数组,hwd,c分别对应图像的高度、宽度、深度和通道数,和年代是序列长度。

小批中的每个序列必须具有相同的序列长度。

对于表中返回的预测器,元素必须包含数字标量、数字行向量或包含数字数组的1乘1单元格数组。

有关更多信息,请参见用于深度学习的数据存储

数字或单元格数组

对于适合内存且不需要自定义转换等额外处理的数据,可以将单个序列指定为数值数组,或将序列数据集指定为数值数组的单元格数组。

对于单元格数组输入,单元格数组必须为N-by-1单元格数组的数值数组,其中N是观测的数量。表示序列的数值数组的大小和形状取决于序列数据的类型。

输入 描述
向量序列 c——- - - - - -年代矩阵,c序列特征的数量和年代是序列长度
一维图像序列 h——- - - - - -c——- - - - - -年代数组,hc分别对应图像的高度和通道数,和年代是序列长度
二维图像序列 h——- - - - - -w——- - - - - -c——- - - - - -年代数组,hw,c分别对应图像的高度、宽度和通道数,和年代是序列长度
三维图像序列 h——- - - - - -w——- - - - - -d——- - - - - -c——- - - - - -年代,在那里hwd,c分别对应三维图像的高度、宽度、深度和通道数,和年代是序列长度

特征数据,指定为以下之一。

数据类型 描述 示例使用
数据存储 TransformedDatastore 使用自定义转换函数转换从底层数据存储读取的批量数据的数据存储

  • 对不支持输出的数据存储进行转换金宝app预测

  • 对数据存储输出应用自定义转换。

CombinedDatastore 从两个或多个底层数据存储中读取的数据存储

  • 使用多输入网络进行预测。

  • 组合来自不同数据源的预测器。

自定义小批量数据存储 返回小批量数据的自定义数据存储

使用其他数据存储不支持的格式的数据进行预测。金宝app

详细信息请参见开发自定义小批量数据存储

表格 作为表指定的特性数据 使用存储在表格中的数据进行预测。
数字数组 指定为数值数组的特征数据 使用适合内存的数据进行预测,不需要像自定义转换这样的额外处理。

数据存储

数据存储读取小批量的特征数据和响应。当您拥有不适合内存的数据时,或者当您希望对数据应用转换时,请使用数据存储。

这些数据存储直接与预测对于特征数据:

属性可以使用其他内置数据存储进行预测变换结合功能。这些函数可以将从数据存储读取的数据转换为所需的表或单元格数组格式预测.有关更多信息,请参见用于深度学习的数据存储

对于有多个输入的网络,数据存储必须是TransformedDatastoreCombinedDatastore对象。

数据存储必须返回表或单元格数组中的数据。自定义小批量数据存储必须输出表。数据存储输出的格式取决于网络架构。

网络体系结构 数据存储输出 示例输出
单输入层

包含至少一列的表或单元格数组,其中第一列指定预测器。

表元素必须是标量、行向量或包含数字数组的1乘1单元格数组。

自定义小批量数据存储必须输出表。

单输入网络表:

数据=读取(ds)
data = 4×2表预测  __________________ { 24×24×1双}{1双}{24×1双}{24×1双}

单输入网络的单元格数组:

数据=读取(ds)
Data = 4×1 cell array {24×1 double} {24×1 double} {24×1 double} {24×1 double}

多个输入层

单元格数组至少numInputs列,numInputs是网络输入的数量。

第一个numInputs列指定每个输入的预测器。

输入的顺序由InputNames网络属性。

双输入网络单元阵列:

数据=读取(ds)
Data = 4×3 cell array {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double}

预测因素肯定是c-by-1列向量,其中c是特征的数量。

有关更多信息,请参见用于深度学习的数据存储

表格

对于适合内存且不需要额外处理(如自定义转换)的特性数据,可以将特性数据和响应指定为表。

表中的每一行都对应一个观察值。预测器在表列中的排列取决于任务的类型。

任务 预测
功能分类

在一个或多个列中作为标量指定的特性。

数字数组

对于适合内存且不需要自定义转换等额外处理的特征数据,可以将特征数据指定为数值数组。

数值数组必须为N——- - - - - -numFeatures数字数组,其中N观察的次数和numFeatures输入数据的特征数。

用于多输入网络的数字或单元格数组。

对于图像、序列和特征预测器输入,预测器的格式必须匹配中描述的格式图片序列,或特性参数描述。

有关如何训练具有多个输入的网络的示例,请参见训练网络图像和特征数据

混合数据,指定为以下之一。

数据类型 描述 示例使用
TransformedDatastore 使用自定义转换函数转换从底层数据存储读取的批量数据的数据存储

  • 使用多输入网络进行预测。

  • 转换不支持的数据存储的输出金宝app预测所以他们有要求的格式。

  • 对数据存储输出应用自定义转换。

CombinedDatastore 从两个或多个底层数据存储中读取的数据存储

  • 使用多输入网络进行预测。

  • 组合来自不同数据源的预测器。

自定义小批量数据存储 返回小批量数据的自定义数据存储

使用其他数据存储不支持的格式的数据进行预测。金宝app

详细信息请参见开发自定义小批量数据存储

属性可以使用其他内置数据存储进行预测变换结合功能。这些函数可以将从数据存储读取的数据转换为所需的表或单元格数组格式预测.有关更多信息,请参见用于深度学习的数据存储

数据存储必须返回表或单元格数组中的数据。自定义小批量数据存储必须输出表。数据存储输出的格式取决于网络架构。

数据存储输出 示例输出

单元格数组numInputs列,numInputs是网络输入的数量。

输入的顺序由InputNames网络属性。

数据=读取(ds)
Data = 4×3 cell array {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double} {24×1 double} {28×1 double}

对于图像、序列和特征预测器输入,预测器的格式必须匹配中描述的格式图片序列,或特性参数描述。

有关如何训练具有多个输入的网络的示例,请参见训练网络图像和特征数据

提示

若要将数值数组转换为数据存储,请使用arrayDatastore

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来名字在报价。

例子:MiniBatchSize = 256指定迷你批处理大小为256。

用于预测的小批的大小,指定为正整数。更大的迷你批处理需要更多的内存,但可以导致更快的预测。

当您使用不同长度的序列进行预测时,小批大小可能会影响添加到输入数据中的填充量,从而导致不同的预测值。尝试使用不同的值,看看哪个最适合你的网络。要指定小批处理大小和填充选项,请使用MiniBatchSizeSequenceLength选项,分别。

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

性能优化,指定为以下之一:

  • “汽车”—自动应用大量适合输入网络和硬件资源的优化。

  • “墨西哥人”—编译并执行MEX函数。该选项仅当使用GPU时有效。使用GPU需要并行计算工具箱和支持的GPU设备。金宝app有关受支持设备的信息,请参见金宝appGPU支金宝app持版本(并行计算工具箱)如果并行计算工具箱或合适的GPU不可用,那么软件将返回一个错误。

  • “没有”-禁用所有加速。

如果加速度“汽车”,然后MATLAB®应用许多兼容优化,但不生成MEX函数。

“汽车”“墨西哥人”选项可以以增加初始运行时间为代价提供性能优势。具有兼容参数的后续调用速度更快。当您计划使用新的输入数据多次调用函数时,请使用性能优化。

“墨西哥人”选项根据函数调用中使用的网络和参数生成并执行一个MEX函数。您可以同时拥有与单个网络关联的多个MEX功能。清除网络变量也会清除与该网络关联的任何MEX函数。

“墨西哥人”选项在使用单个GPU时可用。

使用“墨西哥人”选项,您必须安装C/ c++编译器和GPU Coder™接口深度学习库支持包。金宝app使用MATLAB中的Ad金宝appd-On资源管理器安装支持包。有关设置说明,请参见墨西哥人设置(GPU编码器).GPU Coder不需要。

“墨西哥人”选项不支持所有层。金宝app有关受支持层的列表,请参见金宝app金宝app支持层(GPU编码器)

MATLAB编译器™不支持部署网络时使金宝app用“墨西哥人”选择。

硬件资源,指定为下列之一:

  • “汽车”-如果有GPU,请使用GPU;否则,请使用CPU。

  • “图形”—使用GPU。使用GPU需要并行计算工具箱和支持的GPU设备。金宝app有关受支持设备的信息,请参见金宝appGPU支金宝app持版本(并行计算工具箱)如果并行计算工具箱或合适的GPU不可用,那么软件将返回一个错误。

  • “cpu”—使用CPU。

  • “multi-gpu”—在一台机器上使用多个gpu,使用基于默认集群配置文件的本地并行池。如果当前没有并行池,软件将启动一个大小等于可用gpu数量的并行池。

  • “平行”—根据默认集群配置文件,使用本地或远端并行池。如果当前没有并行池,软件将使用默认集群配置文件启动一个并行池。如果池可以访问GPU,那么只有具有唯一GPU的工作者才能执行计算。如果池中没有gpu,那么计算将在所有可用的CPU worker上进行。

有关何时使用不同执行环境的详细信息,请参见并行、gpu和云中扩展深度学习

“图形”“multi-gpu”,“平行”选项需要并行计算工具箱。要使用GPU进行深度学习,还必须有支持GPU的设备。金宝app有关受支持设备的信息,请参见金宝appGPU支金宝app持版本(并行计算工具箱)如果您选择了这些选项之一,而并行计算工具箱或合适的GPU不可用,则软件将返回一个错误。

“multi-gpu”“平行”选项不支持包含带有状态参数的自金宝app定义层或在预测时有状态的内置层的网络,例如循环层,例如LSTMLayerBiLSTMLayer,或GRULayer对象。

选项返回类别标签,指定为0(虚假的)或1(真正的)。

如果ReturnCategorical1(true),则函数返回分类输出层的类别标签。否则,该函数返回分类输出层的预测分数。

填充、截断或分割输入序列的选项,指定为下列之一:

  • “最长”-每个小批中的衬垫序列与最长序列具有相同的长度。这个选项不会丢弃任何数据,尽管填充会给网络带来噪声。

  • “最短”-截断每个小批中的序列,使其长度与最短序列相同。此选项确保不添加填充,但要以丢弃数据为代价。

  • 正整数-对于每个迷你批,将序列填充到指定长度的最近倍数,该倍数大于迷你批中最长的序列长度,然后将序列分割为指定长度的更小序列。如果发生分裂,那么软件将创建额外的小批。如果完整序列不适合内存,请使用此选项。或者,尝试通过设置。来减少每个小批的序列数MiniBatchSize选择较低的值。

有关填充、截断和分隔输入序列的效果的详细信息,请参见序列填充,截断和分割

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

填充或截断方向,指定为下列之一:

  • “正确”-填充或截断右边的序列。序列在同一时间步开始,软件截断或增加填充序列的结束。

  • “左”-填充或截断左边的序列。该软件截断或添加填充到序列的开始,以便序列在同一时间步结束。

因为循环层处理序列数据一次一步,当循环层OutputMode属性是“最后一次”,最后时间步长的任何填充都会对层输出产生负面影响。若要在左侧填充或截断序列数据,请设置SequencePaddingDirection选项“左”

对于序列对序列网络(当OutputMode属性是“序列”对于每个循环层),第一次时间步骤中的任何填充都会对早期时间步骤的预测产生负面影响。若要在右侧填充或截断序列数据,请设置SequencePaddingDirection选项“正确”

有关填充、截断和分隔输入序列的效果的详细信息,请参见序列填充,截断和分割

用于填充输入序列的值,指定为标量。

该选项仅当SequenceLength“最长”或者一个正整数。不垫序列用,因为这样做会在整个网络中传播错误。

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

输出参数

全部折叠

预测的响应,作为数字数组、分类数组或单元格数组返回。的格式Y这取决于问题的类型。

下表描述了回归问题的格式。

任务 格式
二维图像回归
  • N——- - - - - -R矩阵,N是图像的数量和R回复的数量是多少

  • h——- - - - - -w——- - - - - -c——- - - - - -N数字数组,其中hw,c图像的高度、宽度和通道数分别是和N是图像的数量吗

三维图像回归
  • N——- - - - - -R矩阵,N是图像的数量和R回复的数量是多少

  • h——- - - - - -w——- - - - - -d——- - - - - -c——- - - - - -N数字数组,其中hwd,c图像的高度、宽度、深度和通道数分别为和N是图像的数量吗

Sequence-to-one回归 N——- - - - - -R矩阵,N序列数是和吗R回复的数量是多少
Sequence-to-sequence回归

N-by-1单元数组的数值序列,其中N是序列的个数。序列是矩阵R行,R是响应的数量。后的相应输入序列具有相同数量的时间步长SequenceLength选项独立应用于每个小批。

对于只有一次观测的序列到序列的回归任务,序列可以是矩阵。在这种情况下,Y是响应的矩阵。

功能回归

N——- - - - - -R矩阵,N观察的次数和R回复的数量是多少

对于单次观测的序列到序列回归问题,序列可以是矩阵。在这种情况下,Y是响应的矩阵。

如果ReturnCategorical0(false),网络的输出层为分类层,则Y是预测分级分数。该表描述分类任务的评分格式。

任务 格式
图像分类 N——- - - - - -K矩阵,N观察的次数和K是课程的数量吗
Sequence-to-label分类
功能分类
Sequence-to-sequence分类

N矩阵的-by-1单元数组,其中N是观测的数量。序列是矩阵K行,K是类的数量。后的相应输入序列具有相同数量的时间步长SequenceLength选项独立应用于每个小批。

如果ReturnCategorical1(正确),网络的输出层为分类层,则Y是分类向量或分类向量的单元格数组。该表描述了分类任务的标签格式。

任务 格式
图像或特征分类 N-by-1的标签分类向量,其中N是观测的数量
Sequence-to-label分类
Sequence-to-sequence分类

N标签分类序列的-by-1单元格数组,其中N是观测的数量。后的相应输入序列具有相同数量的时间步长SequenceLength选项独立应用于每个小批。

对于单次观测的序列到序列分类任务,序列可以是矩阵。在这种情况下,Y是标签的分类序列。

具有多个输出的网络的预测分数或响应,作为数字数组、分类数组或单元格数组返回。

每个输出Yj对应网络输出net.OutputNames (j)的描述格式Y输出参数。

算法

当你训练一个网络使用trainNetwork函数,或者当您使用预测或验证函数时DAGNetworkSeriesNetwork对象,该软件使用单精度浮点运算来执行这些计算。用于训练、预测和验证的函数包括trainNetwork预测分类,激活.当您使用cpu和gpu训练网络时,该软件使用单精度算法。

选择

对于只有单一分类层的网络,您可以使用分类函数。

要从网络层计算激活,请使用激活函数。

对于循环网络,例如LSTM网络,您可以使用classifyAndUpdateStatepredictAndUpdateState

参考文献

[1]工藤,美一,富山俊,新保真。“使用穿过区域的多维曲线分类”模式识别信20日,没有。11-13(1999年11月):1103-11。https://doi.org/10.1016/s0167 - 8655 (99) 00077 - x

[2]UCI机器学习库:日语元音数据集https://archive.ics.uci.edu/ml/datasets/Japanese+Vowels

扩展功能

版本历史

在R2016a中引入