PyTorch学习笔记|张量的索引分片、合并和维度调整

我们继续学习张量的相关基础操作。

索引

这个依旧是和numpy差不多,我们简单看一些例子。

tensor.view方法可以返回一个类似视图的结果,是浅拷贝的关系,我们来看一下。

分片

chunk函数可以用来分块。

split函数既能进行均分,也能进行自定义切分。

合并

拼接函数cat,和堆叠函数stack。我们需要注意二者的区别,拼接的维度不变,堆叠之后维度升高。

go 复制代码
a = torch.zeros(2,3)
b = torch.ones(2,3)
c = torch.cat([a,b])
d = torch.stack([a,b])

###
c:
tensor([[0., 0., 0.],
        [0., 0., 0.],
        [1., 1., 1.],
        [1., 1., 1.]])
d:
tensor([[[0., 0., 0.],
         [0., 0., 0.]],

        [[1., 1., 1.],
         [1., 1., 1.]]])

维度变换

此前我们介绍过,通过reshape方法,能够灵活调整张量的形状。而在实际操作张量进行计算时,往往需要另外进行降维和升维的操作,当我们需要除去不必要的维度时,可以使用squeeze函数,而需要手动升维时,则可采用unsqueeze函数。

squeeze删除不必要的维度,简单的说就是把shape中的1给剔除。

unsqueeze函数是手动升维度,可以指定在哪个维度上再升高一个维度。

相关推荐
_Evan_Yao17 小时前
计算机专业四年学习路线图(大一版)
学习
逆境不可逃17 小时前
【与我学 ClaudeCode】工具与执行篇:从 0 到 1 拆解 Agent Loop 与 Tool Use 的极简设计哲学
人工智能·学习·agent·claudecode
red_redemption17 小时前
自由学习记录(188)
学习
smj2302_7968265217 小时前
解决leetcode第3934题最短唯一子数组
数据结构·python·算法·leetcode
cd_9492172117 小时前
星思半导体:深耕芯片研发,助力卫星互联网产业高质量发展
网络·人工智能
我想我不够好。17 小时前
2025.5.18 2.5hour
学习
可依软件crf28617 小时前
几个笔记软件的优缺点
笔记
大明者省17 小时前
宝塔无法登录完整排查步骤+经验总结
笔记
xiaoxiaoxiaolll17 小时前
Light首次发表:动量空间穆勒矩阵偏振测量,破解纳米手性结构表征难题
人工智能·算法
WL_Aurora17 小时前
Python 算法基础篇之查找算法(二):斐波那契查找、分块查找与哈希查找
python·哈希算法·查找