【Pytorch笔记】张量

torch.Tensor() 是 PyTorch 库中用于创建张量的一个函数。在 PyTorch 中,张量是多维数组,它们可以存储在 CPU 或 GPU 上,并且支持自动求导,这使得它们非常适合进行深度学习和科学计算。

张量可以在Python list形式下通过 torch.Tensor() 函数创建。

复制代码
# 利用给定数据创建一个torch.Tensor对象.这是一个一维向量
V_data = [1., 2., 3.]
V = torch.Tensor(V_data)
print(V)
# 创建一个矩阵
M_data = [[1., 2., 3.], [4., 5., 6]]
M = torch.Tensor(M_data)
print(M)
# 创建2x2x2形式的三维张量.
T_data = [[[1., 2.], [3., 4.]],
 [[5., 6.], [7., 8.]]]
T = torch.Tensor(T_data)
print(T)

输出结果:

复制代码
tensor([1., 2., 3.])
tensor([[1., 2., 3.],
[4., 5., 6.]])
tensor([[[1., 2.],
 [3., 4.]],
 [[5., 6.],
 [7., 8.]]])

也可以使用 torch.randn() 创建一个张量。这个张量拥有随机数据和需要指定的维度

复制代码
x = torch.randn((3, 4, 5))
print(x)

输出结果:

复制代码
tensor([[[-1.5256, -0.7502, -0.6540, -1.6095, -0.1002],
 [-0.6092, -0.9798, -1.6091, -0.7121, 0.3037],
 [-0.7773, -0.2515, -0.2223, 1.6871, 0.2284],
 [ 0.4676, -0.6970, -1.1608, 0.6995, 0.1991]],
 [[ 0.8657, 0.2444, -0.6629, 0.8073, 1.1017],
 [-0.1759, -2.2456, -1.4465, 0.0612, -0.6177],
[-0.7981, -0.1316, 1.8793, -0.0721, 0.1578],
 [-0.7735, 0.1991, 0.0457, 0.1530, -0.4757]],
 [[-0.1110, 0.2927, -0.1578, -0.0288, 0.4533],
 [ 1.1422, 0.2486, -1.7754, -0.0255, -1.0233],
 [-0.5962, -1.0055, 0.4285, 1.4761, -1.7869],
 [ 1.6103, -0.7040, -0.1853, -0.9962, -0.8313]]])

notes:

张量在深度学习中数据的主要表示方式。

深度学习模型的权重和偏置通常是张量,这些张量在训练过程中不断更新,以最小化损失函数。

图像数据通常被表示为三维张量,其中第一个维度是高度,第二个维度是宽度,第三个维度是颜色。

视频数据可能表示为四维张量,除了高度、宽度和颜色通道外,还增加了一个时间维度。

文本数据可以通过词嵌入表示为二维张量,其中每一行代表一个词或一个词序列的向量表示。

相关推荐
CV@CV1 分钟前
自动驾驶端到端大模型实战——从原理到工程化落地
人工智能·机器学习·自动驾驶
人肉推土机4 分钟前
Clawdbot(Moltbot)源码部署全实测:从环境搭建到 WebChat 验证,避坑指南收好
人工智能·大模型·agentic·skills·clawdbot·moltbot
yhdata4 分钟前
医疗零部件领域新宠:超声波精密清洗系统,市场规模近29.14亿元
大数据·人工智能
CV@CV4 分钟前
自动驾驶传感器融合技术解析——L4级落地的核心支撑
人工智能·机器学习·自动驾驶
L_Jason先生5 分钟前
高效利用 Coding Agent 进行规约驱动开发 (SDD):原理、实践与未来洞察
人工智能·驱动开发·知识图谱
Lester_110113 分钟前
嵌入式学习笔记 - 自举电路
笔记·嵌入式硬件·学习
2501_9421917715 分钟前
RetinaNet与伪装目标检测:提升模型识别能力的实战指南
人工智能·目标检测·目标跟踪
2501_9413331015 分钟前
【工业视觉检测】基于YOLOv8的皮带输送机关键部件检测与识别系统完整实现
人工智能·yolo·视觉检测
yukai0800818 分钟前
【最后203篇系列】036 MDP学习思考
人工智能·学习
大模型玩家七七22 分钟前
安全对齐不是消灭风险,而是重新分配风险
android·java·数据库·人工智能·深度学习·安全