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)。

用文字表述:

所得到的數組中的每個元素爲,第一個矩陣中與該元素行號相同的元素與第二個矩陣與該元素列號相同的元素,兩兩相乘後再求和。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章