问题描述
- 有哪些算法可用于时间序列预测/回归?
- 使用神经网络怎么样?(关于这个主题的最佳文档?)
- 是否有可以提供帮助的 Python 库/代码片段?
推荐答案
时间序列回归的经典方法有:
The classical approaches to time series regression are:
自回归模型(有关于它们的全部文献)
auto-regressive models (there are whole literatures about them)
高斯过程
傅里叶分解或类似方法提取信号的周期性分量(即数据中隐藏的振荡)
Fourier decomposition or similar to extract the periodic components of the signal (i.e., hidden oscillations in the data)
我知道的其他不太常见的方法是
Other less common approaches that I know about are
慢特征分析,一种提取时间序列驱动力的算法,例如,混沌信号背后的参数
Slow Feature Analysis, an algorithm that extract the driving forces of a time series, e.g., the parameters behind a chaotic signal
神经网络 (NN) 方法,使用循环神经网络(即,用于处理时间信号)或经典前馈神经网络,接收过去数据的输入部分并尝试预测未来的某个点;后者的优点是已知循环神经网络在考虑遥远的过去方面存在问题
Neural Network (NN) approaches, either using recurrent NNs (i.e., built to process time signals) or classical feed-forward NNs that receive as input part of the past data and try to predict a point in the future; the advantage of the latter is that recurrent NNs are known to have a problem with taking into account the distant past
在我看来,对于财务数据分析,不仅要获得时间序列的最佳猜测外推,还要获得可靠的置信区间,因为由此产生的投资策略可能会因此而大不相同.概率方法,如高斯过程,免费"为您提供,因为它们返回可能的未来值的概率分布.使用经典统计方法,您将不得不依赖 引导技术.
In my opinion for financial data analysis it is important to obtain not only a best-guess extrapolation of the time series, but also a reliable confidence interval, as the resulting investment strategy could be very different depending on that. Probabilistic methods, like Gaussian Processes, give you that "for free", as they return a probability distribution over possible future values. With classical statistical methods you'll have to rely on bootstrapping techniques.
提供统计和机器学习工具的 Python 库有很多,以下是我最熟悉的:
There are many Python libraries that offer statistical and Machine Learning tools, here are the ones I'm most familiar with:
- NumPy 和 SciPy 是 Python 科学编程的必备工具
- R 有一个 Python 接口,称为 RPy
- statsmodel 包含经典的统计模型技术,包括自回归模型;它适用于流行的数据分析包 Pandas
- scikits.learn, MDP, MLPy, Orange 是机器学习算法的集合
- PyMC 实现贝叶斯统计模型和拟合算法的python模块,包括马尔可夫链蒙特卡罗.
- PyBrain 包含(除其他外)前馈和循环神经网络的实现
- 在 Gaussian Process 站点有一个 GP 软件列表,包括两个 Python 实现
- mloss 是一个开源机器学习软件目录
- NumPy and SciPy are a must for scientific programming in Python
- There is a Python interface to R, called RPy
- statsmodel contains classical statistical model techniques, including autoregressive models; it works well with Pandas, a popular data analysis package
- scikits.learn, MDP, MLPy, Orange are collections of machine learning algorithms
- PyMC A python module that implements Bayesian statistical models and fitting algorithms, including Markov chain Monte Carlo.
- PyBrain contains (among other things) implementations of feed-forward and recurrent neural networks
- at the Gaussian Process site there is a list of GP software, including two Python implementations
- mloss is a directory of open source machine learning software
这篇关于时间序列预测(最终使用 python)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!
本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!