本文最后更新于:2022年7月7日 早上
Pytorch 中 “forward”的使用
数据进入网络模型的主要处理流程:数据集输入 -> 网络前向传播 -> 损失loss计算 -> 反向传播计算梯度 -> 根据梯度自动调参
**call函数:**可将类的实例对象变为可调用对象
| class Rapper(): def __call__(self,name,AKA): print("我是实例对象781号Rapper:{},AKA:{}" .format (name, AKA)) num_781_Rapper = Rapper() num_781_Rapper("周延","gai")
|
| output: 我是实例对象781号Rapper:周延,AKA:gai
|
call函数调用forward,当把定义的网络模型model当作函数调用的时候就自动调用定义的网络模型的forward方法。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| class Rapper: def __call__(self, Name): search = self.forward(Name) return search
def forward(self, name): print('信息查询函数 函数被调用了') if name == 'gai': print('姓名:{} 来自: {}'.format(name, "重庆")) else: print("系统未录入此人信息") return name
rapper = Rapper() about = rapper('gai') print("目标人物:", about)
|
| output: 信息查询函数 函数被调用了 姓名:gai 来自: 重庆 目标人物: gai
|
参考:
pytorch 中的 forward 的使用与解释
PyTorch之前向传播函数forward
Pytorch 中的 forward理解