Was rechtfertigt diese Berechnung der Ableitung einer Matrixfunktion?


10

In Andrew Ngs maschinellem Lernkurs verwendet er diese Formel:

Atr(ABATC)=CAB+CTABT

und er macht einen schnellen Beweis, der unten gezeigt wird:

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

Der Beweis scheint ohne Kommentare sehr dicht zu sein und ich habe Probleme, ihn zu verstehen. Was genau ist von der zweiten bis zur dritten Gleichheit passiert?


Er muss spezielle Annahmen über die Dimensionen von , B und C treffen , da diese Formel sonst im Allgemeinen keinen Sinn ergibt. Auf der linken Seite muss A eine i × j- Matrix, B eine j × j- Matrix und C eine i × m- Matrix für beliebige nicht negative ganze Zahlen i , j , m sein . Aber dann würden die Produkte auf der rechten Seite nur definiert, wenn i = m . ABCAi×jBj×jCi×mi,j,mi=m
whuber

@whuber ich sehe. Angesichts der Annahmen verstehe ich immer noch nicht, wie der Übergang von der zweiten zur dritten Zeile, in der er einführt, stattgefunden hat .
MoneyBall

Zwischen dem zweiten und dritten Zeile ist er ließ . Zwischen der zweiten und dritten Zeile hat er die Produktregel verwendet. später benutzt er die Kettenregel, um f ( ) loszuwerden . f(A)=ABf()
Brian Borchers

Antworten:


14

Es gibt einen subtilen, aber starken Missbrauch der Notation, der viele der Schritte verwirrend macht. Gehen wir dieses Problem an, indem wir zu den Definitionen von Matrixmultiplikation, Transposition, Spuren und Ableitungen zurückkehren. Wenn Sie die Erklärungen weglassen möchten, gehen Sie einfach zum letzten Abschnitt "Alles zusammenfügen", um zu sehen, wie kurz und einfach eine strenge Demonstration sein kann.


Notation und Konzepte

Maße

Damit der Ausdruck Sinn macht, wenn A eine m × n- Matrix ist, muss B eine (quadratische) n × n- Matrix sein und C muss eine m × p- Matrix sein, woher das Produkt eine m × p- Matrix ist . Um die Spur zu nehmen (die die Summe der diagonalen Elemente ist, ist Tr ( X ) = i X i i ), dann ist p = m , was C ergibtABACAm×nBn×nCm×pm×pTr(X)=iXiip=mC eine quadratische Matrix.

Derivate

Die Notation " " scheint sich auf die Ableitung eines Ausdrucks in Bezug auf A zu beziehen . Normalerweise ist die Differenzierung eine Operation, die für die Funktionen f : R NR M ausgeführt wird . Die Ableitung an einer Stelle x R N für einen linearen Transformation D f ( x ) : R NR M . Bei Auswahl der Basen für diese Vektorräume kann eine solche Transformation als M × N- Matrix dargestellt werden. Das ist hier nicht der Fall!AAf:RNRMxRNDf(x):RNRMM×N

Matrizen als Vektoren

Stattdessen wird als ein Element von R m n betrachtet : Seine Koeffizienten werden (normalerweise zeilenweise oder spaltenweise) in einen Vektor der Länge N = m n abgewickelt . Die Funktion f ( A ) = Tr ( A B A ' C ) hat reelle Werte, woraus M = 1 ist . Folglich muss D f ( x ) eine 1 × m n -Matrix sein: Es ist ein Zeilenvektor, der eine lineare Form darstelltARmnN=mnf(A)=Tr(ABAC)M=1Df(x)1×mn . Die Berechnungen in der Frage verwenden jedoch eineandereArt der Darstellung linearer Formen: Ihre Koeffizienten werden inm×nMatrizen zurückgerollt.Rmnm×n

Die Spur als lineare Form

Sei eine konstante m × n- Matrix. Dann wird durch Definition der Spur und der Matrixmultiplikationωm×n

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

Dies drückt die allgemeinste mögliche lineare Kombination der Koeffizienten von : ω ist eine Matrix mit der gleichen Form wie A und ihr Koeffizient in Zeile i und Spalte j ist der Koeffizient von A i j in der linearen Kombination. Da ω i j A i j = A i j ω i j ist , können die Rollen von ω und A vertauscht werden, was den äquivalenten Ausdruck ergibtAωAijAijωijAij=AijωijωA

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

Indem wir eine konstante Matrix mit einer der Funktionen A Tr ( A ω ' ) oder A Tr ( ω A ' ) identifizieren , können wir lineare Formen im Raum von m × n Matrizen als m × n Matrizen darstellen. (Verwechseln Sie diese nicht mit Ableitungen von Funktionen von R n bis R m !)ωATr(Aω)ATr(ωA)m×nm×nRnRm


Berechnung eines Derivats

Die Definition

Ableitungen vieler der in der Statistik vorkommenden Matrixfunktionen lassen sich am einfachsten und zuverlässigsten aus der Definition berechnen: Sie müssen nicht wirklich auf komplizierte Regeln der Matrixdifferenzierung zurückgreifen. Diese Definition besagt, dass genau dann bei x differenzierbar ist, wenn es eine lineare Transformation L gibt, so dassfxL

f(x+h)f(x)=Lh+o(|h|)

für beliebig kleine Verschiebungen . Die Little-Oh-Notation bedeutet, dass der Fehler, der bei der Approximation der Differenz f ( x + h ) - f ( x ) durch L h gemacht wird, willkürlich kleiner ist als die Größe von h für ausreichend kleines h . Insbesondere können wir Fehler, die proportional zu | sind , immer ignorieren h | 2 .hRNf(x+h)f(x)Lhhh|h|2

Die Berechnung

Wenden wir die Definition auf die betreffende Funktion an. Multiplizieren, Erweitern und Ignorieren des Begriffs mit einem Produkt von zwei darin,h

(2)f(A+h)f(A)=Tr((A+h)B(A+h)C)Tr(ABAC)=Tr(hBAC)+Tr(ABhC)+o(|h|).

L=Df(A)(1)ω=BACTr(XhC)X=AB

(3)Tr(XhC)=i=1mj=1nk=1mXijhkjCki=i,j,khkj(CkiXij)=Tr((CX)h).

X=AB(2)

f(A+h)f(A)=Tr(hBAC)+Tr(CABh)+o(|h|).

fA

Df(A)=(BAC)+CAB=CAB+CAB,
ω(1)

Alles zusammenfügen

Hier ist also eine Komplettlösung.

Am×nBn×nCm×mf(A)=Tr(ABAC)hm×n(3)

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

Da dies nur etwa die Hälfte der Arbeit in Anspruch nimmt und nur die grundlegendsten Manipulationen von Matrizen und Spuren (Multiplikation und Transposition) umfasst, muss dies als einfachere - und wohl übersichtlichere - Demonstration des Ergebnisses angesehen werden. Wenn Sie die einzelnen Schritte in der ursprünglichen Demonstration wirklich verstehen möchten, ist es möglicherweise hilfreich, sie mit den hier gezeigten Berechnungen zu vergleichen.


1
tr(ABC)=tr(CAB)

1
(1)Mat(m,n)m×nf:Mat(m,n)RAωDf(A)X:→Tr(Xω)

2
@Amoeba Das ist genau richtig - es rechtfertigt die Behauptungen in der ersten Zeile dieser Antwort. Deshalb habe ich "in diesem Sinne" geschrieben und später in der Zusammenfassung den Ausdruck "bestimmt durch" anstelle von "gleich" verwendet. Ich werde nicht leugnen, dass die Erklärung herausfordernd war; Ich werde darüber nachdenken, wie ich es klären kann, und ich freue mich über all Ihre Kommentare und Vorschläge.
whuber

1
@ user10324 Das meiste, was ich auf dieser Site poste, ist meine eigene Formulierung - ich konsultiere selten Quellen (und dokumentiere sie, wenn ich das tue). Diese Beiträge sind Destillationen aus dem Lesen vieler Bücher und Zeitungen. Einige der besten Bücher waren nicht diejenigen, die vollständig mathematisch streng sind, sondern die zugrunde liegenden Ideen wunderschön erklärt und illustriert haben. Die ersten, die mir in der Reihenfolge ihrer Raffinesse in den Sinn kommen, sind Freedman, Pisani & Purves, Statistics (jede Ausgabe); Jack Kiefer, Einführung in die statistische Inferenz ; und Steven Shreve, Stochastic Calculus for Finance II .
whuber

1
f(x+h)f(x)=Lh+o(|h|)hxxRm×nhRm×n
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.