• pytoch基础知识--Variable变量


     pytorch中的变量有三个属性,分别是data表示变量中的具体值, grad表示这个变量反向传播的梯度,这个的计算方式下面有专门的一个演示程序, grad_fn表示是通过什么操作得到这个变量的例如( 加减乘除、卷积、反置卷积)

    其位于torch的autograd中

    import torch
    from torch.autograd import Variable

    对比在pytorch中常用的单元tensor(张量),二者是可以相互转化的,区别在于tensor用于在CPU上计算,而Variable用于在GPU上。所以说这就是为什么pytorch加载图像的时候一般都会使用Variable变量。

    附tensor,Variable,numpy.array的转化代码

    #将numpy矩阵转换为Tensor
    sub_ts = torch.from_numpy(sub_img)   #sub_img为numpy类型
    
    #将Tensor张量转化为numpy
    sub_np1 = sub_ts.numpy()             #sub_ts为tensor张量
    
    #将numpy转换为Variable
    sub_va = Variable(torch.from_numpy(sub_img))
    
    #将Variable张量转化为numpy
    sub_np2 = sub_va.data.numpy()          #sub_va为Variable类型
    
    #将Tensor张量转化为Variable
    sub_var = Variable(sub_ts, requires_grad = True)  #sub_ts为tensor
    适当比较,砥砺前行
  • 相关阅读:
    Qt 智能指针学习(7种指针)
    Springmvc+Spring+Hibernate搭建方法
    DDD分层架构之领域实体(基础篇)
    LeetCode
    RabbitMQ
    Cocos2d-x环境搭建
    使用快捷键提升C#开发效率
    C# 6.0
    avalonjs 1.3.7发布
    VS2015安装
  • 原文地址:https://www.cnblogs.com/llllrj/p/15368298.html
Copyright © 2020-2023  润新知