码迷,mamicode.com
首页 > 其他好文 > 详细

深度之眼PyTorch训练营第二期 ---3、计算图与动态图机制

时间:2019-10-16 09:40:50      阅读:276      评论:0      收藏:0      [点我收藏+]

标签:span   inf   图片   描述   backward   创建   nbsp   idt   记录   

一、计算图

1、计算图是用于描述运算的有向无环图。

  • 主要有两个元素:结点(Node)、边(edge)
    • 结点表示数据,如向量、矩阵、张量
    • 边表示运算,如加减乘除卷积等

  例子:用计算图表示 y = (x + w) * (w + 1)

  拆分:a = x + w  b = w + 1  --->   y = a * b

 

 2、计算图与梯度求导

技术图片

=b * 1 + a * 1

=b + a

=(w+1) + (x+w)

=2*w + x + 1
=2 * 1 + 2 + 1
=5

 技术图片

y到w所有路径
3、叶子结点:用户创建的结点称为叶子结点,如X与W
  • is_leaf:指示张量是否为叶子结点
  • retain_grad():保存相应张量的梯度
 
  • grad_fn:记录创建该张量时所用到的方法(函数) ---  反向传播时常用
结果:y.grad_fn = <MulBackward0>
  a.grad_fn = <AddBackward0>
  b.grad_fn = <AddBackward0>
 
二、动态图 Dynamic Graph
  • 动态图:运算与搭建同时进行   ---PyTorch  灵活,易调节

技术图片

  • 静态图:先搭建图,后运算      ---tensorflow   高效,不灵活

技术图片

 

深度之眼PyTorch训练营第二期 ---3、计算图与动态图机制

标签:span   inf   图片   描述   backward   创建   nbsp   idt   记录   

原文地址:https://www.cnblogs.com/cola-1998/p/11683243.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!