エンジニアを目指す浪人のブログ

情報系に役立ちそうな応用数理をゆるめにメモします

いくつかの行列の公式を証明するその1

応用上よく使われるいくつかの行列の公式を証明しておくことにしました.


ベクトルと(正方)行列を準備します.

{\displaystyle \;\;\; x = \begin{bmatrix} x_{1} & x_{2} & \cdots & x_{n} \end{bmatrix}^T  }

{\displaystyle \;\;\; s = \begin{bmatrix} s_{1} & s_{2}  & \cdots & \ s_{n} \end{bmatrix}^T }

{\displaystyle \;\;\; c = \begin{bmatrix} c_{1} & c_{2}  & \cdots & \ c_{n} \end{bmatrix}^T }

{\displaystyle \;\;\; A =  \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots  & \vdots & \vdots & \vdots \\  a_{n1} & a_{n2} & \cdots & a_{nn} \end{bmatrix}  }


転置行列についての以下の性質は文献[2]にあります.

(t.1) {\displaystyle \;\;\; \left( A_1 A_2 A_3 \right)^T = \left( A_3 \right)^T  \left( A_2 \right)^T \left( A_1 \right)^T }


以下を準備します.

(0.1){\displaystyle \;\;\; x^T A x  =  \begin{bmatrix} x_{1} & x_{2} & \cdots & x_{n} \end{bmatrix}^T \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots  & \vdots & \vdots & \vdots \\  a_{n1} & a_{n2} & \cdots & a_{nn} \end{bmatrix}  \begin{bmatrix} x_{1} \\ x_{2}  \\ \vdots \\ x_{n} \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; =  \begin{bmatrix} x_{1} & x_{2} & \cdots & x_{n} \end{bmatrix}^T \begin{bmatrix} a_{11} x_{1} + a_{12} x_{2} + \cdots + a_{1n} x_{n}  \\ a_{21} x_{1} + a_{22} x_{2} + \cdots + a_{2n} x_{n} \\ \vdots \\ a_{n1} x_{1} + a_{n2} x_{2} + \cdots + a_{nn} x_{n} \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; =  \begin{bmatrix} x_{1} & x_{2} & \cdots & x_{n} \end{bmatrix}^T \begin{bmatrix} \sum_{i=1}^n a_{1i} x_i \\ \sum_{i=1}^n a_{2i} x_i  \\ \vdots \\ \sum_{i=1}^n a_{ni} x_i \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; =  x_1 \sum_{i=1}^n a_{1i} x_i + x_2 \sum_{i=1}^n a_{2i} x_i + \cdots + x_n \sum_{i=1}^n a_{ni} x_i }


(0.2){\displaystyle \;\;\; s^T A x  =  s_1 \sum_{i=1}^n a_{1i} x_i + s_2 \sum_{i=1}^n a_{2i} x_i + \cdots + s_n \sum_{i=1}^n a_{ni} x_i \;\;\; \because } (0.1)で {\displaystyle x^T = s^T } とする


(0.3){\displaystyle \;\;\; (x - s)^T A ( x - s)  = (x - s)^T  ( A x - A s )  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = x^T A x - x^T A s - s^T A x + s^T A s  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = x^T A x - ( x^T A s )^T - s^T A x + s^T A s  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = x^T A x - s^T A^T (x^T)^T - s^T A x + s^T A s \;\;\; \because } (t.1)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = x^T A x - s^T A^T x - s^T A x + s^T A s }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; \left( = x^T A x - 2 s^T A x \;\;\;\;\;\;\;\;\;\;\;\; + s^T A s \;\;\;\;\;\; \mathrm{if} \ A = A^T \right) }


本記事の目的に進みます.行列の微分についての以下の公式を証明します.

'--------------------------------------------------------------------------------------------------------------------------------------------
事実1.

(1.1){\displaystyle \;\;\; \frac{ \partial }{ \partial x } x^T A x  =  \left( A + A^T \right) x }


事実2.

{\displaystyle A = A^T } のとき以下が成り立つ.

(2.1){\displaystyle \;\;\; \frac{ \partial }{ \partial x } x^T A x  = 2 A x }

(2.2){\displaystyle \;\;\; \frac{ \partial }{ \partial x } ( x - s )^T A ( x - s ) = 2 A ( x - s) }

(2.3){\displaystyle \;\;\; \frac{ \partial }{ \partial s } ( x - s )^T A ( x - s ) = - 2 A ( x - s) }


事実3.

(3.1){\displaystyle \;\;\; \frac{ \partial }{ \partial x }  c^T x  =  c }



事実1.証明.

{\displaystyle \;\;\; \frac{ \partial }{ \partial x } x^T A x  =  \begin{bmatrix} \frac{ \partial }{ \partial x_1 } x^T A x \\ \frac{ \partial }{ \partial x_2 } x^T A x  \\ \vdots \\ \frac{ \partial }{ \partial x_n } x^T A x \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \begin{bmatrix} \frac{ \partial }{ \partial x_1 } \left(  x_1 \sum_{i=1}^n a_{1i} x_i + x_2 \sum_{i=1}^n a_{2i} x_i + \cdots + x_n \sum_{i=1}^n a_{ni} x_i \right)  \\ \frac{ \partial }{ \partial x_2 } \left(  x_1 \sum_{i=1}^n a_{1i} x_i + x_2 \sum_{i=1}^n a_{2i} x_i + \cdots + x_n \sum_{i=1}^n a_{ni} x_i \right)  \\ \vdots \\ \frac{ \partial }{ \partial x_n } \left(  x_1 \sum_{i=1}^n a_{1i} x_i + x_2 \sum_{i=1}^n a_{2i} x_i + \cdots + x_n \sum_{i=1}^n a_{ni} x_i \right) \end{bmatrix} \;\;\; \because } (0.1)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; =  \begin{bmatrix} \left( \sum_{i=1}^n a_{1i} x_i + x_1 a_{11} \right) + x_2 a_{21} + \cdots + x_n a_{n1} \\ x_1 a_{12} + \left( \sum_{i=1}^n a_{2i} x_i + x_2 a_{22} \right) + \cdots + x_n a_{n2} \\ \vdots \\ x_1 a_{1n} + x_2 a_{2n} + \cdots + \left( \sum_{i=1}^n a_{ni} x_i + x_n a_{nn} \right) \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; =  \begin{bmatrix} \sum_{i=1}^n a_{1i} x_i + \sum_{i=1}^n a_{i1} x_i \\ \sum_{i=1}^n a_{2i} x_i + \sum_{i=1}^n a_{i2} x_i \\ \vdots \\ \sum_{i=1}^n a_{ni} x_i + \sum_{i=1}^n a_{in} x_i \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; =  \begin{bmatrix} \sum_{i=1}^n a_{1i} x_i \\ \sum_{i=1}^n a_{2i} x_i \\ \vdots \\ \sum_{i=1}^n a_{ni} x_i \end{bmatrix} + \begin{bmatrix} \sum_{i=1}^n a_{i1} x_i \\ \sum_{i=1}^n a_{i2} x_i \\ \vdots \\ \sum_{i=1}^n a_{in} x_i \end{bmatrix}  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \begin{bmatrix} a_{11} x_{1} + a_{12} x_{2} + \cdots + a_{1n} x_{n}  \\ a_{21} x_{1} + a_{22} x_{2} + \cdots + a_{2n} x_{n} \\ \vdots \\ a_{n1} x_{1} + a_{n2} x_{2} + \cdots + a_{nn} x_{n} \end{bmatrix} + \begin{bmatrix} a_{11} x_{1} + a_{21} x_{2} + \cdots + a_{n1} x_{n} \\ a_{12} x_{1} + a_{22} x_{2} + \cdots + a_{n2} x_{n} \\ \vdots \\ a_{1n} x_{1} + a_{2n} x_{2} + \cdots + a_{nn} x_{n} \end{bmatrix}  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots  & \vdots & \vdots & \vdots \\  a_{n1} & a_{n2} & \cdots & a_{nn} \end{bmatrix}  \begin{bmatrix} x_{1} \\ x_{2}  \\ \vdots \\ x_{n} \end{bmatrix} + \begin{bmatrix} a_{11} & a_{21} & \cdots & a_{n1} \\ a_{12} & a_{22} & \cdots & a_{n2} \\ \vdots  & \vdots & \vdots & \vdots \\  a_{1n} & a_{2n} & \cdots & a_{nn} \end{bmatrix}  \begin{bmatrix} x_{1} \\ x_{2}  \\ \vdots \\ x_{n} \end{bmatrix}  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = Ax + A^T x }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \left( A + A^T \right) x }

(証明終わり)


事実2.証明.

(2.1)は事実1.(1.1)で {\displaystyle  A = A^T } とすればよい.


(2.2)を示す.

(2.4){\displaystyle \;\;\; \frac{ \partial }{ \partial x } s^T A x  =  \begin{bmatrix} \frac{ \partial }{ \partial x_1 } s^T A x \\ \frac{ \partial }{ \partial x_2 } s^T A x  \\ \vdots \\ \frac{ \partial }{ \partial x_n } s^T A x \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \begin{bmatrix} \frac{ \partial }{ \partial x_1 } \left(  s_1 \sum_{i=1}^n a_{1i} x_i + s_2 \sum_{i=1}^n a_{2i} x_i + \cdots + s_n \sum_{i=1}^n a_{ni} x_i \right)  \\ \frac{ \partial }{ \partial x_2 } \left(  s_1 \sum_{i=1}^n a_{1i} x_i + s_2 \sum_{i=1}^n a_{2i} x_i + \cdots + s_n \sum_{i=1}^n a_{ni} x_i \right)  \\ \vdots \\ \frac{ \partial }{ \partial x_n } \left(  s_1 \sum_{i=1}^n a_{1i} x_i + s_2 \sum_{i=1}^n a_{2i} x_i + \cdots + s_n \sum_{i=1}^n a_{ni} x_i \right) \end{bmatrix} \;\;\; \because } (0.2)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \begin{bmatrix} s_1 a_{11} + s_2 a_{21} + \cdots + s_n a_{n1} \\ s_1 a_{12} + s_2 a_{22} + \cdots + s_n a_{n2} \\ \vdots \\ s_1 a_{1n} + s_2 a_{2n} + \cdots + s_n a_{ni} \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \begin{bmatrix} a_{11} & a_{21} & \cdots & a_{n1} \\ a_{12} & a_{22} & \cdots & a_{n2} \\ \vdots  & \vdots & \vdots & \vdots \\  a_{1n} & a_{2n} & \cdots & a_{nn} \end{bmatrix}  \begin{bmatrix} s_{1} \\ s_{2}  \\ \vdots \\ s_{n} \end{bmatrix}  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = A^T s  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = A s \;\;\;\;\;\; \because A = A^T }



{\displaystyle \;\;\; \frac{ \partial }{ \partial x } ( x - s )^T A ( x - s ) = \frac{ \partial }{ \partial x } \left( x^T A x - 2 s^T A x + s^T A s  \right) \;\;\; \because } (0.3)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \frac{ \partial }{ \partial x } \left(  x^T A x - 2 s^T A x  \right) }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \frac{ \partial }{ \partial x } x^T A x - 2 \frac{ \partial }{ \partial x } s^T A x  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = 2 A x - 2 A s \;\;\; \because } (2.1)(2.4)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = 2 A ( x - s ) }


(2.3)を示す.

{\displaystyle \;\;\; \frac{ \partial }{ \partial s } ( x - s )^T A ( x - s ) = \frac{ \partial }{ \partial s } \left(  x^T A x - 2 s^T A x + s^T A s \right) \;\;\; \because } (0.3)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \frac{ \partial }{ \partial s } \left( - 2 s^T A x + s^T A s \right) }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 \frac{ \partial }{ \partial s } s^T A x + \frac{ \partial }{ \partial s } s^T A s  }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 \frac{ \partial }{ \partial s } s^T A x + 2 A s \;\;\; \because } (2.1)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 \frac{ \partial }{ \partial s } \left( s^T A x \right)^T + 2 A s }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 \frac{ \partial }{ \partial s } x^T A^T (s^T)^T + 2 A s \;\;\; \because } (t.1)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 \frac{ \partial }{ \partial s } x^T A s + 2 A s }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 A x + 2 A s \;\;\; \because } (2.4)

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = - 2 A ( x - s ) }


事実3.証明.

{\displaystyle \;\;\; \frac{ \partial }{ \partial x }  c^T x = \begin{bmatrix} \frac{ \partial }{ \partial x_1 } c^T x  \\ \frac{ \partial }{ \partial x_2 } c^T x \\ \vdots \\ \frac{ \partial }{ \partial x_n } c^T x \end{bmatrix} = \begin{bmatrix} \frac{ \partial }{ \partial x_1 } \left( c_1 x_1 + c_2 x_2 + \cdots + c_n x_n \right)  \\ \frac{ \partial }{ \partial x_2 } \left( c_1 x_1 + c_2 x_2 + \cdots + c_n x_n \right) \\ \vdots \\ \frac{ \partial }{ \partial x_n } \left( c_1 x_1 + c_2 x_2 + \cdots + c_n x_n \right) \end{bmatrix} =   \begin{bmatrix} \frac{ \partial }{ \partial x_1 } \left( c_1 x_1 \right)  \\ \frac{ \partial }{ \partial x_2 } \left(  c_2 x_2 \right) \\ \vdots \\ \frac{ \partial }{ \partial x_n } \left( c_n x_n \right) \end{bmatrix}  = \begin{bmatrix} c_1 \\ c_2 \\ \vdots \\ c_n \end{bmatrix} = c }

(証明終わり)
'--------------------------------------------------------------------------------------------------------------------------------------------


以上,いくつかの行列の公式を証明しました.



参考文献
[1] Petersen, K.B., and Pedersen, M.S., The Matrix Cookbook https://www.math.uwaterloo.ca/~hwolkowi/matrixcookbook.pdf
[2] Wikipedia Transpose のページ https://en.wikipedia.org/wiki/Transpose