所以我开始学习神经网络,但我发现很难弄清楚基础知识。感谢任何人可以提供的任何帮助..
1) 是否有应该输入到神经元的标准值?例如,如果一个神经元有 5 个传入连接,每个连接是否应该提供 a) 0 到 1 之间的连续值?b) 0 还是 1?c) 别的?
2) 如果使用 tanh 的激活函数,这意味着如果点积输入达到大约 3 (tanh(3) = .995),神经元将开始输出 1。如果我有一个包含 20 个隐藏节点的层,这意味着如果我们要避免最大化激活函数,那么权重需要很小——大约 0.05 标记?那么为什么我们将起始权重设置在 -1 和 1 之间呢?最好从很小的地方开始?
3)神经元的输出应该是什么?a) 介于 0 和 1 之间的值?b) 0 还是 1?c) 别的?一些 ANN 的神经元输出在 -1 和 1 之间吗(我想我已经看到了?)
4)似乎输入层和输出层的规则发生了变化?对于输入层,我想您必须将输入数据编码为合适的格式。这是否总是意味着编码为 0 到 1 之间的值?同样对于输出层,大概您必须将输出值按摩到有用的东西?因此,也许如果您的 ANN 输出一个介于 0 和 1 之间的连续值,并且您想要一个是或否,那么您可以制定一个规则,即 <0.5 为否,>0.5 为是。它是这样工作的吗?
5) 将标量输入值编码为二进制有缺点吗?看起来有点奇怪,一个大数可能有一个 1 作为最后一位,而那个数字+1 有一个 0 作为最后一位?是否有更连续的编码值的方法效果更好?
对不起,很多问题..感谢任何答案。谢谢!