J5 J5_OE_1.1.74
问题一:calibration精度评估部分数据无法正常导入

按照论坛回复,calibration模型仅接受单个tensor类型或dict字典类型,我们对数据类型进行了修改,整理成如下格式:


仍然出现报错。
此后我们对于多数据输入,尝试了修改dataloader为torch.utils.data.Dataloader,也尝试了更改输入数据的格式,没有得到有效解决。
对此,想请教下对calibration模型输入多个张量,是否通过dict来包含这多个张量作为输入,还是有其他方式?能否提供一个示例展示多个张量如何输入到calibration模型?
我们这边有尝试过使用torch.utils.data.DataLoader来加载数据,对应的数据格式是dict,但是在calibration模型走到self.quant这一步时,由于输入x为dict并非Qtensor,会直接进到self.activation post process中,后续会走到FakeQuantize的forward中,这里会对x的dtype进行判断,且此处默认x的类型为张量,但由于我们的输入为Dict,所以会报出没有dtype属性的错误。而self.activation post process这个是来源于给的qconfig的,所以是否在输入在dict时,需要用其他qconfig?还是有其他的处理方式?


另外,对于黄色框标注出来的部分,还请详细解释一下,为什么说训练的时候只使用一个网络,但是在推理的时候使用的是多个子网络?对于这部分注释能否详细解释一下含义?




