La mejor medida de distancia para usar


12

Contexto

Tengo dos conjuntos de datos que quiero comparar. Cada elemento de datos en ambos conjuntos es un vector que contiene 22 ángulos (todos entre y ). Los ángulos se relacionan con una configuración de pose humana dada, por lo que una pose se define por 22 ángulos conjuntos.πππ

Lo que finalmente intento hacer es determinar la "cercanía" de los dos conjuntos de datos. Entonces, para cada pose (vector 22D) en un conjunto, quiero encontrar su vecino más cercano en el otro conjunto y crear un diagrama de distancia para cada uno de los pares más cercanos.

Preguntas

  • ¿Puedo simplemente usar la distancia euclidiana?
    • Para que tenga sentido, supongo que la métrica de distancia debería definirse como: , dondees valor absoluto y mod es módulo. Luego, utilizando las 22 thetas resultantes, puedo realizar el cálculo de distancia euclidiana estándar, .| . . . El | θ=|θ1θ2|modπ|...|t12+t22++t222
    • ¿Es esto correcto?
  • ¿Sería más útil otra métrica de distancia, como chi-cuadrado, o Bhattacharyya, o alguna otra métrica? Si es así, ¿podría darnos una idea de por qué?

3
Como nota al margen: no creo que te refieres a . Más bien algo así como .|θ1θ2|modπmin{|θ1θ2|,2π|θ1θ2|}
Erik P.

44
En lugar de trabajar con ángulos, sugiero convertir primero las coordenadas (x, y) en el círculo unitario. Luego puede calcular normalmente (distancias y similares), y el promedio no es un problema como con los ángulos.
caracal

2
La sugerencia de @Josh Erik P. es buena. Alternativamente, considere cada ángulo como un punto en el círculo unitario y calcule las distancias euclidianas entre ellos utilizando la fórmula habitual (pitagórica). La diferencia entre estas distancias y las distancias angulares no debería importar. (Creo que esto también puede ser lo que sugirió Caracal.)θ(cos(θ),sin(θ))
whuber

2
@Josh El promedio de, por ejemplo, y es . En muchas circunstancias, esto no tiene sentido, y debería ser lugar. En su situación específica, esto podría no ser un problema ya que quizás las articulaciones humanas no tienen un rango de movimiento más allá de . Además, en su caso, tal vez desee que el promedio antes mencionado sea ya que el movimiento conjunto es unidireccional. La sugerencia de @ whuber es exactamente lo que quise decir. π/47π/4π0ππ
caracal

3
Su problema probablemente será mucho más fácil de resolver si puede especificar las consecuencias de "equivocarse". Entonces, si dice que los conjuntos de datos son iguales o similares, pero en realidad no lo son, ¿qué le sucederá? ¿Dependerá de "cuán equivocada" fue su decisión? ¿Qué sucederá si declaras que los datos / poses son diferentes, pero en realidad son iguales o similares? ¿Qué se pierde? responder estas preguntas ayudará a determinar qué importa para la comparación que desea hacer. Esto asegura que está respondiendo la pregunta correcta.
probabilityislogic

Respuestas:


5

puede calcular la matriz de covarianza para cada conjunto y luego calcular la distancia de Hausdorff entre los dos conjuntos utilizando la distancia de Mahalanobis.

La distancia de Mahalanobis es una forma útil de determinar la similitud de un conjunto de muestras desconocido con uno conocido. Se diferencia de la distancia euclidiana en que tiene en cuenta las correlaciones del conjunto de datos y es invariante de escala.


3

¿Qué intentas hacer con la información del vecino más cercano?

Contestaría esa pregunta y luego compararía las diferentes medidas de distancia a la luz de eso.

Por ejemplo, supongamos que está tratando de clasificar las posturas en función de la configuración conjunta, y desea que los vectores conjuntos de la misma pose estén muy juntos. Una forma sencilla de evaluar la idoneidad de las diferentes métricas de distancia es usar cada una de ellas en un clasificador KNN y comparar las precisiones fuera de muestra de cada uno de los modelos resultantes.


2

Esto suena como si fuera similar a una determinada aplicación de recuperación de información (IR). Hace unos años asistí a una charla sobre el reconocimiento de la marcha que suena similar a lo que estás haciendo. En Recuperación de información, los "documentos" (en su caso: datos de ángulo de una persona) se comparan con alguna consulta (que en su caso podría ser "¿hay una persona con datos de ángulo (.., ..)"). Luego, los documentos se enumeran en el orden del que coincide con el más cercano al que menos coincide. Eso, a su vez, significa que un componente central de IR es colocar un documento en algún tipo de espacio vectorial (en su caso: espacio angular) y compararlo con una consulta específica o documento de ejemplo o medir su distancia. (Consulte a continuación). Si tiene una definición de sonido de la distancia entre dos vectores individuales, todo lo que tiene que hacer es encontrar una medida para la distancia de dos conjuntos de datos. (Tradicionalmente, en IR, la distancia en el modelo de espacio vectorial se calcula mediante la medida del coseno o la distancia euclidiana, pero no recuerdo cómo lo hicieron en ese caso). En IR también hay un mecanismo llamado "retroalimentación de relevancia" que, conceptualmente , funciona con la distancia de dos conjuntos de documentos. Ese mecanismo normalmente usa una medida de distancia que resume todas las distancias individuales entre todos los pares de documentos (o en su caso: vectores de persona). Quizás eso te sea útil.

La siguiente página tiene algunos documentos que parecen relevantes para su problema: http://www.mpi-inf.mpg.de/~mmueller/index_publications.html Especialmente este http://www.mpi-inf.mpg.de/ ~ mmueller / publications / 2006_DemuthRoederMuellerEberhardt_MocapRetrievalSystem_ECIR.pdf parece interesante. La charla de Müller a la que asistí menciona medidas de similitud de Kovar y Gleicher llamadas "nube de puntos" (ver http://portal.acm.org/citation.cfm?id=1186562.1015760&coll=DL&dl=ACM ) y una llamada "cuaterniones" . Espero eso ayude.


Sería útil tener la referencia si puede encontrarla. Gracias.
Josh

2

Este problema se llama aprendizaje métrico a distancia. Cada métrica de distancia puede representarse como donde es positivo semi-definido. Métodos bajo esta subárea, aprenda la óptima para sus datos. De hecho, si la óptima es una matriz de identidad, está bien usar distancias euclidianas. Si es la covarianza inversa, sería óptimo usar la distancia de Mahalanobis, y así sucesivamente. Por lo tanto, se debe utilizar un método de aprendizaje de métrica a distancia para aprender la óptima , para aprender la métrica a distancia correcta. AAA(xy)tA(xy)AAAA


0

Un problema con el uso de los ángulos como proxy de la forma es que pequeñas perturbaciones en los ángulos pueden conducir a grandes perturbaciones en la forma. Además, diferentes configuraciones de ángulo podrían dar como resultado la misma forma (o similar).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.