pytorch中squeeze函数用法

squeeze的中文意思是"挤压 ",顾名思义,该函数的作用是压缩维度

python 复制代码
squeeze(input, dim=None) -> Tensor

input一个高维张量,如果各个维度中存在大小为1的维度,squeeze才起作用,下面举例说明

python 复制代码
x = torch.arange(6).reshape(2,1,3)

# tensor([[[0, 1, 2]],
#         [[3, 4, 5]]])  shape=(2,1,3)

x = x.squeeze()

# tensor([[0, 1, 2],
#        [3, 4, 5]])    shape=(2,3)

如果指定dim,当dim=1时候,效果和上面相同,如果dim为其他,那么x的维度不变。

当然,如果各个维度中不存在大小为1的维度,那么squeeze函数对x张量无效。

相关推荐
织码weavecodes1 小时前
织码在线教育系统--主观题 AI 智能阅卷:批量初评与教师复核如何协同
人工智能
Shockang7 小时前
llama.cpp 本地运行 9B 模型:部署、工具调用与微调数据
人工智能
Shockang8 小时前
n8n 智能体工作流实战:触发、工具、记忆与发布护栏
人工智能
冬奇Lab9 小时前
开源项目第241期:YuE2 —— 用符号乐谱当“白盒“接口的开源音乐生成模型,SongBench 超越 Suno v5/v6
人工智能
鶴哥只手遮天10 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天10 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天10 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天10 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天10 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源