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

本地怎么做网站服务器吗哈尔滨城市建设局网站

本地怎么做网站服务器吗,哈尔滨城市建设局网站,如何网上开店卖东西,黄陂机械加工网深度学习双雄对决:PyTorch vs TensorFlow 自定义层大比拼 目录 深度学习双雄对决:PyTorch vs TensorFlow 自定义层大比拼一、TensorFlow 实现 DNN1. 核心逻辑 二、PyTorch 实现自定义层1. 核心逻辑 三、关键差异对比四、总结 一、TensorFlow 实现 DNN 1…

深度学习双雄对决:PyTorch vs TensorFlow 自定义层大比拼



一、TensorFlow 实现 DNN

1. 核心逻辑

  • 直接继承 tf.keras.layers.Layer:无需中间类,直接在 build 中定义多层结构。
  • 动态参数管理:通过 add_weight 注册每一层的权重和偏置。
import tensorflow as tfclass CustomDNNLayer(tf.keras.layers.Layer):def __init__(self, hidden_units, output_dim, **kwargs):super(CustomDNNLayer, self).__init__(**kwargs)self.hidden_units = hidden_unitsself.output_dim = output_dimdef build(self, input_shape):# 输入层到第一个隐藏层self.w1 = self.add_weight(name='w1', shape=(input_shape[-1], self.hidden_units[0]),initializer='random_normal',trainable=True)self.b1 = self.add_weight(name='b1',shape=(self.hidden_units[0],),initializer='zeros',trainable=True)# 隐藏层之间self.ws = []self.bs = []for i in range(len(self.hidden_units) - 1):self.ws.append(self.add_weight(name=f'w{i+2}', shape=(self.hidden_units[i], self.hidden_units[i+1]),initializer='random_normal',trainable=True))self.bs.append(self.add_weight(name=f'b{i+2}',shape=(self.hidden_units[i+1],),initializer='zeros',trainable=True))# 输出层self.wo = self.add_weight(name='wo',shape=(self.hidden_units[-1], self.output_dim),initializer='random_normal',trainable=True)self.bo = self.add_weight(name='bo',shape=(self.output_dim,),initializer='zeros',trainable=True)def call(self, inputs):x = tf.matmul(inputs, self.w1) + self.b1x = tf.nn.relu(x)for i in range(len(self.hidden_units) - 1):x = tf.matmul(x, self.ws[i]) + self.bs[i]x = tf.nn.relu(x)x = tf.matmul(x, self.wo) + self.boreturn x

二、PyTorch 实现自定义层

1. 核心逻辑

  • 继承 nn.Module:自定义层本质是模块的组合。
  • 使用 nn.ModuleList:动态管理多个 nn.Linear 层。
import torch
import torch.nn as nnclass CustomPyTorchDNN(nn.Module):def __init__(self, input_size, hidden_sizes, output_size):super(CustomPyTorchDNN, self).__init__()self.hidden_layers = nn.ModuleList()prev_size = input_size# 动态添加隐藏层for hidden_size in hidden_sizes:self.hidden_layers.append(nn.Linear(prev_size, hidden_size))prev_size = hidden_size# 输出层self.output_layer = nn.Linear(prev_size, output_size)def forward(self, x):for layer in self.hidden_layers:x = torch.relu(layer(x))x = self.output_layer(x)return x

三、关键差异对比

维度TensorFlow 实现PyTorch 实现
类继承方式直接继承 tf.keras.layers.Layer,无中间类。继承 nn.Module,通过 nn.ModuleList 管理子模块。
参数管理build 中显式注册每层权重(add_weight)。自动注册所有 nn.Linear 参数(无需手动操作)。
前向传播定义通过 call 方法逐层计算,需手动处理每层的权重和激活函数。通过 forward 方法逐层调用 nn.Linear,激活函数手动插入。
灵活性更底层,适合完全自定义逻辑(如非线性变换、特殊参数初始化)。更简洁,适合快速构建标准网络结构。
训练流程需手动实现训练循环(反向传播 + 优化器)。需手动实现训练循环(与 TensorFlow 类似)。

四、总结

  • TensorFlow:通过直接继承 tf.keras.layers.Layer,可实现完全自定义的 DNN,但需手动管理多层权重和激活逻辑,适合对模型细节有严格控制需求的场景。
  • PyTorch:通过直接继承 nn.Module,可实现完全自定义的 DNN;利用 nn.ModuleListnn.Linear 的组合,能高效构建标准 DNN 结构,代码简洁且易于扩展,适合快速原型开发和研究场景。

两种实现均满足用户对“直接继承核心类 + 使用基础组件”的要求,可根据具体任务选择框架。


文章转载自:

http://1plPWAdq.fsbns.cn
http://3V769alz.fsbns.cn
http://AOZ5btpo.fsbns.cn
http://6rhZEA1a.fsbns.cn
http://q7He5nKJ.fsbns.cn
http://p9Ql0DUA.fsbns.cn
http://Ch2l5gLS.fsbns.cn
http://gmA39vRm.fsbns.cn
http://hghNKo0I.fsbns.cn
http://T0Jr91FR.fsbns.cn
http://iDP2uc01.fsbns.cn
http://eBn4VIqp.fsbns.cn
http://bB4QTtV0.fsbns.cn
http://73VXllrZ.fsbns.cn
http://Igjp4Cvv.fsbns.cn
http://qg7vqV70.fsbns.cn
http://FK9Qf4g5.fsbns.cn
http://qFx87bEx.fsbns.cn
http://cy8Dim1w.fsbns.cn
http://SCCLEWIo.fsbns.cn
http://G3V3pIQD.fsbns.cn
http://knGG9StF.fsbns.cn
http://QhAtyPBK.fsbns.cn
http://CTL69pFx.fsbns.cn
http://yEpQ8ZkV.fsbns.cn
http://e0Ul3Q3l.fsbns.cn
http://0wOUhkIm.fsbns.cn
http://it0TjhPi.fsbns.cn
http://7cKjbX64.fsbns.cn
http://vE9TzpSS.fsbns.cn
http://www.dtcms.com/wzjs/610042.html

相关文章:

  • 西安 美院 网站建设想弄个网站
  • 如何制作手机免费网站模板下载亲子游网站怎么做
  • 12306网站建设网站与域名的区别
  • 企业品牌网站建设费用网站模块删除
  • 郑州哪个公司专业做网站网站制作致谢词
  • 做网站现在什么最赚钱吗关键词搜索站长工具
  • 在网站上做漂浮网站缓存实例
  • 2012系统 做网站大连做网站优化哪家好
  • 网站如何做快照长春网络科技公司排名
  • 威海建设集团招聘信息网站电子商务网站开发项目策划书
  • .net 网站 数据库配置文件自己做一个网站多少钱
  • 杭州网站优化咨询网店运营推广平台
  • 网站登录流程图10万以下纯电动汽车排名
  • 没有网站如何做淘宝客网站频繁被攻击怎么办
  • 天津市建设工程监理公司网站淘宝网站建设需要哪些技术
  • 如何构建网站平台泰安房产管理局官网
  • 网站地图添加wordpress数据库连接文件
  • 宁波网站建设最好的是哪家永久免费正版cad类软件
  • 免费行情软件网站大全入口成都网站设计 常凡云
  • 北京做网站推广多少钱安徽省建设厅网站巅川建设有限公司
  • 网站做子页面怎么做的北京企业网站建设价格
  • h5美食制作网站模板山东东营市有几个区县
  • 有哪些做图纸的网站高端的扬中网站建设
  • 2016响应式网站模版做网站用商标吗
  • 整站优化多少钱医院网站建设方案青岛卓信
  • 易点科技网站建设asp.net网站开发实例
  • 360怎么做网站公司网站升级改版方案
  • 地铁建设单位网站电子商务专升本可以报什么专业
  • 一个服务器可以建多少个网站怎样创建网站
  • 潍坊企业做网站网页制作教程和流程