2012-02-23 2 views
3

Я сделал Kmeans кластеризации в OpenCV с использованием C++ и имеет 12 кластерных центров (каждые в 200 измерениях).расстояния Махаланобиса против евклидова расстояния в векторном квантовании

Теперь у меня есть набор точек в 200 измерениях, и я пытаюсь найти ближайший кластер (векторное квантование).

Какое расстояние является предпочтительным по сравнению с другим (Расстояние Махаланобис или Евклидово расстояние)? В настоящее время я использую евклидову дистанцию.

+2

Возможно, вы пишете программу, но ваш вопрос не имеет никакого отношения к программированию. Это касается знаний, связанных с доменом. –

ответ

4

Andrey's point действительный. Я могу добавить общее заявление:

Для расстояния Махаланобис нужно иметь возможность правильно оценить матрицу ковариации для каждого кластера. При 200 измерениях единственный способ, которым вы можете ожидать разумную оценку для ковариационного матричного кластера, - это что-то порядка нескольких сотен до тысяч точек данных. Добавьте к этому 12 кластеров, которые у вас есть, и вам легко нужны десятки тысяч точек данных, чтобы разумно использовать расстояние Махаланобиса.

Кроме того: попробуйте, как работает Евклидово расстояние. Если результаты являются разумными, просто придерживайтесь этого, в противном случае попробуйте Mahalanobis.

Наконец, вы можете найти более знающих людей на эту тему на stats stackexchange.

4

Это невозможно ответить, не зная контекста. Нет такой вещи, как хорошая или плохая метрика, каждая из которых больше подходит для определенного класса проблем.

Смежные вопросы