如何计算两个相等维数的时间序列之间的马哈拉诺比斯距离?

Sha*_*ala 3 math time distance similarity data-mining

我正在对时间序列数据进行一些数据挖掘.我需要计算两个相等维度系列之间的距离或相似度.我被建议使用欧几里德距离,Cos相似度或马哈拉诺比斯距离.前两个没有提供任何有用的信息.我似乎无法理解网络上的各种教程.

所以,

给定两个向量A(A1,A2,A3,...,AN)和B(B1,B2,B3,...,BN)你如何找到马氏它们之间的距离?

(我使用这些距离度量接受咨询SO本身,还有一个问题,关于如何计算余弦相似性;因此,请考虑关闭这个问题之前)

Dr.*_*ius 7

您应该估计协方差矩阵.

维基百科的相关文章就是这个这个.

对于多变量向量(n个p维变量的观测值),马哈拉诺比斯距离的公式为

替代文字

其中S是协方差矩阵的逆矩阵,可以估计为:

替代文字

哪里 替代文字 是(p维)随机变量的第i次观察

替代文字

请注意,只有当所有向量预期值相同时,使用向量之间的Mahalanobis距离才有意义.

我一直认为Mahalanobis距离仅用于对数据进行分类并检测异常值,例如丢弃实验数据(某种真/假测试).从未听说过将它用作"类比"距离.

HTH!