Replies: 1 comment
-
目前 PaddleOCR 中的 eval 工具(python tools/eval.py)是专门用于评估训练模型(.pdparams 文件),而不是推理模型(inference.pdiparams)。因此,推理模型不能直接通过 eval.py 对准确率进行评估。 你遇到的问题: python tools/eval.py 报错: 这是因为 eval.py 会检查预训练模型文件是否为 .pdparams 格式,用于加载完整模型参数,而推理模型使用的是 .pdiparams(和 .pdiparams.info/.pdmodel)格式,主要用于部署用途,已经不包含优化器信息等训练相关内容。 结论如下: 推理模型(如 inference.pdiparams)是用来推理部署的,不能直接在 PaddleOCR 中用于 eval.py 的准确率评估。 如果需要评估准确率: 建议下载训练模型(如 en_PP-OCRv4_rec_train.tar),解压后使用其中的 .pdparams 文件路径作为 Global.checkpoints 参数,即可正常运行 eval.py 进行准确率评估。 例如: python tools/eval.py 参考资料中也提到推理模型与训练模型转推理后的表现存在差异(如 ONNX 模型推理时间不同),这也说明两者用途和内容不同。 相关讨论(用于理解两类模型差异): 总结:
Response generated by 🤖 feifei-bot | chatgpt-4o-latest |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
直接wget了下面界面的推理模型,想用推理模型在数据集上eval一下准确率,但是看到.pdiparams推理模型。而python tools/eval.py 里只能执行.pdparams的eval。
https://github.com/PaddlePaddle/PaddleOCR/blob/main/docs/model/index.md
python tools/eval.py -c "./configs/rec/PP-OCRv4/en_PP-OCRv4_rec.yml" -o Global.pretrained_model='./pretrained_model/en_PP-OCRv4_rec_infer/inference'
python tools/eval.py -c "./configs/rec/PP-OCRv3/en_PP-OCRv3_rec.yml" -o Global.checkpoints='./pretrained_model/en_P P-OCRv3_rec_train/best_accuracy.pdparams'
这个是没有问题可以正常输出
想请教一下,推理模型应该如何eval准确率?还是说暂时就是只支持训练模型的eval?
Beta Was this translation helpful? Give feedback.
All reactions