小项目
In [1]:
#库
import torch as t
from matplotlib import pyplot as plt
from IPython import display
# device = t.device('cpu') #如果你想用GPU,改成t.device('cuda:0')
device = t.device('cuda:0')
In [2]:
# x1=t.rand(5,1)#列向量shape=(5,1),生成在(0,1)之间的均匀分布
# x1
count = 10
x1=t.rand(5,1)*count#列向量,生成在(0,count)之间的均匀分布
x1
x1.shape
Out[2]:
torch.Size([5, 1])
In [3]:
# 设置随机数种子,保证在不同电脑上运行时下面的输出一致
t.manual_seed(1000)
def get_fake_data(batch_size=8):
''' 产生随机数据:y=x*3+4,加上了一些噪声'''
x = t.rand(batch_size, 1, device=device) * 5 #rand():均匀分布
y = x * 3 + 4 + t.randn(batch_size, 1, device=device) #randn():标准分布
return x, y
In [4]:
# 来看看产生的x-y分布
x, y = get_fake_data(batch_size=16)
# plt.scatter(x.squeeze().cpu().numpy(), y.squeeze().cpu().numpy())
plt.scatter(x.cpu().numpy(), y.cpu().numpy())
Out[4]:
<matplotlib.collections.PathCollection at 0x20b8c566f70>