NumPy入门教程
入门·10 分钟·通过可运行代码讲解「NumPy入门教程」,覆盖环境准备、核心代码、参数说明、异常处理、工程化改造和练习任务,适合 AI 编程入门。
NumPy入门教程
NumPy 是 Python 科学计算的基础库。很多机器学习和深度学习框架底层都离不开数组和矩阵计算。学 NumPy 的重点是理解数组、维度、广播和矩阵运算。
创建数组
import numpy as np
a = np.array([1, 2, 3])
b = np.array([[1, 2, 3], [4, 5, 6]])
print(a.shape) # (3,)
print(b.shape) # (2, 3)
shape 表示数组维度。AI 编程里很多报错都来自 shape 不匹配。
常用数组生成方法
zeros = np.zeros((2, 3))
ones = np.ones((2, 3))
random_values = np.random.rand(2, 3)
range_values = np.arange(0, 10, 2)
这些方法常用于初始化数据、生成测试样本或模拟输入。
数组批量运算
x = np.array([1, 2, 3])
y = np.array([10, 20, 30])
print(x + y)
print(x * y)
print(x.mean())
NumPy 的批量运算比手写 for 循环更简洁,也通常更快。
矩阵乘法
x = np.array([[1, 2], [3, 4]])
w = np.array([[0.5], [1.0]])
y = x @ w
print(y)
@ 表示矩阵乘法。神经网络中的线性层,本质上也大量使用类似运算。
广播机制
x = np.array([[1, 2, 3], [4, 5, 6]])
print(x + 10)
广播很方便,但也可能隐藏维度错误,写代码时要经常检查 shape。
简单归一化
scores = np.array([60, 70, 80, 90])
normalized = (scores - scores.mean()) / scores.std()
print(normalized)
归一化能让数据分布更稳定,是很多机器学习任务的预处理步骤。
练习任务
创建一个 5×3 的随机数组,表示 5 个学生 3 门课成绩。计算每个学生平均分、每门课平均分,并找出总分最高的学生。
小结
NumPy 是理解 AI 数值计算的入口。掌握数组、维度、矩阵乘法和广播后,你再看机器学习代码会轻松很多。