【PaddleDetection报错】IndexError: Target xxx is out of bounds.

在尝试运行PaddleDetection时遇到CUDA版本不兼容问题,导致IndexError。作者通过降级CUDA到11.2并匹配CUDNN版本,成功解决了模型运行错误。文章强调了CUDA的向下兼容性和PaddleDetection对CUDA版本的支持限制,并提醒11.5、11.4、11.3版本的用户需选择合适CUDA版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

问题发现

解决

后记


前言

环境

CUDA 11.4

CUDNN 8.2

windows10

python3.8-->anaconda3 2021.5

作为深度学习学者,研究最新的模型也是我们的学习任务,当我在研究百度飞浆推出的PaddleDetection的时候,可谓是遇到了大大小小的坑,不过一路过五关斩六将,也算是过来了。没错,现在终于可以跑起来自己的模型啦~

问题发现

再配置好CUDA、CUDNN、paddlepaddle、ppdet之后,制作完了自己的数据集,又把配置文件修改成自己的路径和方案,当我运行的时候,却报了一个这个错:

IndexError: Target -4 is out of bounds.

最重要的是,我再运行一次,他的报错不一样了:

IndexError: Target 7 is out of bounds.

这很是让我费解!!!

往往解决问题的过程是繁琐而且困难的,一个bug可能好几天都解决不了,抱着怀疑的态度,我提出了一个大胆的假设:是不是和CUDA有关系?

解决

大家看一下paddlepaddle下载官网:

开始使用_飞桨-源于产业实践的开源深度学习平台 (paddlepaddle.org.cn)https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/pip/windows-pip.html

 这个限制属实是有点狠啊!!!

 这也说明了一个问题:我的猜想可能是对的!(我的是cuda 11.4,正好没有)

因为CUDA支持向下版本使用(就是我能用11.4,那我一定能用11.2)和多版本共存(一个电脑里面可以有多个CUDA,设置好环境变量即可)

解决步骤:

  • 下载CUDA 11.2 和其对应 的 CUDNN。
  • 下载PaddleDetection代码。
  • 安装ppdet库(pip install ppdet即可)
  • 安装paddlepaddle-gpu==2.3.1.post112  <当前的最新版  2022.7.1>

再次运行!果然成功了! 

CUDA的安装:

略(这个可是基础哦~~~)

CUDNN对应CUDA版本及下载:

cuDNN Archive | NVIDIA Developerhttps://developer.nvidia.com/rdp/cudnn-archive#a-collapse742-10

后记

最新版本中, 现在CUDA已经支持到了11.6,但是中间跳过了 11.5、11.4、11.3,他还是依然不能用11.5、11.4、11.3,小伙伴们如果是11.5、11.4、11.3型号的,还是只能下载它支持的CUDA的版本了。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

活成自己的样子啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值