实验 2 利用 PyTorch 实现简单的线性回归算法,文末有福利

导入自动梯度运算包,主要用Variable这个类

from torch.autograd import Variable

import matplotlib.pyplot as plt

生成100个0—100间的数

x = Variable(torch.linspace(0, 100, 100).type(torch.FloatTensor))

生成100个正态分布随机数,均值为0,方差为10

rand = Variable(torch.randn(100)) * 10

y = x + rand

将Variable转换为数组,绘图

plt.plot(x.data.numpy(), y.data.numpy(),‘o’)

plt.xlabel(‘X’)

plt.ylabel(‘Y’)

plt.show()

找到一条直线,使得它到所有点 的距离都很小

设置拟合参数变量

a = Variable(torch.rand(1), requires_grad=True)

b = Variable(torch.rand(1), requires_grad=True)

print(‘Initial parameters:’, [a, b])

设置学习率

learning_rate =0.0001

for i in range(1000):

predictions = a.expand_as(x) * x + b.expand_as(x)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值