Pytorch Tensor维度变换方法

1.torch.reshape()、torch.view()可以调整Tensor的shape

2.torch.unsqueeze(index)可以为Tensor增加一个维度

3.squeeze()可以删减维度

4.expand()扩展维度

5.repeat()维度重复,不常用

6 .transpose(dim1, dim2)交换dim1与dim2,进行维度变换。

注意这种交换使得存储不再连续,再执行一些reshape的操作会报错,所以要调用一下contiguous()使其变成连续的维度。

参考:https://blog.csdn.net/weicao1990/article/details/93618136

7.Broadcasting(广播)也就是自动实现了若干unsqueeze和expand操作,以使两个Tensor的shape一致,从而完成某些操作(往往是加法)。

比如得到的feature maps的维度是[4,32,14,14],对这些特征图加上偏置,bias[32],先对bias进行unsqueeze操作增加维度:[1,32,1,1],再用expand操作进行扩充[4,32,14,14]。然后两者就可以相加了。

相关推荐
陆通27 分钟前
10分钟Windows系统安装迷你版的OpenClaw ,小小龙虾Nanobot
人工智能
老张的码27 分钟前
飞书 × OpenClaw 接入指南
人工智能·后端
mCell31 分钟前
分享一个常用的文生图提示词
人工智能·llm·数据可视化
踩着两条虫32 分钟前
如何让AI精准修改你的Vue代码?揭秘增量更新器实现原理
人工智能·openai·ai编程
Narrastory35 分钟前
明日香 - Pytorch 快速入门保姆级教程(三)
pytorch·深度学习
ZFSS38 分钟前
SeeDance Tasks API 的对接和使用
前端·人工智能
睿智的仓鼠39 分钟前
🦞OpenClaw 快速部署及使用指南
前端·人工智能
zone773941 分钟前
004:RAG 入门-LangChain读取PDF
后端·python·面试
zone77391 小时前
005:RAG 入门-LangChain读取表格数据
后端·python·agent