`np.dot` 在NumPy(Numerical Python的简称)中是一个函数,用于计算两个数组的点积(dot product)。点积是线性代数中的一个概念,用于计算两个向量的相似度或计算矩阵的乘积。具体取决于输入数组的形状。
以下是`np.dot`在不同情境下的应用:
1. **向量点积**:如果两个一维数组被传递给`np.dot`,它将计算它们的点积。例如:
```python
import numpy as np
a = np.array([2, 3])
b = np.array([6, 9])
result = np.dot(a, b) # 这将计算为 2*6 + 3*9 = 36
```
2. **矩阵乘法**:如果输入是两个二维数组(即矩阵),那么`np.dot`会计算这两个矩阵的矩阵乘积。例如:
```python
A = np.array([[1, 2], [3, 4]])
B = np.array([[7, 8], [9, 10]])
result = np.dot(A, B) # 计算矩阵乘积,得到 [[ 1*7+2*9, 1*8+2*10], [3*7+4*9, 3*8+4*10]] = [[25, 34], [69, 94]]
```
注意,对于矩阵乘法,执行操作时的尺寸和形状需要满足矩阵乘法的规则。也就是说,第一个矩阵的列数必须与第二个矩阵的行数相同。
总的来说,`np.dot`是一个多功能函数,可以用于计算向量之间的点积或矩阵之间的乘法,具体取决于输入数组的形状。