import torch
import matplotlib.pyplot as plt
learning_rate = 0.1 #准备数据 #y = 3x +0.8
x = torch.randn([500,1])
y_true = 3*x + 0.8 #计算预测值
w = torch.rand([],requires_grad=True)
b = torch.tensor(0,dtype=torch.float,requires_grad=True) for i in range(50):
#梯度默认会累加,梯度手动清零
for j in [w,b]:
if j.grad is not None:
j.grad.data.zero_()
y_predict = x*w +b
#计算损失
loss = (y_predict-y_true).pow(2).mean()
loss.backward()
#更新参数
w.data = w.data - learning_rate * w.grad
b.data = b.data - learning_rate * b.grad
print(i,loss.item())
print(w.data,b.data) plt.figure(figsize=(20,8))
plt.scatter(x.numpy(),y_true.numpy()) y_predict = x*w + b
plt.plot(x.numpy(),y_predict.detach().numpy(),c="red")
plt.show()

  

最新文章

  1. 【NLP】大数据之行,始于足下:谈谈语料库知多少
  2. C语言中的far关键字
  3. 继承 原生js 与 $.extend(true,default,opts||{});
  4. linux Shell脚本编码格式
  5. 编译Android源码
  6. Hadoop在eclipse中的配置
  7. SpringMVC详细示例实战教程
  8. vim - multiple windows
  9. Python-dict与set
  10. 正则匹配ab不匹配aab
  11. 关于datalist
  12. use_virtual_func_without_pointer_left
  13. java动态缓存技术:WEB缓存应用(转)
  14. jQuery 获取 URL信息
  15. Mysql ODBC 5.1 Driver免安装脚本
  16. C#调用百度地图API
  17. idea live template高级知识, 进阶(给方法,类,js方法添加注释)(二)
  18. linux 磁盘管理三部曲——(3)mount挂载,/etc/fstab配置文件
  19. listview的gridview视图中,获取列中模板内的button按钮(找控件内的控件)
  20. 在td中的输入英文为什么不自动换行???

热门文章

  1. K8S 资源收集和展示 top & DashBoard-UI
  2. kaggle入门——泰坦尼克之灾
  3. 模块 time datetime 时间获取和处理
  4. python爬虫之requests的基础使用
  5. ASP.NET Core WEB API 使用element-ui文件上传组件el-upload执行手动文件文件,并在文件上传后清空文件
  6. [Vue warn]: Failed to mount component: template or render function not defined. found in ---> <XFbwz> at src/views/XFbwz.vue <App> at src/App.vue <Root>
  7. PTA数据结构与算法题目集(中文) 7-26
  8. CentOS虚拟机开机显示多内核版本
  9. 痞子衡嵌入式:走进二维码(QR Code)的世界(1)- 引言
  10. postfix基础邮件服务