我正在开发一个检测时间序列异常的项目。我想知道是否可以使用 word2vec 对汇率等非字符串输入进行异常检测?
将 word2vec 用于时间序列分析等非字符串输入是否有意义?
数据挖掘
深度学习
时间序列
word2vec
异常检测
2022-02-18 22:13:43
3个回答
Word2vec 的目标是将序列的每个元素表示为“嵌入空间”,即“相似”元素彼此靠近的低维空间。
我认为这对于时间序列分析来说有点偏离主题。如果要检测异常值,可以尝试查看每个数据点与趋势的标准化距离,并设置阈值。
或者,如果你真的想坚持使用神经网络,你可以使用自动编码器。它们可以应用于异常值检测,但它不是最简单的实现模型。
简而言之,答案是肯定的。一般来说,NLP 和时间序列的领域非常相似,因为它们都是顺序数据。主要区别在于文本是离散的,而信号的值属于连续空间。因此,将时间序列离散化(关于它可以采用的值),我们可以在离散空间中有一个序列。
已经有许多基于时间序列离散化的算法,其中一些实际上将时间序列转换为单词。一些最流行的时间序列表示是PAA、SAX、BOSS、COTE和最近的 Signal2Vec。
Signal2vec(我是作者之一)包括两个步骤。第一个是离散化时间序列,这可以使用聚类算法或任何其他离散化方法来实现。第二步是 Word2vec 的模型,它既可以应用于每个符号,也可以应用于由离散时间序列的符号构造的单词。
就异常检测而言,您可以使用上述任何时间序列表示。还有一些非常好的调查比较了时间序列的异常检测方法,我强烈建议至少阅读最新的调查以了解最先进的方法。我还推荐Matrix Profile,它实现起来非常简单,而且非常健壮。
否 - word2vec 算法假定数据是一系列离散符号。汇率是连续的。
其它你可能感兴趣的问题