我需要将每一行与相应行索引处的一列相乘。考虑下面的图形,其中我有一个 3 x 3 矩阵。所需操作是将矩阵的row[0]
与transpose_matrix
的col[0]
相乘,row[1]
的矩阵和 col[1]
的 transpose_matrix
,依此类推。
问题:如何在 cupPy/Numpy Python 中以智能方式实现它(即不使用 for 循环)?
最佳答案
看起来像你想要的:
out = (A**2).sum(axis=1)
示例:
# input
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# output
array([ 14, 77, 194])
因为您想要每行的等价于 sum(1*1 + 2*2 + 3*3)
。
如果 A 和 B 是不同的矩阵,则使用:
out = (A*B.T).sum(axis=1)
关于python - 如何在 Python (cuPy/Numpy) 中将行与相应的列相乘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77257710/