## Documentation Center |

Mean squared normalized error performance function

`perf = mse(net,t,y,ew)`

`mse` is a network performance function. It
measures the network's performance according to the mean of
squared errors.

`perf = mse(net,t,y,ew)` takes these arguments:

net | Neural network |

t | Matrix or cell array of targets |

y | Matrix or cell array of outputs |

ew | Error weights (optional) |

and returns the mean squared error.

This function has two optional parameters, which are associated
with networks whose `net.trainFcn` is set to this
function:

`'regularization'`can be set to any value between 0 and 1. The greater the regularization value, the more squared weights and biases are included in the performance calculation relative to errors. The default is 0, corresponding to no regularization.`'normalization'`can be set to`'none'`(the default);`'standard'`, which normalizes errors between -2 and 2, corresponding to normalizing outputs and targets between -1 and 1; and`'percent'`, which normalizes errors between -1 and 1. This feature is useful for networks with multi-element outputs. It ensures that the relative accuracy of output elements with differing target value ranges are treated as equally important, instead of prioritizing the relative accuracy of the output element with the largest target value range.

You can create a standard network that uses `mse` with `feedforwardnet` or `cascadeforwardnet`.
To prepare a custom network to be trained with `mse`,
set `net.performFcn` to `'mse'`.
This automatically sets `net.performParam` to a structure
with the default optional parameter values.

Here a two-layer feedforward network is created and trained
to predict median house prices using the `mse` performance
function and a regularization value of 0.01, which is the default
performance function for `feedforwardnet`.

[x,t] = house_dataset; net = feedforwardnet(10); net.performFcn = 'mse'; % Redundant, MSE is default net.performParam.regularization = 0.01; net = train(net,x,t); y = net(x); perf = perform(net,t,y);

Alternately, you can call this function directly.

perf = mse(net,x,t,'regularization',0.01);

Was this topic helpful?