首页 > 编程知识 正文

Python numpy 矩阵乘法multiplydot matmul 辨析,矩阵乘法公式

时间:2023-05-05 09:13:03 阅读:196017 作者:1150

分类:

元素相乘:multply()
矩阵相乘:dot()、matmul()、’@’
’ * ': 是特别的。在数组操作中,作为元素相乘;在矩阵操作中作为矩阵相乘。

以下举例说明:

import numpy as np 在数组上操作的效果: >>> a1 = np.array([[1,2,3],[4,5,6]])>>> b1 = np.array([1,2,3])>>> a2 = np.array([1,2,3])>>> b2 = np.array([1,2,3]) >>> a1 * b1 # 对应元素相乘[[ 1 4 9] [ 4 10 18]]>>> a1 @ b1 # 矩阵相乘[14 32]>>> a2 * b2 # 对应元素相乘[1 4 9]>>> a2 @ b2 # 矩阵相乘 14 >>> np.multiply(a1, b1), np.multiply(a2, b2) # 对应元素相乘(array([[ 1, 4, 9], [ 4, 10, 18]]), array([1, 4, 9])) >>> np.dot(a1, b1), np.dot(a2, b2) # 矩阵相乘(array([14, 32]), 14) >>> np.matmul(a1, b1), np.matmul(a2, b2) # 矩阵相乘(array([14, 32]), 14) 在矩阵上的效果: >>> a3 = np.matrix([[1,2,3],[4,5,6]])>>> b3_1 = np.matrix([1,2,3])>>> b3 = np.matrix([[1],[2],[3]]) >>> a3 * b3 # 矩阵相乘[[14] [32]] >>> a3 @ b3 # 矩阵相乘[[14] [32]] >>> np.multiply(a3,b3_1) # 对应元素相乘matrix([[ 1, 4, 9], [ 4, 10, 18]]) >>> np.dot(a3, b3) # 矩阵相乘matrix([[14], [32]]) >>> np.matmul(a3, b3) # 矩阵相乘matrix([[14], [32]])

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。