Netlab - 如何计算错误?
Netlab - How are the errors calculated?
我正在尝试使用 Matlab 上的 Netlab 优化和验证神经网络
我想找到每次迭代的误差值,这样我就可以在绘图上看到收敛。这可以通过存储命令 window 中出现的错误来完成,这是通过使用 options(1) 设置为 1 来完成的 errlog 是一个 netopt 输出。
但是这些错误与 mlperr 不同,后者给出的错误值为 0.5*(平方和错误)最后一次迭代。如果我不知道它们是如何计算的,我就不能真正有效地使用它们。
有谁知道命令 window 中显示的错误代表什么(我使用 缩放共轭梯度 作为我的优化算法)?
有没有办法为网络的每次迭代存储 mlperr
运行?
非常感谢任何帮助,非常感谢!
注意:
我试过做类似的事情:
ftp://ftp.dcs.shef.ac.uk/home/spc/com336/neural-lab-wk6.html
然而,出于某种原因,它给 运行 网络提供了不同的结果,其迭代次数在选项 (14) 而不是 k 下指定。
当然可以,
ERRLOG 向量,创建为网络优化函数 netopt 的输出,语法如下
[NET, OPTIONS, ERRLOG] = netopt(NET, OPTIONS, X, T, ALG)
ERRLOG的每一行给出0.5*SSE(误差平方和)用于相应的网络优化迭代。该误差是在预测输出 (y) 和目标输出 (t) 之间计算的。
MLPERR函数,语法如下
E = mlperr(NET, X, T)
它还在预测输出 (y) 和目标输出 (t) 之间给出 0.5*SSE,但是由于网络参数是常数(NET 应该是预训练的),E 是奇异值。
如果 netopt 运行 输出 ERRLOG,然后 MLPERR 是 运行 具有相同的网络和变量,E 应该与 ERRLOG 的最后一行的值相同(网络优化最后一次迭代后的错误)。
希望这对某人有用!
我正在尝试使用 Matlab 上的 Netlab 优化和验证神经网络
我想找到每次迭代的误差值,这样我就可以在绘图上看到收敛。这可以通过存储命令 window 中出现的错误来完成,这是通过使用 options(1) 设置为 1 来完成的 errlog 是一个 netopt 输出。
但是这些错误与 mlperr 不同,后者给出的错误值为 0.5*(平方和错误)最后一次迭代。如果我不知道它们是如何计算的,我就不能真正有效地使用它们。
有谁知道命令 window 中显示的错误代表什么(我使用 缩放共轭梯度 作为我的优化算法)?
有没有办法为网络的每次迭代存储 mlperr 运行?
非常感谢任何帮助,非常感谢!
注意: 我试过做类似的事情: ftp://ftp.dcs.shef.ac.uk/home/spc/com336/neural-lab-wk6.html
然而,出于某种原因,它给 运行 网络提供了不同的结果,其迭代次数在选项 (14) 而不是 k 下指定。
当然可以,
ERRLOG 向量,创建为网络优化函数 netopt 的输出,语法如下
[NET, OPTIONS, ERRLOG] = netopt(NET, OPTIONS, X, T, ALG)
ERRLOG的每一行给出0.5*SSE(误差平方和)用于相应的网络优化迭代。该误差是在预测输出 (y) 和目标输出 (t) 之间计算的。
MLPERR函数,语法如下
E = mlperr(NET, X, T)
它还在预测输出 (y) 和目标输出 (t) 之间给出 0.5*SSE,但是由于网络参数是常数(NET 应该是预训练的),E 是奇异值。
如果 netopt 运行 输出 ERRLOG,然后 MLPERR 是 运行 具有相同的网络和变量,E 应该与 ERRLOG 的最后一行的值相同(网络优化最后一次迭代后的错误)。
希望这对某人有用!