Puntuación de distancia euclidiana y similitud

13

Solo estoy trabajando con el libro Inteligencia colectiva (de Toby Segaran) y encontré el puntaje de distancia euclidiana. En el libro, el autor muestra cómo calcular la similitud entre dos conjuntos de recomendaciones (es decir, .person×moviescore)

Calcula la distancia euclidiana para dos personas y por p 2 d ( p 1 , p 2 ) = p1p2

d(p1,p2)=i  item(sp1sp2)2

Esto tiene mucho sentido para mí. Lo que realmente no entiendo es por qué calcula al final lo siguiente para obtener una "similitud basada en la distancia":

11+d(p1,p2)

Entonces, de alguna manera entiendo que esta debe ser la conversión de una distancia a una similitud (¿verdad?). Pero, ¿por qué el formulario se ve así? ¿Alguien puede explicar eso?

navige
fuente
Puede haber muchas formas de convertir las diferencias y similitudes entre sí: la fórmula específica depende de lo que tenga sentido para usted y para el análisis futuro. En ese libro de texto, el autor prefirió la fórmula que muestra por alguna razón; alguien más en una situación diferente podría elegir otra fórmula. La forma más geométricamente correcta para convertir la distancia euclidiana en una similitud se seguiría del teorema del coseno en condiciones centradas en los datos y se describe aquí en el par. 1.
ttnphns
¡Okay! Pero si entiendo bien, en realidad no convierte la distancia euclidiana en una similitud, sino que simplemente usa una función diferente que le devuelve valores dentro de 0 y 1 (debido al coseno), ¿verdad? Quiero decir que me parece diferente a calcular todas las distancias y luego convertirlas a una similitud, por ejemplo, interpolando entre la distancia más pequeña y la más grande. ¿Derecho?
navige
Si tiene una matriz simétrica cuadrada de distancias euclidianas cuadradas y realiza una operación de "doble centrado", obtiene la matriz de los productos escalares que se observaría al colocar el origen del espacio euclidiano en el centro de su configuración de objetos. Estos productos escalares son similitudes de tipo angular. Son muy parecidos a las covarianzas . No están vinculados dentro del rango 0-1, pueden ser elementos negativos, positivos y diagonales no necesariamente 1. Sin embargo, son similitudes.
ttnphns

Respuestas:

12

Lo inverso es cambiar de distancia a similitud.

El 1 en el denominador es para que el valor máximo sea 1 (si la distancia es 0).

La raíz cuadrada: no estoy seguro. Si la distancia es generalmente mayor que 1, la raíz hará que las distancias grandes sean menos importantes; Si la distancia es menor que 1, hará que las distancias grandes sean más importantes.

Peter Flom - Restablece a Monica
fuente
¡Lo siento! La raíz cuadrada estaba mal. El autor realmente lo puso en la segunda fórmula, pero lo dejó en la primera. Así que no debería estar allí
navige
Sí, pero su sugerencia para establecer el valor máximo en 1 tiene sentido. ¡Gracias!
navige
4

Para medir la distancia y la similitud (en sentido semántico), lo primero que debe verificar es si se está moviendo en un espacio euclidiano o no. Una forma empírica de verificar esto es estimar la distancia de un par de valores para los que conoce el significado.

Claudio Martines
fuente
1

Como mencionó, conoce el cálculo de la distancia de Euclidence, así que estoy explicando la segunda fórmula.

La fórmula euclidiana calcula la distancia, que será más pequeña para las personas o elementos que son más similares. Como si fueran iguales, entonces la distancia es 0 y totalmente diferente, entonces mayor que 0.

Sin embargo, necesitamos una función que les dé un mayor valor, ya que son similares. Esto se puede hacer agregando 1 a la función (para que no obtenga un error de división por cero) e invirtiéndolo. Como si la distensión 0 y la puntuación de similitud 1/1 = 1

usuario10009133
fuente
No entiendo esta respuesta.
Michael R. Chernick
ok digamos que la distancia euclidiana entre el elemento 1 y el elemento 2 es 4 y entre el elemento 1 y el elemento 3 es 0 (significa que son 100% similares). Estas son las distancias de los elementos en un espacio virtual. menor el valor de distancia significa que están cerca el uno del otro significa que es más probable que sean similares. Ahora queremos un valor numérico tal que dé un número más alto si son muy similares. Entonces podemos invertir el valor de la distancia. Pero qué pasa si tenemos distancia es 0, por eso agregamos 1 en el denominador. así que el puntaje de similitud para los ítems 1 y 2 es 1 / (1 + 4) = 0.2 y para el ítem 1 y el ítem 3 es 1 / (1 + 0) = 0
user10009133
Tal vez estás hablando de algún tipo de medida de distancia, pero la distancia euclidiana sigue una fórmula específica con respecto a un espacio vectorial.
Michael R. Chernick
1/1+d(p1,p2)