PyTorch 张量(Tensor) 是 PyTorch 中最基础、最核心的数据结构,你可以把它理解为多维数组(类似于 NumPy 的 ndarray),但功能更强大,尤其是在深度学习中。
张量 = 多维数组 + 可在 GPU 上运行 + 支持自动求导
| 维度 | 通俗说法 | 示例 |
|---|---|---|
| 0 维 | 标量 | 5 |
| 1 维 | 向量 | [1, 2, 3] |
| 2 维 | 矩阵 | [[1,2],[3,4]] |
| 3 维+ | 高维张量 | 图像、视频、批次数据 |
| 特性 | NumPy | PyTorch 张量 |
|---|---|---|
| GPU 支持 | ❌ | ✅ |
| 自动求导 | ❌ | ✅ |
| 深度学习友好 | ❌ | ✅ |
import torch
# 创建张量
x = torch.tensor([1, 2, 3])
print(x)
# 二维张量(矩阵)
y = torch.tensor([[1, 2], [3, 4]])
# 随机张量
z = torch.randn(2, 3)
# GPU 张量(如果有显卡)
if torch.cuda.is_available():
z = z.cuda()
x = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
x.shape # 形状 (2, 2)
x.dtype # 数据类型
x.device # 所在设备(CPU / GPU)
requires_grad=True)x = torch.tensor([1.0, 2.0], requires_grad=True)
y = x ** 2
y.sum().backward()
print(x.grad) # 梯度
如果你愿意,我也可以:
你想从哪个角度继续?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。