人工神经网络呈现非分类输入

时间:2014-08-16 00:04:00

标签: matlab neural-network classification

我正在尝试使用前馈神经网络对部分时间序列数据进行分类,其中在单个隐藏层中使用20个神经元,并且3个输出对应于我希望能够识别的3个事件。还有许多其他的东西我可以在数据中进行分类(显然),但我暂时并不关心它们。神经网络创建和训练已经使用Matlab的神经网络工具箱进行模式识别,因为这是一个分类问题。

为了做到这一点,我按顺序填充移动窗口,然后将窗口输入神经网络。我的问题是,我显然无法对时间序列所采用的每种可能的形状进行分类和训练。因此,我通常会在窗口中填充与我用来训练神经网络的窗口看起来非常不同的数据,但仍然可以得到接近1的输出。

基本上,我训练人工神经网络的3件事是20个不同数据集的窗口,这些数据集对应于与稳态相对应的形状,曲线以负斜率开始并且水平偏离0斜率(基本上是左半部分)向上打开的抛物线的一侧),以及对应于0斜率的曲线,该曲线快速下降(抛物线的右半侧向下打开)。

我认为如果我输入的数据与我训练人工神经网络的任何项目不对应,我是否应该输出接近0的所有输出值?

或者是否可能是因为这些基本上涵盖了稳态的所有基础,增加和减少,尽管斜率差异很大,因此有些东西总是被分类?

我想我只需要朝着正确的方向轻推。

1 个答案:

答案 0 :(得分:0)

神经网络输出值

如果在训练期间提供了这些输入值/预期输出值,神经网络可能无法保证特定的输出值。

  

对于未经训练的输入值,神经网络不会始终输出0。

解决方案是简单地向网络提供一个输入值数组,这些输入值应该导致网络输出0。