新手刚学深度学习,跟着视频敲代码发现出现了一个在网上都找不到的神奇问题,折腾了一上午还是没搞出来。。。有大佬能解决一下这个bug吗
这个是源代码
import torch
x_date=[1.0,2.0,3.0]
y_date=[2.0,4.0,6.0]
w=torch.Tensor([1.0])
w.requires_grad=True
def forward(x):
return w*x
def loss(x,y):
y_pred=forward(x)
return (y_pred-y)**2
print('before trainning',4,forward(4).item())
for epoch in range(100):
for x,y in zip(x_date,y_date):
l=loss(x,y)
l.backward()
print('/t grad:',x,y,w.grad.item())
w.date-=0.01*w.grad.date
w.grad.date.zero()
print('process:',epoch,l.item())
print('after trainning',4,forward(4).item())
python版本是3.7的