python numpy中点乘,星乘(*)和np.dot的区别

先看看栗子

import numpy
a = numpy.array([[1,2],
                 [3,4]])
b = numpy.array([[5,6],
                 [7,8]])


#*号
a*b
>>>array([[ 5, 12],
          [21, 32]])

#dot
a.dot(b)
>>>array([[19, 22],
          [43, 50]])

numpy.dot(a,b)
>>>array([[19, 22],
          [43, 50]])

numpy.dot(b,a)
>>>array([[23, 34],
          [31, 46]])

总结:

星乘表示矩阵内各对应位置相乘,矩阵a*b下标(0,0)=矩阵a下标(0,0) x 矩阵b下标(0,0);

点乘表示求矩阵内积,二维数组称为矩阵积(mastrix product)。

用文字表述:

所得到的数组中的每个元素为,第一个矩阵中与该元素行号相同的元素与第二个矩阵与该元素列号相同的元素,两两相乘后再求和。

发布了202 篇原创文章 · 获赞 63 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/IT_flying625/article/details/104588042
今日推荐