1 定义
迹运算返回的是矩阵对角元素的和:
Tr(A)=∑iAii
Tr(A)=\sum_iA_{ii}
Tr(A)=i∑Aii
若不使用求和符号,有些矩阵运算很难描述,而通过矩阵乘法和迹运算符号可以清楚地表示。例如,迹运算提供了另一种描述矩阵Frobenius范数的方式:
∣∣A∣∣F=Tr(AAT)||A||_F=\sqrt{Tr(AA^T)}∣∣A∣∣F=Tr(AAT)
2 性质
用迹运算表示表达式,我们可以使用很多有用的等式巧妙地处理表达式。例如迹运算在转置运算下是不变的:
Tr(A)=Tr(AT)Tr(A)=Tr(A^T)Tr(A)=Tr(AT)
矩阵提出常数后,迹是不变的:
Tr(kA)=k∗Tr(A)Tr(kA)=k*Tr(A)Tr(kA)=k∗Tr(A)
矩阵的迹的和等于矩阵和的迹:
Tr(A+B)=Tr(A)+Tr(B)Tr(A+B)=Tr(A)+Tr(B)Tr(A+B)=Tr(A)+Tr(B)
多个矩阵相乘得到的方阵的迹,和将这些矩阵中的最后一个挪到最前面之后相乘的迹是相同的。当然,我们需要考虑挪动之后矩阵乘积依然定义良好:
Tr(ABC)=Tr(CAB)=Tr(BCA)Tr(ABC)=Tr(CAB)=Tr(BCA)Tr(ABC)=Tr(CAB)=Tr(BCA)
即使循环置换后矩阵乘积得到的矩阵形状变了,迹运算的结果依然不变:
Tr(AB)=Tr(BA)Tr(AB)=Tr(BA)Tr(AB)=Tr(BA)
证明:Tr(AB)=Tr(BA)Tr(AB)=Tr(BA)Tr(AB)=Tr(BA)
标量在迹运算后仍然是它自己:
a=Tr(a)a=Tr(a)a=Tr(a)
有关偏导的性质
∂Tr(AB)∂A=BT\frac{\partial Tr(AB)}{\partial A}=B^T∂A∂Tr(AB)=BT
证明:
∂Tr(AB)∂A=∂∑i=1m∑j=1naijbji∂∑i=1m∑j=1naij=∑i=1m∑j=1nbji=BT\frac{\partial Tr(AB)}{\partial A}=\frac{\partial \sum\limits_{i=1}^m\sum\limits_{j=1}^na_{ij}b_{ji}}{\partial\sum\limits_{i=1}^m\sum\limits_{j=1}^na_{ij}}=\sum\limits_{i=1}^m\sum\limits_{j=1}^nb_{ji}=B^T∂A∂Tr(AB)=∂i=1∑mj=1∑naij∂i=1∑mj=1∑naijbji=i=1∑mj=1∑nbji=BT
∂Tr(ABATC)∂A=CAB+CTABT\frac{\partial Tr(ABA^TC)}{\partial A}=CAB+C^TAB^T∂A∂Tr(ABATC)=CAB+CTABT
证明:
∂Tr(ABATC)∂A=∂Tr(ATCAB)∂A=∂Tr(ACTATBT)∂A=CAB+(BATC)T=CAB+CTABT\frac{\partial Tr(ABA^TC)}{\partial A}=\frac{\partial Tr(A^TCAB)}{\partial A}=\frac{\partial Tr(AC^TA^TB^T)}{\partial A}=CAB+(BA^TC)^T=CAB+C^TAB^T∂A∂Tr(ABATC)=∂A∂Tr(ATCAB)=∂A∂Tr(ACTATBT)=CAB+(BATC)T=CAB+CTABT