关注matlab神经网络工具箱

时间:2013-09-03 20:14:53

标签: matlab machine-learning neural-network

我有一些关于在matlab工具箱中使用nntool的问题。在这些Simple Linear Neural Network Weights from Training , are not compatable with training results, cant understand why之类的链接之后,我发现默认情况下,nntool将输入规范化为范围[-1 1]。所以我有点担心,我在第一层创建了一个带有tansig激活的神经网络,并在输出层中创建了logsig激活。我手动将输出标准化为数据中[0 1]的范围并将其输入到nntool。现在我的问题是nntool是否进一步将其标准化为范围[-1 1]。如果确实如此,那么logig的输出不能在[-1 1]的范围内。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我不是matlab用户,但如果您不想使用规范化并且它在输入和输出上都被强制 - 那么只需对输出进行非规范化。我假设它是简单的线性归一化(压缩到[-1,1]间隔),所以如果你想在[0,1]间隔输出,你可以简单地应用f(x) = (x+1)/2线性映射{{1}到[-1,1]。神经网络具有尺度敏感性(因为它与激活函数斜率等非可调参数密切相关),因此内部归一化具有其优势。如果在强化培训后应用标准化,这应该有效。

如果它只标准化输入那么你不应该担心,这并不意味着使用任何激活功能有任何问题(事实上,如前所述,它应该实际上有帮助)。

更新

作为question has been also posted on the Cross Validated更多细节,我已经在那里用更精确的解决方案回答了它。