我用自己的自定义数据训练了Paddle检测模型。
我已经导出它,并使用以下命令将其转换为所需的模型格式:
python3 tools/export_model.py -c configs/det/det_r50_vd_db.yml -o Global.pretrained_model="./output/det_r50_vd/latest" Global.save_inference_dir="./output/det_db_inference/"
产出如下:
W0804 12:55:34.817917 4102 gpu_resources.cc:61] Please NOTE: device: 0, GPU Compute Capability: 6.0, Driver API Version: 11.0, Runtime API
Version: 10.2
W0804 12:55:34.822103 4102 gpu_resources.cc:91] device: 0, cuDNN Version: 7.6.
[2022/08/04 12:55:35] ppocr INFO: load pretrain successful from ./output/det_r50_vd/best_accuracy
[2022/08/04 12:55:38] ppocr INFO: inference model is saved to ./output/det_db_inference/inference
然后,我尝试使用以下方法运行推理:
python3 tools/infer/predict_det.py --det_algorithm="DB" --det_model_dir="./output/det_db_inference/" --image_dir="../image"
--use_gpu=True
然而,我得到了一个ValueError:
Traceback (most recent call last):
File "tools/infer/predict_det.py", line 262, in
text_detector = TextDetector(args)
File "tools/infer/predict_det.py", line 121, in init
args, 'det', logger)
File "/home/user/paddle/PaddleOCR/tools/infer/utility.py", line 317, in create_predictor
predictor = inference.create_predictor(config)
ValueError: (InvalidArgument) The inverse of Fused batch norm variance should be finite. Found nonfinite values! Please check batch_norm_55.w_2
[Hint: Expected std::isfinite(variance_array[i]) == true, but received std::isfinite(variance_array[i]):0 != true:1.] (at /paddle/paddle/fluid/framework/ir/conv_bn_fuse_pass.cc:105)
有人能帮我吗?这个问题是什么意思?为何会出现?
发布于 2022-08-17 06:22:19
ValueError:(InvalidArgument)融合批范数方差的逆应该是有限的。
猜测您的模型培训时间太短,导致BN的参数值受到影响。建议对其进行更长时间的训练,或选择精度较高的模型导出推理模型。
https://stackoverflow.com/questions/73332868
复制相似问题