矢量化计算(Vectorize calculations)¶
Vectorize calculations(向量化计算) 是指利用向量或矩阵操作替代显式的循环操作,从而高效地进行计算的一种方法。向量化计算是高性能计算的重要技术,尤其在科学计算和机器学习领域被广泛应用。
核心思想¶
将数据以数组(如向量或矩阵)的形式存储,并使用优化的底层数学库(如 BLAS、NumPy、PyTorch)一次性进行批量计算。
避免逐个元素进行操作的显式循环(如 for 循环)。
充分利用现代 CPU 和 GPU 的并行计算能力,提高计算效率。
例子¶
逐个计算(非向量化):
# Python: 逐个计算两个向量的点积 a = [1, 2, 3] b = [4, 5, 6] dot_product = 0 for i in range(len(a)): dot_product += a[i] * b[i] print(dot_product) # 输出: 32
向量化实现:
import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) dot_product = np.dot(a, b) print(dot_product) # 输出: 32