主要内容

regressionLayer

回归输出层

描述

回归层计算回归任务的半均方误差损失。

= regressionLayer返回神经网络的回归输出层RegressionOutputLayer对象。

预测一个训练的回归网络的响应预测.将响应归一化通常有助于稳定和加速神经网络的回归训练。有关更多信息,请参见训练卷积神经网络用于回归

例子

= regressionLayer (名称,值设置可选的名字而且ResponseNames使用名称-值对的属性。例如,regressionLayer(“名字”,“输出”)创建一个名称为的回归层“输出”.将每个属性名用单引号括起来。

例子

全部折叠

创建一个带有名称的回归输出层“routput”

层= regressionLayer (“名字”“routput”
Name: 'routput' ResponseNames: {} Hyperparameters LossFunction: 'mean-squared-error'

回归的默认损失函数是均方误差。

在图层数组中包含一个回归输出层。

层= [...imageInputLayer([28 28 1]) convolution2dLayer(12,25) reluLayer fulllyconnectedlayer (1) regressionLayer]
2”二维卷积25 12x12卷积与步幅[1 1]和填充[0 0 0 0]3”ReLU ReLU 4“完全连接1完全连接层5”回归输出均方误差

输入参数

全部折叠

名称-值参数

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

在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

例子:regressionLayer(“名字”,“输出”)创建一个名称为的回归层“输出”

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

数据类型:字符|字符串

响应的名称,指定字符向量的单元格数组或字符串数组。在训练时,软件根据训练数据自动设置响应名称。默认值是{}

数据类型:细胞

输出参数

全部折叠

回归输出层,返回为RegressionOutputLayer对象。

更多关于

全部折叠

回归输出层

回归层计算回归任务的半均方误差损失。对于典型的回归问题,回归层必须遵循最终的完全连接层。

对于单个观测,均方误差为:

均方误差 1 R t y 2 R

在哪里R是回应的数量,t目标输出,和y是网络对反应的预测吗

对于图像和序列对一回归网络,回归层的损失函数是预测响应的半均方误差,而不是归一化R

损失 1 2 1 R t y 2

对于图像到图像的回归网络,回归层的损失函数是每个像素的预测响应的半均方误差,而不是归一化R

损失 1 2 p 1 H W C t p y p 2

在哪里HW,C分别表示输出的高度、宽度和通道数,和p的每个元素(像素)的索引t而且y线性。

对于序列对序列回归网络,回归层的损失函数是每个时间步的预测响应的半均方误差,不归一化为R

损失 1 2 年代 1 年代 j 1 R t j y j 2

在哪里年代为序列长度。

当训练时,软件计算小批量观测的平均损失。

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

GPU的代码生成
使用GPU Coder™为NVIDIA GPU生成CUDA®代码。

版本历史

介绍了R2017a

Baidu
map