Apa yang menjustifikasi perhitungan turunan dari fungsi matriks ini?

10

Dalam kursus pembelajaran mesin Andrew Ng, ia menggunakan rumus ini:

Atr(ABATC)=CAB+CTABT

dan dia melakukan bukti cepat yang ditunjukkan di bawah ini:

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

Buktinya terlihat sangat padat tanpa komentar dan saya kesulitan memahaminya. Apa yang sebenarnya terjadi dari kesetaraan kedua ke ketiga?

MoneyBall
sumber
Dia harus membuat asumsi khusus tentang dimensi , , dan , karena kalau tidak rumus ini tidak masuk akal secara umum. Di sisi kiri harus berupa matriks , matriks a , dan matriks a untuk bilangan bulat non-negatif arbitrer . Tetapi kemudian produk di sebelah kanan tidak akan didefinisikan kecuali . B C A i × j B j × j C i × m i , j , m i = mABCAi×jBj×jCi×mi,j,mi=m
whuber
@whuber saya mengerti. Dengan asumsi itu, saya masih tidak mengerti bagaimana transisi terjadi dari baris kedua ke ketiga di mana ia memperkenalkan .
MoneyBall
Antara kedua dan baris ketiga dia membiarkan . Antara baris kedua dan ketiga dia menggunakan aturan produk. kemudian dia menggunakan aturan rantai untuk menghilangkan f ( ) . f(A)=ABf()
Brian Borchers

Jawaban:

14

Ada penyalahgunaan notasi yang sulit namun banyak yang membuat banyak langkah membingungkan. Mari kita bahas masalah ini dengan kembali ke definisi multiplikasi matriks, transposisi, jejak, dan turunannya. Bagi mereka yang ingin menghilangkan penjelasan, lompat saja ke bagian terakhir "Putting It All Together" untuk melihat seberapa pendek dan sederhananya sebuah demonstrasi yang keras.


Notasi dan Konsep

Ukuran

Agar ungkapan masuk akal ketika A adalah matriks m × n , B harus berupa matriks (persegi) n × n dan C harus berupa matriks m × p , di mana produknya adalah matriks m × p . Dalam rangka untuk mengambil jejak (yang merupakan jumlah dari elemen diagonal, Tr ( X ) = Σ i X i i ), maka p = m , membuat CABACAm×nBn×nCm×pm×pTr(X)=iXiip=mC matriks persegi.

Derivatif

Notasi " " muncul untuk merujuk pada turunan dari ekspresi terhadap A . Biasanya, diferensiasi adalah operasi dilakukan pada fungsi f : R NR M . Turunan pada titik x R N adalah transformasi linear D f ( x ) : R NR M . Setelah memilih basis untuk ruang vektor ini, transformasi seperti itu dapat direpresentasikan sebagai matriks M × N. Bukan itu masalahnya di sini!AAf:RNRMxRNDf(x):RNRMM×N

Matriks sebagai vektor

Sebaliknya, sedang dipertimbangkan sebagai unsur R m n : koefisien yang sedang membuka gulungan (biasanya baik baris demi baris atau kolom dengan kolom) menjadi vektor dengan panjang N = m n . Fungsi f ( A ) = Tr ( A B A C ) memiliki nilai nyata, di mana M = 1 . Akibatnya, D f ( x ) harus berupa matriks 1 × m n : ini adalah vektor baris yang mewakili bentuk linearARmnN=mnf(A)=Tr(ABAC)M=1Df(x)1×mn . Namun demikian, perhitungan dalam pertanyaan menggunakancara yangberbedauntuk mewakili bentuk linear: koefisien mereka digulung kembali ke dalammatriksm×n.Rmnm×n

Jejak sebagai bentuk linier

Misalkan menjadi matriks m × n konstan . Kemudian, dengan definisi jejak dan perkalian matriks,ωm×n

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

Ini mengungkapkan kombinasi linear yang mungkin paling umum dari koefisien : ω adalah matriks dari bentuk yang sama seperti A dan koefisien dalam baris i dan kolom j adalah koefisien A i j di kombinasi linear. Karena ω i j A i j = A i j ω i j , peran ω dan A dapat berubah, memberikan ekspresi yang setaraAωAijAijωijAij=AijωijωA

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

Dengan mengidentifikasi matriks konstan dengan salah satu dari fungsi A Tr ( A ω ' ) atau A Tr ( ω A ' ) , kita dapat mewakili bentuk linear pada ruang m × n matriks sebagai m × n matriks. (Jangan bingung dengan fungsi turunan dari R n ke R m !)ωATr(Aω)ATr(ωA)m×nm×nRnRm


Menghitung Derivatif

Definisi

Derivatif dari banyak fungsi matriks yang ditemukan dalam statistik paling mudah dan andal dihitung dari definisi: Anda tidak benar-benar perlu menggunakan aturan rumit dari diferensiasi matriks. Definisi ini mengatakan bahwa dapat dibedakan pada x jika dan hanya jika ada transformasi linear L sedemikian rupafxL

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

untuk perpindahan sewenang-wenang kecil . Kecil-oh notasi berarti bahwa kesalahan yang dibuat di mendekati perbedaan f ( x + h ) - f ( x ) oleh L h adalah sewenang-wenang lebih kecil dari ukuran h untuk cukup kecil h . Secara khusus, kami mungkin selalu mengabaikan kesalahan yang proporsional dengan | h | 2 .hRNf(x+h)f(x)Lhhh|h|2

Penghitungan

Mari kita terapkan definisi ke fungsi yang dimaksud. Mengalikan, memperluas, dan mengabaikan istilah dengan produk dua di dalamnya,h

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

Untuk mengidentifikasi turunan , kita harus memasukkan ini ke dalam bentuk ( 1 ) . Istilah pertama di sebelah kanan sudah dalam formulir ini, dengan ω = B A ' C . Istilah lainnya di sebelah kanan memiliki bentuk Tr ( X h ' C ) untuk X = A B . Mari kita tuliskan ini:L=Df(A)(1)ω=BACTr(XhC)X=AB

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

Mengingat , ( 2 ) dapat ditulis ulangX=AB(2)

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

Hal ini dalam ini arti bahwa kita dapat mempertimbangkan turunan dari pada A menjadi D f ( A ) = ( B A ' C ) ' + C A B = C ' A B ' + C A B , karena matriks ini memainkan peran ω dalam rumus jejak ( 1 ) .fA

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

Menyatukan Semuanya

Di sini, kemudian, adalah solusi lengkap.

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.

Karena ini hanya membutuhkan sekitar setengah pekerjaan dan hanya melibatkan manipulasi matriks dan jejak yang paling mendasar (penggandaan dan transposisi), itu harus dianggap sebagai demonstrasi hasil yang lebih sederhana - dan bisa dibilang lebih mudah dipahami -. Jika Anda benar-benar ingin memahami langkah-langkah individual dalam demonstrasi asli, Anda mungkin merasa bermanfaat untuk membandingkannya dengan perhitungan yang ditunjukkan di sini.

whuber
sumber
1
tr(ABC)=tr(CAB)
1
(1)Mat(m,n)m×nf:Mat(m,n)RAωDf(A)X:→Tr(Xω)
2
@Amoeba Itu benar - itu cukup membenarkan pernyataan di baris pertama dari jawaban ini. Itulah sebabnya saya menulis "dalam pengertian ini " dan, kemudian dalam ringkasan, menggunakan frasa "ditentukan oleh" daripada "sama dengan." Saya tidak akan menyangkal bahwa penjelasannya menantang; Saya akan memikirkan cara menjelaskannya dan saya menghargai semua komentar dan saran Anda.
whuber
1
@ user10324 Sebagian besar dari apa yang saya posting di situs ini adalah formulasi saya sendiri - saya jarang berkonsultasi dengan sumber (dan saya mendokumentasikannya ketika saya melakukannya). Posting-posting ini adalah distilasi dari membaca banyak buku dan kertas. Beberapa buku terbaik bukanlah buku yang sepenuhnya matematis, tetapi yang telah menjelaskan dan mengilustrasikan ide-ide yang mendasarinya dengan indah. Beberapa yang pertama muncul dalam pikiran - dalam urutan kecanggihan - adalah Freedman, Pisani, & Purves, Statistics (semua edisi); Jack Kiefer, Pengantar Inferensi Statistik ; dan Steven Shreve, Stochastic Calculus for Finance II .
whuber
1
f(x+h)f(x)=Lh+o(|h|)hxxRm×nhRm×n