分类目录:《算法设计与分析》总目录
迹运算返回的是矩阵对角元素的和:
Tr
(
a
)
=
∑
i
A
i
,
i
\text{Tr}(a)=\sum_iA_{i, i}
Tr(a)=i∑Ai,i
迹运算因为很多原因而有用。若不使用求和符号,有些矩阵运算很难描述,而通过矩阵乘法和迹运算符号可以清楚地表示。例如,迹运算提供了另一种描述矩阵Frobenius范数的方式:
∣
∣
A
∣
∣
F
=
Tr
(
A
A
T
)
||A||_F=\sqrt{\text{Tr}(AA^T)}
∣∣A∣∣F=Tr(AAT)
用迹运算表示表达式,我们可以使用很多有用的等式巧妙地处理表达式。例如,迹运算在转置运算下是不变的:
Tr
(
A
)
=
Tr
(
A
T
)
\text{Tr}(A)=\text{Tr}(A^T)
Tr(A)=Tr(AT)
多个矩阵相乘得到的方阵的迹,和将这些矩阵中的最后一个挪到最前面之后相乘的迹是相同的。当然,我们需要考虑挪动之后矩阵乘积依然定义良好:
Tr
(
A
B
C
)
=
Tr
(
C
A
B
)
Tr
(
B
C
A
)
\text{Tr}(ABC)=\text{Tr}(CAB)\text{Tr}(BCA)
Tr(ABC)=Tr(CAB)Tr(BCA)
或者更一般地,
Tr
(
∏
i
=
1
n
F
(
i
)
)
=
Tr
(
F
(
n
)
∏
i
=
1
n
−
1
F
(
i
)
)
\text{Tr}(\prod_{i=1}^nF^{(i)})=\text{Tr}(F^{(n)}\prod_{i=1}^{n-1}F^{(i)})
Tr(i=1∏nF(i))=Tr(F(n)i=1∏n−1F(i))
即使循环置换后矩阵乘积得到的矩阵形状变了,迹运算的结果依然不变。除此之外,标量在迹运算后仍然是它自己: a = Tr ( a ) a=\text{Tr}(a) a=Tr(a)。