标签: math time data-mining distance similarity
我正在对时间序列数据进行一些数据挖掘。我需要计算两个相等维度系列之间的距离或相似度。我被建议使用欧几里德距离,Cos相似度或马哈拉诺比斯距离。前两个没有提供任何有用的信息。我似乎无法理解网络上的各种教程。
所以,
给定两个向量A(a1,a2,a3,...,an)和B(b1,b2,b3,...,bn)你如何找到它们之间的Mahalanobis距离?
(我收到了关于在SO本身使用这些距离测量的建议,并且关于如何计算Cos相似度有question;所以请在关闭此问题之前考虑)
答案 0 :(得分:7)
您应该估计协方差矩阵。
维基百科中的相关文章是this和this。
对于多变量向量(n个p维变量的观测值),马哈拉诺比斯距离的公式为
其中S是协方差矩阵的逆矩阵,可以估计为:
其中是(p维)随机变量和
请注意,只有当所有向量预期值相同时,才能使用向量之间的Mahalanobis距离。
我一直认为马哈拉诺比斯距离仅用于对数据进行分类并检测异常值,例如丢弃实验数据(某种真/假测试)。从未听说过将它用作“类比”距离。
HTH!