pytorch Variable学习

本文介绍了Variable在深度学习中的角色,它是Tensor的封装,包含数据、梯度和运算历史。探讨了如何创建Variable并控制梯度需求,以及在训练与测试中选择Variable的重要性。同时,解答了关于网络输入选择的问题,指出两者之间的灵活性和适用场景。
摘要由CSDN通过智能技术生成

Variable为何物?

Variable是对Tensor的一个封装,具有三个属性,Variable的Tensor本身的.data,对应Tensor的梯度.grad,以及这个Variable是通过什么方式得到的.grad_fn(例如加减乘除,卷积等操作)

#将tensor转换成Variable
variable = Variable(tensor) #Varibale 默认时不要求梯度的,如果要求梯度,需要说明
variable = Variable(tensor,requires_grad=True)

print(variable.grad)
print(variable.grad_fn)

关于网络输入为tensor还是Variable?

传入参数可以为tensor也可以为variable,(是否尽量传variable ?反正input在测试的时候都要包装成variable,做参数更新)训练的时候和测试的时候该怎么选最合适?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值