Numpy 中的矩陣向量乘法

結論:

元素乘法:np.multiply(a,b)
矩陣乘法:np.dot(a,b)np.matmul(a,b)a.dot(b)
唯獨注意:*,在 np.array 中重載爲元素乘法,在 np.matrix 中重載爲矩陣乘法!

對於 np.array 對象

>>> a
array([[1, 2],
       [3, 4]])

元素乘法 用 a*bnp.multiply(a,b)

>>> a*a
array([[ 1,  4],
       [ 9, 16]])

>>> np.multiply(a,a)
array([[ 1,  4],
       [ 9, 16]])

矩陣乘法 用 np.dot(a,b)np.matmul(a,b)a.dot(b)

>>> np.dot(a,a)
array([[ 7, 10],
       [15, 22]])

>>> np.matmul(a,a)
array([[ 7, 10],
       [15, 22]])

>>> a.dot(a)
array([[ 7, 10],
       [15, 22]])

對於 np.matrix 對象

>>> A
matrix([[1, 2],
        [3, 4]])

元素乘法 用 np.multiply(a,b)

>>> np.multiply(A,A)
matrix([[ 1,  4],
        [ 9, 16]])

矩陣乘法 用 a*bnp.dot(a,b)np.matmul(a,b)a.dot(b)

>>> A*A
matrix([[ 7, 10],
        [15, 22]])
>>> np.dot(A,A)
matrix([[ 7, 10],
        [15, 22]])
>>> np.matmul(A,A)
matrix([[ 7, 10],
        [15, 22]])
>>> A.dot(A)
matrix([[ 7, 10],
        [15, 22]])

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