主要内容

mse

半均方误差

说明

半均方误差运算计算回归任务的网络预测值和目标值之间的半均方误差损失。

注意

推荐使用 l2loss 而不是 mse,因为它可用于控制权重、屏蔽和规一化。

要使用 trainnet 函数以均方误差损失训练网络,请将损失函数设置为 "mse"

loss = mse(Y,targets) 计算回归问题的预测值 Y 和目标值 targets 之间的半均方误差损失。输入 Y 必须是格式化的 dlarray。输出 loss 是未格式化的 dlarray 标量。

示例

Y 不是格式化的 dlarray 时,loss = mse(Y,targets,'DataFormat',FMT) 还指定维度格式 FMT

示例

全部折叠

半均方误差计算网络预测值与目标值的吻合程度。

将输入预测值创建为由随机值组成的单个观测值,其高度和宽度为六,具有单个通道。

height = 6;
width = 6;
channels = 1;
observations = 1;

Y = rand(height,width,channels,observations);
Y = dlarray(Y,'SSCB')

将目标值创建为数值数组,其维度顺序与输入数据 Y 相同。

targets = ones(height,width,channels,observations);

计算预测值和目标值之间的半均方误差。

loss = mse(Y,targets)
loss =

  1x1 dlarray

    5.2061

输入参数

全部折叠

预测值,指定为格式化或未格式化的 dlarray 对象,或数值数组。当 Y 不是格式化的 dlarray 时,必须使用 DataFormat 参量指定维度格式。

如果 Y 是数值数组,则 targets必须是 dlarray 对象。

目标值响应,指定为格式化或未格式化的 dlarray,或数值数组。

targets 的每个维度的大小必须与 Y 的对应维度的大小匹配。

如果 targets 是格式化的 dlarray,则其格式必须与 Y 的格式相同,或者如果 Y 未格式化,则其格式必须与 DataFormat 相同。

如果 targets 是未格式化的 dlarray 或数值数组,则该函数将 Y 的格式或 DataFormat 的值应用于 targets

提示

格式化的 dlarray 对象会自动置换基础数据的维度,使其顺序为:"S"(空间)、"C"(通道)、"B"(批量)、"T"(时间),然后是 "U"(未指定)。为了确保 Ytargets 的维度一致,当 Y 为格式化的 dlarray 时,也请将 targets 指定为格式化的 dlarray

数据维度的描述,指定为字符向量或字符串标量。

数据格式是一个字符串,其中每个字符描述对应数据的维度的类型。

这些字符是:

  • "S" - 空间

  • "C" - 通道

  • "B" - 批量

  • "T" - 时间

  • "U" - 未指定

例如,假设有一个表示一批序列的数组,其中第一个、第二个和第三个维度分别对应于通道、观测值和时间步。您可以将该数据描述为具有格式 "CBT"(通道、批量、时间)。

您可以指定多个标注为 "S""U" 的维度。每个 "C""B""T" 标签最多可以使用一次。该软件忽略第二个维度后的单一尾部 "U" 维度。

如果输入数据不是格式化的 dlarray 对象,则必须指定 FMT 选项。

有关详细信息,请参阅Deep Learning Data Formats

数据类型: char | string

输出参量

全部折叠

半均方误差损失,以未格式化的 dlarray 标量形式返回。输出 loss 与输入 Y 具有相同的基础数据类型。

算法

全部折叠

扩展功能

全部展开

版本历史记录

在 R2019b 中推出