【ML-0-1】矩陣求導-定義和求導布局


目錄

  1. 矩陣向量求導定義
  2. 矩陣向量求導布局

機器學習中很多地方用到了標量,向量和矩陣之間的求導,計算求導確實非常麻煩,三個兩兩結合,就有9中基本形態,再加上轉置,就更加暈乎了,因此作為后續學習基礎,這個放到機器學習最前面作為先導知識。具體求導內容可見:

張賢達的《矩陣分析與應用》,電子檔文本如下:

鏈接:https://pan.baidu.com/s/1iIcqAyJ1cfi2icdwgay0kw 提取碼:rcwx

一、矩陣向量求導定義

求導其實高中就學過,基本都是標量對標量求導,也即是下圖中的第一種形式,很簡單就不展開。所謂向量對標量的求導,其實就是向量里的每個分量分別對標量求導,最后把求導的結果排列在一起,按一個向量表示而已。類似的結論也存在於標量對向量的求導,向量對向量的求導,向量對矩陣的求導,矩陣對向量的求導,以及矩陣對矩陣的求導等。

若沒有特殊說明,默認情況定義如下:求導的自變量用x表示標量,x表示n維向量,X表示m×n維度的矩陣,求導的因變量用y表示標量,y表示m維向量,Y表示p×q維度的矩陣。默認向量為向量,若是行向量,本文全部使用對應字母的轉置表示。

根據求導的自變量和因變量是標量,向量還是矩陣,我們有9種可能的矩陣求導定義,如下:

自變量\因變量

標量y

向量y

矩陣Y

標量x

∂y/∂x

y/∂x

Y/∂x

向量x

∂y/x

y/x

Y/x

矩陣X

∂y/X

y/X

Y/X

但是向量和矩陣表示又區分行和列不同情況,實際也就是轉置不同,需要統一標准,才能閱讀方便,一般稱之為求導布局。

二、 矩陣向量求導布局

最基本的求導布局有兩個:分子布局(numerator layout)和分母布局(denominator layout )。總體原則:根據保持與前面向量或矩陣為一致作為默認形式 

2.1 分子布局(numerator layout)

一種解釋:分子為 y 或者分母為 xT (即,分子為列向量或者分母為行向量)

另一種理解:以分子為主,求導的結果的維度和分子的維度是一致的。

如果向量y是一個m維的列向量,那么求導結果∂y/x也是一個m維列向量;

如果向量y是一個m維的行向量,那么求導結果∂y/∂x也是一個m維行向量。

2.2 分母布局(denominator layout )

一種解釋:分子為 y或者分母為 x (即,分子為行向量或者分母為列向量)

另一種理解:對於分母布局來說,我們求導結果的維度以分母為主

如果向量y是一個m維的列向量,那么求導結果∂y/∂x是一個m維行向量;

如果向量y是一個m維的行向量,那么求導結果∂y/∂x是一個m維列向量。

2.3 舉例說明:

總體來說還是有點繞,統一舉例列表如下所示。

2.3.1 分子布局

標量/向量(行向量): 

向量 (列向量)/標量:默認形式  

向量/向量: (分子為列向量橫向平鋪,分母為行向量縱向平鋪)默認形式 稱為雅克比 (Jacobian)矩陣

標量/矩陣:  (注意這個矩陣部分是轉置的,而下面的分母布局是非轉置的

矩陣/標量默認形式 

2.3.2 分母布局

標量/向量 (分母的向量為列向量)默認形式 

向量/標量:  (分子的向量為行向量)

向量/向量: (分子為行向量縱向平鋪,分母為列向量橫向平鋪)

標量/矩陣  (矩陣部分為原始矩陣)默認形式 

2.3.3 匯總

第一種太簡單,不寫了,后面三種情況太難,后續再展開。均有斜杠表示。我么按照列向量來舉例子,行向量取轉置即可。

自變量\因變量

標量y

列向量ym維)

矩陣Y(p × q)

標量x

/

y/∂x

分子布局:m維列向量(默認布局)

分母布局:m維行向量

Y/∂x

分子布局:p × q矩陣(默認布局)

分母布局:q × p矩陣

列向量xn維)

∂y/∂x

分子布局:n維行向量

分母布局:n維列向量(默認布局)

  

y/∂x

分子布局:m × n雅可比矩陣(默認布局)

分母布局:n × m梯度矩陣

/

矩陣X

(p × q)

∂y/∂X

分子布局:q × p矩陣

分母布局:p × q矩陣(默認布局)

/

/

   

主要來自:

https://www.cnblogs.com/pinard/p/10750718.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM