矢量量化中的马氏距离与欧几里得距离

Posted

技术标签:

【中文标题】矢量量化中的马氏距离与欧几里得距离【英文标题】:mahalanobis distance vs euclidean distance in Vector Quantization 【发布时间】:2012-02-23 21:28:47 【问题描述】:

我已经使用 C++ 在 OpenCV 中完成了 Kmeans 聚类,并且有 12 个聚类中心(每个聚类中心有 200 个维度)。

现在,我有一组 200 个维度的点,我正在尝试找到 最近的集群矢量量化)。

哪个距离优于另一个(马氏距离或欧几里得距离)?目前我正在使用欧几里得距离。

【问题讨论】:

您可能正在编写程序,但您的问题与编程无关。它涉及特定领域的知识。 【参考方案1】:

Andrey's point 是有效的。我可以补充一句:

对于马氏距离,您需要能够正确估计每个聚类的协方差矩阵。对于 200 个维度,您可以期望对协方差矩阵集群进行合理估计的唯一方法是使用数百到数千个数据点。再加上您拥有的 12 个集群,您很容易需要数以万计的数据点来合理使用马氏距离。

除此之外:试试欧几里得距离如何为您工作。如果结果是合理的,那就坚持下去,否则试试 Mahalanobis。

最后,您可能会在stats stackexchange 上找到更多关于此主题的知识渊博的人。

【讨论】:

【参考方案2】:

不知道上下文是不可能回答的。没有好坏之分,每个指标都更适合特定类别的问题。

【讨论】:

以上是关于矢量量化中的马氏距离与欧几里得距离的主要内容,如果未能解决你的问题,请参考以下文章

最小马氏距离分类器

最小马氏距离分类器

马氏距离在SLAM中的应用

metric learning -- 马氏距离与欧氏距离

Matlab中的马氏距离

马氏距离在SLAM中的应用