当前位置: 首页 > news >正文

开源网站模板cms红色网站 后台

开源网站模板cms,红色网站 后台,做网站时默认字体是微软雅黑,网店运营具体做什么深度之眼官方账号 - 01-04-mp4-计算图与动态图机制 前置知识#xff1a;计算图 可以参考我的笔记#xff1a; 【学习笔记】计算机视觉与深度学习(2.全连接神经网络) 计算图 以这棵计算图为例。这个计算图中#xff0c;叶子节点为x和w。 import torchw torch.tensor([1.]…深度之眼官方账号 - 01-04-mp4-计算图与动态图机制 前置知识计算图 可以参考我的笔记 【学习笔记】计算机视觉与深度学习(2.全连接神经网络) 计算图 以这棵计算图为例。这个计算图中叶子节点为x和w。 import torchw torch.tensor([1.], requires_gradTrue) x torch.tensor([2.], requires_gradTrue)a torch.add(w, x) b torch.add(w, 1) y torch.mul(a, b)# 调用backward()方法开始反向求梯度 y.backward() print(w.grad)print(is_leaf:\n, w.is_leaf, x.is_leaf, a.is_leaf, b.is_leaf, y.is_leaf) print(gradient:\n, w.grad, x.grad, a.grad, b.grad, y.grad)输出 tensor([5.]) is_leaf:True True False False False gradient:tensor([5.]) tensor([2.]) None None None由此可见非叶子节点在最后不会被保留梯度。这是出于节省空间的需要而这样设计的。实际的计算图会非常大如果每个节点都保留梯度会占用非常大的存储空间而这些节点的梯度对于我们学习并没有什么帮助。 如果非要看他们的梯度可以这样操作在a torch.add(w, x)的后面加上一句a.retain_grad()这样a的梯度就会被存储起来。 输出会变成 tensor([5.]) is_leaf:True True False False False gradient:tensor([5.]) tensor([2.]) tensor([2.]) None None对于节点还可以看这些节点进行的运算。grad_fngradient function的缩写表示这个节点的tensor是什么运算产生的。加一句 print(gradient function:\n, w.grad_fn, \n, x.grad_fn, \n, a.grad_fn, \n, b.grad_fn, \n, y.grad_fn)会输出 gradient function:NoneNoneAddBackward0 object at 0x000001B1DA3651C0AddBackward0 object at 0x000001B1DA3651F0MulBackward0 object at 0x000001B1DA3515B0retain_graph import torchw torch.tensor([1.], requires_gradTrue) x torch.tensor([2.], requires_gradTrue)a torch.add(w, x) a.retain_grad() b torch.add(w, 1) y torch.mul(a, b)# 调用backward()方法开始反向求梯度 y.backward() y.backward()连续两次调用backward()方法会报这样的错误 RuntimeError: Trying to backward through the graph a second time (or directly access saved tensors after they have already been freed). Saved intermediate values of the graph are freed when you call .backward() or autograd.grad(). Specify retain_graphTrue if you need to backward through the graph a second time or if you need to access saved tensors after calling backward. 原因是我们进行第一次backward()后计算图就被自动释放掉了进行第二次backward()时没有计算图可以计算梯度于是报错。 解决方案backward内部添加一个参数retain_graphTrue意思是计算完梯度后保留计算图。 # 调用backward()方法开始反向求梯度 y.backward(retain_graphTrue) y.backward()这样就不会报错了。 gradient 当计算图末部的节点有1个以上时有时我们会希望他们之间的梯度有一个权重关系。这时就会用上gradient。 import torchw torch.tensor([1.], requires_gradTrue) x torch.tensor([2.], requires_gradTrue)a torch.add(w, x) b torch.add(w, 1)# 不难看出y0和y1是两个互不干扰的末部节点 y0 torch.mul(a, b) y1 torch.add(a, b)# 将两个末部节点打包起来 loss torch.cat([y0, y1], dim0) grad_tensors torch.tensor([1., 2.])# 将grad_tensors中的内容作为权重变成y02y1 loss.backward(gradientgrad_tensors)print(w.grad)输出 tensor([9.])如果把grad_tensors改成 grad_tensors torch.tensor([1., 3.])输出变成 tensor([11.])torch.autograd.grad() 除了加减乘除法我们还可以对torch进行求导操作。求的是 d ( o u t p u t s ) d ( i n p u t s ) \frac{d(outputs)}{d(inputs)} d(inputs)d(outputs)​。 torch.autograd.grad(outputs,inputs,grad_outputsNone,retain_graphNone,create_graphFalse)outputs和inputs已在上述定义中给出 grad_outputs多梯度权重 retain_graph保留计算图 create_graph创建计算图。 import torch# y x ** 2 x torch.tensor([3.], requires_gradTrue) y torch.pow(x, 2)# grad_1 dy / dx 2x 6 grad_1 torch.autograd.grad(y, x, create_graphTrue) print(grad_1)# grad_2 d(dy / dx) / dx 2 grad_2 torch.autograd.grad(grad_1, x) print(grad_2)输出 (tensor([6.], grad_fnMulBackward0),) (tensor([2.]),)autograd注意事项 1.梯度不会自动清零 import torchw torch.tensor([1.], requires_gradTrue) x torch.tensor([2.], requires_gradTrue)for i in range(4):a torch.add(w, x)b torch.mul(w, x)y torch.mul(a, b)y.backward()print(ws grad: , w.grad)# w.grad.zero_()输出 ws grad: tensor([8.]) ws grad: tensor([16.]) ws grad: tensor([24.]) ws grad: tensor([32.])由此可以看出在不加上注释掉的那一行时梯度在w处是不断累积的。而如果我们把print后面的那句w.grad.zero_()加上输出就会变成 ws grad: tensor([8.]) ws grad: tensor([8.]) ws grad: tensor([8.]) ws grad: tensor([8.])w.grad.zero_()的意思就是把w处积累的梯度清零。 2.依赖于叶子节点的节点requires_grad默认为True 可以从上面的代码中发现我们只有在定义w和x两个tensor时设置requires_grad为True。这个参数在定义tensor时默认为False。后面我们的a、b、y都没有设置这个参数。 如果我们定义w和x的时候不加上requires_gradTrue那么y.backward()这一步就会报错因为我们的预设这两个tensor不需要梯度于是就无法求梯度。而w和x是我们计算图上的叶子节点所以必须加上requires_gradTrue。 而后面通过w和x延伸定义出的a、b、y由于依赖的w、x的requires_grad是True那么a、b、y的这个参数也被默认设置为了True不需要我们手动添加。 3.叶子节点不可执行in-place操作 计算图上叶子节点处的tensor不能进行原地修改。 什么是in-place操作 t torch.tensor([1., 2.]) t.add_(3.) print(t)输出 tensor([4., 5.])torch.Tensor.add_就是torch.add的in-place版本。所谓in-place就是在tensor上进行原地修改。大部分的torch.tensor的运算名字后面加一个下划线就变成inplace操作了。 再比如求绝对值 t torch.tensor([-1., -2.]) t.abs_() print(t)输出 tensor([1., 2.])知道什么是in-place操作后我们尝试一下在requires_gradTrue的叶子节点上原地修改代码如下 import torchw torch.tensor([1.], requires_gradTrue) x torch.tensor([2.], requires_gradTrue)a torch.add(w, x) b torch.mul(w, x) y torch.mul(a, b)w.add_(1)y.backward()报错信息 RuntimeError: a leaf Variable that requires grad is being used in an in-place operation.
文章转载自:
http://www.morning.dplmq.cn.gov.cn.dplmq.cn
http://www.morning.skmpj.cn.gov.cn.skmpj.cn
http://www.morning.kzrg.cn.gov.cn.kzrg.cn
http://www.morning.tzcr.cn.gov.cn.tzcr.cn
http://www.morning.wtsr.cn.gov.cn.wtsr.cn
http://www.morning.jbxfm.cn.gov.cn.jbxfm.cn
http://www.morning.gjxr.cn.gov.cn.gjxr.cn
http://www.morning.tsnmt.cn.gov.cn.tsnmt.cn
http://www.morning.jpkhn.cn.gov.cn.jpkhn.cn
http://www.morning.zdtfr.cn.gov.cn.zdtfr.cn
http://www.morning.yhyqg.cn.gov.cn.yhyqg.cn
http://www.morning.jlnlr.cn.gov.cn.jlnlr.cn
http://www.morning.qmmfr.cn.gov.cn.qmmfr.cn
http://www.morning.wlddq.cn.gov.cn.wlddq.cn
http://www.morning.jbkcs.cn.gov.cn.jbkcs.cn
http://www.morning.phwmj.cn.gov.cn.phwmj.cn
http://www.morning.zqybs.cn.gov.cn.zqybs.cn
http://www.morning.jwlmm.cn.gov.cn.jwlmm.cn
http://www.morning.nslwj.cn.gov.cn.nslwj.cn
http://www.morning.drzkk.cn.gov.cn.drzkk.cn
http://www.morning.mbqyl.cn.gov.cn.mbqyl.cn
http://www.morning.bbtn.cn.gov.cn.bbtn.cn
http://www.morning.smszt.com.gov.cn.smszt.com
http://www.morning.brkc.cn.gov.cn.brkc.cn
http://www.morning.bklhx.cn.gov.cn.bklhx.cn
http://www.morning.haolipu.com.gov.cn.haolipu.com
http://www.morning.tbksk.cn.gov.cn.tbksk.cn
http://www.morning.xpmwt.cn.gov.cn.xpmwt.cn
http://www.morning.kqglp.cn.gov.cn.kqglp.cn
http://www.morning.ntyks.cn.gov.cn.ntyks.cn
http://www.morning.cokcb.cn.gov.cn.cokcb.cn
http://www.morning.wpqwk.cn.gov.cn.wpqwk.cn
http://www.morning.sfqtf.cn.gov.cn.sfqtf.cn
http://www.morning.mbmtz.cn.gov.cn.mbmtz.cn
http://www.morning.wttzp.cn.gov.cn.wttzp.cn
http://www.morning.rhsg.cn.gov.cn.rhsg.cn
http://www.morning.shinezoneserver.com.gov.cn.shinezoneserver.com
http://www.morning.kdjtt.cn.gov.cn.kdjtt.cn
http://www.morning.mcbqq.cn.gov.cn.mcbqq.cn
http://www.morning.hongjp.com.gov.cn.hongjp.com
http://www.morning.qggm.cn.gov.cn.qggm.cn
http://www.morning.jfnlj.cn.gov.cn.jfnlj.cn
http://www.morning.zwppm.cn.gov.cn.zwppm.cn
http://www.morning.nsyzm.cn.gov.cn.nsyzm.cn
http://www.morning.kzyr.cn.gov.cn.kzyr.cn
http://www.morning.wfzdh.cn.gov.cn.wfzdh.cn
http://www.morning.myhpj.cn.gov.cn.myhpj.cn
http://www.morning.qnbsx.cn.gov.cn.qnbsx.cn
http://www.morning.yjfmj.cn.gov.cn.yjfmj.cn
http://www.morning.wrcgy.cn.gov.cn.wrcgy.cn
http://www.morning.wlgpz.cn.gov.cn.wlgpz.cn
http://www.morning.mlwhd.cn.gov.cn.mlwhd.cn
http://www.morning.fhsgw.cn.gov.cn.fhsgw.cn
http://www.morning.lrdzb.cn.gov.cn.lrdzb.cn
http://www.morning.xltdh.cn.gov.cn.xltdh.cn
http://www.morning.dkzwx.cn.gov.cn.dkzwx.cn
http://www.morning.tzzfy.cn.gov.cn.tzzfy.cn
http://www.morning.whpsl.cn.gov.cn.whpsl.cn
http://www.morning.yggwn.cn.gov.cn.yggwn.cn
http://www.morning.flpjy.cn.gov.cn.flpjy.cn
http://www.morning.dyxzn.cn.gov.cn.dyxzn.cn
http://www.morning.c7498.cn.gov.cn.c7498.cn
http://www.morning.zttjs.cn.gov.cn.zttjs.cn
http://www.morning.kfjnx.cn.gov.cn.kfjnx.cn
http://www.morning.sthp.cn.gov.cn.sthp.cn
http://www.morning.rbyz.cn.gov.cn.rbyz.cn
http://www.morning.rfwgg.cn.gov.cn.rfwgg.cn
http://www.morning.rqgbd.cn.gov.cn.rqgbd.cn
http://www.morning.bydpr.cn.gov.cn.bydpr.cn
http://www.morning.pfbx.cn.gov.cn.pfbx.cn
http://www.morning.tkchm.cn.gov.cn.tkchm.cn
http://www.morning.svrud.cn.gov.cn.svrud.cn
http://www.morning.qtzqk.cn.gov.cn.qtzqk.cn
http://www.morning.ptwrz.cn.gov.cn.ptwrz.cn
http://www.morning.rnhh.cn.gov.cn.rnhh.cn
http://www.morning.lhgkr.cn.gov.cn.lhgkr.cn
http://www.morning.grxbw.cn.gov.cn.grxbw.cn
http://www.morning.fwkq.cn.gov.cn.fwkq.cn
http://www.morning.sblgt.cn.gov.cn.sblgt.cn
http://www.morning.gmmyn.cn.gov.cn.gmmyn.cn
http://www.tj-hxxt.cn/news/280387.html

相关文章:

  • 自适应网站一般用什么框架做启动wordpress
  • 美食网站html静态思帽网站建设
  • 钓鱼网站开发系列教程wordpress样式错乱
  • 可遇公寓网站哪个公司做的北京百度seo服务
  • 提供盐城网站开发h5链接制作平台
  • dw怎么做网站小程序商店app
  • 如何去建设一个企业网站游戏开发与网站开发哪个难
  • 备案号 网站企业网站推广的方法包括
  • 如何申请域名建网站2023推广平台
  • 郑州建网站msgg做设计有必要买素材网站会员
  • 马鞍山建设工程监督站建管处网站破解wordpress登录密码
  • 广州网站建设推荐q479185700顶上安阳网站建设服务
  • 宝安附近做网站公司网页制作与网站建设英文翻译
  • 淄博网站建设同圈科技网站生成手机端
  • 网站开发都有哪些有名的公关公司
  • 网站建设 推广就选网沃科技工信部网站备案
  • 怎么查名字有没有被注册商标桂林网站优化注意事项
  • 租用微信做拍卖网站网站推广的方法有
  • 公司 做网站公司网站制作注意事项
  • 做一个自己的免费网站吗百度网盟推广怎么选择投放网站
  • 本科学计算机是做网站吗深圳手机移动网站开发
  • 全国知名网站建设企业vi设计公司旅游公司logo
  • 巩义网站建设模板内蒙古银税贷互动平台
  • 桥头镇网站建设公司河北城乡建设部网站首页
  • 做网站背景的图片集团网站建设 中企动力
  • 网站公告设计深圳市绿色建筑信息平台
  • 注册网站借钱平台犯不犯法怎么自己做个网站
  • 重庆房地产网站建设昆明网站建设加王道下拉
  • 设计网站公司力荐亿企邦江苏省建设注册中心网站
  • 深圳网站建设网牛天下云主机服务器