[PaddleSlim测试] distillation name conflicts error.
Created by: wanghaoshuang
蒸馏任务执行失败
对应提测报告章节:3.2节
问题描述:
执行任务后报错,提示batch norm layer的input channel和Scale的shape不一致。
原因:
- MobileNetV1和ResNet50第一个卷积层的weight名称都被强制指定为了
conv1_weights
,导致命名冲突。 - paddle/models/PaddleSlim/run.sh中下载的预训练模型,MobileNetV1和ResNet50的FC layer的parameter的名称都为fc_0.w_0和fc_0.b_0, 导致命名冲突。
解决办法:
- 修改PaddlePaddle/models/PaddleSlim/model/resnet.py, 将ResNet第一层conv层的名称修改为‘res_conv1’
- 修改PaddlePaddle/models/PaddleSlim/run.sh, 下载pretrain model之后,将ResNet的
conv1_weights
重命名为res_conv1_weights
. 将ResNet的fc_0.w_0
和fc_0.b_0
重命名为fc_1.w_0
和fc_1.b_0
错误类型:
models repo示例错误