乐读窝

深度学习

乐读窝 > 文学理论 > 深度学习

2.2 矩阵和向量相乘

书籍名:《深度学习》    作者:伊恩.古德费洛



矩阵乘法是矩阵运算中最重要的操作之一。两个矩阵A和B的矩阵乘积(matrix  product)是第三个矩阵C。为了使乘法可被定义,矩阵A的列数必须和矩阵B的行数相等。如果矩阵A的形状是m×n,矩阵B的形状是n×p,那么矩阵C的形状是m×p。我们可以通过将两个或多个矩阵并列放置以书写矩阵乘法,例如

具体地,该乘法操作定义为

需要注意的是,两个矩阵的标准乘积不是指两个矩阵中对应元素的乘积。不过,那样的矩阵操作确实是存在的,称为元素对应乘积(element-wise  product)或者Hadamard乘积(Hadamard  product),记为。

两个相同维数的向量x和y的点积(dot  product)可看作矩阵乘积。我们可以把矩阵乘积C=AB中计算Ci,j的步骤看作A的第i行和B的第j列之间的点积。

矩阵乘积运算有许多有用的性质,从而使矩阵的数学分析更加方便。比如,矩阵乘积服从分配律:

矩阵乘积也服从结合律:

不同于标量乘积,矩阵乘积并不满足交换律(AB=BA的情况并非总是满足)。然而,两个向量的点积满足交换律:

矩阵乘积的转置有着简单的形式:

利用两个向量点积的结果是标量、标量转置是自身的事实,我们可以证明式(2.8):

由于本书的重点不是线性代数,我们并不想展示矩阵乘积的所有重要性质,但读者应该知道矩阵乘积还有很多有用的性质。

现在我们已经知道了足够多的线性代数符号,可以表达下列线性方程组:

其中是一个已知矩阵,是一个已知向量,是一个我们要求解的未知向量。向量x的每一个元素xi都是未知的。矩阵A的每一行和b中对应的元素构成一个约束。我们可以把式(2.11)重写为

或者,更明确地,写作

矩阵向量乘积符号为这种形式的方程提供了更紧凑的表示。