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 相关文章推荐
10个易被忽视但应掌握的Python基本用法
Apr 01 Python
在MAC上搭建python数据分析开发环境
Jan 26 Python
Python 中的 else详解
Apr 23 Python
python魔法方法-自定义序列详解
Jul 21 Python
Python算法应用实战之队列详解
Feb 04 Python
Request的中断和ErrorHandler实例解析
Feb 12 Python
python实现数据写入excel表格
Mar 25 Python
pandas 两列时间相减换算为秒的方法
Apr 20 Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
Jan 17 Python
python查询文件夹下excel的sheet名代码实例
Apr 02 Python
使用Djongo模块在Django中使用MongoDB数据库
Jun 20 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
Memcache 在PHP中的使用技巧
2010/02/08 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
提升PHP性能的21种方法介绍
2013/06/25 PHP
PHP+shell脚本操作Memcached和Apache Status的实例分享
2016/03/11 PHP
PHP输出XML格式数据的方法总结
2017/02/08 PHP
PHP设计模式之PHP迭代器模式讲解
2019/03/22 PHP
刷新时清空文本框内容的js代码
2007/04/23 Javascript
js获取提交的字符串的字节数
2009/02/09 Javascript
js 函数的执行环境和作用域链的深入解析
2009/11/01 Javascript
图像替换新技术 状态域方法
2010/01/28 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
实例解析js中try、catch、finally的执行规则
2017/02/24 Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
2017/04/04 Javascript
JavaScript数据结构中串的表示与应用实例
2017/04/12 Javascript
详解Angular2学习笔记之Html属性绑定
2018/01/03 Javascript
编写React组件项目实践分析
2018/03/04 Javascript
vue debug 二种方法
2018/09/16 Javascript
详解在不使用ssr的情况下解决Vue单页面SEO问题
2018/11/08 Javascript
layui给下拉框、按钮状态、时间赋初始值的方法
2019/09/10 Javascript
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
合并Excel工作薄中成绩表的VBA代码,非常适合教育一线的朋友
2009/04/09 Python
同时安装Python2 & Python3 cmd下版本自由选择的方法
2017/12/09 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
2020/07/14 Python
深入理解css中vertical-align属性
2017/04/18 HTML / CSS
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
2020/08/24 HTML / CSS
英国最大的在线运动补充剂商店:Discount Supplements
2017/06/03 全球购物
请说出以下代码输出什么
2013/08/30 面试题
应聘自荐书
2013/10/08 职场文书
高中英语演讲稿范文
2014/04/24 职场文书
中国梦演讲稿开场白
2014/08/28 职场文书
2015年母亲节寄语
2015/03/23 职场文书
干部考核工作总结2015
2015/07/24 职场文书
为Java项目添加Redis缓存的方法
2021/05/18 Redis