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 相关文章推荐
Python3 入门教程 简单但比较不错
Nov 29 Python
实例Python处理XML文件的方法
Aug 31 Python
Python实现的求解最小公倍数算法示例
May 03 Python
Python GUI编程完整示例
Apr 04 Python
Python 中如何实现参数化测试的方法示例
Dec 10 Python
关于Tensorflow使用CPU报错的解决方式
Feb 05 Python
python torch.utils.data.DataLoader使用方法
Apr 02 Python
浅谈keras中Dropout在预测过程中是否仍要起作用
Jul 09 Python
基于python实现生成指定大小txt文档
Jul 20 Python
详解Python3 定义一个跨越多行的字符串的多种方法
Sep 06 Python
Python:__eq__和__str__函数的使用示例
Sep 26 Python
python 数据类型强制转换的总结
Jan 25 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水印技术
2007/02/14 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
CodeIgniter框架过滤HTML危险代码
2014/06/12 PHP
PHP之预定义接口详解
2015/07/29 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
2017/02/06 PHP
PHP中时间加减函数strtotime用法分析
2017/04/26 PHP
解javascript 混淆加密收藏
2009/01/16 Javascript
JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012/03/07 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
全面兼容的javascript时间格式化函数(比较实用)
2014/05/14 Javascript
jQuery中focus事件用法实例
2014/12/26 Javascript
JavaScript 事件绑定及深入
2015/04/13 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
2016/05/10 Javascript
利用ES6语法重构React组件详解
2017/03/02 Javascript
详解Angular如何正确的操作DOM
2018/07/06 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
layui实现form表单同时提交数据和文件的代码
2019/10/25 Javascript
Taro UI框架开发小程序实现左滑喜欢右滑不喜欢效果的示例代码
2020/05/18 Javascript
Vue左滑组件slider使用详解
2020/08/21 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
[48:56]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 VG vs KG
2018/03/31 DOTA
python中map、any、all函数用法分析
2015/04/21 Python
Python批量按比例缩小图片脚本分享
2015/05/21 Python
Django的信号机制详解
2017/05/05 Python
对python中array.sum(axis=?)的用法介绍
2018/06/28 Python
把csv文件转化为数组及数组的切片方法
2018/07/04 Python
python中csv文件的若干读写方法小结
2018/07/04 Python
python在回调函数中获取返回值的方法
2019/02/22 Python
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
机械专业应届生求职信
2013/12/12 职场文书
迟到检讨书大全
2014/01/25 职场文书
禁毒宣传标语
2014/06/19 职场文书
会计学专业自荐信
2014/06/25 职场文书
2014年食品安全工作总结
2014/12/04 职场文书
机关单位2016年创先争优活动总结
2016/04/05 职场文书