时间序列预测(最终使用python)

gpi*_*ino 24 python time-series neural-network

  • 时间序列预测/回归有哪些算法?
    • 那么使用神经网络呢?(关于这个主题的最佳文档?)
    • 是否有python库/代码片段可以提供帮助?

pbe*_*kes 70

时间序列回归的经典方法是:

  • 自回归模型(有关于它们的全部文献)

  • 高斯过程

  • 傅立叶分解或类似提取信号的周期分量(即数据中的隐藏振荡)

我所知道的其他不太常见的方法是

  • 慢特征分析,一种提取时间序列驱动力的算法,例如混沌信号背后参数

  • 神经网络(NN)方法,使用经常性NN(即,构建为处理时间信号)或经典前馈NN,其接收过去数据的输入部分并尝试预测未来的点; 后者的优点是已知复发的NN在考虑到遥远的过去时存在问题

在我看来,对于财务数据分析而言,重要的是不仅要获得时间序列的最佳猜测推断,而且要获得可靠的置信区间,因为由此产生的投资策略可能会有很大不同.概率方法,如高斯过程,为您提供"免费",因为它们返回可能的未来值的概率分布.使用经典的统计方法,您将不得不依赖自举技术.

有许多Python库提供统计和机器学习工具,以下是我最熟悉的:

  • NumPySciPy是Python中科学编程的必备条件
  • R有一个Python接口,称为RPy
  • statsmodel包含经典的统计模型技术,包括自回归模型; 它与Pandas(一种流行的数据分析软件包)配合得很好
  • scikits.learn,MDP,MLPy,Orange是机器学习算法的集合
  • PyMC一个python模块,实现贝叶斯统计模型和拟合算法,包括马尔可夫链蒙特卡罗.
  • PyBrain包含(除其他外)前馈和递归神经网络的实现
  • Gaussian Process网站上有一个GP软件列表,包括两个Python实现
  • mloss是开源机器学习软件的目录


Rob*_*man 5

我不知道python库,但R中有很好的预测算法是开源的.有关时间序列预测的代码和参考,请参阅预测包.


Max*_*ist 5

两种方法

关于如何处理分类、回归、聚类、预测和相关任务的时间结构化输入,有两种方法:

  1. 专用时间序列模型:机器学习算法直接结合了这样的时间序列。这样的模型就像一个黑匣子,很难解释模型的行为。示例是自回归模型。
  2. 基于特征的方法:在这里,时间序列被映射到另一个可能较低维的表示。这意味着特征提取算法计算时间序列的平均值或最大值等特征。然后将特征作为特征矩阵传递给“正常”机器学习,例如神经网络、随机森林或支持向量机。这种方法的优点是结果具有更好的可解释性。此外,它使我们能够使用成熟的监督机器学习理论。

tsfresh 计算大量特征

python 包tsfresh从包含时间序列的pandas.DataFrame计算出大量这样的特征。你可以在http://tsfresh.readthedocs.io找到它的文档。

在此处输入图片说明

免责声明:我是 tsfresh 的作者之一。