Este grupo especializado luego de días de investigación y recopilación de de datos, hallamos la respuesta, nuestro deseo es que resulte útil para ti en tu proyecto.
Solución:
Quizás se agradecería alguna ayuda para calcular las derivadas parciales. Siempre es mejor ser explícito cuando uno está un poco confundido con la notación pesada. Escribe $A = (a_ij)$, $x = (x_1,dots,x_n)^top$ y $b = (b_1,dots, b_m)^top$, asumiendo $ A$ es una matriz $m times n$. Entonces el componente $i^textth$ de $Ax-b$ es $$ (Ax-b)_i = left( sum_j=1^n a_ij x_j right) – b_i $$ de modo que $$ (Ax-b)^top (Ax-b) = sum_i=1^m (Ax-b)_i^2 = sum_i=1^ m left( left( sum_j=1^n a_ij x_j right) – b_i right)^2. $$ Suponga que desea calcular la derivada con respecto a $x_k$, $1 le k le n$ (elijo $k$ porque elegir $i$ o $j$ sería confuso con los subíndices anteriores). Entonces $$ fracparcialparcial x_k (Ax-b)^top (Ax-b) = sum_i=1^m fracparcialparcial x_k left( left( sum_j=1^n a_ij x_j right) – b_i right)^2 = sum_i=1^m 2 left( left( sum_ j=1^n a_ijx_j right) – b_i right) (a_ik). $$ En particular, podemos hacer $A_k = (a_1k,a_2k,dots,a_mk)$ de modo que $$ fracpartialpartial x_k (Ax-b )^top (Ax-b) = 2 langle A_k, Ax-b rangle $$ donde $langle – , – rangle$ denota el producto interno. Puede usar argumentos de convexidad para mostrar que cualquier punto crítico es un minimizador en este caso; aunque puede ver que el minimizador no siempre será único, incluso cuando $m=n$ ; basta que $A$ sea singular para que esto suceda.
Espero que ayude,
Supongo que está intentando minimizar $langle A x -b, A x – brangle.$ Esto siempre es no negativo, por lo que si $A$ no es singular, entonces el mínimo es $0.$ De lo contrario, $i$- la componente del gradiente es
$$langle A_i, Ax +brangle + langle A x + b, A_irangle$$
Donde $A_i$ es la $i$-ésima columna de $A.$ ¿Qué te dice esto?
La derivación se vuelve mucho más simple si tomamos la derivada con respecto a todo $x$ de una sola vez:
$$fracdeltadelta x(Ax-b)^T(Ax-b) = 2(Ax-b)^Tfracdeltadelta x( Ax-b) = 2(Ax-b)^TA$$
Esto se sigue de la regla de la cadena:
$$fracdeltadelta xuv = fracdelta udelta xv+ufracdelta vdelta x$$
Y que podemos intercambiar el orden del producto escalar:
$$fracdeltadelta xu^Tu = fracdelta u^Tdelta xu+u^Tfracdelta udelta x = (fracdelta udelta x)^Tu+u^Tfracdelta udelta x = 2u^Tfrac delta ux$$
Acabo de aprender cálculo matricial de Matrix Cookbook ayer, y me encanta 🙂
Recuerda que tienes la opción de interpretar tu experiencia si diste con el arreglo.