矩陣求導(上)——標量對矩陣的求導
阿新 • • 發佈:2018-11-03
參考:https://zhuanlan.zhihu.com/p/24709748
這部分內容分兩篇整理,上篇講標量對矩陣的求導,下篇講矩陣對矩陣的求導。
- 本文使用小寫字母x表示標量,粗體小寫字母 表示(列)向量,大寫字母X表示矩陣。
定義:標量f對矩陣X的導數,定義為 ,即f對X逐元素求導排成與X尺寸相同的矩陣。然而,這個定義在計算中並不好用,實用上的原因是在對較複雜的函式難以逐元素求導;哲理上的原因是逐元素求導破壞了整體性。
試想,為何要將f看做矩陣X而不是各元素
的函式呢?
答案是用矩陣運算更整潔。所以在求導時不宜拆開矩陣,而是要找一個從整體出發的演算法。
為此,我們來回顧,一元微積分中的導數(標量對標量的導數)與微分有聯絡:
;
多元微積分中的梯度(標量對向量的導數)也與微分有聯絡:
,這裡第一個等號是全微分公式,第二個等號表達了梯度與微分的聯絡:全微分
梯度向量
與
微分向量
的內積;
受此啟發,我們將矩陣導數與微分建立聯絡: 。其中 代表跡(trace)是方陣對角線元素之和,滿足性質:對尺寸相同的矩陣A,B, 是矩陣A,B的內積。與梯度相似,這裡第一個等號是全微分公式,第二個等號表達了矩陣導數與微分的聯絡:全微分df是 微分矩陣dX的內積。
然後來建立運演算法則。回想遇到較複雜的一元函式如 ,我們是如何求導的呢?通常不是從定義開始求極限,而是先建立了初等函式求導和四則運算、複合等法則,再來運用這些法則。故而,我們來創立常用的矩陣微分的運演算法則:
- 加減法: ;
- 矩陣乘法: ;
- 轉置: ;
- 跡: 。
- 逆: 。此式可在 兩側求微分來證明。
- 行列式: ,其中 表示X的伴隨矩陣,在X可逆時又可以寫作 。此式可用Laplace展開來證明,詳見張賢達《矩陣分析與應用》第279頁。
- 逐元素乘法: