HOWTO · NumPy

NumPy 矩陣向量乘法

Python 中有兩種主要的方法可用於矩陣相乘,numpy.matmul() 方法和 numpy.dot() 方法。

本頁內容

本教程將介紹 NumPy 中兩個矩陣相乘的方法。

使用 numpy.matmul() 方法的 NumPy 矩陣向量乘法

要計算兩個矩陣的乘積,第一個矩陣的列數必須等於第二個矩陣的行數。numpy.matmul() 方法 用於計算兩個矩陣的乘積。numpy.matmul() 方法將矩陣作為輸入引數,並以另一個矩陣的形式返回乘積。請參考以下程式碼示例。

import numpy as np

m1 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
m2 = np.array([[9, 8, 7, 6], [5, 4, 3, 3], [2, 1, 2, 0]])

m3 = np.matmul(m1, m2)
print(m3)

輸出:

[[ 25  19  19  12]
 [ 73  58  55  39]
 [121  97  91  66]]

我們首先使用 np.array() 方法以二維陣列的形式建立矩陣。然後,我們使用 np.matmul(m1,m2) 方法計算了兩個矩陣的乘積,並將結果儲存在 m3 矩陣中。

使用 numpy.dot() 方法的 NumPy 矩陣向量乘法

numpy.dot() 方法 計算兩個陣列的點積。它也可以用於 2D 陣列以查詢這些陣列的矩陣乘積。numpy.dot() 方法將兩個矩陣作為輸入引數,並以另一個矩陣的形式返回乘積。請參考以下程式碼示例。

import numpy as np

m1 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
m2 = np.array([[9, 8, 7, 6], [5, 4, 3, 3], [2, 1, 2, 0]])

m3 = np.dot(m1, m2)
print(m3)

輸出:

[[ 25  19  19  12]
 [ 73  58  55  39]
 [121  97  91  66]]

我們首先使用 np.array() 方法以二維陣列的形式建立矩陣。然後,我們使用 np.dot(m1,m2) 方法計算了兩個矩陣的乘積,並將結果儲存在 m3 矩陣中。