我希望在matlab中第一次创建神经网络。因此,我只是有点困惑,需要一些快速指导。下面是一张图片:
现在我正在/需要验证的问题是从我的隐藏层生成的移动到我的外层的值是这些值0' s和1' s?即从u0到unh这些节点输出0和1以及0到1之间的值,如0.8,0.4等?另一个问题是我的输出节点应该输出0到1之间的值,以便可以找到错误并在反向传播中使用?
就像我说的那样,这是我第一次这样做,所以我只需要一些指导。
答案 0 :(得分:1)
不完全,隐藏层的输出与任何其他层一样,每个节点都给出一个范围值。因此,神经网络中任何节点的输出通常限于[0,1]或[-1,1]范围。您的输出节点将类似地输出一系列值,但为了简化解释,该范围通常会被阈值化以捕捉到0或1。
然而,这并不意味着输出是线性分布的。通常你有一个sigmoid或其他一些非线性的分布,它通过中间的[-0.5,0.5]范围传播更多信息,而不是在域中均匀分布。有时,特殊功能用于检测某些模式,例如正弦曲线 - 尽管通常这种情况很少见,而且通常是不必要的。