Как рассчитать расстояние Махаланобиса между двумя временными рядами равных размеров? - PullRequest
3 голосов
/ 24 июня 2010

Я занимаюсь анализом данных временных рядов. Мне нужно рассчитать расстояние или сходство между двумя сериями равных размеров. Мне предложили использовать евклидово расстояние, сходство Cos или расстояние Махаланобиса. Первые два не дали никакой полезной информации. Я не могу понять различные учебные пособия в Интернете.

Итак,

Учитывая два вектора A (a1, a2, a3, ..., an) и B (b1, b2, b3, ..., bn), как найти расстояние Махаланобиса между ними?

(я получил совет по использованию этих мер расстояния на самом SO , и есть вопрос о том, как рассчитать сходство Cos; поэтому, пожалуйста, подумайте, прежде чем закрыть этот вопрос) *

1 Ответ

7 голосов
/ 24 июня 2010

Вы должны оценить ковариационную матрицу.

Связанные статьи в Википедии: this и this .

Для многомерных векторов (n наблюдений p-мерной переменной) формуладля расстояния Махаланобиса

alt text

Где S - обратная величина ковариационной матрицы, которую можно оценить как:

alt text

где alt text - i-е наблюдение (p-мерной) случайной величины и

alt text

Будьте осторожны, чтобы использование расстояния Махаланобиса между вашими векторами имело смысл толькоесли ожидаемые значения всех ваших векторов совпадают.

Я всегда думал, что расстояние Махаланобиса используется только для классификации данных и обнаружения выбросов, таких как отбрасывание экспериментальных данных (своего рода тесты истинности / ложности).Никогда не слышал об использовании его в качестве "аналогичного" расстояния.

HTH!

...