目录

一、矩阵

1)矩阵点乘——各个矩阵对应元素相乘

2)矩阵叉乘——矩阵乘法规则运算

二、向量

1)向量点乘——欧几里得空间的标准内积          

2)  向量叉乘


一、矩阵

在数学中,矩阵是一个按照长方阵列排列的复数或实数集合。由m×n个数

排成的m行n列的数表称为m行n列的矩阵,简称m×n矩阵。记作:                                                  

python向量的叉乘 python向量叉乘函数_python向量的叉乘

矩阵对应二维数组(array)

1)矩阵点乘——各个矩阵对应元素相乘

python向量的叉乘 python向量叉乘函数_python_02

  or:

python向量的叉乘 python向量叉乘函数_python向量的叉乘_03

python代码示例:

A = np.array([[1],[2]])
B = np.array([[1,2,4],[1,4,5]])
C = np.array([[1,2,3],[4,5,6]])

X = A*B
array([[ 1,  2,  4],
       [ 2,  8, 10]])

X == np.multiply(A,B)
array([[ True,  True,  True],
       [ True,  True,  True]])

Y = B*C
array([[ 1,  4, 12],
       [ 4, 20, 30]])
Y == np.multiply(B,C)
array([[ True,  True,  True],
       [ True,  True,  True]])

要点:矩阵点乘中,点乘对象的行数必须相等,且前者的列数必须与后者相等,或为1

          numpy库中可使用运算符*multiply函数计算。

需要重点指出的是:

当矩阵A和矩阵B的维度相同时,矩阵点乘即为哈达玛积(Hadamard Product/Point-wise Product/Element-wise Product/Element-wise Multiplication),如下图所示:

python向量的叉乘 python向量叉乘函数_线性代数_04

python向量的叉乘 python向量叉乘函数_线性代数_05

哈达玛积在书写时用

python向量的叉乘 python向量叉乘函数_线性代数_06

表示,向量可以看做是一维矩阵,也可进行哈达玛积。

2)矩阵叉乘——矩阵乘法规则运算

python向量的叉乘 python向量叉乘函数_点乘_07

python代码示例:

A = np.array([[1,2],[3,4],[1,5]])
B = np.array([[1,2],[2,1]])

A@B
array([[ 5,  4],
       [11, 10],
       [11,  7]])

A@B  == np.dot(A,B)
array([[ True,  True],
       [ True,  True],
       [ True,  True]])

小结:矩阵叉乘中,前者的列数必须和后者的行数相等

           numpy库中可使用运算符 @dot函数计算。


二、向量

向量是由N个实数组成的一行N列或N行一列的的数组。

向量对应一维数组。

1)向量点乘——欧几里得空间的标准内积          

python向量的叉乘 python向量叉乘函数_python_08

向量点乘又称,点积、内积、数量积、标量积。                  

2)  向量叉乘

与向量点乘不同,向量叉乘的运算结果是一个向量而不是一个标量。两个向量叉乘所得向量与这两个向量垂直,如下图所示。

python向量的叉乘 python向量叉乘函数_线性代数_09

所得向量的模长:   

                        

python向量的叉乘 python向量叉乘函数_线性代数_10

   

方向:与这两个向量所在的平面垂直,且遵循右手定则。

向量叉乘又称,向量积、矢积、外积、叉积。


学习总结,如有不妥之处,敬请指出。


参考:

Hadamard Product | 云上小悟

https://www.youtube.com/watch?v=2GPZlRVhQWY