解释我的神经网络输出

时间:2012-09-17 17:43:47

标签: artificial-intelligence neural-network

我正在使用具有激活功能的NN:

F = 1 /(1 + e ^( - 4.9 * S))
S是输入之和

网络有1个输出节点,被解释为电机的状态
电机有3种状态:1顺时针运动2-逆时针运动3锁定

问题是我应该如何解释输出? 例如说:

是否正确
  • if(输出> 0.8)然后顺时针运动
  • if(0.2> output< 0.8)然后锁定
  • if(输出<0.2)然后逆时针运动

我的意思是解释输出是否正确,因为它有3个状态?单个节点是否有权拥有3个状态?或者我必须为3个状态设置3个不同的节点?

另一种问这个问题的方法: 0.2到0.8之间的值是什么意思还是它还没有确定?

另一个相关问题:单个输出节点可以表示电机的度数吗?例如0-> 0度0.5-> 180度-1-> 360度......

2 个答案:

答案 0 :(得分:1)

这完全取决于你的神经网络。对于你所描述的那个,我会说可以代表中间状态,或者它可以代表“混淆的神经网络”。

因此,我建议有三个输出。无论出于什么原因,如果没有人开火,或者不止一次开火,你就会知道有什么东西被打破了。

是的,你可以让神经网络输出一个连续的变量,但它需要稍微仔细的调整,并且可能至少是最后一层的线性激活函数。

答案 1 :(得分:1)

我同意(与zabediah49一起)三个输出听起来更合理,每个状态一个。如果状态是相互排斥的,听起来就像它们一样,我甚至会考虑使用softmax输出而不是sigmoid。

-O