mars.tensor.vdot#
- mars.tensor.vdot(a, b)[来源]#
返回两个向量的点积。
vdot(a, b) 函数处理复数与 dot(a, b) 不同。如果第一个参数是复数,则使用第一个参数的共轭复数来计算点积。
请注意,vdot 对多维张量的处理方式与 dot 不同:它不执行矩阵乘法,而是先将输入参数展平为 1-D 向量。因此,它应仅用于向量。
- Parameters
a (array_like) – 如果 a 是复数,计算点积之前会取复共轭。
b (array_like) – 点积的第二个参数。
- Returns
输出 – a 和 b 的点积。可以是整数、浮点数或复数,具体取决于a 和 b 的类型。
- Return type
张量
另请参阅
dot返回点积,而不使用第一个参数的复共轭。
示例
>>> import mars.tensor as mt
>>> a = mt.array([1+2j,3+4j]) >>> b = mt.array([5+6j,7+8j]) >>> mt.vdot(a, b).execute() (70-8j) >>> mt.vdot(b, a).execute() (70+8j)
请注意,更高维度的数组会被压平!
>>> a = mt.array([[1, 4], [5, 6]]) >>> b = mt.array([[4, 1], [2, 2]]) >>> mt.vdot(a, b).execute() 30 >>> mt.vdot(b, a).execute() 30 >>> 1*4 + 4*1 + 5*2 + 6*2 30