最近需要用paddlepaddle训练检测模型,并部署在端侧NPU设备上,选择版本踩了不少坑!!!!!!
官方指南:PaddleDetection
1.先安装Paddle-gpu
之前随便选的版本跑起来了,paddlepaddle 2.2.2 +ppdet(2.5.0)+Windows(RTX4090在Windows系统上)+cuda11.6+cudnn 8.4.0
后面会提示两个警告,虽然不影响训练测试;
2024-01-20 17:27:11,040-WARNING: VersionError: PaddlePaddle version 2.3.0 or higher is required, but 2.2.2 installed, please upgrade your PaddlePaddle to 2.3.0 or other higher version.
2024-01-20 17:27:11,040-WARNING: If you want to use training-aware and post-training quantization, please use Paddle >= 2.3.0 or develop version
为了向未来看齐,或许涉及量化操作,因此建议选择2.3.0及以上的paddle-gpu版本。
这里避坑2.4.2版本,巨坑!!!
我装了paddle-gpu=2.4.2,和paddledetection=2.5/2.6/2.7三个版本都不兼容都会报错!!!错误如下:
File "C:\Users\lsm\Desktop\pp\PaddleDetection-2.5.0\ppdet\modeling\heads\yolo_head.py", line 253, in _generate_anchor_point
[len(anchor_points[-1]), 1], stride, dtype=self._dtype))
TypeError: object of type 'Variable' has no len()
paddle-gpu=2.6.0要求python至少3.8,舍弃对cuda10.2的支持。最新版也谨慎观望,测了下有其他错误,可能api函数接口有改动:No module named ‘paddle.fluid’。
安装命令及版本对应关系参考:
paddle-gpu安装及版本对应关系
若用conda安装网不行,也可下载包tar.bz2到本地,通过
conda install --use-local xxx.tar.bz2安装
tar.bz2的包,包括cuda,cudnn,paddle-gpu可通过网址下载
paddlepaddle-gpu,
cuda
cudnn
2.安装Paddle-Detection
版本随自己选择,越新的支持的东西越多,bug也修复的越多
最后pp-gpu自己装的2.5.2感觉挺好的!!!