Calculate network performance
perform(net,t,y,ew)
perform(net,t,y,ew)
takes these arguments,
net | Neural network |
t | Target data |
y | Output data |
ew | Error weights (default = |
and returns network performance calculated according to the
net.performFcn
and net.performParam
property
values.
The target and output data must have the same dimensions. The error weights may be the same dimensions as the targets, in the most general case, but may also have any of its dimensions be 1. This gives the flexibility of defining error weights across any dimension desired.
Error weights can be defined by sample, output element, time step, or network output:
ew = [1.0 0.5 0.7 0.2]; % Across 4 samples ew = [0.1; 0.5; 1.0]; % Across 3 elements ew = {0.1 0.2 0.3 0.5 1.0}; % Across 5 timesteps ew = {1.0; 0.5}; % Across 2 outputs
The error weights can also be defined across any combination, such as across two time-series (i.e., two samples) over four timesteps.
ew = {[0.5 0.4],[0.3 0.5],[1.0 1.0],[0.7 0.5]};
In the general case, error weights may have exactly the same dimensions as targets, in which case each target value will have an associated error weight.
The default error weight treats all errors the same.
ew = {1}
Here a simple fitting problem is solved with a feed-forward network and its performance calculated.
[x,t] = simplefit_dataset; net = feedforwardnet(20); net = train(net,x,t); y = net(x); perf = perform(net,t,y)
perf = 2.3654e-06