在针对自己的数据集训练得到一个最好的权重best.pt,在基础模型上进行了更改,想用此best.pt训练改进后的模型,但是出现了以下错误:
ValueError: loaded state dict contains a parameter group that doesn't match the size of optimizer's group
加载的模型优化器参数和改进的模型优化器参数不匹配,优化器参数主要包括每个 batch 上所记录的一些状态信息,例如梯度累积的次数、动量的状态值、学习率的更新状态、轮次等等,便于对模型继续训练,如果仅仅当做预训练权重,可以将优化器参数字典删除,可以使用下面的代码:
python -c "from utils.general import *; strip_optimizer('path/to/best.pt')"
在终端命令框中运行以上命令,例如: