Main Content

mse

均方归一化误差性能函数

说明

示例

提示

要在深度学习中使用均方误差,请使用 regressionLayer,或使用 dlarray 方法 mse。

perf = mse(net,t,y,ew) 采用神经网络 net、目标矩阵或元胞数组 t、输出矩阵或元胞数组 y 和误差权重 ew,并返回均方误差。

此函数有两个可选参数,它们与 net.trainFcn 设置为此函数的网络相关联:

  • 'regularization' 可以设置为 0 到 1 之间的任何值。正则化值越大,性能计算中包含的相对于误差的平方权重和偏置就越大。默认值为 0,对应于无正则化。

  • 'normalization' 可以设置为 'none'(默认值);'standard',将 -2 和 2 之间的误差归一化,对应于将 -1 和 1 之间的输出和目标归一化;以及 'percent',将 -1 和 1 之间的误差归一化。此功能对于具有多元素输出的网络非常有用。它确保具有不同目标值范围的输出元素的相对精度被视为具有相同的重要性,而不是优先考虑具有最大目标值范围的输出元素的相对精度。

您可以创建一个将 msefeedforwardnetcascadeforwardnet 搭配使用的标准网络。要准备使用 mse 训练的自定义网络,请将 net.performFcn 设置为 'mse'。这会自动将 net.performParam 设置为具有默认可选参数值的结构体。

mse 是网络性能函数。它根据均方误差来衡量网络性能。

示例

全部折叠

此示例说明如何使用 mse 性能函数训练神经网络。

此处创建并训练一个两层前馈网络,以使用 mse 性能函数和正则化值 0.01 来估计体脂百分比。

[x, t] = bodyfat_dataset;
net = feedforwardnet(10);
net.performParam.regularization = 0.01;

MSE 是 feedforwardnet 的默认性能函数。

net.performFcn

训练网络并评估性能。

net = train(net, x, t);
y = net(x);
perf = perform(net, t, y)

您也可以直接调用 mse

perf = mse(net, t, y, 'regularization', 0.01)

输入参数

全部折叠

神经网络,指定为 network 对象。

示例: net = feedforwardnet(10);

目标,指定为矩阵或元胞数组。

输出,指定为矩阵或元胞数组。

误差权重,指定为标量。

输出参量

全部折叠

以均方误差表示的网络性能。

版本历史记录

在 R2006a 之前推出

另请参阅