在类中调用 self 有什么作用?

2023-12-14

我注意到 Pytorch Lightning 的文档中提到,您可以通过调用从同一个类中的另一个方法调用前向方法self(x)。我无法找到任何有关其工作原理的信息。我一直以为你会使用调用该方法self.forward

显然,它调用了forward方法,但是如何调用呢?有没有关于正在发生的事情的 python 文档?

我在以下网址找到了这个:https://pytorch-lightning.readthedocs.io/en/stable/new-project.html

具体代码片段是这样的:

def training_step(self, batch, batch_idx):
    ...
    z = self(x)

一般来说,在Python中,当“调用”一个对象时,你正在调用它的__call__方法。那是,

  self(x)

相当于

  self.__call__(x)

对于火炬nn.Module(以及所有衍生类别)__call__环绕模块的forward因此,从你的角度来看self(x)基本都是转发x通过模块self.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在类中调用 self 有什么作用? 的相关文章

  • celery任务eta已关闭,使用rabbitmq

    我使用教程中的默认设置和在 ubuntu 上运行的rabbitmq 使 Celery 任务正常进行 当我毫不延迟地安排任务时 一切都很好 但是当我给他们一个预计时间时 他们会被安排在未来 就好像我的时钟在某个地方关闭了一样 下面是一些请求任
  • 如何打印前面有一定数量空格的整数?

    C has printf Xd Y 它只打印整数 X 并使其在控制台窗口上占据 Y 空格 例如 printf 3d 10 console 10 printf 5d 5 console 5 我如何在 python 3 中使用它 This pr
  • 如何在plotly(python)中的刻度标签和图形之间添加空格?

    如果我使用绘图创建水平条形图 则每个条形的标签都与图表相对应 我想在标签和图表之间添加一些空间 填充 边距 我怎样才能做到这一点 Example import plotly offline as py import plotly graph
  • 在多核上运行 python 线程

    我知道Python 2 7不允许在不同的内核上运行多个线程 你需要使用multiprocessing模块以实现某种程度的并发性 我正在看concurrent futuresPython 3 4 中的模块 是否使用ThreadPoolExec
  • lmfit模型拟合然后预测

    我正在领养lmfit进行曲线拟合并使用拟合模型进行预测 然而下面的代码并没有达到我想要的效果 能否请你帮忙 谢谢 import numpy as np from lmfit import Model def linearModel x a0
  • Python 中“is”运算符的语义是什么?

    如何is运算符确定两个对象是否相同 它是如何工作的 我找不到它的记录 来自文档 http docs python org reference datamodel html 每个对象都有一个身份 一个类型 和一个值 对象的身份 一旦发生就永远
  • argparse 不检查位置参数

    我正在创建一个脚本 它使用 argparse 接受位置参数和可选参数 我已经阅读了 Doug 的教程和 python 文档 但找不到答案 parser argparse ArgumentParser description script t
  • 尝试校准keras模型

    我正在尝试通过 Sklearn 实现来校准我的 CNN 模型CalibratedClassifierCV 尝试将其包装为KerasClassifier并覆盖预测功能但没有成功 有人可以说我做错了什么吗 这是模型代码 def create m
  • matplotlib vlines 图中未应用 y 轴的最小值

    我正在 matplotlib 中绘制 vlines 图 数据集中的所有 y 值如下 gt 0 我希望 y 轴最底部的刻度能够读取0 但相反 我得到 500 这是代码 usr bin env python import numpy as np
  • 使用 Python-VLC 的 PyInstaller:无属性“media_player_new”错误

    我使用 Python VLC 创建视频播放器 并使用 PyInstaller 在 Windows 10 计算机上生成可执行文件 最初 它给了我错误 Import Error Failed to load dynlib dll libvlc
  • 机器学习的周期性数据(例如度角 -> 179 与 -179 相差 2)

    我使用 Python 进行核密度估计 并使用高斯混合模型对多维数据样本的可能性进行排名 每一条数据都是一个角度 我不确定如何处理机器学习的角度数据的周期性 首先 我通过添加 360 来删除所有负角 因此所有负角都变成了正角 179 变成了
  • Django 1.7:如何使用 html/css 文件作为模板发送电子邮件

    从 Django 1 7 开始 可以send email 使用新参数 html message 不幸的是 没有关于如何使用它的全面指南 新手友好 或者至少我找不到它 我需要使发送的电子邮件变得漂亮 因此 我试图弄清楚如何将我的消息包含到 h
  • 列表中的特定范围(python)

    我有一个从文本字符串中提取的整数列表 因此当我打印该列表 我称之为test I get 135 2256 1984 3985 1991 1023 1999 我想打印或制作一个仅包含特定范围内的数字的新列表 例如1000 2000之间 我尝试
  • 解析整数集的字符串并列出间隔

    I have 2 5 7 9 12 string 我想从中获取 2 5 7 8 9 12 列表 python中有没有内置的函数 Thanks UPD 我想 直接的答案是No 不管怎样 谢谢你的 片段 使用一个 建议者斯文 马尔纳克 s 2
  • 如何在类型提示中定义元组或列表的大小

    有没有办法在参数的类型提示中定义元组或列表的大小 目前我正在使用这样的东西 from typing import List Optional Tuple def function name self list1 List Class1 if
  • 关闭正在运行代码的 IPython Notebook

    怎么运行的 我在 IPython Notebook 中运行了一些代码 一些迭代工作 我不小心关闭了正在运行的笔记本的浏览器 但回到 IPython 仪表板 我发现这个特定的笔记本尚未关闭 所以如果我再次打开笔记本 我会在它正在执行的代码前面
  • JSONDecodeError:额外数据:Python [重复]

    这个问题在这里已经有答案了 我使用以下代码从文件加载 json file file name obj list with open file as f for json obj in f obj list append loads json
  • 将函数按元素应用于两个 DataFrame

    如何应用函数z ij f x ij y ij 来自数据框X and Y相同大小并将结果保存到 DataFrameZ 这取决于你有什么样的功能 很多功能已经被矢量化为数据框 例如 等等 所以对于这些功能 你可以简单地做Z X Y or Z X
  • 如何使用 keras.backend.gradients() 获取梯度值

    我试图获得 Keras 模型的输出相对于模型输入 x 而不是权重 的导数 似乎最简单的方法是使用 keras backend 中的 梯度 它返回梯度张量 https keras io backend https keras io backe
  • 如何使 Django 自定义管理命令参数不再需要?

    我正在尝试在 django 中编写自定义管理命令 如下所示 class Command BaseCommand def add arguments self parser parser add argument delay type int

随机推荐

  • 尝试在 iOS 中使用 AVAssetDownloadURLSession 下载 m3u8 视频时出现错误

    尝试下载 m3u8 视频文件 http devimages apple com iphone samples bipbop bipbopall m3u8 使用 AVAssetDownloadURLSession 当我在 Xcode 中运行代
  • HTTPS 仅适用于本地主机

    我正在尝试在我的一个 EC2 实例上设置 https 我已经这样做过很多次了 但由于某种原因 在这个例子中 它拒绝工作 Problem 当我通过本地 ip 连接到域时 https 工作正常 当我通过公共IP连接到域时 https 不起作用浏
  • 在 WooCommerce 3.3 中更改产品缩略图大小

    我在 WooCommerce 3 3 中更改产品缩略图 图像大小时遇到 一些问题 我曾经能够在 WooCommerce gt 设置 gt 产品 gt 显示下的管理中执行此操作 但我再也看不到显示选项卡了 此功能是否已被移动或者现在有其他方法
  • 自定义验证器控制反应形式的数量

    我很难在 Angular 的反应式表单中实现自定义验证 我需要控制数量 数量不应超过可用数量 问题是如果每行都有子行 我如何获得所有数量的总数 我如何能够计算子行的总数并将其与找到可用数量的父行进行比较 下面是我的代码 这也是我的代码的链接
  • 如何从带有节点的函数返回 XML 文件?

    我有一个简单的 XML
  • 以二进制模式打开输入文件流时设置的skipws标志

    我知道不应在以二进制模式打开的输入流上使用提取运算符 但成员函数read应该使用 std ifstream ifs file bin std ios in std ios binary char c ifs gt gt c Should n
  • 与以分号作为单行运行相比,逐行运行会产生奇怪的结果

    我正在尝试创建一个简单的单行 Powershell 命令 该命令将列出给定进程名称的所有 TCP 和 UDP 端口 如果我一行一行地运行这些行 它会产生预期的输出 如果我将所有四行代码放入一行 并使用分号分隔各行 则会产生不同的结果 请参阅
  • 调整 div 元素的大小

    jQuery 有resize 事件 但它只适用于窗口 jQuery window resize function What ever 这很好用 但是当我想将事件添加到 div 元素时它不起作用 E g jQuery div resize f
  • 使用Javascript或HTML,如何获取div或其他元素的高度和宽度?

    我已经尝试了一段时间 获取 网页上 div 的高度和宽度 我尝试了很多事情 其中 一些是 document getElementById header getHeight height height pixelHeight 以及所有其他 明
  • 是否可以通过firebase云消息传递中断级别(iOS)?

    尝试使用 FCM 发送推送通知POST https fcm googleapis com fcm send 是一种发送方式interruption level to aps在推送通知上 根据HTTP API 规范您可以通过以下方式提供 AP
  • LWP::UserAgent 不是线程安全的吗?

    我正在使用以下子例程运行 40 个左右的线程 my app shift my ua LWP UserAgent gt new ua gt timeout 5 my response ua gt get app watch url my ne
  • 获取 List 中不同值的列表

    在 C 中 假设我有一个名为Note具有三个字符串成员变量 public class Note public string Title public string Author public string Text 我有一个类型列表Note
  • 如何使 zsh 在 mac 10.9 上使用 python 2.7.6 而不是 Apple 预装的 2.7.5

    如何使 Mac 上的 zsh 使用 usr local bin python 中的 python 2 7 6 而不是 usr bin python 中的 python 2 7 5 无需在我要运行的脚本之前输入 usr local bin p
  • Windows 程序:如何监听命令行参数?

    我正在尝试对基于商业 Windows 的 IDE 的构建系统进行逆向工程 以便我可以使用 make 来构建我的项目 启动一个程序来执行任务 我需要知道在运行该程序时将哪些命令行参数传递给该程序 但是 Windows 进程查看器不显示命令行参
  • T-SQL 将单词拆分为字符

    我到处搜索 但在任何地方都找不到这个实现 假设我有一句话 QWERTY 我想获得这张表 Q W E R T Y Or for QWERTY AnotherWord我想获得 Q W E R T Y space character here A
  • 是什么原因导致“请求在等待太长时间而无法尝试满足您的请求后被中止”?

    是什么原因导致 请求在等待太长时间而无法尝试满足您的请求后被中止 这似乎是某种内部超时的结果 但我不知道这是在哪里配置的 我们当前正在使用自动缩放 该错误是由于任务队列中的任务数量临时增加而导致的 自动缩放不应该创建更多实例来处理该请求吗
  • 如何捕获两个标签之间的字符串

    我正在编写一个小书签以增强我的工作流程 我的部分工作是获取要放入电子邮件中的正确信息 我喜欢 JavaScript 和 jQuery 所以我正在研究一种使用这个库让我的工作更轻松的方法 我的目标是一个具有特别奇怪标记的网站 我需要捕获匹配的
  • 从 valueEventListener java 返回值

    我试图返回一个布尔值 但返回的值始终为 false 即本例中的 0 检查变量是一个实例变量 按下按钮时将调用以下函数 private boolean checkAnswerSubmission DatabaseReference answe
  • DAX、PowerBI 中的 RANKX() 问题

    我正在学习 DAX 并对 PowerBI 中的 RANKX 感到困惑 这是我的数据 这是我的措施 Rank RANKX ALL RankDemo Sub Category CALCULATE SUM RankDemo My Value 这是
  • 在类中调用 self 有什么作用?

    我注意到 Pytorch Lightning 的文档中提到 您可以通过调用从同一个类中的另一个方法调用前向方法self x 我无法找到任何有关其工作原理的信息 我一直以为你会使用调用该方法self forward 显然 它调用了forwar