| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 【人工智能实验室】2022寒假第二次培训 -> 正文阅读 |
|
[人工智能]【人工智能实验室】2022寒假第二次培训 |
????????此次培训为写模型预测代码。在描述代码前,我先将自己配环境的血泪史附上。 ? ????????笔者一开始创建了一个torch版本1.2.0、CUDA版本10.0的虚拟环境,但是由于torch版本不够,所以运行后会报错,跑不了此次培训代码,这是因为1.2.0的torch没有Hardswish这个属性,只有更高级的版本才有。以下网址打开可以查看torch版本即它们对应的属性和方法有哪些。 https://pytorch.org/docs/versions.htmlhttps://pytorch.org/docs/versions.html? ? ? ? 于是我就决定安装torch1.9.0,但是又不想删去已有的虚拟环境(因为还有其他用处),所以重新创建了一个虚拟环境。一开始我用轮子的方式来装torch,没有注意到cpu和gpu版本的区别,结果装了cpu版本的torch,而我需要的是gpu版本,于是乎只能重新安装gpu版本的环境了。附上轮子下载的网页: https://download.pytorch.org/whl/torch_stable.htmlhttps://download.pytorch.org/whl/torch_stable.html ????????如图,如果用轮子安装的,文件名前面为cpu的表示cpu版本;前面为cu的才是gpu版本,cu102表示CUDA10.2。同理,用轮子安装torchvision也是通过这样的方式来下载对应版本。? ? ? ? ? 当我好不容易安装好gpu版本torch的时候,我没有意识到torch、torchvision、CUDA三者版本之间的对应性,想当然装了自己想要的版本,结果没对应好导致根本就无法跑代码。所以悲伤的我只能再一次重新安装想要的torch环境。由于我系统装的CUDA版本是10.0,支持torch的最高版本只到1.2.0,而torch1.9.0对应的CUDA版本之一为10.2。这我就头大了,难道我还要卸载CUDA10.0再去安装CUDA10.2?不过好在后来我发现完全可以在虚拟环境安装其他版本的CUDA,和系统的CUDA的版本不会产生冲突,而且只需要指令就能实现安装,不需要像安装系统CUDA那样那么麻烦(比如什么环境变量配置)。于是我就去pytroch官网找到torch1.9.0、CUDA10.2对应的安装命令,这次安装我没有选择轮子,当然官网也提供了轮子方式的命令下载,读者根据自己的需要选择哪种命令即可。官网链接如下: ? ? ? ? 如图,根据我的需要,我选择了红框处的命令。但是在cmd(终端一定要先激活到虚拟环境然后再用这些命令!!!!)输入命令后发现哪些包安装得极其漫长,等了巨久结果还是没安装成功,所以我上网搜索了方法,指令后面的-c pytorch指定了下载的来源是官网,所以导致速度很慢,如果将下载源换成国内的清华源,速度会提高很多。换源操作如下:
? ? ? ? ?清华源链接: anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://mirrors.tuna.tsinghua.edu.cn/help/anaconda/? ? ? ? 这下速度真的提高了很多很多很多!!!很快我需要的环境都装好啦!!!最后一步安装cuDNN,这时候只要输入命令conda install cudnn即可,这里不需要指定cudnn版本,终端会根据前面安装的环境自动判断需要的cudnn版本。当然如果读者不放心还是可以到cudnn官网查询对应版本的cudnn版本,然后指令改为conda install cudnn == XXX。 ? ? ? ? 创建一个python文件,copy如下内容再运行可以测试cuda是否可用(可用输出为True)以及其版本。
? ? ? ? 准备就绪后,再去跑代码,发现报错 Original error was: DLL load failed while importing _multiarray_umath: 找不到指定的模块,解决方案? ? ? ? 发现这是由于Numpy版本太低了,无法匹配对应的python版本。我用pytorch官网提供的指令安装环境时,有些包也会跟着安装上,其中numpy安装为1.21.2版本,python安装了3.9版本,所以这就说明有时候通过pytorch官网提供的指令下载的自动匹配的包也可能版本不对应。但是这些包的安装相对于torch、torchvision来得容易,只需要先指令卸载pip uninstall xxx(包名,如numpy),然后再用指令pip install numpy即可,同理cudnn,终端会自动匹配对应的numpy。安装完成后查看版本,此时numpy版本为1.22。再次运行代码,成功!!!所以说明Python3.9对应的numpy版本为1.22。单个包的安装指令版本自动配对不会出现问题,但是如果像pytroch官网提供的安装torch的指令下,安装其他自动匹配的包,版本可能会出错。 ? ? ? ? 终于大功告成!!! ? ? ? ? 这里再提醒读者一些细节: ? ? ? ? 1、若不用pytorch官网提供的安装torch指令,而使用下载轮子的方式话,需要先了解torch和torchvision以及CUDA三者版本的对应关系(这个直接去百度都有),然后再去分别下载对应版本的轮子。 ? ? ? ? 2、直接用指令pip install torch == xxx安装的torch为cpu版本。 ? ? ? ? 3、装环境前一定要先全过程浏览、掌握,不能装一个看一个,这样很容易踩坑!!! ? ? ? ? 4、安装太慢除了换清华源还可以用如下方式(来自大佬的博客): ? ? ? ? ? ? ? ?5、numpy对应版本的python 链接: Python Extension Packages for Windows - Christoph Gohlke (uci.edu)https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy? ? ? ? ? ? ? ? 好啦!接下来正式进入培训内容讲解! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 17:28:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |