购票网站模板,国防教育网站建设说明书,黑龙江网络推广好做吗,wordpress4.0安装教程接触人工智能的学习三个月了#xff0c;每天与各种安装包作斗争#xff0c;缺少依赖包、版本高了、版本低了、不兼容了、系统做一半从头再来了。。。这些都是常态。三个月把单位几台电脑折腾了不下几十次安装#xff0c;是时候总结一下踩过的坑和积累的经验了。 以一个典型的… 接触人工智能的学习三个月了每天与各种安装包作斗争缺少依赖包、版本高了、版本低了、不兼容了、系统做一半从头再来了。。。这些都是常态。三个月把单位几台电脑折腾了不下几十次安装是时候总结一下踩过的坑和积累的经验了。 以一个典型的学习人工智能Ubuntu系统电脑为例其软件结构和安装顺序为ubuntu--显卡相关驱动、cuda、cudnn--anaconda--pytorchtorch和vision--pycharm--算法应用平台比如mmdetection)。虽然算法应用平台是最后安装的但是各个软件的版本选择却必须从算法应用平台的版本开始因为所有的安装都是为了最后的算法应用平台服务的。这是初学的时候最容易踩的坑往往费劲九牛二虎之力到了最后的环节才发现版本不兼容又得从头再来。我第一次安装用了一个星期才成功。 下面就重新再从头安装一次系统并作记录以备忘。
一、Ubuntu的版本选择 Ubuntu的版本是向下兼容的目前我安装过3个不同时期的版本还没有遇到过由于版本过新造成的不兼容。所以Ubuntu的版本选择原则上是越新越好。唯一需要注意的是非常新的版本有可能对老硬件支持不好比如我就在华硕x99主板电脑上安装v24.10Ubuntu不成功换为v22.04Ubuntu后就安装成功了。
二、安装Ubuntu 安装过程略详见下面链接的文章使用 MMDetection 实现 Pascal VOC 数据集的目标检测项目练习二系统安装_pascal voc数据集-CSDN博客
三、显卡驱动的版本选择 显卡驱动可以新一些它是向下兼容的不选最新版选较新版就可以比较新的版本支持的最高cuda版本会高些会让后面的使用多一些选择。 在Ubuntu系统安装完成之后从设置--关于--软件升级--附加驱动那里安装成功率会很高。不要用那种下载官网驱动然后本地安装的方法很麻烦很容易黑屏变砖。 注意别选open kernel版的我没试过看别人说的不要选。
四、安装最高版本的cuda 安装完Ubuntu之后在安装Ubuntu时创建的这个默认用户下将系统软件和显卡驱动升级并且安装最高版本的CUDA。
允许安装的最高CUDA版本输入以下命令后查看
nvidia-smi 记住这个坑CUDA VERSION 12.2如果显示12.2那么就装12.1因为刚好pytorch在这个附近只有支持cuda12.1的版本没有支持v12.2的。
打开https://developer.nvidia.com/cuda-12-1-0-download-archive 复制图中方框内的链接文字用下载工具或者在浏览器地址栏输入链接下载cuda12.1安装文件cuda_12.1.0_530.30.02_linux.run。 安装过程略详见上面链接的文章。使用 MMDetection 实现 Pascal VOC 数据集的目标检测项目练习二系统安装_pascal voc数据集-CSDN博客 之所以要先安装最高版本的cuda是因为在安装多个版本cuda时如果先装了一个低版本的再安装高版本的时候就报错不允许安装而安装了一个最高版本后就可以继续随意安装比它低的版本。 在这个cuda版本中暂时没有需要的应用所以cudnn、conda、torch等暂不安装需要时再装。 然后根据各个算法应用平台对于cuda和python、torch等的版本特定要求创建新的用户每个用户安装特定版本的cuda和其他软件。
五、特定版本的选择和下载安装
创建一个新用户并添加sudo权限
sudo adduser 新用户名
sudo usermod -aG adm 新用户名
sudo usermod -aG sudo 新用户名 比如我们这里新建一个名为mmde的用户创建这个用户的目的是为了安装和运行mmdetection下面就以运行mmdetection的平台配置为例
sudo adduser mmde
sudo usermod -aG adm mmde
sudo usermod -aG sudo mmde
重启电脑登录新用户开始安装特定版本的应用程序和软件框架。 在mmdetection官网https://mmdetection.readthedocs.io/zh-cn/latest/get_started.html
获取到它推荐的一些版本信息Python3.7cuda9.2pytorch1.8。 后面的所有安装就基于以上的版本要求进行千万不要一昧求新 虽然原则上很多软件都向下兼容但是安装的软件版本过高有可能会出现兼容问题。比如我就在 pytorch2.2.2 python3.11cuda11.8的基础上安装mmdetection失败出错提示的内容是本地已安装的依赖包版本高于了所需版本。 大部分的算法应用平台和框架的官网都会给出依赖软件推荐的版本如果官网没有给出就多翻翻别人的安装文章一定要先做好版本规划再开始安装整个系统这很重要做好系统规划后面的安装基本上都是一次成功。
上面已知mmdetection的版本需求是 Python3.7 cuda9.2 pytorch1.8
各个版本的选择就要比推荐版本略高一点点尽量保持先进性又不至于过分超前。 下面就从pytorch开始来选择版本为什么是pytorch因为pytorch只针对某些特定的cuda版本推出了安装包就是说pytorch“挑”包。有无数人在这里翻车比如安装了cuda12.2发现pytorch只有cuda12.1的版本又回头去安装cuda12.1。所以在确定cuda版本之前要先确认torch的版本。 1、pytorch和torchvision的版本
打开清华源
Index of /anaconda/cloud/pytorch/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
我们的目标 pytorch1.8所以在上面的网页中查找符合预期的版本比如1.9 cuda9.2选择cuda9.2或者cuda10 Python3.7选择3.8 基于以上那么符合要求的就是 点击下载获得文件pytorch-1.9.0-py3.8_cuda10.2_cudnn7.6.5_0.tar.bz2
从上面选定的torch的文件名还获取到了我们需要的各个版本信息 pytorch1.9 python3.8 cuda10.2 cudnn7.6.5
然后参照下面的torch、vision、python的对照表选择torchvision版本 至此获取到了现阶段的版本清单 pytorch1.9.0 torchvision0.10.0 python3.8 cuda10.2 cudnn7.6.5
在网页Index of /anaconda/cloud/pytorch/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 中查找vision-0.10.0-py38_cu102就可以找到cudnn的链接点击下载得到文件torchvision-0.10.0-py38_cu102.tar.bz2 2、anaconda的版本
• anaconda的版本选择依据 conda的base环境预置了一个基础的python和其他各种常用科学计算包、基础包每个conda版本的这些包的出品的时期很接近。 所以conda的版本就要从后面倒推回来算法应用平台对python的版本要求--conda的基础python版本--conda版本。
根据下表 由mmdetection对python的要求python3.8获得了anaconda的版本2021.05
打开清华源搜索和下载
Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 得到文件Anaconda3-2021.05-Linux-x86_64.sh
3、pycharm的版本 官网PyCharm中文网 pycharm的版本尽量新一些功能会多一些尤其是最近的版本直接在IDE中内置了AI插件很好用。另外在创建conda环境方面新版也比老版好用得多建议用次新版。 下载2024.1.7版得到文件pycharm-community-2024.1.7.tar.gz 至此已经明确了所有的版本并且已经下载了部分安装文件下面就按照既定的版本按顺序下载和安装。 安装顺序cuda、cudnn--anaconda--pytorchtorch和vision--pycharm。所有的安装包都拷贝到本用户home/下的私有目录省得因为权限问题纠缠。应用程序安装的路径要选择在所有用户可以访问到的的公用目录比如/opt不要选在用户的私有目录比如各用户的home/否则会有共享权限的麻烦。
4、cuda的下载和安装
CUDA Toolkit Archive | NVIDIA Developer以及
https://developer.nvidia.com/cuda-10.2-download-archive 复制图中方框内的链接文字用下载工具或者在浏览器地址栏输入链接下载cuda10.2安装文件cuda_10.2.89_440.33.01_linux.run 安装过程略详见上面链接的文章。使用 MMDetection 实现 Pascal VOC 数据集的目标检测项目练习二系统安装_pascal voc数据集-CSDN博客
需要注意的是由于当前的GCC版本过高在安装cuda10.2的时候会出错使用Ubuntu中使用多版本的GCC-CSDN博客
的方法来安装GCC7并且用GCC7来安装cuda10.2。
这里注意要选no。 5、cudnn的下载和安装
https://developer.nvidia.com/rdp/cudnn-archive 记得这里有个坑不要选deb格式亲试安装不成功。 点击下载得到文件cudnn-10.2-linux-x64-v7.6.5.32.tgz。安装过程见上面的链接。
6、anaconda的安装
sudo bash Anaconda3-2021.05-Linux-x86_64.sh
Anaconda3-2021.05-Linux-x86_64.sh是之前下载的anaconda安装文件的文件名。 注意在选择安装路径这里要选择到自己定义的以anaconda版本命名的目录下我这里用的是/opt/anaconda2105 使用conda list可以看到 base环境预置了一个3.8.8版本的python与我们的预期是一致的 • 创建新环境 安装完anaconda使用conda创建新环境。如果不使用克隆base环境的方法而是使用这个指令直接创建
conda create --name 环境名 python3.xx 那么直接创建的新环境中就只有几十个必备的包像常用的科学计算和图像处理包如numpy、pillow等都没有预置在后续的安装过程中就经常会提示依赖包不全而造成安装无法进行有时候即使看上去安装成功了运行时又提示缺少依赖包。而如果使用克隆base环境的方法由于base环境已经包含了常用的很多科学计算包后续安装的成功率就会高很多。克隆的唯一缺点是占用硬盘空间比较大一个base环境大约一两个G的空间。 另外不建议在base下直接安装应用包因为在新建的环境中如果安装乱了可以将其删除重建而base环境一旦安装乱了就没法收拾了。
• 使用克隆base创建新环境的方法
conda create -n 新环境名字 --clone base所以这里创建一个克隆base的新环境
conda create -n mmde --clone base7、pytorch和torchvision的安装
在刚创建的名为mmde的新环境中安装pytorch和torchvision。
conda activate mmde 安装pytorch
conda install pytorch-1.9.0-py3.8_cuda10.2_cudnn7.6.5_0.tar.bz2 pytorch-1.9.0-py3.8_cuda10.2_cudnn7.6.5_0.tar.bz2是之前下载的pytorch安装文件的文件名。 安装torchvision
conda install torchvision-0.10.0-py38_cu102.tar.bz2
torchvision-0.10.0-py38_cu102.tar.bz2 是之前下载的torchvision安装文件的文件名。
8、pycharm
新建文件夹
sudo mkdir -p /opt/pycharm
将之前下载得到的文件解压缩到新建的文件夹内
sudo tar -xzf pycharm-community-2024.1.7.tar.gz -C /opt/pycharm 切换到/usr/share/applications/目录这是存放应用程序快捷方式的目录。然后新建一个文本文件pycharm.desktop
cd /usr/share/applications/
sudo nano pycharm.desktop
在其中输入
[Desktop Entry]
NamePyCharm
CommentPython IDE
Exec/opt/pycharm/pycharm-community-2024.1.7/bin/pycharm.sh
Icon/opt/pycharm/pycharm-community-2024.1.7/bin/pycharm.png
Terminalfalse
TypeApplication
CategoriesDevelopment;IDE; 保存并退出现在在应用程序菜单中就可以找到了pycharm的快捷方式 六、环境变量路径的设置 至此已经基本完成了系统的安装。不过由于没有设置cuda路径所以输入
nvcc -V
会出现未安装cuda toolkit
1、单版本和单用户的cuda路径的设置方法 用文本编辑器打开bashrc文件
sudo gedit ~/.bashrc 在bashrc文件的末尾加入
export PATH$PATH:/usr/local/cuda-xx.x/bin
export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/usr/local/cuda-xx.x/lib64
export CUDA_HOME$CUDA_HOME:/usr/local/cuda-xx.x
cuda-xx.x是cuda的实际版本比如11.2。
然后在pycharm中打开settings Environment variables新建两个路径 LD_LIBRARY PATH/usr/local/cuda-xx.x/lib64:/usr/local/cuda-xx.x/extras/CUPTI/lib64:$LD LIBRARY PATH
以及
CUDA_HOME/usr/local/cuda-xx.x 这样的话pycharm的python控制台就指向了特定版本的cuda路径。用这种方式多版本多用户就需要在每个用户下单独安装pycharm。
2、多版本、多用户情况下的的路径设置 如果所有用户既要共用pycharm又想不同用户使用不同的cuda路径只需要针对不同用户分配不同版本cuda路径修改/etv/profile文件根据不同用户的登录在系统启动时就把cuda版本指定好这样的好处是pycharm中不用再设置python控制台路径也不用在每个用户的.bashrc中设置cuda路径。与bashrc文件相比profile文件的作用域更大起效时间更早。详见
Ubuntu系统的.bashrc、/etc/profile 和 /etc/environment文件_ubuntu bashrc-CSDN博客 具体如下
sudo nano /etc/profile 加入内容
if [ $USER user1 ]; thenexport PATH$PATH:/usr/local/cuda-xx.x/binexport LD_LIBRARY_PATH/usr/local/cuda-xx.x/lib64:/usr/local/cuda-xx.x/extras/CUPTI/lib64:$LD_LIBRARY_PATHexport CUDA_HOME/usr/local/cuda-xx.x
elif [ $USER user2 ]; thenexport PATH$PATH:/usr/local/cuda-yy.y/binexport LD_LIBRARY_PATH/usr/local/cuda-yy.y/lib64:/usr/local/cuda-yy.y/extras/CUPTI/lib64:$LD_LIBRARY_PATHexport CUDA_HOME/usr/local/cuda-yy.y
fi
xx.x和yy.y是需要设置的cuda版本号比如10.2和12.1。
七、安装应用平台mmdetection
按官网的推荐 • 执行第一步安装openmim出现了依赖包不全的提示 检查和补全依赖包
pip check # 检查缺少的依赖包
pip install spyder4.2.5
pip check
pip install conda-repo-cli1.0.4
pip check
pip install nanconda-project0.9.1
每安装一个就使用pip check来确认是否还有缺少的包。直到 • 执行第二步mim install mmengine正常安装即可。
• 执行第三步不要使用mim install mmcv2.0.0因为在我安装的这个时间节点2024-11-25,它会安装一个2.2.0版的mmcv但是它的实际运行中又有要求mmcv版本2.2.0这样就会报错。所以改为了mim install mmcv2.1.0安装一个2.1.0版本的mmcv。 下面mmdetection具体的安装过程见 使用 MMDetection 实现 Pascal VOC 数据集的目标检测项目练习三MMDetection安装-CSDN博客 安装完后试运行 一遍过
八、总结 系统中共有cuda toolkit、cudnn、anaconda、pytorch、pycharm以及应用平台比如mmdetection等软件和环境平台。
• Ubuntu的版本在硬件的支持范围内越新越好pycharm也可以用较新的版本。
• 各个软件的版本的选择顺序应用平台比如mmdetection的版本要求--cuda系列和torch系列以及python版本--由python版本获得anaconda版本。
• 除了pycharm之外针对不同的cuda每个用户安装一套版本的软件。
• cuda版本的路径切换在/etc/profile中设置其余的用默认路径设置。