说明

最近在使用pytorch的时候,模型训练时,不需要使用forward,只要在实例化一个对象中传入对应的参数就可以自动调用 forward 函数. (model(args-list) 等价于 model.forward(args-list))

forward 的使用

class Module(nn.Module):def __init__(self):super(Module, self).__init__()# ......def forward(self, x):# ......return xdata = .....  #输入数据
# 实例化一个对象
module = Module()
# 前向传播
module(data)
# 而不是使用下面的
# module.forward(data)

实际上

module(data)  

是等价于

module.forward(data)   

forward 使用的解释

等价的原因是:因为 python calss 中的__call__和__init__方法.

class A():def __call__(self):print('i can be called like a function')a = A()
a()

out:

i can be called like a function

__call__里调用其他的函数

class A():def __call__(self, param):        print('i can called like a function')print('传入参数的类型是:{}   值为: {}'.format(type(param), param)) res = self.forward(param)return resdef forward(self, input_):print('forward 函数被调用了') print('in  forward, 传入参数类型是:{}  值为: {}'.format( type(input_), input_))return input_
a = A()input_param = a('i')
print("对象a传入的参数是:", input_param)#======================================
out:i can called like a function传入参数的类型是:<class ‘str’> 值为: iforward 函数被调用了in forward, 传入参数类型是:<class ‘str’> 值为: i对象a传入的参数是: i

深度学习_pytorch中的forward()的使用与解释相关推荐

  1. forward函数——浅学深度学习框架中的forward

    1.什么是forward函数 (本应该出一篇贯穿神经网络的文章的,但是由于时间关系,就先浅浅记录一下,加深自己的理解吧吧). forward 函数是深度学习框架中常见的一个函数,用于定义神经网络的前向 ...

  2. (三)大话深度学习编译器中的自动调优·Empirical Search

    前面的第一篇"(一)大话深度学习编译器中的自动调优·前言"与第二篇"(二)大话深度学习编译器中的自动调优·DSL与IR"分别介绍了背景与一些相关概念,这第三篇我 ...

  3. Dataset:数据集集合(综合性)——机器学习、深度学习算法中常用数据集大集合(建议收藏,持续更新)

    Dataset:数据集集合(综合性)--机器学习.深度学习算法中常用数据集大集合(建议收藏,持续更新) 目录 常规数据集 各大方向分类数据集汇总 具体数据集分类 相关文章 DL:关于深度学习常用数据集 ...

  4. 【AI初识境】深度学习模型中的Normalization,你懂了多少?

    文章首发于微信公众号<有三AI> [AI初识境]深度学习模型中的Normalization,你懂了多少? 这是<AI初识境>第6篇,这次我们说说Normalization.所谓 ...

  5. 【深度学习】深度学习模型中的信任危机及校正方法

    ‍ ‍作者: 北邮 GAMMA Lab 硕士生 刘洪瑞,副教授 王啸 1 前言 深度学习在计算机视觉.自然语言处理.数据挖掘等诸多研究领域中的潜力被广泛认可,在目标检测.语音识别.医疗检测.金融欺诈检 ...

  6. 深度学习训练中关于数据处理方式--原始样本采集以及数据增广

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/SMF0504/article/details/78695908 好久没有写博客,一直想重新调整自己的 ...

  7. 寻找下一款Prisma APP:深度学习在图像处理中的应用探讨

    在9月23日到9月24日的MDCC 2016年中国移动者开发大会"人工智能与机器人"专场中,阿里云技术专家周昌进行了题为<寻找下一款Prisma APP:深度学习在图像处理中 ...

  8. Keras 深度学习框架中文文档

    2019独角兽企业重金招聘Python工程师标准>>> Keras深度学习框架中文文档 Keras官网:http://keras.io/ Github项目:https://githu ...

  9. 深度学习推荐系统中各类流行的Embedding方法

    Embedding技术概览: 对其它Embedding技术不熟悉,可以看我的上一篇文章:深度学习推荐系统中各类流行的Embedding方法(上) Graph Embedding简介 Word2Vec和 ...

  10. Python 中的可执行对象 eval,exec 和 compile与其在深度学习训练中的应用实例

    Python 中的可执行对象 eval,exec 和 compile 与其在深度学习训练中的应用实例 eval 计算指定表达式的值.也就是说它要执行的python代码只能是单个表达式(注意eval不支 ...

最新文章

  1. 安卓okhttp上传jason和图片_微信图片总是「已过期或被清理」?简单 3 招,可摆脱烦恼...
  2. Cocos2d-X中实现菜单特效
  3. layui 导航收缩代码_pycharm的十个小技巧,让你写代码效率翻倍
  4. 在CGD中快速实现多线程的并发控制
  5. 虚拟化VMware之存储与虚拟机主机管理(1)
  6. minicap_工具使用
  7. 【普及组模拟赛】作业
  8. 2020大学计算机知到答案,2020年_知到_大学计算机(济南大学)_网课答案
  9. 问题 F: 小鱼的格子裁剪(dfs)
  10. 异步编程的 async/await
  11. iOS标准库中常用数据结构和算法之二叉排序树
  12. 游戏开发工具之纹理打包器-3.使用GDI+绘图
  13. 垒骰子|2015年蓝桥杯B组题解析第九题-fishers
  14. 视觉测试_视觉设计流行测验
  15. CentOS 7 Linux实时内核下的epoll性能分析后续 | 火焰图分析
  16. w讠ndows Boot Manager,开机出现windows boot manager的解决方法和步骤(图文教程)
  17. Electron+Vue3+TypeScript+Vite桌面应用程序项目初始化
  18. 测量平差理论知识结构梳理
  19. Echarts 模拟飞机飞行动态图
  20. java 微博发布时间_java 对新浪微博微博的发表时间解析

热门文章

  1. 【学习笔记】深入理解js原型和闭包(15)——闭包
  2. Java 系列之spring学习--springmvc注解参数传递(六)
  3. 网页编辑器粘贴word格式的处理
  4. Java命名规范+常量定义方法
  5. idea导入项目常见异常处理
  6. Evernote 强力替代品:开源加密笔记本 Joplin
  7. 两万字详解MongoDB从入门到精通
  8. C++ 长字符串换行
  9. LitePal(版本1.5.0,写此博客时是最新版本)
  10. C语言scanf中%%,C语言scanf()和gets()及printf()和puts()的区别