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函数是手动升维度,可以指定在哪个维度上再升高一个维度。

相关推荐
卷无止境3 小时前
模块与包:Python 代码组织的两层逻辑
后端·python
AI大模型-小华3 小时前
Codex 为什么越用越慢?大型项目中的上下文管理与方案选择
人工智能·chatgpt·软件开发·codex·开发效率·chatgpt plus·chatgpt pro
D202020203 小时前
TikTok达人履约乱象?达秘带你拆解供需权力关系错位的本质
大数据·人工智能
Rocky Ding*3 小时前
一文读懂Kimi k1.5大模型核心基础知识
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·kimi k1.5
MartinYeung53 小时前
[论文学习]LLM 中的个性化安全:一个基准测试与基于规划的智能体方法
人工智能·学习·安全
夏日清风有你3 小时前
OpenDataLab 数据集下载
python
黑客-秋凌3 小时前
使用Python+selenium实现第一个自动化测试脚本
开发语言·自动化测试·软件测试·python·selenium·测试工具
小王师傅664 小时前
英语学习记
java·学习
Ender(弹射回家版)4 小时前
超越聊天机器人:GVIM 2.0 如何将人工智能转变为真正的科学实验室合作伙伴
人工智能
罗小罗同学4 小时前
安德森癌症中心发表SCOPE IO模型,实现了对罕见肿瘤帕博利珠单抗疗效的精准预测,在患者早期即可预判药效
人工智能·算法·医学图像处理·医学ai