矩陣求導公式 預備知識 矩陣求導

2021-10-12 08:53:51 字數 1614 閱讀 6259

在優化中,面對的大都是多變數問題。針對多變數問題,為了表示公式和編寫**的方便,往往都用矩陣表示。而優化中,求導往往又是家常便飯,因此對於矩陣求導需要有熟練地掌握,不然很多時候會對一些演算法十分頭暈,編寫程式時也會不知所措。因為我就是這麼暈過來的【捂臉】。

好了,現在開始步入正文:

1.矩陣對標量求導

如果有乙個矩陣函式  對乙個標量x求導,那麼這就是這個矩陣函式的每乙個值對這個x求導,很好理解,矩陣形狀也不會有變化。就如下面這個公式表示的一樣:

2.標量對列向量求導

如果前面提到的y是乙個標量,而x是乙個列向量。那麼對x求導相當於就是乙個值對每個x1,x2,....,xm進行求導。也是比較好理解的,矩陣形狀還是不變。例如:

3.行向量對列向量求導

如果前面的函式y是乙個行向量,而x為乙個列向量。這個可能直接給結果會比較難理解,因此,這我們做個分解來理解:

y裡面的每個數y1,y2,....,yn都拿出來,分別對x求導,相當於第二種情況標量對列向量求導。因此行數就是還會等於x的行數m。

因為,y裡面每個數對x求導後又組合在一起,那麼列數就是y的列數n。

這裡幾個常用的結論:

4.列向量對行向量求導

相當於是情況3的轉置,不再贅述。

這裡幾個常用的結論:

5.矩陣對列向量求導

相當於是 1.矩陣對標量求導的推廣,相當於矩陣對很多標量求導,再組裝起來。因此輸出是乙個矩陣:

注意每乙個f都是矩陣。

6.標量對矩陣求導

相當於是2.標量對列向量求導的推廣,把矩陣拆成很多列,再組裝:

這裡幾個常用的結論:

7.矩陣對矩陣求導

8.向量積對列向量x求導

這個會比較難理解,但是把握一點就很好理解了。

先把向量積後的形狀確定出來,看對照的是上面的哪一種情況,對輸出矩陣形狀做個預判

為了和預判一致,那麼就是轉置在哪的問題,稍微注意一下就不容易出問題了

這裡幾個常用的結論:

最後放網上找的總結:

矩陣求導公式

基本公式 y a x dy dx a y x a dy dx a y a x b dy dx a b y a x b dy dx b a 1.矩陣y對標量x求導 相當於每個元素求導數後轉置一下,注意m n矩陣求導後變成n m了 y y ij dy dx dy ji dx 2.標量y對列向量x求導 注...

矩陣求導公式

先給乙個維基百科吧 公式太多了 基本的公式 設x為乙個列向量,a為乙個矩陣,則 d ax dx a d x a dx a d x a dx a d x ax dx a a x 又設y為另乙個列向量,則 d x ay da xy d x a y da yx 詳細法則 1 2 3 向量與矩陣對元素求導 ...

矩陣(向量)求導

在網上看到有人貼了如下求導公式 y a x dy dx a y x a dy dx a y a x b dy dx a b y a x b dy dx b a 1.矩陣y對標量x求導 相當於每個元素求導數後轉置一下,注意m n矩陣求導後變成n m了 y y ij dy dx dy ji dx 2.標...