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

好网站建设公司有哪些小程序开发公司哪里强

好网站建设公司有哪些,小程序开发公司哪里强,界面设计是做什么的,姑苏区住房建设局网站上一篇关于反向传播的代码仅支持单变量的梯度计算#xff0c;下面我们将扩展代码使其支持多个输入/输出。增加了对多输入函数#xff08;如 Add#xff09;#xff0c;以实现的计算。 1.关于前向传播可变长参数的改进-修改Function类 修改方法#xff1a; Function用于对…上一篇关于反向传播的代码仅支持单变量的梯度计算下面我们将扩展代码使其支持多个输入/输出。增加了对多输入函数如 Add以实现的计算。 1.关于前向传播可变长参数的改进-修改Function类 修改方法 Function用于对输入输出做规定帮助实现右图的效果接受inputs 返回outputs 2.关于反向传播可变长参数的改进 修改函数类的反向传播 修改Variable类的反向传播 改进前 获取y.creator,获取输入creator.inputs根据y.grads计算x.grads:creator.backward(y.grads) 2.3两步的解包和打包操作 最后修改square方法 完整代码 import numpy as npclass Variable:def __init__(self, data):if data is not None:if not isinstance(data, np.ndarray):raise TypeError({} is not supported.format(type(data)))self.data dataself.grad Noneself.creator Nonedef set_creator(self, func):self.creator funcdef backward(self):if self.grad is None:self.grad np.ones_like(self.data)funcs [self.creator]while funcs:f funcs.pop()gys [output.grad for output in f.outputs] # 获取所有输出的梯度gxs f.backward(*gys) # 调用 backward 方法if not isinstance(gxs, tuple): # 确保 gxs 是元组gxs (gxs,)for x, gx in zip(f.inputs, gxs): # 为每个输入分配梯度x.grad gxif x.creator is not None:funcs.append(x.creator)class Function:def __call__(self, *inputs):xs [x.data for x in inputs] # 提取输入数据ys self.forward(*xs) # 前向传播解包if not isinstance(ys, tuple): # 确保 ys 是元组ys (ys,)outputs [Variable(as_array(y)) for y in ys] # 创建输出变量for output in outputs:output.set_creator(self)self.inputs inputs # 保存输入self.outputs outputs # 保存输出return outputs if len(outputs) 1 else outputs[0] # 根据输出数量返回def forward(self, *xs):raise NotImplementedError()def backward(self, *gys):raise NotImplementedError()# 实现具体的函数类 class Square(Function):def forward(self, x):return x ** 2def backward(self, gy):x self.inputs[0].data # 从 inputs 中获取数据gx 2 * x * gyreturn gxclass Add(Function):def forward(self, x0, x1):y x0 x1return ydef backward(self, gy):return gy, gy # 对两个输入返回相同的梯度# 定义便捷函数 def square(x):return Square()(x)def add(x0, x1):return Add()(x0, x1)# 定义 as_array 函数 def as_array(x):if np.isscalar(x):return np.array(x)return x# 测试代码 x Variable(np.array(2.0)) y Variable(np.array(3.0)) z add(square(x), square(y)) z.backward() print(z.data) # 输出结果: 13.0 (2^2 3^2 4 9 13) print(x.grad) # 输出梯度: 4.0 (dz/dx 2 * 2 4) print(y.grad) # 输出梯度: 6.0 (dz/dy 2 * 3 6) 运行结果
http://www.hkea.cn/news/14448986/

相关文章:

  • 怎么用网站做转换服务器ui设计需要学哪些内容
  • 无为县城乡建设局网站首页化妆品wordpress主题
  • 龙岩网站建设较好的公司搜索引擎优化的完整过程
  • 什么是交互式网站开发财税公司网站开发
  • 做网站一年费用做网页的网站
  • 广东省城乡建设厅投诉网站免费设计标志
  • 贵州能源网站 中企动力建设网站主机一个g
  • 全世界做会展介绍的网站排名云谷系统网站开发
  • 昆明网站建设一条龙服务做食品那些网站好
  • 网站建设组织机构工业和信息化部关于开展加强网站备案管理专项行动的通知
  • 建站系统cms是什么wordpress 电影网站
  • 效果图网站推荐大全面包砖株洲营销网站建设
  • 建站网站模板下载坚持以高质量发展为首要任务一
  • 网站关键词在哪设置设计网站排行
  • 网站优化宝外贸公司网站如何免费推广
  • 亳州网站建设推广旅游网页设计模板下载
  • 毕设帮做网站网站做链接代码
  • 备案怎么关闭网站吗网站开发项目费用预算
  • 天津营销网站建设联系方式佛山 做网站公司
  • 模版网站如何建站专业网站建设包括哪些
  • 网站后台管理系统的重要技术指标网络营销案例分析题目
  • 网站蓝色和红色搭配三网一体网站建设
  • 食品购物网站建设wordpress前后台域名分离
  • wordpress站点费用wordpress显示前3张图片
  • 上饶市建设局培训网站招聘网站官网
  • 计算机网站开发面试问题及答案西安企业建站排名
  • 颍泉网站建设指数计算器
  • 网站权重不够高 导致做网站的图片传进去很模糊
  • 织梦网站seo建站网址平台
  • 网站建设 网页开发网站收录时有时没有