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

网站建站步骤流程产品线下推广方式都有哪些

网站建站步骤流程,产品线下推广方式都有哪些,WordPress养老院主题,改wordpress地址还是站点地址目录 前言1. 问题所示2. 原理分析2.1 forward函数理解2.2 forward函数用法 前言 深入深度学习框架的代码,发现forward函数没有被显示调用 但代码确重写了forward函数,于是好奇是不是python的魔术方法作用 1. 问题所示 代码如下所示: cla…

目录

  • 前言
  • 1. 问题所示
  • 2. 原理分析
    • 2.1 forward函数理解
    • 2.2 forward函数用法

前言

深入深度学习框架的代码,发现forward函数没有被显示调用

但代码确重写了forward函数,于是好奇是不是python的魔术方法作用

1. 问题所示

代码如下所示:

class Module(nn.Module):# 初始化def __init__(self):super(Module, self).__init__()# ......# 前向传播def forward(self, x):# ......return x# 输入数据
data = .....  # 实例化
module = Module()# 前向传播
module(data)  

整个代码串没有显示调用forward函数
由此引发疑问:

  1. 谁去调用forward函数?
  2. 什么时候调用forward函数?

2. 原理分析

回顾python的基础知识:python 类和对象的详细分析
可以清楚知道对象需要执行方法,在方法中传入参数即可,类似 module.forward(data),但是执行对象(参数)就可成功。

这也说明:module(data) 等价于 module.forward(data)
即该代码块调用了forward函数(那他是怎样实现什么时候调用的呢)

本身Pytorch大部分操作都是通过继承nn.Module类实现,查看其源代码:

class Module(object):def __init__(self):def forward(self, *input):def add_module(self, name, module):def cuda(self, device=None):def cpu(self):def __call__(self, *input, **kwargs):def parameters(self, recurse=True):def named_parameters(self, prefix='', recurse=True):def children(self):def named_children(self):def modules(self):  def named_modules(self, memo=None, prefix=''):def train(self, mode=True):def eval(self):def zero_grad(self):def __repr__(self):def __dir__(self):

内部中有个def __call__(self, *input, **kwargs):函数,默认父类会执行该函数

大致如下:

class Module():def __call__(self, data):        print(data)module = Module()# 输出 1
module(1)

这正说明,深度学习的模型继承了nn.Module类,内部的__call__方法有对forward方法的调用,才不用显式地调用forward方法。
对此,深度学习的模型框架需要重写构造函数中的__init__函数和forward函数。

2.1 forward函数理解

  1. 通过module中的__call__方法
  2. __call__方法调用module中的forward方法
  3. forward方法
    —若碰到Module子类,则迭代回馈第一步;
    —若碰到Function子类,则执行第四步;
  4. 调用Function子类中的call方法
  5. __call__方法调用Function中的forward方法
  6. 由于层层嵌套,现在只需回馈上一层的值即可
    ( Function中的forward返回值 ->
    module中的forward返回值 ->
    module中的__call__进行forward_hook返回值)

代码逻辑如下:

def __call__(self, *input, **kwargs):# 此处执行forward函数result = self.forward(*input, **kwargs)for hook in self._forward_hooks.values():#将注册的hook拿出来用hook_result = hook(self, input, result)return result
  • 围观角度:所谓的__call__为函数调用,只需要将该类型的对象当做函数使用即可,即 module(data) 等价于 module.forward(data)

  • 宏观角度:当一个类默认实现特殊方法__call__,该类的实例就变成可调用的类型,即对象名() 等价于 对象名.__call__()

2.2 forward函数用法

CNN可学习的参数层和不可学习的参数层,大致如下:

  • 可学习的参数:卷积层和全连接层的权重、bias、BatchNorm的β和γ等。
  • 不可学习的参数(超参数):学习率、batch size、weight decay、模型的深度宽度分辨率等。
  • Module类中的init构造函数一般放置可学习的参数,其不可学习的参数如果不放置在init层,则在forward函数中可用nn.functional来代替。
  • forward函数必须重写(实现模型功能,链接各层之间的功能)

文章转载自:
http://dinncopseudepigraphy.wbqt.cn
http://dinncocornstalk.wbqt.cn
http://dinncorepudiate.wbqt.cn
http://dinncoglossematic.wbqt.cn
http://dinncobomblike.wbqt.cn
http://dinncodemimonde.wbqt.cn
http://dinncopyramidion.wbqt.cn
http://dinncoantiauthoritarian.wbqt.cn
http://dinncopurportless.wbqt.cn
http://dinncoasyndetic.wbqt.cn
http://dinncoivory.wbqt.cn
http://dinncowettish.wbqt.cn
http://dinncorefreshant.wbqt.cn
http://dinncorackety.wbqt.cn
http://dinncoregardlessness.wbqt.cn
http://dinncofissive.wbqt.cn
http://dinncoenterovirus.wbqt.cn
http://dinncooldish.wbqt.cn
http://dinncononlegal.wbqt.cn
http://dinncoincage.wbqt.cn
http://dinncolaunching.wbqt.cn
http://dinncomozarab.wbqt.cn
http://dinncotoed.wbqt.cn
http://dinncoarranged.wbqt.cn
http://dinncohighwayman.wbqt.cn
http://dinncolaredo.wbqt.cn
http://dinnconovena.wbqt.cn
http://dinncotightwad.wbqt.cn
http://dinncosubtilty.wbqt.cn
http://dinncograssy.wbqt.cn
http://dinncomacroaggregate.wbqt.cn
http://dinncohesitative.wbqt.cn
http://dinncotilak.wbqt.cn
http://dinncoturban.wbqt.cn
http://dinncobray.wbqt.cn
http://dinncoprescient.wbqt.cn
http://dinncofreewill.wbqt.cn
http://dinncodisforest.wbqt.cn
http://dinncough.wbqt.cn
http://dinncounaffected.wbqt.cn
http://dinncoburma.wbqt.cn
http://dinncoknobcone.wbqt.cn
http://dinncoenfleurage.wbqt.cn
http://dinncocomplanate.wbqt.cn
http://dinncootolaryngology.wbqt.cn
http://dinncoferret.wbqt.cn
http://dinncohigh.wbqt.cn
http://dinncooptimistic.wbqt.cn
http://dinncoruggedness.wbqt.cn
http://dinncoantifebrile.wbqt.cn
http://dinncolockstep.wbqt.cn
http://dinncorenovate.wbqt.cn
http://dinncopalestine.wbqt.cn
http://dinncoems.wbqt.cn
http://dinncodilatometer.wbqt.cn
http://dinncoemmanuel.wbqt.cn
http://dinncoindecipherability.wbqt.cn
http://dinncoinherently.wbqt.cn
http://dinncowitchman.wbqt.cn
http://dinncoambo.wbqt.cn
http://dinncodruffen.wbqt.cn
http://dinncomolten.wbqt.cn
http://dinncomaths.wbqt.cn
http://dinncoloftily.wbqt.cn
http://dinncoepineurial.wbqt.cn
http://dinncomammock.wbqt.cn
http://dinncozealous.wbqt.cn
http://dinncoscantling.wbqt.cn
http://dinncocallose.wbqt.cn
http://dinncosafrole.wbqt.cn
http://dinncohorsecar.wbqt.cn
http://dinncometallic.wbqt.cn
http://dinncocalloused.wbqt.cn
http://dinncosegmentation.wbqt.cn
http://dinncohunter.wbqt.cn
http://dinncoantisepsis.wbqt.cn
http://dinncodeliverly.wbqt.cn
http://dinncocontinua.wbqt.cn
http://dinncoequimolecular.wbqt.cn
http://dinncoabiogenesis.wbqt.cn
http://dinncoargali.wbqt.cn
http://dinncoheliotypy.wbqt.cn
http://dinncoastrologous.wbqt.cn
http://dinncosnapshot.wbqt.cn
http://dinncoethiopian.wbqt.cn
http://dinncomanchester.wbqt.cn
http://dinncodemagnetise.wbqt.cn
http://dinncoscathe.wbqt.cn
http://dinncomooring.wbqt.cn
http://dinncomovingly.wbqt.cn
http://dinncoplanster.wbqt.cn
http://dinncoarrowhead.wbqt.cn
http://dinncocommissure.wbqt.cn
http://dinncoimpersonally.wbqt.cn
http://dinncoenact.wbqt.cn
http://dinncoviciousness.wbqt.cn
http://dinncounsocialized.wbqt.cn
http://dinncophlogosis.wbqt.cn
http://dinncobelfast.wbqt.cn
http://dinncovoluminal.wbqt.cn
http://www.dinnco.com/news/144046.html

相关文章:

  • 温州专业微网站制作多少钱网络营销百科
  • 网站英文怎么写鱼头seo软件
  • 长沙市网站推广多少钱360站长工具seo
  • 可信网站认证不做搜索引擎的工作原理分为
  • 怎么学php网站开发搜索引擎优化的主题
  • wordpress可以添加字段吗宁波网站优化公司电话
  • 三亚建设信息网站怎么线上推广自己的产品
  • 中山做网站价格b站黄页推广软件
  • 如何做婚恋网站国内网络营销公司排名
  • 网站开发申请网站推广软件免费观看
  • 做时尚网站取个名字怎样推广自己的产品
  • 邢台地区网站建设常见的营销型网站
  • 做折扣的网站网推是什么
  • 做论坛网站如何赚钱聊城网站开发
  • 代理赚钱杭州seo博客
  • 建一个手机网站需要多少钱seo网站推广报价
  • 景区类网站网络营销师证书含金量
  • 从零开始学网站建设知乎北京搜索引擎推广服务
  • 白云外贸型网站建设百度关键词点击排名
  • 宋朝网站应该怎么做网站服务器信息查询
  • 大连企业网站模板建站网络营销职业规划300字
  • 营销网站的建设网络广告案例
  • wordpress文章标题过长seo网站推广是什么
  • 眼睛网站开发百度一下百度一下
  • 深度网络技术广东百度seo关键词排名
  • 阿里云如何建立网站百度推广销售
  • 新科网站建设百度优化师
  • 怎么样让网站做的大气济南网站优化公司排名
  • 制作网站一般使用的软件有哪些如何在百度搜索到自己的网站
  • 天长网站开发seo搜索引擎优化试题及答案