コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:BigNeuron/行列の微分

数学において、行列の微分[1]とは、多変数微積分を行うための特殊な表記法のことで、特に行列で記したものである。ある関数の、多くの変数に関する偏微分、もしくは複数の関数の、ある変数に関する偏微分の集まりであり、 これらをベクトルや行列で表してひとつの実体として扱う。これにより、関数の最大最小値を求めたり微分方程式系を解くことなどの演算が大幅に簡素化される。 ここでの記法は統計工学で一般的に使用されるものだが、 物理学ではテンソルインデックス記法が好まれる。

行列の微分には2つの異なる記法があり、それによりこの分野は2つに区別できる。 それは、ベクトルに関するスカラーの導関数を列ベクトルとして書くか、行ベクトルとして書くか、の違いである。 ベクトルを行列と組み合わせる場合、( 行ベクトルではなく)列ベクトルとして扱う必要があるという一般的な仮定が置かれているときでも、両方の記法が可能である。 一般にこの記法は、行列の微積分を用いる分野ごとに、ある程度どちらかに定まっている(たとえば、 計量経済学統計 、 推定理論 、 機械学習 )。 ただし特定の分野内であっても、著者によって異なる記法を用いる場合がある。このとき著者はそれぞれ、その記法が標準であるかのように書くことが多い。 異なる表記法が用いられていることを慎重に検証せずに、異なる著者の結果を組み合わせると、重大な間違いが生じる可能性がある。 これらの2つの記法の定義とそれらの比較は、 レイアウト規則セクションにまとめられている。

扱う範囲

[編集]

行列の微分とは、各独立変数に関する各従属変数の微分をまとめるために、行列とベクトルを用いる表記法のことで、いくつか種類がある。 一般に、独立変数はスカラ、ベクトル、または行列であり、従属変数もこれらのいずれかである。 それぞれ異なる種類の記法では、広義の用語を用いながらも、異なる規則や個別の微積分がある。 行列表記は、多くの導関数を体系的にまとめる便利な方法である。

最初の例として、 ベクトル解析の分野から勾配を考える。 三独立変数のスカラ関数 を考えると、その勾配はベクトル方程式で与えられる。

ここで、方向の単位ベクトルを表す() 。 この種の一般的な微分は、ベクトルに関するスカラの微分として見ることができ、その結果はベクトル形式で容易にまとめられる。

より複雑な例として、 勾配行列として知られる、行列に関するスカラ関数の導関数がある。 勾配行列とは、各行列要素に関するスカラ関数の微分を、対応する位置に記述したものである。 その場合、スカラは行列内の各独立変数の関数でなければならない。 別の例としては、 次元の独立変数と次元の従属変数を持つ関数があるとき、独立変数に関する従属変数の微分を考えることができる。 結果は、考えうるすべての微分の組み合わせで構成される行列にまとめられる。 当然、変数にスカラ、ベクトル、および行列のどれを用いるかで9つの可能性がある。 ただし独立変数と従属変数のそれぞれで、3つより多い候補を考えれば、非常に多くの可能性が残ることに留意する。

行列形式でよく整理できる6種類の微分を次の表にまとめる。 [2] [2]

Types of matrix derivative
種類 スカラ ベクトル 行列
スカラ
ベクトル
行列

ここでは、最も一般的な意味で「行列」という用語を用いた。ベクトルとスカラは、それぞれ1列と1行1列の単純な行列である。 さらに、ベクトルを表すために太字を用いて、行列には太字の大文字を用いた。 この表記は全体を通して使用される。

また、行列に関するベクトルの微分や表の他の塗りつぶされていない項目についても議論できることに注意すること。 ただし、これらの微分は、2を超えるランクのテンソルで最も自然に構成されるため、行列にうまく収まらない。 以下の3節では、これらそれぞれの微分を定義し、数学の他の分野に関連付ける。 より詳細な表については、 レイアウト規則の節を参照すること。


恒等式

[編集]

上記のように、一般に、分子表記と分母表記を切り替えると、演算の結果が入れ替わる。

以下のすべての恒等式を理解するために、最も重要な規則である連鎖律積の微分則 、および加法性に留意すること。 加法性はいつでも当てはまる。積の微分則は、行列の積の順序が保たれている場合なら、以下のほとんどの場合に当てはまる。というのも行列の積は可換ではないためである。 連鎖律はいくつかの場合に当てはまるが、残念ながら、行列ごとの微分またはスカラごとの微分には当てはまらない (後者の場合、主に行列に作用するトレース演算子が関係する )。 後者の場合、積の微分則を直接当てはめることできないが、微分恒等式を用いてもう少し手を加えることで同等のことを行うことができる。

以下の恒等式は、次の規則に従う。

  • スカラは、のいずれかに関する定数である。また、スカラは、のいずれかに関する関数である。
  • ベクトルは、のいずれかに関する定数である。また、ベクトルは、のいずれかに関する関数である。
  • 行列は、のいずれかに関する定数である。また、行列は、のいずれかに関する関数である。

ベクトルによるベクトルの微分の恒等式

[編集]

ベクトルによるベクトルの微分の恒等式は、分子か分母の次元を削減してスカラにすることで、直接ベクトによるスカラの微分やスカラによるベクトルの微分の恒等式にも当てはまる。よってこれを始めに記す。

恒等式: ベクトルによるベクトルの微分
条件 分子表記, i.e. by y and xT 分母表記, i.e. by yT and x
の関数でない
の関数でない
の関数でない
の関数でない,
の関数でない,


ベクトルによるスカラの微分の恒等式

[編集]

基本的な恒等式は太い黒線より上にあるものである。

恒等式: ベクトルによる スカラの微分
Condition Expression Numerator layout,
i.e. by xT; result is row vector
Denominator layout,
i.e. by x; result is column vector
の関数でない [3] [3]
の関数でない,

in numerator layout

in denominator layout

,
の関数でない

in numerator layout

in denominator layout

, the Hessian matrix[4]
の関数でない

の関数でない
の関数でない
の関数でない
の関数でない
対称行列
の関数でない
の関数でない
対称行列
の関数でない,

in numerator layout

in denominator layout

の関数でない
の関数でない
の関数でない

スカラによるベクトルの微分の恒等式

[編集]
恒等式: スカラによるベクトルの微分
条件 分子表記, i.e. by y,
result is column vector
分母表記, i.e. by yT,
result is row vector
の関数でない [3]
の関数でない,
の関数でない,
Assumes consistent matrix layout; see below.
Assumes consistent matrix layout; see below.

NOTE: The formulas involving the vector-by-vector derivatives and (whose outputs are matrices) assume the matrices are laid out consistent with the vector layout, i.e. numerator-layout matrix when numerator-layout vector and vice versa; otherwise, transpose the vector-by-vector derivatives.

行列によるスカラの微分の恒等式

[編集]

Note that exact equivalents of the scalar product rule and chain rule do not exist when applied to matrix-valued functions of matrices. However, the product rule of this sort does apply to the differential form (see below), and this is the way to derive many of the identities below involving the trace function, combined with the fact that the trace function allows transposing and cyclic permutation, i.e.:

For example, to compute

Therefore,

(For the last step, see the 'Conversion from differential to derivative form' section.)

Identities: scalar-by-matrix
Condition Expression Numerator layout, i.e. by XT Denominator layout, i.e. by X
a is not a function of X [5] [5]
a is not a function of X, u = u(X)
u = u(X), v = v(X)
u = u(X), v = v(X)
u = u(X)
u = u(X)
U = U(X) [4]    
Both forms assume numerator layout for

i.e. mixed layout if denominator layout for X is being used.

a and b are not functions of X
a and b are not functions of X
a, b and C are not functions of X
a, b and C are not functions of X
U = U(X), V = V(X)
a is not a function of X,
U = U(X)
g(X) is any polynomial with scalar coefficients, or any matrix function defined by an infinite polynomial series (e.g. eX, sin(X), cos(X), ln(X), etc. using a Taylor series); g(x) is the equivalent scalar function, g(x) is its derivative, and g(X) is the corresponding matrix function
A is not a function of X [6]    
A is not a function of X [4]    
A is not a function of X [4]    
A is not a function of X [4]    
A, B are not functions of X
A, B, C are not functions of X
n is a positive integer [4]    
A is not a function of X,
n is a positive integer
[4]    
[4]    
[4]    
[7]    
a is not a function of X [4][8]
A, B are not functions of X [4]    
n is a positive integer [4]    
(see pseudo-inverse) [4]     
(see pseudo-inverse) [4]    
A is not a function of X,
X is square and invertible
A is not a function of X,
X is non-square,
A is symmetric
A is not a function of X,
X is non-square,
A is non-symmetric

Matrix-by-scalar identities

[編集]
Identities: matrix-by-scalar
Condition Expression Numerator layout, i.e. by Y
U = U(x)
A, B are not functions of x,
U = U(x)
U = U(x), V = V(x)
U = U(x), V = V(x)
U = U(x), V = V(x)
U = U(x), V = V(x)
U = U(x)
U = U(x,y)
A is not a function of x, g(X) is any polynomial with scalar coefficients, or any matrix function defined by an infinite polynomial series (e.g. eX, sin(X), cos(X), ln(X), etc.); g(x) is the equivalent scalar function, g(x) is its derivative, and g(X) is the corresponding matrix function
A is not a function of x

Further see Derivative of the exponential map.

Scalar-by-scalar identities

[編集]

With vectors involved

[編集]
Identities: scalar-by-scalar, with vectors involved
Condition Expression Any layout (assumes dot product ignores row vs. column layout)
u = u(x)
u = u(x), v = v(x)

With matrices involved

[編集]
Identities: scalar-by-scalar, with matrices involved[4]
Condition Expression Consistent numerator layout,
i.e. by Y and XT
Mixed layout,
i.e. by Y and X
U = U(x)
U = U(x)
U = U(x)
U = U(x)
A is not a function of x, g(X) is any polynomial with scalar coefficients, or any matrix function defined by an infinite polynomial series (e.g. eX, sin(X), cos(X), ln(X), etc.); g(x) is the equivalent scalar function, g(x) is its derivative, and g(X) is the corresponding matrix function.
A is not a function of x

Identities in differential form

[編集]

It is often easier to work in differential form and then convert back to normal derivatives. This only works well using the numerator layout. In these rules, "a" is a scalar.

Differential identities: scalar involving matrix[2][4]
Condition Expression Result (numerator layout)
Differential identities: matrix[2][4]
Condition Expression Result (numerator layout)
A is not a function of X
a is not a function of X
(Kronecker product)
(Hadamard product)
(conjugate transpose)

To convert to normal derivative form, first convert it to one of the following canonical forms, and then use these identities:

Conversion from differential to derivative form[2]
Canonical differential form Equivalent derivative form


[[Category:多変数微分積分学]] [[Category:線型代数学]] [[Category:行列論]]

  1. ^ Matrix Calculusには定着した日本語訳が見当たらない。Vector Calculus(ベクトル解析)の類推をすれば行列解析と訳されるべきであるが、ここでは行列解析のうち特に微分を扱っているため、行列の微分と訳した。
  2. ^ a b c d e Thomas P. (December 28, 2000). “Old and New Matrix Algebra Useful for Statistics”. 5 February 2016閲覧。
  3. ^ a b c Here, refers to a column vector of all 0's, of size n, where n is the length of x.
  4. ^ a b c d e f g h i j k l m n o p q Petersen, Kaare Brandt; Pedersen, Michael Syskind. The Matrix Cookbook. オリジナルの2 March 2010時点におけるアーカイブ。. https://web.archive.org/web/20100302210536/http://www.imm.dtu.dk/pubdb/views/edoc_download.php/3274/pdf/imm3274.pdf 5 February 2016閲覧。  This book uses a mixed layout, i.e. by Y in by X in
  5. ^ a b Here, refers to a matrix of all 0's, of the same shape as X.
  6. ^ Duchi, John C. “Properties of the Trace and Matrix Derivatives”. Stanford University. 5 February 2016閲覧。
  7. ^ See Determinant#Derivative for the derivation.
  8. ^ The constant a disappears in the result. This is intentional. In general,
    or, also