时间序列预测是金融、经济和工程等各个领域的一项重要任务。根据过去的观察准确预测未来值有助于做出明智的决策并提高整体绩效。时间序列预测的一种方法是使用 NARX(具有外生输入的非线性自回归)网络。在这篇博文中,我们将探索 NARX 网络在 MATLAB 中进行时间序列预测的强大功能。

随时间收集的数据点集合称为时间序列。时间序列预测是根据过去的观察结果预测未来值的过程。采用 ARIMA(自回归积分移动平均)模型等传统时间序列预测技术已成为一种常见的做法。然而,非线性和动态系统的建模能力受到这些技术的限制。
可以处理非线性和动态系统的递归神经网络 (RNN) 类型包括 NARX 网络。由于其自回归架构,NARX 网络使用时间序列中的历史数据来预测未来值。它们还包含外生输入,这些是可以做出预测的额外因素。正如 Cybenko (1989) 在他关于 NARX 网络的论文中指出的那样,“NARX 模型是一个强大的架构,用于对具有输入和输出的非线性动态系统进行建模。”。
借助 MATLAB 的神经网络工具箱,可以轻松构建 NARX 网络。必须先为网络准备数据。创建数据的训练、验证和测试集是其中的一部分。使用narxnet函数,我们可以构建一个 NARX 网络。各种输入、输出和反馈延迟配置可用于网络。
以下是如何在 MATLAB 中创建 NARX 网络的示例代码:
#准备数据
为了说明用于时间序列预测的 NARX 网络是如何实现的,为了本文的目的,我们将使用CSV文件形式的
本文介绍了如何利用 NARX 网络在 MATLAB 中进行时间序列预测,强调了其在处理非线性和动态系统中的优势,并提供了创建、训练和测试网络的步骤。通过实例代码展示了数据准备、网络构建和训练过程,同时提醒注意防止过度拟合和调整网络配置的重要性。
订阅专栏 解锁全文
1237

被折叠的 条评论
为什么被折叠?



