Necesito derivar δ(XTMX)δX , donde X y M son n×n matrices.
Sé que δ(AXB)δX=BT⊗A pero estoy teniendo dificultades para derivar lo que necesito de eso o desde cero.
Necesito derivar δ(XTMX)δX , donde X y M son n×n matrices.
Sé que δ(AXB)δX=BT⊗A pero estoy teniendo dificultades para derivar lo que necesito de eso o desde cero.
Empezar con una función matricial, luego tomar la diferencial, luego vectorizar e identificar el gradiente.
F=XTMXdF=dXTMX+XTMdXvec(dF)=vec(dXTMX)+vec(XTMdX)df=(XTMT⊗I)vec(dXT)+(I⊗XTM)vec(dX)=((XTMT⊗I)K+(I⊗XTM))vec(dX)∂f∂x=(XTMT⊗I)K+(I⊗XTM) donde K es el Matriz de conmutación para los productos de Kronecker.
Dejemos que f(X)=XTMX . Entonces, para una variación ϵY con ϵ un número real, tenemos por cálculo directo f(X+ϵY)=f(X)+ϵ(YTMX+XTMY)+ϵ2(YTMY) Por lo tanto, podemos calcular la derivada direccional como sigue: ∇Yf(X):=lim Por lo tanto, la derivada \nabla f en X es el mapa lineal \nabla f(X): Y \mapsto Y^T M X + X^T M Y
\Phi: M_n \times M_n \to M_n dado por \Phi(X,Y) = X^T M Y es una forma bilineal en un nvs de dimensión finita, por lo que \Phi está acotado. Por lo tanto, \Phi es diferenciable y:
D \Phi(X,Y)(H,K) = \Phi(H,Y) + \Phi(X,K) = H^T M Y + X^T M K
para todos X,Y,H,K \in M_n .
Dejemos que q: M_n \to M_n , q(X) = \Phi(X,X) . Entonces, q es diferenciable y para todo X, H \in M_n ,
Dq(X)H = D\Phi(X,X)(H,H) = H^T M X + X^T M H
I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.
1 votos
Si A es un vector de filas y B es un vector columna, entonces AXB es un escalar. Por lo tanto, (AXB)/X debe ser un n×n matriz. Sin embargo, BT⊗A es un vector de filas. Algo no está bien. La derivada es en realidad ATBT .
1 votos
Está siguiendo la convención Magnus-Neudecker, en la que se vectoriza todo.