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数据类型详解(二)列表
May 08 Python
python对DICOM图像的读取方法详解
Jul 17 Python
pyqt5简介及安装方法介绍
Jan 31 Python
Django中create和save方法的不同
Aug 13 Python
python超时重新请求解决方案
Oct 21 Python
PYTHON实现SIGN签名的过程解析
Oct 28 Python
Python类中的装饰器在当前类中的声明与调用详解
Apr 15 Python
Django基于客户端下载文件实现方法
Apr 21 Python
解决Tensorflow2.0 tf.keras.Model.load_weights() 报错处理问题
Jun 12 Python
Python selenium键盘鼠标事件实现过程详解
Jul 28 Python
基于python调用jenkins-cli实现快速发布
Aug 14 Python
解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题
Jun 08 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
3
2006/10/09 PHP
回答PHPCHINA上的几个问题:URL映射
2007/02/14 PHP
PHP获取远程http或ftp文件的md5值的方法
2019/04/15 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
模仿JQuery sortable效果 代码有错但值得看看
2009/11/05 Javascript
js 获取和设置css3 属性值的实现方法
2013/05/06 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
JS+CSS实现精美的二级导航效果代码
2015/09/17 Javascript
jQuery实现的登录浮动框效果代码
2015/09/26 Javascript
javascript运动框架用法实例分析(实现放大与缩小效果)
2016/01/08 Javascript
Javascript json object 与string 相互转换的简单实现
2016/09/27 Javascript
原生js实现键盘控制div移动且解决停顿问题
2016/12/05 Javascript
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
微信小程序实现页面左右滑动
2020/11/16 Javascript
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
[02:46]2014DOTA2国际邀请赛 选手为你解读比赛MVP充满梦想
2014/07/09 DOTA
收集的几个Python小技巧分享
2014/11/22 Python
Python中编写ORM框架的入门指引
2015/04/29 Python
Python中常见的数据类型小结
2015/08/29 Python
Python中协程用法代码详解
2018/02/10 Python
python3 线性回归验证方法
2019/07/09 Python
python 使用cx-freeze打包程序的实现
2020/03/14 Python
python的reverse函数翻转结果为None的问题
2020/05/11 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
Python3交互式shell ipython3安装及使用详解
2020/07/11 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
2020/09/30 Python
美国购车网站:TrueCar
2016/10/19 全球购物
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
爱护公共设施倡议书
2014/08/29 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书
三年级上册科学教学计划
2015/01/21 职场文书
甲午大海战观后感
2015/06/02 职场文书
部门主管竞聘书
2015/09/15 职场文书
2016年国庆节宣传标语
2015/11/25 职场文书