Pytorch基本变量类型FloatTensor与Variable用法


Posted in Python onJanuary 08, 2020

pytorch中基本的变量类型当属FloatTensor(以下都用floattensor),而Variable(以下都用variable)是floattensor的封装,除了包含floattensor还包含有梯度信息

pytorch中的dochi给出一些对于floattensor的基本的操作,比如四则运算以及平方等(链接),这些操作对于floattensor是十分的不友好,有时候需要写一个正则化的项需要写很长的一串,比如两个floattensor之间的相加需要用torch.add()来实现

然而正确的打开方式并不是这样

韩国一位大神写了一个pytorch的turorial,其中包含style transfer的一个代码实现

for step in range(config.total_step):

    
    # Extract multiple(5) conv feature vectors
    target_features = vgg(target)  # 每一次输入到网络中的是同样一张图片,反传优化的目标是输入的target
    content_features = vgg(Variable(content))
    style_features = vgg(Variable(style))

    style_loss = 0
    content_loss = 0
    for f1, f2, f3 in zip(target_features, content_features, style_features):
      # Compute content loss (target and content image)
      content_loss += torch.mean((f1 - f2)**2) # square 可以进行直接加-操作?可以,并且mean对所有的元素进行均值化造作

      # Reshape conv features
      _, c, h, w = f1.size() # channel height width
      f1 = f1.view(c, h * w) # reshape a vector
      f3 = f3.view(c, h * w) # reshape a vector

      # Compute gram matrix 
      f1 = torch.mm(f1, f1.t())
      f3 = torch.mm(f3, f3.t())

      # Compute style loss (target and style image)
      style_loss += torch.mean((f1 - f3)**2) / (c * h * w)  # 总共元素的数目?

其中f1与f2,f3的变量类型是Variable,作者对其直接用四则运算符进行加减,并且用python内置的**进行平方操作,然后

# -*-coding: utf-8 -*-
import torch
from torch.autograd import Variable

# dtype = torch.FloatTensor
dtype = torch.cuda.FloatTensor # Uncomment this to run on GPU

# N is batch size; D_in is input dimension;
# H is hidden dimension; D_out is output dimension.
N, D_in, H, D_out = 64, 1000, 100, 10

# Randomly initialize weights
w1 = torch.randn(D_in, H).type(dtype) # 两个权重矩阵
w2 = torch.randn(D_in, H).type(dtype)
# operate with +-*/ and **
w3 = w1-2*w2
w4 = w3**2
w5 = w4/w1


# operate the Variable with +-*/ and **
w6 = Variable(torch.randn(N, D_in).type(dtype))
w7 = Variable(torch.randn(N, D_in).type(dtype))
w8 = w6 + w7
w9 = w6*w7
w10 = w9**2
print(1)

基本上调试的结果与预期相符

Pytorch基本变量类型FloatTensor与Variable用法

所以,对于floattensor以及variable进行普通的+-×/以及**没毛病

以上这篇Pytorch基本变量类型FloatTensor与Variable用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
windows下安装python paramiko模块的代码
Feb 10 Python
Python字符串处理之count()方法的使用
May 18 Python
python开发之函数定义实例分析
Nov 12 Python
利用Python为iOS10生成图标和截屏
Sep 24 Python
Python基于回溯法子集树模板实现8皇后问题
Sep 01 Python
Python实现的微信支付方式总结【三种方式】
Apr 13 Python
使用 python pyautogui实现鼠标键盘控制功能
Aug 04 Python
Pytorch中的自动求梯度机制和Variable类实例
Feb 29 Python
Python实现鼠标自动在屏幕上随机移动功能
Mar 14 Python
Numpy 理解ndarray对象的示例代码
Apr 03 Python
python实现与redis交互操作详解
Apr 21 Python
使用Python webdriver图书馆抢座自动预约的正确方法
Mar 04 Python
python pycharm最新版本激活码(永久有效)附python安装教程
Sep 18 #Python
pytorch 中pad函数toch.nn.functional.pad()的用法
Jan 08 #Python
pycharm激活码有效到2020年11月底
Sep 18 #Python
pymysql的简单封装代码实例
Jan 08 #Python
pytorch使用 to 进行类型转换方式
Jan 08 #Python
Pycharm 2020年最新激活码(亲测有效)
Sep 18 #Python
Pytorch to(device)用法
Jan 08 #Python
You might like
PHP基础教程(php入门基础教程)一些code代码
2013/01/06 PHP
PHP中实现生成静态文件的方法缓解服务器压力
2014/01/07 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
jQuery easyui datagrid动态查询数据实例讲解
2013/02/26 Javascript
使用js实现关闭js弹出层的窗口
2014/02/10 Javascript
js的[defer]和[async]属性
2014/11/24 Javascript
JS设置网页图片vspace和hspace属性的方法
2015/04/01 Javascript
jQuery实现鼠标滑向当前图片高亮显示并且其它图片变灰的方法
2015/07/27 Javascript
利用JavaScript判断浏览器类型及版本
2016/08/23 Javascript
jQ处理xml文件和xml字符串的方法(详解)
2016/11/22 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
jQuery选择器实例应用
2017/01/05 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
[01:25:33]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第二场 12.20
2020/12/23 DOTA
Python正则抓取新闻标题和链接的方法示例
2017/04/24 Python
python导入csv文件出现SyntaxError问题分析
2017/12/15 Python
python根据unicode判断语言类型实例代码
2018/01/17 Python
pandas值替换方法
2018/07/10 Python
python 使用re.search()筛选后 选取部分结果的方法
2018/11/28 Python
python 函数内部修改外部变量的方法
2018/12/18 Python
python网络编程之五子棋游戏
2020/05/14 Python
用Python开发app后端有优势吗
2020/06/29 Python
利用纯html5绘制出来的一款非常漂亮的时钟
2015/01/04 HTML / CSS
澳大利亚正品化妆品之家:Cosmetic Capital
2017/07/03 全球购物
King Apparel官网:英国街头服饰品牌
2019/09/05 全球购物
大学生咖啡店创业计划书
2014/01/21 职场文书
转让协议书范本
2014/04/15 职场文书
体育课课后反思
2014/04/24 职场文书
大学开学计划书
2014/04/30 职场文书
校园游戏活动新闻稿
2014/10/15 职场文书
感谢信范文大全
2015/01/23 职场文书
酒店工程部主管岗位职责
2015/04/16 职场文书
小学教师师德师风承诺书
2015/04/28 职场文书
房屋租赁意向书范本
2015/05/09 职场文书
二手房购房意向书
2015/05/09 职场文书
暂住证明怎么写
2015/06/19 职场文书