首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用创建的“网络”神经网络对象进行预测?

如何使用创建的“网络”神经网络对象进行预测?
EN

Stack Overflow用户
提问于 2013-05-06 15:03:43
回答 2查看 1.1K关注 0票数 0

通过在1x1247输入向量上进行训练,我使用 net 创建了NAR (非线性自回归)网络对象。(6年的每日股价)我已经完成了所有的步骤,并将生成的净对象保存到工作区。

现在我不知道如何使用这个对象来预测y(t),例如t= 2000,(我训练了t=1:1247的模型)

在其他一些线程中,人们建议使用sim(net,t)函数,但是对于t的任何值(与net(t)函数相同),这将给出相同的结果。

EN

回答 2

Stack Overflow用户

发布于 2013-05-06 15:11:35

我不熟悉特定的神经网络命令,但我认为你是以错误的方式处理这个问题。通常,您希望在时间上对演化进行建模。您可以通过指定一个特定的窗口(比如3个月)来实现这一点。

你现在正在训练的是一个单一的输入向量,它没有时间上的进化信息。你总是得到同样的预测是因为你只使用一个点进行训练(即使它是1247维,它仍然是1分)。

您可能希望生成这种性质的输入向量(为了简单起见,假设您使用的是数月):

代码语言:javascript
复制
[month1 month2; month2 month 3; month3 month4]

此示例包含2个训练点,时间为3个月。注意它们是重叠的。

票数 1
EN

Stack Overflow用户

发布于 2013-09-20 10:04:07

在对网络进行培训和验证之后,可以使用网络对象来计算网络对任何输入的响应。例如,如果希望在构建数据集中找到对第五个输入向量的网络响应,则可以使用以下a= net(houseInputs(:,5)) a= 34.3922,如果您尝试此命令,则输出可能有所不同,这取决于网络初始化时随机数生成器的状态。下面,调用网络对象来计算住宅数据集中所有输入向量的并发集的输出。这是模拟的批处理方式,所有的输入向量都放在一个矩阵中。这比一次只呈现一个向量要有效得多。A= net(houseInputs);每次神经网络被训练时,由于初始权重和偏差值的不同以及将数据划分为训练、验证和测试集,可以得到不同的解决方案。因此,不同的神经网络对同一问题进行训练,可以为同一输入提供不同的输出。为了保证神经网络具有较好的精度,对其进行多次再训练。如果需要更高的精度,还有其他几种改进初始解的技术。有关更多信息,请参见改进神经网络泛化和避免过度拟合。强文本

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16401586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档