PyTorch中的unsqueeze函数详解:给张量增加维度
什么是unsqueeze函数unsqueeze()函数的作用是在张量的指定位置插入一个维度这个新维度的长度为1。基本用法1. 基本语法import torch # 创建一个一维张量 x torch.tensor([1, 2, 3, 4]) print(f原始张量: {x}, 形状: {x.shape}) # torch.Size([4]) # 在维度0处增加维度 x_unsqueeze_0 torch.unsqueeze(x, dim0) print(f在dim0处unsqueeze: {x_unsqueeze_0}, 形状: {x_unsqueeze_0.shape}) # torch.Size([1, 4]) # 在维度1处增加维度在最后一维之后 x_unsqueeze_1 x.unsqueeze(dim1) print(f在dim1处unsqueeze: {x_unsqueeze_1}, 形状: {x_unsqueeze_1.shape}) # torch.Size([4, 1])运行结果原始张量: tensor([1, 2, 3, 4]), 形状: torch.Size([4])在dim0处unsqueeze: tensor([[1, 2, 3, 4]]), 形状: torch.Size([1, 4])在dim1处unsqueeze: tensor([[1],[2],[3],[4]]), 形状: torch.Size([4, 1])2. 不同维度的张量示例# 二维张量 x_2d torch.tensor([[1, 2], [3, 4]]) print(f原始2D张量形状: {x_2d.shape}) # torch.Size([2, 2]) # 在维度0处增加维度 result_0 x_2d.unsqueeze(0) print(fdim0: {result_0.shape}) # torch.Size([1, 2, 2]) # 在维度1处增加维度 result_1 x_2d.unsqueeze(1) print(fdim1: {result_1.shape}) # torch.Size([2, 1, 2]) # 在维度2处增加维度 result_2 x_2d.unsqueeze(2) print(fdim2: {result_2.shape}) # torch.Size([2, 2, 1]) # 使用负索引从后往前计数 result_neg x_2d.unsqueeze(-1) print(fdim-1: {result_neg.shape}) # torch.Size([2, 2, 1])实际应用场景1. 神经网络输入处理神经网络通常需要特定维度的输入# 假设我们有一个批量大小为1的RGB图像 image torch.randn(3, 32, 32) # [channels, height, width] # 卷积层期望的输入维度: [batch_size, channels, height, width] # 需要添加batch维度 image_with_batch image.unsqueeze(0) # 形状: [1, 3, 32, 32] print(f神经网络输入形状: {image_with_batch.shape}) # 批量处理多个图像 batch_size 8 images torch.randn(batch_size, 3, 32, 32) # 正确的输入形状

相关新闻

0基础考Adobe认证,考试难度怎么样?

0基础考Adobe认证,考试难度怎么样?

🍀0基础考Adobe认证其实真的不难,属于踏踏实实学就能过的类型,没有什么门槛,也不用怕自己完全没接触过学不会,我当时就是纯0基础开始考的PS认证,一路走下来感觉核心就是选对科目、按步骤学,别贪…

2026/5/17 2:45:30 阅读更多 →
计算机毕设Java基于JAVA的网上订餐系统的设计与实现 基于Java的在线餐饮订购平台开发 基于SpringBoot框架的网络外卖点餐系统设计与实现

计算机毕设Java基于JAVA的网上订餐系统的设计与实现 基于Java的在线餐饮订购平台开发 基于SpringBoot框架的网络外卖点餐系统设计与实现

计算机毕设Java基于JAVA的网上订餐系统的设计与实现sa1209 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着互联网技术的快速发展和消费者生活习惯的改变,传统餐饮…

2026/5/17 2:45:30 阅读更多 →
第2章Java基本语法(上): 变量与运算符--标识符 变量

第2章Java基本语法(上): 变量与运算符--标识符 变量

2.2 标识符(Identifier)标识符: Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符 技巧:凡是自己可以起名字的地方都叫标识符。 定义合法标识符规则: 由26个英文字母大小写,0-9 ,_或 $ 组成 …

2026/5/17 2:45:30 阅读更多 →

最新新闻

基于SpringBoot的合同管理系统与实现

基于SpringBoot的合同管理系统与实现

选题背景 在当今数字化、信息化高速发展的时代背景下,企业运营与管理正经历着深刻的变革。合同作为企业对外合作、对内管理、明确各方权利义务的核心法律文件与商业凭证,其管理水平直接关系到企业的经营效率、风险控制能力与合规性。传统的人工纸质合同管…

2026/7/5 2:34:45 阅读更多 →
在STM32上跑通TinyML:从理论到实践的技术指南

在STM32上跑通TinyML:从理论到实践的技术指南

一、 引言:为什么要在STM32上部署TinyML?简要介绍TinyML(微型机器学习)的概念、优势及其在边缘计算中的重要性。阐述STM32作为主流微控制器平台,在资源受限环境下运行ML模型的挑战与机遇。二、 核心概念与准备工作2.1 …

2026/7/5 2:34:45 阅读更多 →
WP7有约(一):课程安排

WP7有约(一):课程安排

WP7终于发布了,到目前为止,有关它的新闻和介绍我相信你已经看过不少了,所以这里将会直接跳过,不过在开始之前,我认为还是有必要提醒你做好相关的准备: Expression Blend 4 for Windows Phone和Visual Stud…

2026/7/5 2:32:45 阅读更多 →
PIC18微控制器与SPI EEPROM配置存储方案详解

PIC18微控制器与SPI EEPROM配置存储方案详解

1. 嵌入式系统中的用户配置存储方案选型在开发基于PIC18LF45K42微控制器的嵌入式系统时,如何可靠地存储用户偏好、日程设置和自定义配置是个关键问题。传统方案通常采用微控制器内部EEPROM,但受限于容量(通常仅256-1024字节)和擦写…

2026/7/5 2:32:45 阅读更多 →
了解并使用MVVM框架

了解并使用MVVM框架

到底有哪些开源MVVM框架? 前面介绍了WPF的基本概念和一些相关知识,我们了解到开发WPF应用程序可以使用现成的框架和模式,最为合适的莫过于时下正热的MVVM模式,所以这里我们也列出针对MVVM模式的已有开源框架: 图3 上面…

2026/7/5 2:28:37 阅读更多 →
原来网站排名还能“买”到?

原来网站排名还能“买”到?

在传统SEO时代,网站排名确实可以通过竞价排名(SEM)直接“购买”关键词位置,但那种模式本质是付费买流量,一旦停止付费,排名瞬间消失。而在GEO(生成式引擎优化)时代,所谓的…

2026/7/5 2:26:36 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻