pytorch中的 .view()函数的用法介绍


Posted in Python onMarch 17, 2022

一、普通用法 (手动调整size)

view()相当于reshape、resize,重新调整Tensor的形状。

import torch
a1 = torch.arange(0,16)
print(a1)
# tensor([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15])
a2 = a1.view(8, 2)
a3 = a1.view(2, 8)
a4 = a1.view(4, 4)
print(a2)
#tensor([[ 0,  1],
#        [ 2,  3],
#        [ 4,  5],
#        [ 6,  7],
#        [ 8,  9],
#        [10, 11],
#        [12, 13],
#        [14, 15]])
print(a3)
#tensor([[ 0,  1,  2,  3,  4,  5,  6,  7],
#        [ 8,  9, 10, 11, 12, 13, 14, 15]])
print(a4)
#tensor([[ 0,  1,  2,  3],
#        [ 4,  5,  6,  7],
#        [ 8,  9, 10, 11],
#        [12, 13, 14, 15]])

二、特殊用法:参数-1 (自动调整size)

view中一个参数定为-1,代表自动调整这个维度上的元素个数,以保证元素的总数不变。

v1 = torch.arange(0,16)
print(v1)
# tensor([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15])
v2 = v1.view(-1, 16)
v2
# tensor([[ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15]])
v2 = v1.view(-1, 8)
v2
# tensor([[ 0,  1,  2,  3,  4,  5,  6,  7],
#         [ 8,  9, 10, 11, 12, 13, 14, 15]])
v2 = v1.view(-1, 4)
v2
#tensor([[ 0,  1,  2,  3],
#        [ 4,  5,  6,  7],
#        [ 8,  9, 10, 11],
#        [12, 13, 14, 15]])
v2 = v1.view(-1, 2)
v2
#tensor([[ 0,  1],
#        [ 2,  3],
#        [ 4,  5],
#        [ 6,  7],
#        [ 8,  9],
#        [10, 11],
#        [12, 13],
#        [14, 15]])
v3 = v1.view(4*4, -1)
v3
# tensor([[ 0],
#         [ 1],
#         [ 2],
#         [ 3],
#         [ 4],
#         [ 5],
#         [ 6],
#         [ 7],
#         [ 8],
#         [ 9],
#         [10],
#         [11],
#         [12],
#         [13],
#         [14],
#         [15]])

到此这篇关于pytorch中的 .view()函数的用法介绍的文章就介绍到这了,更多相关pytorch .view()函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用python实现的可以拷贝或剪切一个文件列表中的所有文件
Apr 30 Python
Python基于PycURL实现POST的方法
Jul 25 Python
Python 常用的安装Module方式汇总
May 06 Python
Django跨域请求CSRF的方法示例
Nov 11 Python
pandas求两个表格不相交的集合方法
Dec 08 Python
python爬虫爬取笔趣网小说网站过程图解
Nov 18 Python
python数据处理——对pandas进行数据变频或插值实例
Apr 22 Python
Win10环境中如何实现python2和python3并存
Jul 20 Python
python录音并调用百度语音识别接口的示例
Dec 01 Python
Python3爬虫RedisDump的安装步骤
Feb 20 Python
Python Django 后台管理之后台模型属性详解
Apr 25 Python
python在package下继续嵌套一个package
Apr 14 Python
Python绘画好看的星空图
opencv深入浅出了解机器学习和深度学习
Python与C++中梯度方向直方图的实现
JAVA SpringMVC实现自定义拦截器
Mar 16 #Python
Python Pandas 删除列操作
Mar 16 #Python
Python实现批量自动整理文件
Mar 16 #Python
Pandas-DataFrame知识点汇总
Mar 16 #Python
You might like
使用PHP实现阻止用户上传成人照片或者裸照
2014/12/25 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
2017/06/27 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
如何用js控制frame的隐藏或显示的解决办法
2013/03/20 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
Javascript简单改变表单元素背景的方法
2015/07/15 Javascript
JavaScript实现可拖拽的拖动层Div实例
2015/08/05 Javascript
如何提高Dom访问速度
2017/01/05 Javascript
JS组件系列之JS组件封装过程详解
2017/04/28 Javascript
jQuery实现所有验证通过方可提交的表单验证
2017/11/21 jQuery
Vuex 进阶之模块化组织详解
2018/01/12 Javascript
一个因@click.stop引发的bug的解决
2019/01/08 Javascript
基于vue+uniapp直播项目实现uni-app仿抖音/陌陌直播室功能
2019/11/12 Javascript
微信小程序scroll-view隐藏滚动条的方法详解
2020/03/25 Javascript
微信小程序实现拨打电话功能的示例代码
2020/06/28 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
python实现的各种排序算法代码
2013/03/04 Python
centos系统升级python 2.7.3
2014/07/03 Python
Python删除空文件和空文件夹的方法
2015/07/14 Python
centos6.4下python3.6.1安装教程
2017/07/21 Python
python+selenium开发环境搭建图文教程
2017/08/11 Python
浅析python 中大括号中括号小括号的区分
2019/07/29 Python
Python3交互式shell ipython3安装及使用详解
2020/07/11 Python
python opencv实现简易画图板
2020/08/27 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
2020/09/21 Python
Android本地应用打开方法——通过html5写连接
2016/03/11 HTML / CSS
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
介绍下WebSphere的安全性
2013/01/31 面试题
估算杭州有多少软件工程师
2015/08/11 面试题
护士毕业自我鉴定
2014/02/07 职场文书
专题组织生活会方案
2014/06/15 职场文书
小学运动会演讲稿
2014/08/25 职场文书
教师群众路线学习心得体会
2014/11/04 职场文书
个人年终总结开头
2015/03/06 职场文书
2016年元旦致辞
2015/08/01 职场文书
JS中forEach()、map()、every()、some()和filter()的用法
2022/05/11 Javascript