PaddleClas icon indicating copy to clipboard operation
PaddleClas copied to clipboard

训练PPLCNet X2_5,保存模型的时候报错

Open alexHxun opened this issue 3 years ago • 3 comments

训练正常,在保存的时候保存,报错信息如下: Traceback (most recent call last): File "tools/train.py", line 32, in engine.train() File "/home/ubuntu/Desktop/Alex/PaddleClas/ppcls/engine/engine.py", line 384, in train save_student_model=True) File "/home/ubuntu/Desktop/Alex/PaddleClas/ppcls/utils/save_load.py", line 176, in save_model paddle.save([opt.state_dict() for opt in optimizer], model_path + ".pdopt") File "/home/ubuntu/miniconda3/envs/paddle/lib/python3.7/site-packages/paddle/framework/io.py", line 246, in save "expect dict, but received %s." % type(obj)) NotImplementedError: Now only supports save state_dict of Layer or Optimizer, expect dict, but received <class 'list'>.

只改动了config文件,没有其他操作,paddlepaddle版本为2.0

alexHxun avatar Aug 05 '22 15:08 alexHxun

纠正代码为 paddle.save(optimizer[0].state_dict(), model_path + ".pdopt"),就可以了. 不是很理解源代码为什么传一个列表给paddle.save,而optimizer列表里只有一个优化器

alexHxun avatar Aug 05 '22 16:08 alexHxun

你好,请使用最新版的paddle

weisy11 avatar Aug 08 '22 06:08 weisy11

你好,请使用最新版的paddle

我的cudnn版本是7.6,cuda版本11.0,用最新的Paddle会报错

alexHxun avatar Aug 09 '22 07:08 alexHxun