Existe una función de semejanza particularmente popular para el procesamiento de vectores dispersos como los datos textuales (recuento de frecuencia de palabras, etc.), comúnmente denominada semejanza de coseno.
Hay dos variantes para invertirla a una diferencia, a menudo denominada distancia de coseno y de arcos (¡distancia en el sentido débil, aunque no la definición matemática estricta!)
En esencia, la función de similitud es: $$ \text {cosine-similarity}(A,B) = \frac { \left <A,B \right >}{||A|| \cdot ||B||}$$ Que luego se utiliza como una función de distancia como $$ \text {cosine-dist}(A,B) := 1 - \text {cosine-similarity}(A,B)$$ $$ \text {arccos-dist}(A,B) := \arccos ( \text {cosine-similarity}(A,B))$$
Obviamente, estas distancias no pueden ser una función de distancia en $ \mathbb {R}^n$ ya que no están bien definidos para el punto $\{0\}^n$ ya que esto lleva a $0/0$ . ¿Cuál es el resultado adecuado entonces? $1$ ? $ \infty $ ?
Intenté encontrar una prueba formal en Google de que estas distancias satisfacen o no la desigualdad del triángulo. Wikipedia parece afirmar que solo la segunda es una métrica adecuada, pero no da una referencia .
Actualización reelaboró mi pregunta de aquí en adelante, con pensamientos actualizados sobre este tema.
Como lo confirma Joriki, el $0$ es un problema para esta función de distancia, ya que no se puede calcular el ángulo con este vector. Hay otro problema con esta distancia, que sin embargo en muchas circunstancias es intencional: dos vectores que son un múltiplo lineal positivo de cada uno de ellos tendrán el ángulo de 0, mientras que no son lo mismo. Véase su respuesta sobre por qué la cosinodistancia no satisface la igualdad de los triángulos para los ángulos pequeños (me pregunto si esta cuestión es comparable a la de $L_p$ con $p<1$ ).
Tengo las siguientes ideas en mi mente, y de nuevo aprecio cualquier indicación sobre la literatura, referencias errores en estos pensamientos, extensiones:
A) En lugar de $ \mathbb {R}^n$ En lugar de eso, veamos la unidad de la esfera, es decir, los vectores de longitud. $1=||A||=||B||$ . $ \arccos ( \left <A,B \right >)$ entonces es la distancia geodésica en la unidad de la esfera, que es métrica, ¿verdad? Así que en este dominio restringido, arccos-dist es una distancia apropiada?
B) Suponiendo que tengo un mapa inyectivo (no necesariamente surjectivo) de otro dominio a la unidad de la esfera, entonces uso esta función de distancia, esto se convierte también en un espacio métrico? Después de todo, cualquiera de las propiedades de la función de distancia debería mantenerse, ¿verdad?
C) ¿Es el arccos-dist a pseudométrico en $ \mathbb {R}^n \setminus \{0\}$ ? (es decir, acepto que $d(x,y) = 0 \not\Rightarrow x=y$ Sólo $d(x,x)=0$ )
3 votos
Reescribir completamente una pregunta como esta dificulta que otros que encuentren el hilo puedan hacer uso de la(s) respuesta(s) existente(s). Estas son realmente nuevas preguntas que deberían haber sido formuladas en un nuevo post en lugar de desordenar la pregunta y respuesta existente.