【Bug解决】AttributeError: ‘DataParallel‘ object has no attribute ‘XXX‘
报错内容:
raise AttributeError("'{}' object has no attribute '{}'".format(
AttributeError: 'DataParallel' object has no attribute 'XXX'
报错信息的意思是 DataParallel object 没有 attribute/method XXX。
报错原因: 多卡训练使用 DataParallel,导致原本 model 中的方法名添加了前缀 module
(和参数名变化的原理一样)。
解决: 使用 model.module.XXX
而不是 model.XXX
model = DataParallel(model)
...
model.module.XXX()