Pytorch数据操作

数据操作

python 复制代码
# 导入PyTorch
import torch

**张量表示一个由数值组成的数组,这个数组可能有多个维度** \]。 具有一个轴的张量对应数学上的*向量*( ); 具有两个轴的张量对应数学上的*矩阵*(matrix); 具有两个轴以上的张量没有特殊的数学名称。 首先,我们可以使用 `arange` 创建一个行向量 `x`。这个行向量包含以0开始的前12个整数,它们默认创建为整数。也可指定创建类型为浮点数。张量中的每个值都称为张量的 *元素* (element)。例如,张量 `x` 中有 12 个元素。除非额外指定,新的张量将存储在内存中,并采用基于CPU的计算。 ```python x = torch.arange(15) x #:tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14]) ``` \[**可以通过张量的`shape`属性来访问张量(沿每个轴的长度)的\*形状\***\] (和张量中元素的总数)。 ```python x.shape #:torch.Size([15]) ``` 如果只想知道张量中元素的总数,即形状的所有元素乘积,可以检查它的大小(size)。 因为这里在处理的是一个向量,所以它的`shape`与它的`size`相同。 ```python x.numel() #:15 ``` \[**要想改变一个张量的形状而不改变元素数量和元素值,可以调用`reshape`函数。** \] 例如,可以把张量`x`从形状为(12,)的行向量转换为形状为(3,4)的矩阵。 这个新的张量包含与转换前相同的值,但是它被看成一个3行4列的矩阵。 要重点说明一下,虽然张量的形状发生了改变,但其元素值并没有变。 注意,通过改变张量的形状,张量的大小不会改变。 ```python X = x.reshape(3,5) X ``` > #: > > tensor(\[\[ 0, 1, 2, 3, 4\], > > \[ 5, 6, 7, 8, 9\], > > \[10, 11, 12, 13, 14\]\]) 我们不需要通过手动指定每个维度来改变形状。 也就是说,如果我们的目标形状是(高度,宽度), 那么在知道宽度后,高度会被自动计算得出,不必我们自己做除法。 在上面的例子中,为了获得一个3行的矩阵,我们手动指定了它有3行和4列。 幸运的是,我们可以通过`-1`来调用此自动计算出维度的功能。 即我们可以用`x.reshape(-1,4)`或`x.reshape(3,-1)`来取代`x.reshape(3,4)`。 有时,我们希望\[**使用全0、全1、其他常量,或者从特定分布中随机采样的数字**\]来初始化矩阵。 我们可以创建一个形状为(2,3,4)的张量,其中所有元素都设置为0。代码如下: ```python torch.zeros((2,3,4)) ``` > #: > > tensor(\[\[\[0., 0., 0., 0.\], > > \[0., 0., 0., 0.\], > > \[0., 0., 0., 0.\]\], > > \[\[0., 0., 0., 0.\], > > \[0., 0., 0., 0.\], > > \[0., 0., 0., 0.\]\]\]) 同样,我们可以创建一个形状为`(2,3,4)`的张量,其中所有元素都设置为1。代码如下: ```python torch.ones((2,3,4)) ``` > #: > > tensor(\[\[\[1., 1., 1., 1.\], > > \[1., 1., 1., 1.\], > > \[1., 1., 1., 1.\]\], > > \[\[1., 1., 1., 1.\], > > \[1., 1., 1., 1.\], > > \[1., 1., 1., 1.\]\]\])

相关推荐
X566124 分钟前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python
zhuiyisuifeng32 分钟前
2026前瞻:GPTimage2镜像官网或将颠覆视觉创作
人工智能·gpt
徐健峰34 分钟前
GPT-image-2 热门玩法实战(一):AI 看手相 — 一张手掌照片生成专业手相分析图
人工智能·gpt
weixin_3709763536 分钟前
AI的终极赛跑:进入AGI,还是泡沫破灭?
大数据·人工智能·agi
Slow菜鸟38 分钟前
AI学习篇(五) | awesome-design-md 使用说明
人工智能·学习
ZhengEnCi1 小时前
03ab-PyTorch安装教程 📚
python
冬奇Lab1 小时前
RAG 系列(五):Embedding 模型——语义理解的核心
人工智能·llm·aigc
深小乐1 小时前
AI 周刊【2026.04.27-05.03】:Anthropic 9000亿美元估值、英伟达死磕智能体、中央重磅定调AI
人工智能
码点滴1 小时前
什么时候用 DeepSeek V4,而不是 GPT-5/Claude/Gemini?
人工智能·gpt·架构·大模型·deepseek
狐狐生风1 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai