tr(AB) = tr(BA)

证明 t r ( A B ) = t r ( B A ) tr(AB) = tr(BA) tr(AB)=tr(BA),其中 A A A B B B 是两个矩阵, A A A B T B^T BT 的尺寸相同,我们可以使用矩阵迹的性质和矩阵乘法的定义。

假设 A A A 是一个 m × n m \times n m×n 的矩阵, B B B 是一个 n × m n \times m n×m 的矩阵。根据矩阵乘法的定义, A B AB AB 是一个 m × m m \times m m×m 的矩阵, B A BA BA 是一个 n × n n \times n n×n 的矩阵。

我们知道,矩阵的迹是指矩阵主对角线上元素的和。因此, t r ( A B ) tr(AB) tr(AB) 表示矩阵 A B AB AB 的主对角线上元素的和, t r ( B A ) tr(BA) tr(BA) 表示矩阵 B A BA BA 的主对角线上元素的和。

现在,让我们来计算 t r ( A B ) tr(AB) tr(AB) t r ( B A ) tr(BA) tr(BA)

t r ( A B ) = ∑ i = 1 m ( A B ) i i t r ( B A ) = ∑ j = 1 n ( B A ) j j \begin{aligned} &tr(AB) = \sum\limits_{i=1}^m(AB)_{ii} \\&tr(BA)=\sum\limits_{j=1}^n(BA)_{jj} \end{aligned} tr(AB)=i=1m(AB)iitr(BA)=j=1n(BA)jj

我们知道, ( A B ) i i (AB)_{ii} (AB)ii 表示矩阵 A B AB AB 的第 i i i 行第 i i i 列元素, ( B A ) j j (BA)_{jj} (BA)jj 表示矩阵 B A BA BA 的第 j j j 行第 j j j 列元素。

根据矩阵乘法的定义, ( A B ) i i = ∑ k = 1 n A i k B k i (AB)_{ii} = \sum\limits_{k=1}^{n} A_{ik}B_{ki} (AB)ii=k=1nAikBki ( B A ) j j = ∑ k = 1 m B j k A k j (BA)_{jj} = \sum\limits_{k=1}^{m} B_{jk}A_{kj} (BA)jj=k=1mBjkAkj

将上述表达式代入 t r ( A B ) tr(AB) tr(AB) t r ( B A ) tr(BA) tr(BA) 的计算式中,我们得到:

t r ( A B ) = ∑ i = 1 m ( ∑ k = 1 n A i k B k i ) t r ( B A ) = ∑ j = 1 n ( ∑ k = 1 m B j k A k j ) \begin{aligned} &tr(AB) = \sum\limits_{i=1}^m(\sum\limits_{k=1}^n A_{ik}B_{ki}) \\ & tr(BA) = \sum\limits_{j=1}^n(\sum\limits_{k=1}^m B_{jk}A_{kj})\end{aligned} tr(AB)=i=1m(k=1nAikBki)tr(BA)=j=1n(k=1mBjkAkj)

现在,我们可以交换求和的顺序,将内部的求和进行交换:

t r ( A B ) = ∑ i = 1 m ( ∑ k = 1 n A i k B k i ) t r ( B A ) = ∑ k = 1 m ( ∑ j = 1 n B j k A k j ) \begin{aligned} &tr(AB) = \sum\limits_{i=1}^m(\sum\limits_{k=1}^n A_{ik}B_{ki}) \\ & tr(BA) = \sum\limits_{k=1}^m(\sum\limits_{j=1}^n B_{jk}A_{kj})\end{aligned} tr(AB)=i=1m(k=1nAikBki)tr(BA)=k=1m(j=1nBjkAkj)

观察上述两个式子,我们可以发现内部求和的项是相同的,只是求和的顺序不同。

因此, t r ( A B ) = t r ( B A ) tr(AB) = tr(BA) tr(AB)=tr(BA)

你可能感兴趣的:(人工智能,机器学习)