from mxnet import nd
from mxnet import autograd
import math
x=nd.array([[10,20],[1,2]])
x.attach_grad()#在ndarray里准备存储梯度
with autograd.record():c=nd.log(x)
#反向传播backward()
c.backward()
#f'(x)=1/x
z=x.grad
print(x)
print(z)

[[10. 20.]
[ 1. 2.]]
<NDArray 2x2 @cpu(0)>

[[0.1 0.05]
[1. 0.5 ]]
<NDArray 2x2 @cpu(0)>

from mxnet import nd
from mxnet import autograd
import math
x1=nd.array([[1,2],[3,4]])
x2=nd.array([[10,20],[30,40]])
x1.attach_grad()#在ndarray里准备存储梯度
x2.attach_grad()#在ndarray里准备存储梯度
def f(x): if x.sum()>20:y=3*x*xelse:y=nd.log(x)return y
with autograd.record():c1=f(x1)c2=f(x2)
#反向传播backward()
c1.backward()
c2.backward()
#f'(x)=1/x or f'(x)=3*2*x
z1=x1.grad
z2=x2.grad
print(x1)
print(z1)
print(x2)
print(z2)

[[1. 2.]
[3. 4.]]
<NDArray 2x2 @cpu(0)>

[[1. 0.5 ]
[0.33333334 0.25 ]]
<NDArray 2x2 @cpu(0)>

[[10. 20.]
[30. 40.]]
<NDArray 2x2 @cpu(0)>

[[ 60. 120.]
[180. 240.]]
<NDArray 2x2 @cpu(0)>

mxnet基础到提高(38)-自动梯度计算相关推荐

  1. NNDL 实验五 前馈神经网络(2)自动梯度计算 优化问题

    目录 4.3 自动梯度计算 1. 使用pytorch的预定义算子来重新实现二分类任务.(必做) 4.3.1 利用预定义算子重新实现前馈神经网络 4.3.2 完善Runner类 4.3.3 模型训练 4 ...

  2. 实验五 前馈神经网络(2)自动梯度计算 优化问题

    一.自动梯度计算和预定义算子 虽然我们能够通过模块化的方式比较好地对神经网络进行组装,但是每个模块的梯度计算过程仍然十分繁琐且容易出错.在深度学习框架中,已经封装了自动梯度计算的功能,我们只需要聚焦模 ...

  3. 神经网络与深度学习(五)前馈神经网络(2)自动梯度计算和优化问题

    注:本次使用的数据集依旧是前两章的Moon1000数据集  from nndl.dataset import make_moons [详细代码见 神经网络与深度学习(五)前馈神经网络(1)--二分类任 ...

  4. NNDL实验五 前馈神经网络(2)自动梯度计算 优化问题

    4.3 自动梯度计算 虽然我们能够通过模块化的方式比较好地对神经网络进行组装,但是每个模块的梯度计算过程仍然十分繁琐且容易出错.在深度学习框架中,已经封装了自动梯度计算的功能,我们只需要聚焦模型架构, ...

  5. mxnet基础到提高(15)--梯度与反向传播

    #!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Fri Aug 10 16:13:29 201 ...

  6. mxnet基础到提高(6)--梯度,反馈与标准化(归一化)

    1.attach_grad(grad_req='write', stype=None) 附加一个梯度缓存在NDArray上,这样,回退(反馈)能计算相应的梯度 参数: grad_req ({'writ ...

  7. mxnet基础到提高(36)-单层神经网络

    构造一个4个输出的单层网络, import mxnet.ndarray as nd from mxnet.gluon import nnlayer1=nn.Dense(4)#权重默认为平均分布的[-0 ...

  8. mxnet基础到提高(11)--循环

    mxnet.ndarray.contrib.foreach(body, data, init_states) 运行循环,在NDArrays在0维度上使用用户定义的计算 这个操作 这个操作符模拟了一个f ...

  9. mxnet基础到提高(5)-- 卷积神经网络基础(1)

    通过nn.Sequential构造LeNet ,MXNet将自动构造向前函数,按顺序执行添加的LeNet 卷积神经网络是一种特殊的多层神经网络.与几乎所有其他神经网络一样,它们都经过了反向传播算法的训 ...

最新文章

  1. 【tf.keras】tf.keras使用tensorflow中定义的optimizer
  2. maven修改运行环境配置
  3. [简单题]自定义取余(三种解法)C++实现
  4. python怎么改界面颜色_Python的matplotlib绘图如何修改背景颜色的实现
  5. 详解python的super()的作用和原理
  6. 嘉兴学院计算机专业最低录取分,嘉兴学院南湖学院计算机类专业2015年在广西理科高考录取最低分数线...
  7. linux-shell命令之cp(copy)【拷贝复制】
  8. 如何使一维数组一行一行的输出成二维数组的格式
  9. Unix整理笔记——安全性——里程碑M13
  10. 探讨 .NET 4 新增的 SortedSet 类
  11. [VNC] VNC Viewer 远程运行 ffplay 出现错误 GLXBadRenderRequest
  12. 【重构】SqlParameter的作用
  13. Fedora 9与Windows共享文件
  14. linux灯控软件下载,舞台灯光控制软件(MaizeDMX)
  15. 小甲鱼python课后题共多少讲_小甲鱼Python第九讲课后习题--010列表
  16. 一个程序员的成长之路(持续更新)
  17. AIMA 第三版 笔记
  18. Vue.js / Nuxt.js / uni-app - 移动端 H5 网页,在电脑 PC 上打开时居中显示(手机网页在电脑上打开后,简单粗暴防止 “界面样式“ 拉伸变形的解决方案)适用所有web项目
  19. CX8825 3.1A数码显示车充IC 适用于快充方案,2019年最新方案
  20. c语言花卉销售与管理系统,网上花卉销售和管理系统毕业设计论文.doc

热门文章

  1. Spark:如何替换sc.parallelize(List(item1,item2)).collect().foreach(row={})为并行?
  2. JDK、TOMCAT、Ant环境变量设置
  3. μC-/OS II(一) PC编译环境的搭建
  4. [HDU1394]Minimum Inversion Number
  5. C#开启线程的四种方式
  6. 解决 connect to host github.com port 22 operation timed out
  7. SharePoint 2013 APP 开发示例 (六)服务端跨域访问 Web Service (REST API)
  8. Asp.Net性能优化.
  9. [导入]二叉树(C#数据结构四)
  10. 解决在使用 Qt 编译项目时出现 “C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode格式以防止数据丢失“ 的警告