矩阵乘法区别

@ ,matmul ,dot ,multiply区别

tf.matmul(A,C) = np.dot(A,C) = A@C都属于矩阵乘法,而tf.multiply(A,C)= A*C 或者tf.multiply(A,A)= A**2  均属于对应元素乘法
np.cross为叉乘

元素乘法:np.multiply(a,b)
矩阵乘法:np.dot(a,b) 或np.matmul(a,b) 或 a.dot(b) 或直接用 a @ b !
唯独注意:*,在 np.array 中重载为元素乘法,在 np.matrix 中重载为矩阵乘法!

#对应元素相乘
>>> b=np.asarray([[1,1,3],[1,2,1],[2,2,3]])
>>> print(b**2)
[[1 1 9]
 [1 4 1]
 [4 4 9]]


>>> print(np.multiply(b,b))
[[1 1 9]
 [1 4 1]
 [4 4 9]]


#矩阵乘法
>>> print(np.matmul(b,b))
[[ 8  9 13]
 [ 5  7  8]
 [10 12 17]]

>>> print(np.dot(b,b))
[[ 8  9 13]
 [ 5  7  8]
 [10 12 17]]


>>> print(b@b)
[[ 8  9 13]
 [ 5  7  8]
 [10 12 17]]

















@ matmul dot multiply区别_BLACKVEIL的博客-CSDN博客

Numpy 中的矩阵向量乘法_颹蕭蕭的博客-CSDN博客_numpy向量相乘

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
张量乘法和矩阵乘法在某些方面是相似的,但也有一些关键的区别。首先,张量乘法和矩阵乘法都是将张量和矩阵相乘的操作。然而,在执行乘法运算时,它们的结果不同。 在矩阵乘法中,我们使用标准的矩阵乘法规则,即将矩阵的行与另一个矩阵的列进行对应相乘,并将结果相加。这种乘法规则只适用于二维矩阵。例如,对于一个2x2的矩阵A和一个2x1的矩阵B,矩阵乘法的结果将是一个2x1的矩阵C。 与此不同,张量乘法是一种更通用的乘法形式,可以适用于任意维度的张量。在张量乘法中,我们将张量的元素与另一个张量的元素进行逐个相乘,并将结果相加。这种乘法规则可以用于处理高维数据。例如,对于一个2x2的矩阵A和一个2x1x3的张量B,张量乘法的结果将是一个2x1x3的张量。 此外,不同的模式(mode)可以导致张量乘法的结果不同。在张量乘法中,我们可以根据不同的维度对张量进行矩阵化,然后进行乘法运算。这种方式可以在处理多维数据时提供更大的灵活性。然而,需要注意的是,不同的模式会导致不同的乘法结果。 综上所述,张量乘法和矩阵乘法在使用的乘法规则、适用范围和结果方面存在一些区别。张量乘法是一种更通用的乘法形式,适用于任意维度的张量,而矩阵乘法仅适用于二维矩阵。此外,不同的模式也会导致张量乘法的结果不同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值