我有一个可能不重要的问题,但是我所看过的地方都没有描述。我正在研究神经网络,到处都可以看到一些理论和一些琐碎的示例,其中一些输入为0和1。我想知道:我是否只需要将一个值作为一个神经元的输入值,或者说它可以是3个值(例如RGB颜色)的 vector ?

最佳答案

上面的答案在技术上是正确的,但不能解释简单的事实:永远不会出现需要为单个神经元提供数字 vector 的情况。

从实际的 Angular 来看,这是因为(如较早的解决方案之一所示),您可以为 vector 中的每个数字提供一个神经元,然后将所有这些都作为单个神经元的输入。这将使您在训练后获得所需的行为,因为第二层神经元可以有效利用整个 vector 。

从数学的 Angular 来看,有一个编码理论的基本定理,指出任何数字 vector 都可以表示为一个数字。因此,如果您确实不想要额外的神经元层,则可以将RGB值编码为单个数字,然后将其输入到神经元中。虽然,此编码功能可能会使大多数学习问题更加困难,所以我怀疑这种解决方案在大多数情况下是否值得。

概括地说:人工神经网络在不向输入单元提供 vector 的情况下使用,但因此不会损失任何计算能力。

09-27 08:59