PaddlePaddle / PaddleClas

A treasure chest for visual classification and recognition powered by PaddlePaddle
Apache License 2.0
5.5k stars 1.17k forks source link

PaddleClas 如何实现模型在train 以及 infer 的时候使用不同分支的forword #3122

Open violetweir opened 7 months ago

violetweir commented 7 months ago

您好麻烦询问一下 RepVgg在训练的时候会使用3x3 1x1 de1Repvgg 模块 在模型导出以及预测的时候可以将3x3 和1x1 的block合成一个block 我也想实现在训练和预测的时候在forward阶段进行不同的操作 paddleclas以及paddle应该如何做才可以呀

changdazhou commented 7 months ago

将forward写成两部分,根据模型的训练状态还是预测状态调用各自部分就好,例如:

def forward(self,state,input):
    if state is 'infer':
        forward_infer(input)
    else:
        forward_train_eval(input)