文章目录
- 一、什么是pytoch
- 一、Numpy与Tensor
- 1.1基础部分
一、什么是pytoch
PyTorch 是 Facebook 开源的深度学习框架,简单说就是:
- 帮你快速搭建、训练神经网络
- 自动计算梯度(不用手动写求导公式)
- 支持 GPU 加速(训练速度超快)
- 语法和 Python 几乎一样,最适合新手入门
PyTorch工具箱
- 基础数据结构:
torch.Tensor神经网络的 “数据载体”,类似 NumPy 的数组,但支持 GPU 加速、自动求导。- 数据加载:
torch.utils.data高效加载训练 / 测试数据,支持批量处理、打乱、多线程加速。- 神经网络搭建:
torch.nn提供现成的网络层、激活函数、损失函数,快速搭建模型。- 优化器与训练:
torch.optim实现梯度下降、Adam 等优化算法,更新模型参数。
一、Numpy与Tensor
Numpy(Numerical Python)底层用 C 语言实现,运算速度远快于 Python 原生列表,是数据分析、机器学习、科学计算等领域的基础工具。其核心优势如下:
- 高效的多维数组(ndarray):numpy 的核心数据结构,支持快速的元素访问和批量运算。
- 矢量化运算:无需编写循环即可对数组中的所有元素执行操作,简洁且高效。
- 丰富的数学函数:内置大量线性代数、傅里叶变换、随机数生成等函数。
- 与其他库兼容:是 pandas、matplotlib、scikit-learn 等库的基础,数据可以无缝交互。
# 安装numpypip install numpy conda install numpy# 验证下载importnumpyasnpprint(np.__version__)1.1基础部分
https://www.runoob.com/numpy/numpy-ndarray-object.html
ndarray(N-dimensional array),是numpy 的核心数据结构,用于存储和处理多维的数值数据(如标量、向量、矩阵、张量等)。
- 1 维 ndarray:对应数学中的 “向量”(如 [1, 2, 3, 4])。
- 2 维 ndarray:对应数学中的 “矩阵”(如 [[1,2], [3,4]])。
- 3 维 ndarray:对应 “张量”(如彩色图片的 (高度, 宽度, 通道))。
- n 维 ndarray:可用于表示更复杂的数据(如视频序列 (帧数, 高度, 宽度, 通道))。
在机器学习中,图像,自然语言,语音等内容在输入模型之前都需要将其数字化。