分类目录:《算法设计与分析》总目录
矩阵乘法是矩阵运算中最重要的操作之一。两个矩阵
A
A
A和
B
B
B的矩阵乘积是第三个矩阵
C
C
C。为了使乘法定义良好,矩阵
A
A
A的列数必须和矩阵
B
B
B的行数相等。如果矩阵
A
A
A的形状是
m
×
n
m\times n
m×n,矩阵
B
B
B的形状是
n
×
p
n\times p
n×p,那么矩阵
C
C
C的形状是
m
×
p
m\times p
m×p。我们可以通过将两个或多个矩阵并列放置以书写矩阵乘法:
C
=
A
B
C=AB
C=AB
具体地,该乘法操作定义为:
C
i
,
j
=
∑
k
A
i
,
k
×
B
k
,
j
C_{i, j}=\sum_kA_{i,k}\times B_{k, j}
Ci,j=k∑Ai,k×Bk,j
需要注意的是,两个矩阵的标准乘积不是指两个矩阵中对应元素的乘积。不过,那样的矩阵操作确实是存在的,被称为元素对应乘积或者Hadamard乘积,记为 A ⊙ B A\odot B A⊙B。
两个相同维数的向量 x x x和 y y y的点积可看作是矩阵乘积 x T y x^Ty xTy。我们可以把矩阵乘积 C = A B C=AB C=AB中计算 C i , j C_{i, j} Ci,j的步骤看作是 A A A的第 i i i行和 B B B的第 j j j列之间的点积。
矩阵乘积运算有许多有用的性质,从而使矩阵的数学分析更加方便。比如,矩阵乘积服从分配律:
A
(
B
+
C
)
=
A
B
+
A
C
A(B+C)=AB+AC
A(B+C)=AB+AC
矩阵乘积也服从结合律:
A
(
B
C
)
=
(
A
B
)
C
A(BC)=(AB)C
A(BC)=(AB)C
不同于标量乘积,矩阵乘积并不满足交换律。然而,两个向量的点积满足交换律:
x
T
y
=
y
T
x
x^Ty=y^Tx
xTy=yTx