Если V
является действительным ковариационная матрица гауссовой, то тогда симметричный положительно определенный и, следовательно, определяет действительное скалярное произведение. Кстати inv(V)
также.
Таким образом, при условии, что М и р векторы-столбцы, можно определить расстояние, как:
d1 = sqrt((M-p)'*V*(M-p));
d2 = sqrt((M-p)'*inv(V)*(M-p));
путь Matlab можно было бы переписать d2
как (вероятно, некоторые ненужные скобки):
d2 = sqrt((M-p)'*(V\(M-p)));
Приятно то, что когда V - единичная матрица, то d1==d2
и соответствует классическому эвклидову расстоянию. Чтобы найти, вы должны использовать d1
или d2
оставлен в качестве упражнения (извините, часть моей работы учит). Напишите многомерную гауссовскую формулу и сравните ее с 1D-случаем, так как многомерный случай - это только частный случай 1D (или выполнить некоторый численный эксперимент).
NB: в очень больших размерных пространствах или для очень многих точек тестирования вы можете найти умный/быстрый путь от собственных векторов и собственных значений V (то есть главных осей эллипсоида и их соответствующей дисперсии).
Надеюсь, это поможет.
А.
Попробуйте http://math.stackexchange.com/ – Jacob 2010-12-15 21:31:49