@ * dot 区别

numpy中的*:可以计算同维度也可以计算不同维度的矩阵相乘

1 import numpy as np
2 a = np.array([[2,3],[3,4]])
3 b = np.array([[3,4],[5,6]])
4 c = a * b
5 
6 c
7 array([[ 6, 12],
8        [15, 24]])
import numpy as np

w1 = np.array([[1, 3]])
w2 = np.array([[1],[2],[3]])

print (w1 * w2)


[[1 3]
 [2 6]
 [3 9]]

不同维度-采用广播机制:

[1 3             [ 1 1

1 3       *       2 2

1 3]               3 3 ]

 

dot:按照矩阵乘法规则相乘,要求矩阵的维度必须是匹配的。

1 import numpy as np
2 a = np.array([[2,3],[3,4]])
3 b = np.array([[3,4],[5,6]])
4 c = np.dot(a,b)
5 
6 
7 c
8 array([[21, 26],
9        [29, 36]])

 

@:要求矩阵的维度必须是匹配的。

 

posted @ 2021-08-08 12:10  囫囵耶  阅读(60)  评论(0编辑  收藏  举报