我有一个过程,该过程使用外汇市场的多个实时价格数据源,并生成2个时间序列数据流作为其输出。输出噪声很大(即不像sin或cos那样平滑),并且两个流都绑定在0和100的值之间。
机器学习或AI中是否有一种方法可以帮助我识别1个信号为正值而一个信号为负值?我开玩笑地用简单的移动平均线和指数移动平均线稍微平滑了一些线,但是那样我会丢失太多信息。
最佳答案
您可以应用超智能机器学习。
特征:最后n个数据点的值。
标签:-1递减+1递增
现在,您只需要一些带有标签的样本,这将给出一个这样的表(此处n = 5):
# t-4, t-3, t-2, t-1, t, label
#-----------------------------
54, 43, 98, 1, 45, +1
21, 12, 5, 98, 4, +1
6, 78, 45, 65, 37 -1
...
现在,使用一些现成的机器学习库(例如WEKA),并在此基础上训练分类器。根据算法,您还将获得结果确定性的度量。您将需要预测多少标记的训练样本。尝试使用100作为开始,但也可能超过1000。这些功能还有很多潜力。如果您不使用绝对值而是使用差值,则可能会更好。
带标签的训练数据可以手工标记。但是对于市场预测,通常可以根据历史数据自动执行此操作。
应该有很多关于库存预测的文献。人们多年来一直(并且仍然)在这一领域进行研究。上面当然很简单。
另一种方法是通过数据拟合曲线并取其导数。您对数据了解的越多,这种方法就越强大。例如,如果您对产生噪声的概率模型有一个很好的了解,则可以得出“最佳”拟合(最大似然度等)。如果您对基础信号有所了解(您尝试测量的信号),这也会有所帮助(它是线性的吗?是二次方的?,libschiz cont。?。
此方法需要特定于问题的知识,而这些知识可能不可用,并且需要大量数学知识。但是,这可能会非常有意义,因为您最终不会像机器学习那样遇到黑匣子,而是拥有可以理解和分析的物联网模型。
关于artificial-intelligence - 如何计算嘈杂的时间序列数据的斜率,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3486181/