PyTorch中view()函数用法说明

首先,view( ) 是对 PyTorch 中的 Tensor 操作的,若非 Tensor 类型,可使用 data = torch.tensor(data)来进行转换。

(1) 作用:该函数返回一个有相同数据但不同维度大小的 Tensor。也就是说该函数的功能是改变矩阵维度,相当于 Numpy 中的 resize() 或者 Tensorflow 中的 reshape() 。

(2) 参数:view( *args )

python 复制代码
import torch

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

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

z = x.view(-1, 9)  # -1表示该维度取决于其它维度大小,即(6*6)/ 9
print(z.size())

m = x.view(3, 3, 4) # 也可以变为更多维度
print(m.size())

输出:
torch.Size([6, 6])
torch.Size([36])
torch.Size([4, 9])
torch.Size([3, 3, 4])

特殊用法view(-1)

若需要转换维度为一维,有一种简单的方式,即将参数设置为 -1

python 复制代码
import torch

a = torch.Tensor([[1, 2, 3], [4, 5, 6],[7,8,9]]) # 定义一个 2*3 的 Tensor
a = a.view(-1)
print(a)

输出:
tensor([1., 2., 3., 4., 5., 6., 7., 8., 9.])
相关推荐
奔跑中的小象3 小时前
统信UOS + 天数AI卡部署SGLang服务手册
人工智能·uos·sglang·天数智芯
DevSecOps选型指南3 小时前
中国版Mythos,为何是悬镜安全灵脉CodeAI?
人工智能·安全
Shockang3 小时前
LangGraph 状态机实战
人工智能
DLYSB_3 小时前
存储运维实战:基于 Ceph Event 监听与 Python 适配器的分布式存储健康度物理声光响应架构
运维·ceph·python·报警灯
刹那芳华19923 小时前
循环神经网络的从零开始实现(RNN)
人工智能·rnn·深度学习
阿童木写作4 小时前
跨境图片翻译工具多合一,批量图片视频字幕翻译加智能抠图
人工智能·python·音视频·语音识别
科技之门4 小时前
AI3D从建模到贴图、绑骨和动画的完整流程怎么做?V2Fun完整工作流指南
人工智能·3d·贴图
宇宙第一小趴菜4 小时前
二、机器学习的应用领域和发展史
人工智能·机器学习
前端开发江鸟4 小时前
我写过 MCP Server,却一直以为 MCP 只有 Tool
人工智能
天国梦4 小时前
自习室智能化升级避坑指南:天学网AI智习室方案实测与选型建议
大数据·人工智能