热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

conda和pip两种方式在anaconda3.9中安装pytorch+cpu版踩坑

在pytorch安装中,参考了很多前人的方法,但仍然踩坑,目前没有安装成功。一、conda安装先是在pytorch官网上试着用cond

在pytorch安装中,参考了很多前人的方法,但仍然踩坑,目前没有安装成功。

一、conda安装

先是在pytorch官网上试着用conda安装,

 同时添加了conda安装清华源的唯一镜像源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

目前conda的镜像源如下,使用命令进行查看:

conda config --show-sources

 接着又按照一般方法(他人的帖子)进行了安装:

 一般方法

 如同这篇所说的,conda安装不成,报了一堆版本不匹配的错误,遂踏上漫漫不归的pip安装之路;

二、pip 安装

pip安装,首先考虑我这台新电脑上换源的问题,这时候我才意识到虽然以往会换源,但从来没意识到conda换源和pip换源要分开进行,pip安装和conda安装也应当分别进行,最好一个环境中保持统一。之前也出现过conda和pip安装冲突问题,可以说是踩了一堆坑。。。

目前搜了下,关于如何理解conda、pip、全局的pip以及每个虚拟环境中的pip问题,仍然没有找到相关资源进行深刻理解。现在的理解是,在anaconda的各个虚拟环境中,只要指定了python版本,就会有对应的pip.exe,想使用虚拟环境中单独的pip.exe,仅对该环境中添加一些包,可使用:

python -m pip

也可以单独用conda安装,但是为了避免麻烦,还是使用上面那种,详见我之前的博文

annaconda 虚拟环境安装包pip安装与conda 安装冲突混乱问题

3、正式开始探索

试图在全局的pip中更换清华源:

 可以看到我pip的镜像源的文件pip.ini所在位置。不存在pip.exe,只有pip文件夹

 而我希望pip的虚拟环境中的pip:

 使用

python -m pip

虚拟环境中pip可以用到pip.ini中的镜像源吗?不知道,接下来继续探索,

首先激活并进入虚拟环境,查看当前环境下安装包:

可以看到pytorch没有安装成功,而且一般创建虚拟环境后的pip都不是最新版,所以要先更新pip:

还是谨慎地使用python -m 更新pip:

python -m pip install --upgrade pip

 

 先用pytorch官网的版本库的命令进行安装:

Previous PyTorch Versions | PyTorch

 把 -c pytorch 去掉,因为-c pytorch指定只能从pytorch安装,但是显然我们安装了pip的清华源镜像,故不用加这个后缀:

conda install pytorch==1.4.0 torchvision==0.5.0 cpuonly

过程中没来的及截图,基本没问题,很快安装好了。但是安装完才发现!我还是用conda安装的啊!!!! 至于第一次为什么安装错,报了torchvision和torch的各种冲突错误,应该是使用这条命令

conda install pytorch torchvision torchaudio cpuonly

没有指定版本的关系。 

 

查看当前虚拟环境安装包:用命令 conda list:

可以看到pytorch1.4在conda list里,而且来源为conda pytorch 镜像源了。

然后验证!

 持续报错,心灰意冷,不知所措。似乎是没截图的安装过程中清华源中的一些冲突,不死心,看到有些文中要重复安装,遂决定再试:

只有一个pip要安装??? 

果然仍然报错。。。。

重新创建新环境!

1、创建名为pytorch的虚拟环境:

conda create -n pytorch python==3.6

2、更新pip

python -m pip install --upgrade pip

 

 2、查看安装包

 3、pip安装pytorch,查看官网过往版本

 可以看到有:

pip install torch==1.4.0+cpu torchvision==0.5.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

 改为:

python -m pip install torch==1.4.0+cpu torchvision==0.5.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

运行界面:

最终: 

 

查看当前conda list:

 看上去没问题,进一步验证。

 仍旧报错。

在网上查了一下这个error,把怀疑指向了安装的python版本不对,python、torch、torchvision存在版本对应问题,而后两者版本对应是在官网上安装的,那么只可能是python版本与后两者不匹配了,调查后发现有人指出python3.6.0版本不匹配问题

4、升级python

这里参考了一篇博客https://blog.csdn.net/weixin_42006387/article/details/115334219?ops_request_misc=&request_id=&biz_id=102&utm_term=pip%20install%20torch==1.4.0+cpu%20t&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-115334219.nonecase&spm=1018.2226.3001.4187icon-default.png?t=M276https://blog.csdn.net/weixin_42006387/article/details/115334219?ops_request_misc=&request_id=&biz_id=102&utm_term=pip%20install%20torch==1.4.0+cpu%20t&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-115334219.nonecase&spm=1018.2226.3001.4187

使用命令:

conda install python==3.6.7

 现在的conda list:

 最终测试:

哈哈,总算成功了。

所以最终的完成版本是python3.6.7 +

torch==1.4.0+cpu torchvision==0.5.0+cpu

三、对conda 命令安装cpu版本pytorch的进一步改进

用pip安装完,回头再去看之前pytorch14虚拟环境中用conda命令安装报错,怀疑也可能是python版本问题,于是同样升级python到3.6.7

 检查 conda list发现,用conda 安装pytorch比用pip安装多了很多包,这个错误跟numpy版本有关,那么会不会是一开始创建python版本时就错了呢?于是我又建了一个环境,这次虚拟环境从一开始就设定python版本为3.6.7.

果然是python环境的问题。

四、总结

这次在新电脑上安装了cpu版本的pytorch,总结一下:

第一,pytorch有两种安装方式,conda和pip,在创建虚拟环境前一定要安装好对应的conda 的 pytorch 清华镜像源,以及pip对应的源; 

第二,在虚拟环境创建时,一定要决定好python、pytorch、orchvision三者的版本对应关系。后两者的版本对应关系一定要在pytorch官网上找好。我这次仅仅确定了python3.6.7与pytorch1.4.0的对应关系,也因为一开始没重视这些对应关系而走了很多弯路,在深度学习中,环境与安装包的版本一定要对应!!!重点的一定要记住!!!

第三,创建虚拟环境后,第一件事情查看conda list,当前环境安装包,其次一定要更新虚拟环境中的pip,每次创建虚拟环境后都要及时更新,然后再安装其他包!

安装成功。一下午结束了。


推荐阅读
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了使用postman进行接口测试的方法,以测试用户管理模块为例。首先需要下载并安装postman,然后创建基本的请求并填写用户名密码进行登录测试。接下来可以进行用户查询和新增的测试。在新增时,可以进行异常测试,包括用户名超长和输入特殊字符的情况。通过测试发现后台没有对参数长度和特殊字符进行检查和过滤。 ... [详细]
  • 开发笔记:Java是如何读取和写入浏览器Cookies的
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Java是如何读取和写入浏览器Cookies的相关的知识,希望对你有一定的参考价值。首先我 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 在springmvc框架中,前台ajax调用方法,对图片批量下载,如何弹出提示保存位置选框?Controller方法 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 网络请求模块选择——axios框架的基本使用和封装
    本文介绍了选择网络请求模块axios的原因,以及axios框架的基本使用和封装方法。包括发送并发请求的演示,全局配置的设置,创建axios实例的方法,拦截器的使用,以及如何封装和请求响应劫持等内容。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • EzPP 0.2发布,新增YAML布局渲染功能
    EzPP发布了0.2.1版本,新增了YAML布局渲染功能,可以将YAML文件渲染为图片,并且可以复用YAML作为模版,通过传递不同参数生成不同的图片。这个功能可以用于绘制Logo、封面或其他图片,让用户不需要安装或卸载Photoshop。文章还提供了一个入门例子,介绍了使用ezpp的基本渲染方法,以及如何使用canvas、text类元素、自定义字体等。 ... [详细]
  • JavaWeb中读取文件资源的路径问题及解决方法
    在JavaWeb开发中,读取文件资源的路径是一个常见的问题。本文介绍了使用绝对路径和相对路径两种方法来解决这个问题,并给出了相应的代码示例。同时,还讨论了使用绝对路径的优缺点,以及如何正确使用相对路径来读取文件。通过本文的学习,读者可以掌握在JavaWeb中正确找到和读取文件资源的方法。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • node.jsurlsearchparamsAPI哎哎哎 ... [详细]
  • 通过Anaconda安装tensorflow,并安装运行spyder编译器的完整教程
    本文提供了一个完整的教程,介绍了如何通过Anaconda安装tensorflow,并安装运行spyder编译器。文章详细介绍了安装Anaconda、创建tensorflow环境、安装GPU版本tensorflow、安装和运行Spyder编译器以及安装OpenCV等步骤。该教程适用于Windows 8操作系统,并提供了相关的网址供参考。通过本教程,读者可以轻松地安装和配置tensorflow环境,以及运行spyder编译器进行开发。 ... [详细]
author-avatar
Ray依依
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有