当前位置: 首页 > news >正文

深度学习(14)--x.view()详解

在torch中,常用view()函数来改变tensor的形状

查询官方文档:

torch.Tensor.view — PyTorch 2.2 documentationicon-default.png?t=N7T8https://pytorch.org/docs/stable/generated/torch.Tensor.view.html#torch.Tensor.view示例

1.创建一个4x4的二维数组进行测试

x = torch.randn(4, 4)
print(x)
print(x.size())

(1).将二维数组变换为一维数组

y = x.view(16)
print(y)
print(y.size())

 (2).将二维数组变换为其他形式的二维数组

z = x.view(2, 8)
print(z)
print(z.size())

(3).可以将其中一个参数设置为-1,view()会根据已设置的维度自动推断出另外一个维度的大小 

# the size -1 is inferred from other dimensions
yy = x.view(-1, 8)
print(yy)
print(yy.size())zz = x.view(8, -1)
print(zz)
print(zz.size())

可以看到分别得到了2x8的yy和8x2的zz,符合实际的情况。 

2.创建一个1x2x3x4的四维矩阵进行测试

x = torch.rand(1, 2, 3, 4)
print(x)
print(x.size())

(1).将四维数组变换为一维数组

y = x.view(-1)
print(y)
print(y.size())

(2).将四维数组变换为二维数组

z = x.view(2,-1)
print(z)
print(z.size())

(3).将四维数组变换为三维数组

a = x.view(2, -1, 4)
print(a)
print(a.size())

(4).将四维数组转换为其他形式的四维数组

b = x.view(1, 3, 2, 4)
print(b)
print(b.size())

值得注意的是view()函数并不改变tensor数据在内存中的层次 

利用tranpose函数进行验证,transpose函数可以交换数据指定的维度:

c = x.transpose(1, 2)
print(c)
print(c.size())

transpose(1,2)将第二个维度和第三个维度互换(四维对应的索引是0,1,2,3) 

 利用equal()函数判断b和c是否相同:

print("b和c是否相等:")
print(torch.equal(b, c))

由如上结果可知,view()函数并不改变数据在内存中的层次。 

http://www.lryc.cn/news/299041.html

相关文章:

  • 最新wordpress外贸主题
  • Spring Cloud Gateway:使用RestController动态更新路由
  • 用Python动态展示排序算法
  • vscode代码快捷键
  • 深入了解C++:形参、内联、重载、引用、const和指针、new和delete
  • Linux 目录结构结构
  • C++基础入门:掌握核心概念(超全!)
  • Linux第47步_安装支持linux的第三方库和mkimage工具
  • 数据工程工程师学习路线图
  • MySQL主从同步与分库分表
  • 百度PaddleOCR字符识别推理部署(C++)
  • C++ Qt框架开发 | 基于Qt框架开发实时成绩显示排序系统(2)折线图显示
  • Microsoft Excel 加载数据分析工具
  • Day32 贪心算法part02
  • 3分钟带你了解Vue3的nextTick()
  • 数据库的使用方法
  • HTML5和CSS3强化知识总结
  • 华为机考入门python3--(13)牛客13-句子逆序
  • javaScript实现客户端直连AWS S3(亚马逊云)文件上传、断点续传、断网重传
  • 从基建发力,CESS 如何推动 RWA 发展?
  • qml写一个自适应登录框
  • 考研高数(导数的定义)
  • ChatGPT在国际中文教育领域引起的变革与挑战
  • C语言—基础数据类型(含进制转换)
  • 警钟长鸣-合同问题
  • CAN通讯协议学习
  • Spring Boot 笔记 008 创建接口_获取用户信息
  • EMC学习笔记(二十六)降低EMI的PCB设计指南(六)
  • pytorch花式索引提取topk的张量
  • Swagger2