Вычислите производительность сети
perform(net,t,y,ew)
perform(net,t,y,ew)
берет эти аргументы,
net | Нейронная сеть |
t | Целевые данные |
y | Выходные данные |
ew | Веса ошибок (значение по умолчанию = |
и возвращает производительность сети, вычисленную согласно net.performFcn
и net.performParam
значения свойств.
Целевые и выходные данные должны иметь те же размерности. Веса ошибок могут быть теми же размерностями как цели, в наиболее общем случае, но могут также иметь любую из его размерностей быть 1. Это дает гибкость определения весов ошибок через любую желаемую размерность.
Веса ошибок могут быть заданы демонстрационным, выходным элементом, временным шагом или сетевым выходом:
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
Веса ошибок могут также быть заданы через любую комбинацию, такой как через два timeseries (i.e., две выборки) более чем четыре такта.
ew = {[0.5 0.4],[0.3 0.5],[1.0 1.0],[0.7 0.5]};
В общем случае веса ошибок могут иметь точно те же размерности как цели, в этом случае каждое целевое значение будет иметь связанный вес ошибки.
Вес ошибки по умолчанию обрабатывает все ошибки то же самое.
ew = {1}
Здесь простая подходящая задача решена с сетью прямого распространения и ее вычисленной эффективностью.
[x,t] = simplefit_dataset; net = feedforwardnet(20); net = train(net,x,t); y = net(x); perf = perform(net,t,y)
perf = 2.3654e-06