Quiero saber cómo el producto punto puede determinar si dos vectores son similares. Sé que la fórmula $$\cos(\theta) = \frac{u \cdot v }{ ||u||\,||v||}$$ significa algo, pero no sé qué.
Respuestas
¿Demasiados anuncios?El producto punto de dos vectores $\mathbf{u}$ y $\mathbf{v}$ se define como
$$\mathbf{u}\cdot\mathbf{v} = |\mathbf{u}|\,|\mathbf{v}|\cos \theta$$
Quizás sea más fácil visualizar su uso como una medida de similitud cuando $|\mathbf{v}|=1$, como en el diagrama a continuación, donde $\cos\theta = \mathbf{u}\cdot\mathbf{v}\,/\,|\mathbf{u}|\,|\mathbf{v}| = \mathbf{u}\cdot\mathbf{v}\,/\,|\mathbf{u}|$.
Aquí puedes ver que cuando $\theta=0$ y $\cos\theta=1$, es decir, los vectores son colineales, el producto punto es el producto de las magnitudes de los vectores. Cuando $\theta$ es un ángulo recto, y $\cos\theta=0$, es decir, los vectores son ortogonales, el producto punto es $0$. En general, $\cos\theta$ te dice la similitud en términos de la dirección de los vectores (es $-1$ cuando apuntan en direcciones opuestas). Esto se mantiene a medida que se aumenta el número de dimensiones, y $\cos\theta$ tiene usos importantes como medida de similitud en el espacio multi-dimensional.
Aquí está la intuición geométrica.
El producto punto entre $u$ y $v$ se puede interpretar como proyectar $u$ en $v$ (o viceversa), y luego tomar el producto de la longitud proyectada de $u$ ($|u|$) con la longitud de $v$ ($|v|$).
Cuando $u$ es ortogonal a $v$, la proyección de $u$ en $v$ es un vector de longitud 0, lo que resulta en un producto de 0. Si visualizas todas las posibles rotaciones de $u$ manteniendo $v$ fijo, el producto punto da:
- Valor cero cuando $u$ es ortogonal a $v$ ya que la proyección de $u$ en $v$ resulta en un vector de longitud cero. Esto corresponde a la intuición de cero similitud.
- Mayor valor de $|u||v|$ cuando $u$ y $v$ apuntan en la misma dirección.
- Valor más bajo de $-|u||v|$ cuando $u$ y $v$ apuntan en direcciones opuestas.
Dividir $u \cdot v$ por el valor máximo de $|u||v|$ limita bien el rango a $[-1, 1]$, haciéndolo invariante a la escala.