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

网站制作 广州上海空气中检测出病毒

网站制作 广州,上海空气中检测出病毒,wordpress图表插件,无锡城乡建设局网站目录 1. 基于Module构建自己的网络 2. Module的初始化变量 3. Modules中需要子类 forward() 4. Modules中其他内置函数 1. 基于Module构建自己的网络 torch.nn.Module是所有神经网络模块的基类,如何定义自已的网络: 由于 Module 是神经网络模块的基…

目录

1. 基于Module构建自己的网络

2. Module的初始化变量

3. Modules中需要子类 forward()

4. Modules中其他内置函数


1. 基于Module构建自己的网络

torch.nn.Module是所有神经网络模块的基类,如何定义自已的网络:

  • 由于 Module 是神经网络模块的基类,自己的模型应该要继承这个类
  • 要实现 torch.nn.Module 中的forward函数,从而进行网络的前向传播
  • 一般把网络中具有可学习参数的层放在构造函数__init__()中
  • 把不具有可学习参数的层(如ReLU)放在forward中,并通过nn.functional来代替
import torch.nn as nn
import torch.nn.functional as Fclass Model(nn.Module):    # 继承nn.Module类def __init__(self):super(Model, self).__init__()# 把具有可学习参数的层放在构造函数中self.conv1 = nn.Conv2d(1, 20, 5)    self.conv2 = nn.Conv2d(20, 20, 5)def forward(self, x):    # 实现forward函数# 在forward中直接使用torch.nn.functional.relu()函数x = F.relu(self.conv1(x))return F.relu(self.conv2(x))

2. Module的初始化变量

nn.Module 类内置了一些初始化变量。包括在模块 forward、 backward 和权重加载等时候会被调用的的 hooks,也定义了 parameters 和 buffers,如源码所示:

def __init__(self):"""Initializes internal Module state, shared by both nn.Module and ScriptModule."""torch._C._log_api_usage_once("python.nn_module")self.training = True    # 当前训练/测试的状态self._parameters = OrderedDict()    # 在训练过程中会随 BP 而更新的参数self._buffers = OrderedDict()    # 在训练过程中不会随 BP 而更新的参数self._non_persistent_buffers_set = set()    self._backward_hooks = OrderedDict()    # Backward 完成后会被调用的 hookself._is_full_backward_hook = Noneself._forward_hooks = OrderedDict()    # Forward 完成后会被调用的 hookself._forward_pre_hooks = OrderedDict()    # Forward 前会被调用的 hookself._state_dict_hooks = OrderedDict()    # 得到 state_dict 以后会被调用的 hookself._load_state_dict_pre_hooks = OrderedDict() # 加载state_dict 前会被调用的 hookself._modules = OrderedDict()    # 网络的子模块

3. Modules中需要子类 forward()

注意:在网络训练过程中,直接通过mode(input) 自动调用forward函数,而非model.forward(input)进行调用,因为前者mode(input) 除了forward()外还调用了额外的函数:先执行_forward_pre_hooks里的所有hooks

  • 再调用forward()
  • 执行_forward_hooks中所有hooks
  • 执行_backward_hooks中所有hooks

4. Modules中其他内置函数

除了初始化的成员变量之外,Modules还内置了很多函数,具体包含以下几类:

(1) 属性访问:modules(), named_modules(), buffers(), named_buffers(), children(),  named_children(),  parameters(), named_parameters() 等

(2) 属性设置:register_parameter(),register_buffer(),register_forward_hook(),register_forward_pre_hook() 等

(3) 参数转换/转移:cpu(), cuda(), float(), double() 等

(4) 状态转换:train(), eval() 等

对于这些内置函数的详细介绍,在 PyTorch系列相关文章-Aaron_neil的csdn博客 持续更新中!

本文所参考的部分博客:

[1] pytorch 入坑三:nn module - 知乎

[2] torch.nn.Module模块简单介绍_allan2222的博客-CSDN博客

http://www.hkea.cn/news/94269/

相关文章:

  • 兼职做网站编辑百度搜索推广开户
  • 谁告诉你j2ee是做网站的宁波网站推广找哪家公司
  • 谷歌外贸建站多少钱搭建网站教程
  • 赚钱靠普的网站关键字搜索软件
  • 建设银行深分行圳招聘网站做游戏推广一个月能拿多少钱
  • 北京网站建设及推广招聘关键词排名代做
  • 对网站建设的意见建议网络营销推广的方法有哪些
  • 爬虫网站怎么做怎样才能在百度上面做广告宣传
  • 网站页码南昌做seo的公司有哪些
  • 网络设计方案包括哪些深圳百度推广seo公司
  • 亚马逊跨境电商开店站长工具seo综合查询5g
  • 网站怎么做百度快照logo百度快照优化推广
  • 山西网站建设排名seo技术培训山东
  • 日韩系成人影片成首选网站如何优化推广
  • 网站到期续费通知搜索风云排行榜
  • 网站公司说我们做的网站服务器不够用哪个杭州seo好
  • 类似淘宝网站建设费用杭州哪家seo公司好
  • 装修网站怎样做seo专员很难吗
  • 无锡网站外包如何接广告赚钱
  • 英文网站制作 官网淘宝标题优化网站
  • 电力建设网站网络推广网站的方法
  • 如何做网站窗口网站优化网络推广seo
  • 营销型网站建设效果网络营销策划推广方案
  • 专业的网站搭建多少钱网站seo优化价格
  • 广州公司网站设计制作win10优化大师官网
  • 做调查哪个网站比较可靠百度指数查询
  • 怎么在建设厅网站报名广州网站优化服务
  • 怎么用dw做静态网站b站好看的纪录片免费
  • 济南网站建设那家好网站制作公司有哪些
  • 域名和网站名不一样营销公司