mxnet基础到提高(38)-自动梯度计算
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)-自动梯度计算相关推荐
- NNDL 实验五 前馈神经网络(2)自动梯度计算 优化问题
目录 4.3 自动梯度计算 1. 使用pytorch的预定义算子来重新实现二分类任务.(必做) 4.3.1 利用预定义算子重新实现前馈神经网络 4.3.2 完善Runner类 4.3.3 模型训练 4 ...
- 实验五 前馈神经网络(2)自动梯度计算 优化问题
一.自动梯度计算和预定义算子 虽然我们能够通过模块化的方式比较好地对神经网络进行组装,但是每个模块的梯度计算过程仍然十分繁琐且容易出错.在深度学习框架中,已经封装了自动梯度计算的功能,我们只需要聚焦模 ...
- 神经网络与深度学习(五)前馈神经网络(2)自动梯度计算和优化问题
注:本次使用的数据集依旧是前两章的Moon1000数据集 from nndl.dataset import make_moons [详细代码见 神经网络与深度学习(五)前馈神经网络(1)--二分类任 ...
- NNDL实验五 前馈神经网络(2)自动梯度计算 优化问题
4.3 自动梯度计算 虽然我们能够通过模块化的方式比较好地对神经网络进行组装,但是每个模块的梯度计算过程仍然十分繁琐且容易出错.在深度学习框架中,已经封装了自动梯度计算的功能,我们只需要聚焦模型架构, ...
- mxnet基础到提高(15)--梯度与反向传播
#!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Fri Aug 10 16:13:29 201 ...
- mxnet基础到提高(6)--梯度,反馈与标准化(归一化)
1.attach_grad(grad_req='write', stype=None) 附加一个梯度缓存在NDArray上,这样,回退(反馈)能计算相应的梯度 参数: grad_req ({'writ ...
- mxnet基础到提高(36)-单层神经网络
构造一个4个输出的单层网络, import mxnet.ndarray as nd from mxnet.gluon import nnlayer1=nn.Dense(4)#权重默认为平均分布的[-0 ...
- mxnet基础到提高(11)--循环
mxnet.ndarray.contrib.foreach(body, data, init_states) 运行循环,在NDArrays在0维度上使用用户定义的计算 这个操作 这个操作符模拟了一个f ...
- mxnet基础到提高(5)-- 卷积神经网络基础(1)
通过nn.Sequential构造LeNet ,MXNet将自动构造向前函数,按顺序执行添加的LeNet 卷积神经网络是一种特殊的多层神经网络.与几乎所有其他神经网络一样,它们都经过了反向传播算法的训 ...
最新文章
- 【tf.keras】tf.keras使用tensorflow中定义的optimizer
- maven修改运行环境配置
- [简单题]自定义取余(三种解法)C++实现
- python怎么改界面颜色_Python的matplotlib绘图如何修改背景颜色的实现
- 详解python的super()的作用和原理
- 嘉兴学院计算机专业最低录取分,嘉兴学院南湖学院计算机类专业2015年在广西理科高考录取最低分数线...
- linux-shell命令之cp(copy)【拷贝复制】
- 如何使一维数组一行一行的输出成二维数组的格式
- Unix整理笔记——安全性——里程碑M13
- 探讨 .NET 4 新增的 SortedSet 类
- [VNC] VNC Viewer 远程运行 ffplay 出现错误 GLXBadRenderRequest
- 【重构】SqlParameter的作用
- Fedora 9与Windows共享文件
- linux灯控软件下载,舞台灯光控制软件(MaizeDMX)
- 小甲鱼python课后题共多少讲_小甲鱼Python第九讲课后习题--010列表
- 一个程序员的成长之路(持续更新)
- AIMA 第三版 笔记
- Vue.js / Nuxt.js / uni-app - 移动端 H5 网页,在电脑 PC 上打开时居中显示(手机网页在电脑上打开后,简单粗暴防止 “界面样式“ 拉伸变形的解决方案)适用所有web项目
- CX8825 3.1A数码显示车充IC 适用于快充方案,2019年最新方案
- c语言花卉销售与管理系统,网上花卉销售和管理系统毕业设计论文.doc
热门文章
- Spark:如何替换sc.parallelize(List(item1,item2)).collect().foreach(row={})为并行?
- JDK、TOMCAT、Ant环境变量设置
- μC-/OS II(一) PC编译环境的搭建
- [HDU1394]Minimum Inversion Number
- C#开启线程的四种方式
- 解决 connect to host github.com port 22 operation timed out
- SharePoint 2013 APP 开发示例 (六)服务端跨域访问 Web Service (REST API)
- Asp.Net性能优化.
- [导入]二叉树(C#数据结构四)
- 解决在使用 Qt 编译项目时出现 “C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode格式以防止数据丢失“ 的警告