gpt4 book ai didi

python - 具有多个 numpy 数组的矩阵乘法

转载 作者:太空宇宙 更新时间:2023-11-04 04:26:55 30 4
gpt4 key购买 nike

将矩阵与 numpy 向量数组相乘的最快方法是什么?我需要将矩阵 A 乘以 1000 个向量列表中的每个向量。使用 for 循环花费的时间太长,所以我想知道是否有办法将它们一次相乘?

例子:

arr = [[1,1,1], [1,1,1],[1,1,1]]

A=
[2 2 2]
[2 2 2]

所以我需要为 arr 中的每个 v 乘以 Av。结果:

arr = [[6,6], [6,6], [6,6]]

有没有比以下方法更快的方法:

new_arr = []
for v in arr:
sol = np.matmul(A, v)
new_arr.append(sol)

最佳答案

看起来你想要一个点积:

new_arr = np.dot(arr, A.T)

其中 arrA 是 numpy 数组:

arr = np.array([[1,1,1], [1,1,1],[1,1,1]])
A = np.array([[2,2, 2],[2,2,2]])

结果:

array([[6, 6],
[6, 6],
[6, 6]])

根据您的编辑,您想要的点积可能是:

new_arr = np.dot(A, arr).T

两者返回相同,但计算不同。

关于python - 具有多个 numpy 数组的矩阵乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53328768/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com