1. 报错问题
ValueError: (InvalidArgument) The axis is expected to be in range of [0, 0), but got 0
[Hint: Expected axis >= -rank && axis < rank == true, but received axis >= -rank && axis < rank:0 != true:1.]
2.解决办法
上述报错问题是在使用PaddleSeg-release2.8版本使用deeplabv3p模型训练图片做分割时遇到的。训练过程中一切正常,等到evaluate验证时就报错了。解决办法如下:
看一下你报错的代码是哪行?我的是paddleseg\utils\metrics.py中的
pred_area.append(paddle.sum(paddle.cast(pred_i, "int64")))
label_area.append(paddle.sum(paddle.cast(label_i, "int64")))
intersect_area.append(paddle.sum(paddle.cast(intersect_i, "int64")))
这些行报错了,根据报错内容,可以使用unsqueeze将结果提升一个维度,修改如下:
pred_area.append(paddle.sum(paddle.cast(pred_i, "int64")).unsqueeze(0))
label_area.append(paddle.sum(paddle.cast(label_i, "int64")).unsqueeze(0))
intersect_area.append(paddle.sum(paddle.cast(intersect_i, "int64")).unsqueeze(0))
再次运行命令训练:
python tools/train.py --config E:\pythonWorksapce\PaddleSeg-release-2.8\configs\deeplabv3p_resnet101_os8_cityscapes_769x769_80k_wx.yml --do_eval --use_vdl --save_interval 500 --save_dir output0425
直到训练完都是正常不报错。
训练可视化使用visualdl --logdir output0425
据说使用源码安装也可以解决报错问题,具体没有试过。
标签:--,paddle,报错,rank,&&,append,axis From: https://www.cnblogs.com/wancy/p/18160865