我正在做一个在时间序列中检测异常的项目。我想知道是否可以使用word2vec来检测像汇率这样的非字符串输入的异常?
发布于 2019-10-19 01:30:34
简而言之,答案是肯定的。一般来说,NLP和时间序列的域是非常相似的,因为它们都是序列数据。主要的区别是文本是离散的,而信号的值属于连续空间。因此,离散一个时间序列(关于它可以取的值),我们可以在离散空间中有一个序列。
已有许多基于时间序列离散化的算法,其中一些算法实际上将时间序列转换为文字。最流行的时间序列表示有PAA、SAX、老板、科特和最近的Signal2Vec。
Signal2vec (我是作者之一)包括两个步骤。第一种是对时间序列进行离散化,这种情况可以使用聚类算法或任何其他离散化方法来实现。第二步是Word2vec模型,它既可以应用于每个符号,也可以应用于由离散化时间序列的符号构成的单词。
就异常检测而言,您可以使用上述任何时间序列表示。也有非常好的调查比较异常检测方法的时间序列,我强烈建议阅读至少最近的方法,以了解最先进的方法。我还会推荐矩阵轮廓,它实现起来非常简单,而且非常健壮。
发布于 2019-08-03 07:55:37
Word2vec的目标是将序列中的每个元素表示为“嵌入空间”,即“相似”元素位于较低维度的空间。
我认为这对时间序列分析来说有点离题。如果要检测异常值,可以尝试查看每个数据点与趋势的归一化距离,并设置一个阈值。
或者,如果你真的想坚持使用神经网络,你可以使用自动编码器。它们可以应用于异常点检测,但它不是实现的最简单的模型。
发布于 2021-11-12 05:03:30
不- word2vec算法假设数据是一系列离散符号.汇率是连续的。
https://datascience.stackexchange.com/questions/56894
复制