numpy.dot
隶属于Linear algebra (numpy.linalg)
,即numpy.dot
是线性代数运算。1
例子:
>>> a = [[1, 0]] # 1×2维
>>> b = [[4], [2]] # 2×1维
>>> np.dot(a, b) # 1×1维
array([[4]])
numpy.multiply
隶属于Mathematical functions
,即numpy.multiply
是普通数学运算。2
例子:
>>> x1 = np.arange(9.0).reshape((3, 3)) # 3×3维
>>> x1
array([[0., 1., 2.],
[3., 4., 5.],
[6., 7., 8.]])
>>> x2 = np.arange(3.0).reshape((1, 3)) # 1×3维
>>> x2
array([[0., 1., 2.]])
>>> np.multiply(x1, x2) # 3×3维,其中x2广播之后变成3×3维
array([[ 0., 1., 4.],
[ 0., 4., 10.],
[ 0., 7., 16.]])
>>> x1 * x2
array([[ 0., 1., 4.],
[ 0., 4., 10.],
[ 0., 7., 16.]])
可见*
和numpy.multiply
功效相同。