我是否可以使用神经网络来获得输出序列的估计值,只知道输入?

时间:2012-03-13 13:13:59

标签: matlab neural-network

假设我有一个模型

h(t)= F [h(t-1),h(t-2),...,u(t-1),u(t-2),...]

其中F []是函数中包含的变量的非线性函数。

例如,h(t)可能是:

h(t)= h(t-1)+ u(t-1)+ h(t-1)* u(t-1)+ h(t-1)* h(t-2)< / p>

现在,为了我的问题,我只有数据系列u(t)可供我使用。我没有h(t)系列,也不知道模型。

通过提供u(t),我是否可以使用神经网络工具箱生成h(t)的良好非线性估计?如果是这样,我会使用什么神经网络?

2 个答案:

答案 0 :(得分:1)

对我来说,这就像教孩子们的乘法而不给任何暗示什么是正确的解决方案。您至少应该能够提供某种适应度来估算您的ANN的表现。然后,您可以使用进化算法(例如CMA-ES)来优化您的ANN。

答案 1 :(得分:1)

我假设(h(t-1),h(t-2),...)是一个时间序列。我打电话给(h(t-1),h(t-2),......)时间序列h 和(u(t-1),u(t-2), ...)时间序列u 。因此,您拟合一个ANN模型,其中包含h的当前值的知识,称为 h(t),以及u的先前历史时间序列(时间序列u)。

如果你能在不知道之前的 h时间序列的情况下找到 h(t)的功能,那么你将没有h(t-1)的功能,h(t-2)等。数学上这意味着你不依赖于h的历史值。

对于某些域,您的模型可能只能准确预测 h(t)给定时间序列u 的值,但我不相信这样的模型给出的是:

  1. 你说 h(t) h(t)
  2. 之前的值有非线性依赖关系
  3. 你首先提到时间序列h
  4. 这让我相信你会在时间序列h 很重要的领域中使用该模型,并且因为模型是非线性的,所以一旦你越过你的模型,错误会急剧增加区域。更糟糕的是,如果不了解 h时间序列,你甚至不知道“合适的”区域在哪里。

    如果你有这个模型,可能会有一些棘手的方法来获得 h(t) h时间序列以及 u时间序列,但我认为这不是你要问的。