python中forward是什么意思_pytorch 中forward 的用法与解释说明

前言

最近在使用pytorch的时候,模型训练时,不需要使用forward,只要在实例化一个对象中传入对应的参数就可以自动调用 forward 函数

即:

forward 的使用

class Module(nn.Module):

def __init__(self):

super(Module, self).__init__()

# ......

def forward(self, x):

# ......

return x

data = ..... #输入数据

# 实例化一个对象

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('

本文链接:https://my.lmcjl.com/post/1920.html

展开阅读全文

4 评论

留下您的评论.