1 点积

点积(dot product),又称数量积、标量积.

输入: 一种接受两个等长的数字序列(通常是坐标向量);
输出:返回单个数字。

在欧几里几何空间中,向量的点积运算又称为内积

表示
在这里插入图片描述
代数定义
在这里插入图片描述
推广
矩阵的点积/内积,为对应矩阵元素的积之和。

A,B是定义为两个相同大小的矩阵。
在这里插入图片描述
值得注意的是,一些对于A,B大小不同,可以分别把它们组成的向量进行内积。
比如在numpy中:

import numpy
x = numpy.mat([[1, 2], [3, 4]])
y = numpy.mat([10, 20])
print("Matrix inner:")
print(numpy.inner(x, y))
''' Output:
Matrix inner:
[[ 50]
 [110]]
'''

2 叉积

叉积(Cross product),又称向量积(Vector product)、叉乘

输入: 对三维空间中的两个向量;

输出: 返回一个向量;

表示
在这里插入图片描述
代数定义

叉积 a × b {\displaystyle \mathbf {a} \times \mathbf {b} } a×b 是与 a {\displaystyle \mathbf {a} } a b {\displaystyle \mathbf {b} } b都垂直的向量 c {\displaystyle \mathbf {c} } c

其方向由右手定则决定,模长等于以两个向量为边的平行四边形的面积。

在这里插入图片描述
在这里插入图片描述
n {\displaystyle \mathbf {n} } n 是与 a, b都垂直的单位向量。

推广
在这里插入图片描述
矩阵表示:
在这里插入图片描述
在这里插入图片描述

3 外积

外积(Outer product) ,又名张量积
外积与向量的内积相对, 是矩阵的克罗内克积的一种特例。

输入: 两个向量。

输出: 矩阵。

表示

代数定义
在这里插入图片描述
在这里插入图片描述
推广

矩阵的外积:克罗内克积(Kronecker product)
如果A是一个 m × n 的矩阵,而B是一个 p × q 的矩阵,克罗内克积 A ⊗ B {\displaystyle A\otimes B} AB则是一个 m p × n q mp × nq mp×nq 的分块矩阵.

示例:
在这里插入图片描述

4 哈达玛乘积 (矩阵)

哈达玛积(Hadamard product) ,又名舒尔积逐项积

在机器学习中,哈达玛积还称为,元素积(element-wise product/point-wise product)。

输入: 两个相同形状的矩阵。

输出: 具有同样形状的、各个位置的元素等于两个输入矩阵相同位置元素的乘积的矩阵。

表示
A ∘ B A ∘ B AB

代数定义
在这里插入图片描述

推广

如果矩阵维度不一样,矩阵/向量的哈达玛积计算如下:
在这里插入图片描述


参考:

  1. 矩阵运算
  2. wiki 点积;
  3. wiki 叉积
  4. wiki 哈达玛乘积
  5. wiki 外积
  6. 克劳内克积
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐