ModelTC/MQBench

关于如何将conv和bn层进行合并的问题

xiaopengaia opened this issue · 3 comments

嗨 大家好,

今天在做resnet50量化的时候,想将conv层和bn层进行合并,然后进行量化

为此我找到了fuser_method_mappings.py这个文件

同时调用了fuse_conv_freezebn这个函数

但在进行合并的时候,发现需要将网络中的conv和bn单独提取处理来,进行合并

显然,这样操作似乎过于麻烦些

因此,我尝试寻找r50_8_8.yaml中能够针对conv和bn相互融合的参数,未果

想请教大家是如何合并bn和conv层的

有没有较好的简便的方法,或者在r50_8_8.yaml是否有参数能够进行处理呢?

希望得到指正,谢谢大家!

转换模型后在进行校准或者训练前可以调用这个方法

def convert_merge_bn(model: GraphModule, **kwargs):

非常感谢您的回复。我尝试下。

This issue has not received any updates in 120 days. Please reply to this issue if this still unresolved!