有没有一种方法可以构建具有不同形状的两个矩阵的点积?

时间:2019-12-03 13:42:12

标签: python-3.x numpy

有没有一种方法可以构建两个具有不同形状的矩阵的点积,而无需使用其他任何东西作为纯 python和numpy ? 列的形状应相同,但行应不同。 (下面的示例) 我当然知道暴力破解的方式:

for i in A:
    for j in  B:
       np.dot(A,B)

但是还有别的吗?

这里有个例子:

import numpy as np
A = np.full((4,5),3)
B = np.full((3,5),5)
print(A)
print(B)
result = np.zeros((A.shape[0],B.shape[0]))
for i in range(A.shape[0]):
    for j in range(B.shape[0]):
        result[i,j] = np.dot(A[i],B[j])
print(dot)

输出:

A = [[3 3 3 3 3]
 [3 3 3 3 3]
 [3 3 3 3 3]
 [3 3 3 3 3]]

B = [[5 5 5 5 5]
 [5 5 5 5 5]
 [5 5 5 5 5]]

result = [[75. 75. 75.]
 [75. 75. 75.]
 [75. 75. 75.]
 [75. 75. 75.]]

煤是要计算没有两个回路的点积。那么有没有更有效的方法?

0 个答案:

没有答案