pytorch 入门学习反向传播

反向传播

import  numpy as np
import matplotlib.pyplot as plt
import torchdef forward(x):return x * wdef loss(x,y):y_pred = forward(x)return (y_pred - y) **2x_data = [1.0, 2.0, 3.0]
y_data = [2.0 ,4.0, 6.0]w = torch.Tensor([1.0])
w.requires_grad = Trueprint("predict (before training)",4,forward(4).item())for epoch in range(10):for x,y  in zip(x_data,y_data):l = loss(x,y)l.backward()  #反向传播,计算梯度print('\tgrad:',x,y,w.grad.item())w.data = w.data - 0.01*w.grad.dataw.grad.data.zero_()  #清空梯度print("progress:",epoch,l.item())
print("predict (after training)",4,forward(4).item())
#out:
predict (before training) 4 4.0grad: 1.0 2.0 -2.0grad: 2.0 4.0 -7.840000152587891grad: 3.0 6.0 -16.228801727294922
progress: 0 7.315943717956543grad: 1.0 2.0 -1.478623867034912grad: 2.0 4.0 -5.796205520629883grad: 3.0 6.0 -11.998146057128906
progress: 1 3.9987640380859375grad: 1.0 2.0 -1.0931644439697266grad: 2.0 4.0 -4.285204887390137grad: 3.0 6.0 -8.870372772216797
progress: 2 2.1856532096862793grad: 1.0 2.0 -0.8081896305084229grad: 2.0 4.0 -3.1681032180786133grad: 3.0 6.0 -6.557973861694336
progress: 3 1.1946394443511963grad: 1.0 2.0 -0.5975041389465332grad: 2.0 4.0 -2.3422164916992188grad: 3.0 6.0 -4.848389625549316
progress: 4 0.6529689431190491grad: 1.0 2.0 -0.4417421817779541grad: 2.0 4.0 -1.7316293716430664grad: 3.0 6.0 -3.58447265625
progress: 5 0.35690122842788696grad: 1.0 2.0 -0.3265852928161621grad: 2.0 4.0 -1.2802143096923828grad: 3.0 6.0 -2.650045394897461
progress: 6 0.195076122879982grad: 1.0 2.0 -0.24144840240478516grad: 2.0 4.0 -0.9464778900146484grad: 3.0 6.0 -1.9592113494873047
progress: 7 0.10662525147199631grad: 1.0 2.0 -0.17850565910339355grad: 2.0 4.0 -0.699742317199707grad: 3.0 6.0 -1.4484672546386719
progress: 8 0.0582793727517128grad: 1.0 2.0 -0.1319713592529297grad: 2.0 4.0 -0.5173273086547852grad: 3.0 6.0 -1.070866584777832
progress: 9 0.03185431286692619
predict (after training) 4 7.804864406585693Process finished with exit code 0

pytorch 入门学习反向传播-4相关推荐

  1. pytorch学习 -- 反向传播backward

    pytorch学习 – 反向传播backward 入门学习pytorch,在查看pytorch代码时对autograd的backard函数的使用和具体原理有些疑惑,在查看相关文章和学习后,简单说下我自 ...

  2. pytorch 入门学习多分类问题-9

    pytorch 入门学习多分类问题 运行结果 [1, 300] loss: 2.287[1, 600] loss: 2.137[1, 900] loss: 1.192 Accuracy on test ...

  3. pytorch 入门学习加载数据集-8

    pytorch 入门学习加载数据集 import torch import numpy as np import torchvision import numpy as np from torch.u ...

  4. pytorch 入门学习处理多维特征输入-7

    pytorch 入门学习处理多维特征输入 处理多维特征输入 import torch import numpy as np import torchvision import numpy as np ...

  5. pytorch 入门学习使用逻辑斯蒂做二分类-6

    pytorch 入门学习使用逻辑斯蒂做二分类 使用pytorch实现逻辑斯蒂做二分类 import torch import torchvision import numpy as np import ...

  6. pytorch 入门学习 实现线性回归-5

    pytorch 入门学习实现线性回归 使用pytorch实现线性回归 import numpy as np import matplotlib.pyplot as plt import torch#p ...

  7. 深度学习入门-误差反向传播法(人工神经网络实现mnist数据集识别)

    文章目录 误差反向传播法 5.1 链式法则与计算图 5.2 计算图代码实践 5.3激活函数层的实现 5.4 简单矩阵求导 5.5 Affine 层的实现 5.6 softmax-with-loss层计 ...

  8. Pytorch(5)-梯度反向传播

    自动求梯度 1. 函数对自变量x求梯度--ax^2+b 2. 网络对参数w求梯度- loss(w,x) 3. 自动求梯度的底层支持--torch.autograd 3.1 Variable 3.1.1 ...

  9. 程序媛养成第0天--pytorch入门学习

    本篇基于<深度学习框架-pytorch入门与实践>陈云 有一起监督学习打卡的小伙伴请私信 2.2 pytorch入门第一步 2.2.1 Tensor # 分配矩阵空间但不初始化 #使用 [ ...

最新文章

  1. pyinstaller打包教程及错误RuntimeError: Unable to open ./shape_predictor_68_face_landmarks.dat
  2. java容量_Java集合类初始容量、加载因子、扩容增量
  3. Python的C/C++扩展
  4. 1.4 编程基础之逻辑表达式与条件分支 16 三角形判断
  5. 有道词典Linux版下载安装
  6. Word论文公式居中、编号右对齐方法
  7. js中数组定义Array
  8. php----显示中文乱码的问题
  9. 你真的掌握 LVS、Nginx 及 HAProxy 的工作原理吗?
  10. poj Ancient Cipher 古代密码
  11. Caused by: org.hibernate.HibernateException: unknown Oracle major version [0]
  12. 读书笔记 摘自:《硅谷钢铁侠:埃隆·马斯克的冒险人生》的笔记(作者: 【美】阿什利·万斯)
  13. 华三服务器管理口地址_不同型号服务器的默认管理IP及账号密码汇总
  14. 一阶电路实验报告心得_实验九实验报告(二)--一阶动态电路的响应测试
  15. 一. Scala安装与环境配置
  16. 7种炫酷HTML5 SVG液态水滴融合分解动画特效
  17. ffmpeg 转换flv压缩大小_ffmpeg 转换 mp4 成 flv
  18. 保卫农场(bfs)题解
  19. 计算机专业毕业设计致谢,计算机专业毕业论文致谢范文
  20. 元宇宙大热,DiDi message将成为未来世界的连接器

热门文章

  1. layui button按钮点击导致页面重新刷新的解决方案
  2. class path resource [logback.xml] cannot be resolved to URL because it does not exist 问题解决
  3. 在Ruby中,如何跳过.each循环中的循环,类似于‘continue‘[duplicate]
  4. 将Kinect的v2.0 Motion存储到BVH文件中
  5. win11应用商店怎么联网 Windows11应用商店无法联网的解决步骤
  6. JDBC的API与德鲁伊Druid连接池配置
  7. MTK之UART串口收发数据
  8. 洛谷——P2006 赵神牛的游戏
  9. python之str与bytes互转
  10. mfc之ListControl控件的使用