赞
踩
报错代码
- import torch
-
- def synthetic_data(w,b,num_examples):
- X = torch.normal(0,1,(num_examples,len(w)))
- y = torch.matmul(X,w) + b
- y += torch.normal(0,0.01,y.shape)
- return X,y.reshape((-1,1))
-
- true_w = torch.tensor([2,-3,4])
- true_b = 4.2
- features,labels = synthetic_data(true_w,true_b,1000)
- print('features:',features[0],'\nlabels:',labels[0
错误信息
- E:\tool\anaconda\envs\pytorch_38\python.exe "E:\deep_learning\chapter_1\4_Linear regression.py"
- Traceback (most recent call last):
- File "E:\deep_learning\chapter_1\4_Linear regression.py", line 17, in <module>
- features,labels = synthetic_data(true_w,true_b,1000)
- File "E:\deep_learning\chapter_1\4_Linear regression.py", line 11, in synthetic_data
- y = torch.matmul(X,w) + b
- RuntimeError: expected scalar type Float but found Long
-
- Process finished with exit code 1
此错误是因为features,labels = synthetic_data(true_w,true_b,1000)中true_w在传递参数时是torch.long型数据,而y = torch.matmul(X,w)中需要torch.float型,因此在定义true_w时显性定义为float型
true_w = torch.tensor([2,-3,4],dtype=torch.float32)
然后代码正常运行
- E:\tool\anaconda\envs\pytorch_38\python.exe "E:\deep_learning\chapter_1\4_Linear regression.py"
- features: tensor([-0.1643, -1.1914, 0.7178])
- labels: tensor([10.3341])
-
- Process finished with exit code 0
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。