¿Qué justifica este cálculo de la derivada de una función matricial?

10

En el curso de aprendizaje automático de Andrew Ng, usa esta fórmula:

Atr(ABATC)=CAB+CTABT

y él hace una prueba rápida que se muestra a continuación:

Atr(ABATC)=Atr(f(A)ATC)=tr(f()ATC)+tr(f(A)TC)=(ATC)Tf()+(Ttr(f(A)TC)T=CTABT+(Ttr(T)Cf(A))T=CTABT+((Cf(A))T)T=CTABT+CAB

La prueba parece muy densa sin ningún comentario y estoy teniendo problemas para entenderla. ¿Qué pasó exactamente de la segunda a la tercera igualdad?

MoneyBall
fuente
Debe estar haciendo suposiciones especiales sobre las dimensiones de , B y C , de lo contrario esta fórmula no tiene sentido en general. En el lado izquierdo, A debe ser una matriz i × j , B una matriz j × j , y C una matriz i × m para enteros arbitrarios no negativos i , j , m . Pero entonces los productos de la derecha no se definirían a menos que i = m . ABCAi×jBj×jCi×mi,j,mi=m
whuber
@whuber ya veo. Dados los supuestos, todavía no entiendo cómo ocurrió la transición de la segunda a la tercera línea donde introduce .
MoneyBall
Entre la segunda y tercera línea que es dejar que . Entre la segunda y la tercera línea ha usado la regla del producto. luego usa la regla de la cadena para deshacerse de f ( ) . f(A)=ABf()
Brian Borchers

Respuestas:

14

Hay un abuso sutil pero fuerte de la notación que hace que muchos de los pasos sean confusos. Abordemos este problema volviendo a las definiciones de multiplicación de matriz, transposición, trazas y derivadas. Para aquellos que deseen omitir las explicaciones, salten a la última sección "Poner todo junto" para ver cuán breve y simple puede ser una demostración rigurosa.


Notación y conceptos

Dimensiones

Para que la expresión tenga sentido cuando A es una matriz m × n , B debe ser una matriz (cuadrada) n × n y C debe ser una matriz m × p , de donde el producto es una matriz m × p . Para tomar la traza (que es la suma de elementos diagonales, Tr ( X ) = i X i i ), luego p = m , haciendo CABACAm×nBn×nCm×pm×pTr(X)=iXiip=mC Una matriz cuadrada.

Derivados

La notación " " parece referirse a la derivada de una expresión con respecto a A . Ordinariamente, la diferenciación es una operación realizada sobre las funciones f : R NR M . La derivada en un punto x R N es una transformación lineal D f ( x ) : R NR M . Al elegir las bases para estos espacios vectoriales, dicha transformación se puede representar como una matriz M × N. ¡Ese no es el caso aquí!AAf:RNRMxRNDf(x):RNRMM×N

Matrices como vectores

En cambio, se considera como un elemento de R m n : sus coeficientes se desenrollan (generalmente fila por fila o columna por columna) en un vector de longitud N = m n . La función f ( A ) = Tr ( A B A C ) tiene valores reales, de donde M = 1 . En consecuencia, D f ( x ) debe ser una matriz 1 × m n : es un vector de fila que representa una forma lineal enARmnN=mnf(A)=Tr(ABAC)M=1Df(x)1×mn . Sin embargo, los cálculos en la pregunta usan unaformadiferentede representar formas lineales: sus coeficientes se vuelven a enrollar enmatricesm×n.Rmnm×n

La traza como forma lineal

Sea una matriz constante m × n . Luego, por definición de la traza y de la multiplicación de matricesωm×n

Tr(Aω)=i=1m(Aω)ii=i=1m(j=1nAij(ω)ji)=i,jωijAij

Esto expresa la combinación lineal más general posible de los coeficientes de : ω es una matriz de la misma forma que A y su coeficiente en la fila i y la columna j es el coeficiente de A i j en la combinación lineal. Como ω i j A i j = A i j ω i j , los roles de ω y A pueden cambiar, dando la expresión equivalenteAωAijAijωyojUNAyoj=UNAyojωyojωUNA

(1)i,jωijAij=Tr(Aω)=Tr(ωUNA).

Mediante la identificación de una matriz constante con cualquiera de las funciones A Tr ( A ω ' ) o A Tr ( ω A ' ) , que puede representar formas lineales en el espacio de m × n matrices como m × n matrices. (¡No los confunda con derivadas de funciones de R n a R m !)ωUNATr(UNAω)UNATr(ωUNA)metro×nortemetro×norteRnorteRmetro


Calcular un derivado

La definición

Los derivados de muchas de las funciones matriciales que se encuentran en las estadísticas se calculan de manera más fácil y confiable a partir de la definición: realmente no es necesario recurrir a reglas complicadas de diferenciación matricial. Esta definición dice que es diferenciable en x si y solo si hay una transformación lineal L tal queFXL

F(X+h)-F(X)=Lh+o(El |hEl |)

para arbitrariamente pequeños desplazamientos . Los medios de notación pequeñas-oh que el error cometido en la aproximación de la diferencia f ( x + h ) - f ( x ) por L h es arbitrariamente pequeño que el tamaño de h para suficientemente pequeño h . En particular, siempre podemos ignorar los errores que son proporcionales a | h | 2 .hRnorteF(X+h)-F(X)LhhhEl |hEl |2

El cálculo

Apliquemos la definición a la función en cuestión. Multiplicar, expandir e ignorar el término con un producto de dos en él,h

(2)F(UNA+h)-F(UNA)=Tr((UNA+h)si(UNA+h)C)-Tr(UNAsiUNAC)=Tr(hsiUNAC)+Tr(UNAsihC)+o(El |hEl |).

Para identificar la derivada , debemos obtener esto en la forma ( 1 ) . El primer término de la derecha es ya en esta forma, con ω = B A ' C . El otro término de la derecha tiene la forma Tr ( X h ' C ) para X = A B . Escribamos esto:L=reF(UNA)(1)ω=siUNACTr(XhC)X=UNAsi

(3)Tr(XhC)=yo=1metroj=1nortek=1metroXyojhkjCkyo=yo,j,khkj(CkyoXyoj)=Tr((CX)h).

Recordando , ( 2 ) puede reescribirseX=UNAsi(2)

F(UNA+h)-F(UNA)=Tr(hsiUNAC)+Tr(CUNAsih)+o(El |hEl |).

Es en este sentido que podemos considerar que la derivada de en A es D f ( A ) = ( B A C ) + C A B = C A B + C A B , porque estas matrices juegan el roles de ω en las fórmulas de rastreo ( 1 ) .FUNA

reF(UNA)=(siUNAC)+CUNAsi=CUNAsi+CUNAsi,
ω(1)

Poniendolo todo junto

Aquí, entonces, hay una solución completa.

Sea una matriz m × n , B una matriz n × n y C una matriz m × m . Sea f ( A ) = Tr ( A B A C ) . Sea h una matriz m × n con coeficientes arbitrariamente pequeños. Porque (por identidad ( 3 ) ) f ( A + h ) - f (UNAmetro×nortesinorte×norteCmetro×metroF(UNA)=Tr(UNAsiUNAC)hmetro×norte(3) fes diferenciable y su derivada es la forma lineal determinada por la matrizCAB+CAB.

f(A+h)f(A)=Tr(hBAC)+Tr(ABhC)+o(|h|)=Tr(h(CAB)+(CAB)h)+o(|h|),
f
CAB+CAB.

Debido a que esto toma solo aproximadamente la mitad del trabajo e involucra solo las manipulaciones más básicas de matrices y trazas (multiplicación y transposición), debe considerarse una demostración más simple, y posiblemente más perspicaz, del resultado. Si realmente desea comprender los pasos individuales en la demostración original, puede resultarle fructífero compararlos con los cálculos que se muestran aquí.

whuber
fuente
1
Es útil saber que, en general, siempre que las matrices sean de tamaños compatibles. Conocer esto hace que (3) sea un paso trivial. tr(ABC)=tr(CAB)
Brian Borchers
1
@Amoeba No puedo decir si estás tratando de ser humorístico o no. Ni la pregunta ni la respuesta tienen nada que ver directamente con derivadas parciales. La forma explícitamente es una forma lineal definida en el espacio vectorial Mat ( m , n ) de m × n matrices reales. Cuando alguien afirma que la derivada de una función f : Mat ( m , n ) R en un punto A es igual a alguna matriz ω , lo que significan es que D f ( A )(1)Estera(metro,norte)metro×norteF:Estera(metro,norte)RUNAωreF(UNA)es la forma lineal dada por . X: →Tr(Xω)
whuber
2
@Amoeba Eso es exactamente correcto: justifica ampliamente las afirmaciones en la primera línea de esta respuesta. Es por eso que escribí "en este sentido" y, más adelante en el resumen, usé la frase "determinado por" en lugar de "igual". No negaré que la explicación ha sido desafiante; Pensaré en cómo aclararlo y agradezco todos sus comentarios y sugerencias.
whuber
1
@ user10324 La mayor parte de lo que publico en este sitio es mi propia formulación: rara vez consulto las fuentes (y las documento cuando lo hago). Estas publicaciones son destilaciones de leer muchos libros y documentos. Algunos de los mejores libros no han sido aquellos que sean matemáticamente rigurosos, sino que hayan explicado e ilustrado bellamente las ideas subyacentes. Los primeros que vienen a la mente, en orden de sofisticación, son Freedman, Pisani y Purves, Statistics (cualquier edición); Jack Kiefer, Introducción a la inferencia estadística ; y Steven Shreve, Cálculo estocástico para Finanzas II .
whuber
1
F(X+h)-F(X)=Lh+o(El |hEl |)hXXRmetro×nortehRm×norte