Para una función de valor escalar $f\colon \mathbb R^n \to \mathbb R$ como una imagen en blanco y negro, el vector de gradiente $\nabla f = (\partial f/\partial x_1, \ldots, \partial f/\partial x_n)^T$ te dice cómo $f$ cambios en la vecindad de $x$ . Es decir, a primer orden, un pequeño cambio de posición $\Delta x$ conduce a un cambio correspondiente $\nabla f(x) \cdot \Delta x$ en el valor de la función.
Si $f$ es una función vectorial $\mathbb R^n \to \mathbb R^m$ en cambio, como una imagen en color, la generalización natural del gradiente es la matriz jacobiana, que su documento denota $D$ . Aquí si $x$ cambios por $\Delta x$ El valor de $f$ cambia en aproximadamente $D \Delta x$ . Para ser claros, $\Delta x$ es un vector en el dominio $\mathbb R^n$ (el plano de la imagen), mientras que $D \Delta x$ un vector en el rango $\mathbb R^m$ (el espacio de color de la imagen).
En este trabajo, el gradiente se utiliza sólo para encontrar la dirección en la que la función $f$ cambia más rápidamente. Si $f$ es de valor escalar, es simplemente la dirección paralela (o antiparalela) a $\nabla f$ como se puede demostrar encontrando el vector unitario $u$ que maximiza $\lvert \nabla f \cdot u\rvert$ . Si $f$ es de valor vectorial, se quiere encontrar el vector unitario $u$ que maximiza la magnitud del cambio, $\lVert Du\rVert$ . Pero como $\lVert Du \rVert = \sqrt{(Du)^TDu}$ esto equivale a maximizar $u^TD^TDu$ que a su vez viene dado por el mayor vector propio de $D^TD$ .
Para ver por qué, demos un nombre a la matriz en cuestión, $A = D^TD$ . Como es simétrica, tiene un conjunto completo de valores propios reales $\lambda_i$ y los correspondientes vectores propios $v_i$ que son todos ortogonales. Ahora la acción de $A$ es muy simple en la base de estos vectores propios; simplemente estira cada vector base por su valor propio, $Av_i = \lambda_i v_i$ . Así que, intuitivamente, si queremos elegir un vector unitario que se estire al máximo, debemos elegir que se encuentre a lo largo del vector propio con el mayor valor propio. Más explícitamente, si expresamos nuestro vector unitario $u$ en esta base, $u = \alpha_1 v_1 + \cdots + \alpha_n v_n$ entonces un poco de álgebra revela que $u^TAu = \lambda_1 \alpha_1^2 + \cdots + \lambda_n \alpha_n^2$ . Como $u$ es un vector unitario, $\alpha_1^2 + \cdots + \alpha_n^2 = 1$ Ahora bien, ¿qué debe hacer el $\alpha_i^2$ para maximizar la expresión anterior?