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

腾讯云 门户网站建设自己做外贸开通什么网站

腾讯云 门户网站建设,自己做外贸开通什么网站,网站建设验收报告模板,wordpress 邮箱设置目录 回归简单模型的梯度计算 反向传播计算图链式求导链式法则定理#xff1a; Forward 前馈计算反向传播Back Propagation例子线性模型的计算图计算前馈过程反向传播过程#xff08;逆向求导#xff09; 练习 Pytorch中的前馈过程和反向传播过程Tensor代码小结 回归 简单模… 目录 回归简单模型的梯度计算 反向传播计算图链式求导链式法则定理 Forward 前馈计算反向传播Back Propagation例子线性模型的计算图计算前馈过程反向传播过程逆向求导 练习 Pytorch中的前馈过程和反向传播过程Tensor代码小结 回归 简单模型的梯度计算 最简单的线性模型可以简化为ywx,x是输入w是参数是模型需要计算出来的y是预测值*可以看成网络中的计算。 其实这就可以是一个简单的神经元模型。w需要不断更新计算损失函数loss对w的导数 那么对于复杂的神经网络该怎么样进行梯度计算进行参数的更新呢? 分析假设输入x1~x5经过多层神经元最后得到y1-y5。每个神经元都有一个权重w需要计算如何计算损失函数对每一个输入的微分呢 如果按照之前的梯度下降根据链式求导法则那么需要计算的微分公式非常长计算非常复杂。 那么有没有一种方式能够比较方便的计算这种复杂的神经网络的梯度呢 反向传播 反向传播 计算图 一个神经元输入X和权重W先进行矩阵乘法再进行矩阵加法。所有输入、输出、参数都是向量或者矩阵 图中绿色部分表示运算 MM矩阵乘法ADD加法。 两种运算的求导方法不一样哟 对这两层神经元计算公式进行展开我们会发现不管有多少层神经元最终都可以表示成一个形式 W X B WXB WXB。这个计算式是可以展开的这样计算量是完全没有变化的 于是我们可以在每层神经元之后加一个非线性激活函数比如说Sigmoid函数这样函数就没法再展开了。 链式求导 链式法则定理 假如 y f (u)是一个u的可微函数u g (x)是一个x 的可微函数则 y f (g(x)) 是一个x 的可微函数并且 即y 对x 的导数等于y 对u 的导数乘以u 对x 的导数。 或者写成等价形式 Forward 前馈计算 Forward 前馈计算就是从输入x一步步往后计算 Z f ( x , w ) Zf(x,w) Zf(x,w)得到最后Loss的过程。 在这个过程中能够很容易计算出Z对x、w的偏导数。 求得Loss以后就可以很容易得到Loss对Z偏的导数 反向传播Back Propagation 然后就可以反向利用链式求导法则计算Loss对x、w的偏导数我们最终要求的结果这就是更新阐述w所需要的梯度这就是反向传播 其实这个Back Propagation 过程就算一个逆向的Forward过程。 例子 假设 ∙ , 2, 3 前馈过如下一层层计算最后可以得到Z然后计算出Loss。 假设Loss对Z的偏导数为5可以根据损失函数计算出来反向传播过程计算如下 反向传播的目的是进行梯度计算即计算Loss对w的偏微分 线性模型的计算图计算 前馈过程 已知x1y2设置w的初始值为1. 则y_hat1,y_hat-y1,loss1 则可以求出y_hat 对 w的偏导数x1ry_hat-y,求出r对y_hat的偏导数1求出loss对r的偏导数2r-2 反向传播过程逆向求导 已知loss对r的偏导数-2 、r对y_hat偏导数1、y_hat对w偏导数1 求得loss对w的偏导数根据链式求导法则相乘就可以得到啦 练习 假设 ∙ , 2, 1 请根据上述计算图的过程计算出梯度loss对w的偏微分 假设 ∗ , 1, 12 请根据上述计算图的过程计算出梯度loss对w、b的偏微分 丑丑的计算过程 Pytorch中的前馈过程和反向传播过程 Tensor Tensor张量可以是标量、向量、矩阵、多维向量… 包含两个属性 data:存储参数w数据grad:存储梯度loss对w的偏导数 代码 import torch import matplotlib.pyplot as plt x_data [1.0, 2.0, 3.0] y_data [2.0, 4.0, 6.0]# 创建张量初始化w w torch.Tensor([1.0]) # w的初值为1.0 w.requires_grad True # 需要计算梯度#forward构建计算图的过程不是单单的进行一个简单的函数运算就完了 def forward(x):return x*w # w是一个Tensor,x*w强制转化为Tensordef loss(x, y):y_pred forward(x)return (y_pred - y)**2print(predict (before training), 4, forward(4).item())epoch_list [] loss_list []for epoch in range(100):for x, y in zip(x_data, y_data):l loss(x,y) # forward计算lossl.backward() # backwardcompute grad for Tensor whose requires_grad set to True#backward:将w梯度存起来后释放计算图因此每一层的计算图可能不一样所以每次backword后释放计算图准备下一次计算。# Pytorch的核心竞争力print(\tgrad:, x, y, w.grad.item())#w.grad.item():将梯度直接取出来作为一个标量w.data w.data - 0.01 * w.grad.data # 权重更新不能直接使用tensor。注意grad也是一个tensor因此获取梯度需要w.grad.data w.grad.data.zero_() # 梯度清零print(progress:, epoch, l.item()) # 取出loss使用l.item不要直接使用ll是tensor会构建计算图epoch_list.append(epoch)loss_list.append(l.item())print(predict (after training), 4, forward(4).item()) plt.plot(epoch_list, loss_list) plt.ylabel(loss) plt.xlabel(epoch) plt.show() plt.savefig(picture/Loss1.png) 小结 反向传播 Forward构建计算图计算lossBackward计算梯度更新梯度梯度清零
http://www.zqtcl.cn/news/913674/

相关文章:

  • 做vr效果图的网站做小程序的公司有哪些比较好
  • 物流建设网站总结制作壁纸的软件
  • 自己电脑做主机怎么做网站培训公司排名
  • 网站seo优化排名qq空间wordpress搬家
  • 做二手元器件那个网站查价格元气森林网络营销策略分析
  • 优质网站建设是哪家17网站一起做网店不发货
  • 建设企业网银如何对账seo优化推广工程师
  • 广州制作外贸网站小说网站制作公司
  • 东莞南城网站建设价格注册深圳公司有什么好处
  • 做网站图片大小建个人网站要多少钱
  • 北京免费建网站seo网站关键词
  • 南宁网站制作公司dede网站建站教程
  • 辽宁省建设工程招标协会网站自建网站主题及策划
  • 石材做网站google建网站
  • 装配式建筑信息平台无忧seo博客
  • 做淘客网站用备案网络推广预算方案
  • 网站建设需不需要招标好网站欣赏
  • 怎样创建网站的代码此网站域名即将过期
  • 网页转向网站jquery图片效果网站
  • 山东定制网页建站wordpress是是什么技术
  • 无锡免费网站制作手游网页版
  • 东莞 网站建设 定制水寻找常州微信网站建设
  • 在门户网站做推广网站开发需要20万
  • 网站做电商销售需要注册吗上海的公司地址
  • 给网站做选题计算机网络技术电商网站建设与运营方向
  • 网站如何做熊掌号并绑定wordpress pdf
  • wordpress页面构建器中文文山seo公司
  • 凡科免费做网站蜂箱尺寸与制作图片
  • 完全不收费的聊天软件班级优化大师下载安装app
  • 合肥网站改版360免费建站永久免费