【发布时间】:2023-02-11 11:28:06
【问题描述】:
我是 python 的新手,想知道 N 方矩阵是否存在类似 numpy.matmul 的东西?没有循环就不能做到这一点吗?
如果不循环遍历矩阵,我不知道如何做到这一点。
【问题讨论】:
-
N 个矩阵的大小都一样吗?如果是这样,
np.mamul可以处理矩阵堆栈。 -
你的措辞含糊不清。你是说你有 N 个矩阵,还是说你有大小为 NxN 的矩阵?
我是 python 的新手,想知道 N 方矩阵是否存在类似 numpy.matmul 的东西?没有循环就不能做到这一点吗?
如果不循环遍历矩阵,我不知道如何做到这一点。
【问题讨论】:
np.mamul 可以处理矩阵堆栈。
如果你的意思是你想乘以 N 矩阵,是的,你可以像这样使用 np.linalg.multi_dot:
np.linalg.multi_dot([A, B, C])
相当于A @ B @ C或np.matmul(np.matmul(A, B), C)或np.dot(np.dot(A, B), C)或A.dot(B).dot(C)。
如果你想乘以许多矩阵,你可以使用functools模块中的reduce。
matrices = [A, B, C, D, E, F]
result = reduce(np.dot, matrices)
【讨论】: