以安装PyTorch为例说明Anaconda在Windows/Linux上的使用

2023-11-09

在Windows10上配置完MXNet 1.3.0后,再配置PyTorch 1.0时,发现两者需要依赖的NumPy版本不一致,之前是通过pip安装NumPy,根据pip的版本不同,会安装不同版本的NumPy,使用起来很不方便,而且MXNet和PyTorch依赖的Python版本也可能不同,这里使用Anaconda来轻松解决以上问题。

简单来说,Anaconda是包管理器和环境管理器,它可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本,其包含了conda, numpy, scipy, Python等在内的1400多个科学包及其依赖项。Anaconda是在conda上发展出来的。Anaconda有2.x和3.x两个版本,2.x对应于Python的2.x,3.x对应于Python的3.x,因为Python2.x不久便会停止维护,因此直接下载Ananconda3.x版本即可,其中又分为32位和64位,根据需要下载对应的即可。

conda是包及其依赖项和环境的管理工具,可运行在Windows, Linux, Mac平台,它可以快速安装、运行和升级包及其依赖项,可以在计算机中便捷地创建、保存、加载和切换环境。如果你需要的包要求不同版本的Python,你无需切换到不同的环境,因为conda同样是一个环境管理器。仅需要几条命令,你可以创建一个完全独立的环境来运行不同的Python版本,同时继续在你常规的环境中使用你常用的Python版本。conda可以建立多个虚拟环境,在不同环境之间进行切换比较方便,环境管理也较为简单。

conda为Python项目而创造,但可适用于R, Ruby, C/C++等多种语言。conda包和环境管理器包含于Anaconda的所有版本当中。pip是用于安装和管理软件包的包管理器。virtualenv是用于创建一个独立的Python环境的工具。conda结合了pip和virtualenv的功能。

windows上安装Anaconda操作步骤:

(1). 从  https://www.anaconda.com/download/#windows下载Anaconda3-2018.12-Windows-x86_64.exe ,大约614MB;

(2). 以管理员身份运行Anaconda3-2018.12-Windows-x86_64.exe,然后依次点击Next;I Agree;Next;选择安装路径,这里安装到D:\ProgramFiles\Anaconda3,Next;勾选Register Anaconda as the system Python 3.7, Install;Next;不安装Microsoft VSCode,Skip;取消勾选Lear more, Finish;安装完成;安装完后D:\ProgramFiles\Anaconda3目录大小大约为5GB;

(3). 以管理员身份运行Anaconda Prompt,在命令行中输入conda list,若结果可以正常显示,则说明安装成功,如下图所示:

(4). 更新所有包,执行 conda upgrade --all,结果如下图:

(5). 创建环境,安装pytorch 1.0版本,如环境名为pytorch1.0,包名为python,python版本为3.6,执行conda create -n pytorch1.0 python=3.6,结果如下图:

(6). 进入环境,环境名为pytorch1.0,执行conda activate pytorch1.0,结果如下图:

(7). 安装pytorch 1.0版本,CPU, Python3.6,执行conda install pytorch-cpu torchvision-cpu -c pytorch,结果如下图:

(8). 验证pytorch 1.0是否安装正确,测试代码及执行结果如下,说明pytorch 1.0已正确安装:

(9). 退出环境,执行conda deactivate,结果如下图:

(10). 创建另一新环境pytorch0.4.1,安装pytorch 0.4.1版本,python版本为3.6,执行conda create -n pytorch0.4.1 python=3.6,结果如下图:

(11). 进入pytorch0.4.1环境,执行conda activate pytorch0.4.1,结果如下图,注意:行首括号内的变化,之前未进入环境前是(base),进入pytorch1.0环境后是(pytorch1.0),现在进入pytorch0.4.1环境后是(pytorch0.4.1),即行首括号内显示的是当前所在的环境名:

(12). 删除指定的环境,如删除pytorch0.4.1,执行conda env remove -n pytorch0.4.1,结果如下图:

(13). 显示已创建的环境,执行conda info --envs,结果如下图,新建的环境均在Anaconda安装目录(D:\ProgramFiles\Anaconda3)的envs目录下:

(14). 复制环境,假设已存在环境test,想复制环境test到test2,则执行conda create --name test2 --clone test,结果如下图,复制后两个环境test和test2的配置相同:

(15). 共享环境,它能让其他人安装你的代码中使用的所有包,并确保这些包的版本正确,假如你当前环境为test2,想将test2的环境导出,则执行conda env export > test2.yaml,即将当前环境test2保存到test2.yaml文件中,结果如下图,生成的文件存放地址在C:/WINDOWS/system32;

(16). 导入共享环境,执行conda env update -f= C:/WINDOWS/system32/test2.yaml,-f表示要导入文件的本地路径,结果如下图所示:

ubuntu上安装Anaconda操作步骤:

(1). 从 https://www.anaconda.com/download/#linux 下载Anaconda3-2018.12-Linux-x86_64.sh,大约652MB;

(2). 依次执行以下命令,结果如下图所示:

chmod +x Anaconda3-2018.12-Linux-x86_64.sh
./Anaconda3-2018.12-Linux-x86_64.sh

(3). 启动Anaconda,执行:$ source ~/.bashrc 或关闭终端,然后再打开终端;

(4). 验证Anaconda是否安装正确,执行 conda list,结果如下,说明Anaconda已被成功安装;

(5). 创建环境,环境名为pytorch0.4.1,包名为python,版本为3.6,执行conda create -n pytorch0.4.1 python=3.6,结果如下:

(6). 进入环境pytorch0.4.1,执行conda activate pytorch0.4.1,结果如下:

(7). 安装pytorch 0.4.1,python版本为3.6,CUDA版本为8.0,这里通过从https://pytorch.org/get-started/previous-versions/ 下载cu80/torch-0.4.1-cp36-cp36m-linux_x86_64.whl文件进行安装,文件大小约471MB,本机已安装CUDA 8.0,执行conda install ./ torch-0.4.1-cp36-cp36m-linux_x86_64.whl时一直报Solving environment: failed, PackagesNotFoundError: The following packages are not available from current channels错误,后面换成使用pip命令安装,结果如下:

(8). 验证pytorch 0.4.1 cuda8.0版本是否安装正确,测试代码及执行结果如下,说明安装正确。

conda在windows和linux下常用命令如下:

# 显示conda版本号
conda --version
# 更新所有包
conda upgrade --all
# 查看conda帮助信息
conda --help
# 安装包,如numpy
conda install numpy
# 安装指定版本号的包,如numpy 1.10
conda install numpy=1.10
# 可同时安装多个包,如pandas numpy
conda install pandas numpy
# 卸载包,如numpy
conda remove numpy
# 更新包,如numpy
conda update numpy
# 列出已安装的包
conda list
# 搜索包,如numpy
conda search numpy
# 创建新环境,如环境名为pytorch1.0,包名为python,python版本号为3.6
conda create -n pytorch1.0 python=3.6
# 进入新环境,如pytorch1.0
conda activate pytorch1.0
# 退出环境
conda deactivate
# 删除指定环境,如环境名为pytorch0.4.1
conda env remove -n pytorch0.4.1
# 显示已创建的环境
conda info --envs
# 复制环境,如将已存在的环境名test复制到test2,复制后两个环境test2和test的配置相同
conda create --name test2 --clone test
# 导出共享环境,假如你当前环境为test2,想将test2的环境导出
conda env export > test2.yaml
# 导入共享环境,加入导入test2.yaml,-f表示yaml文件的本地路径
conda env update -f= C:/WINDOWS/system32/test2.yaml

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以安装PyTorch为例说明Anaconda在Windows/Linux上的使用 的相关文章

  • Python setuptools:如何在 setup.py 中添加私有存储库 (gitlab)?

    我上传了 2 个包 它们位于我的 gitlab 存储库中 如果我想使用 pip 将它们安装在我的系统中 这很容易 因为 gitlab 可以帮助您 https docs gitlab com ee user packages pypi rep
  • Flask+Nginx+uWSGI:导入错误:没有名为站点的模块

    我安装为http www reinbach com uwsgi nginx flask virtualenv mac os x html http www reinbach com uwsgi nginx flask virtualenv
  • 从Python中的字符串中提取货币金额

    我正在制作一个程序 从字符串中获取货币并将其转换为其他货币 例如 如果字符串是 the car cost me 13 250 我需要得到 and 13250 我已经有了这个正则表达式 1 确实如此 但是该字符串很有可能有多个价格 并且全部使
  • boto3 资源(例如 DynamoDB.Table)的类型注释

    The boto3库提供了几种返回资源的工厂方法 例如 dynamo boto3 resource dynamodb Table os environ DYNAMODB TABLE 我想注释这些资源 以便我可以获得更好的类型检查和完成 但我
  • for 循环如何评估其参数

    我的问题很简单 Does a for循环评估它每次使用的参数 Such as for i in range 300 python 是否会为此循环的每次迭代创建一个包含 300 个项目的列表 如果是的话 这是避免这种情况的方法吗 lst ra
  • 希伯来语中的稀疏句子标记化错误

    尝试对希伯来语使用稀疏句子标记 import spacy nlp spacy load he doc nlp text sents list doc sents I get Warning no model found for he Onl
  • Tweepy StreamListener 到 CSV

    我是 python 新手 我正在尝试开发一个应用程序 使用 Tweepy 和 Streaming API 从 Twitter 检索数据并将数据转换为 CSV 文件 问题是此代码不会创建输出 CSV 文件 也许是因为我应该将代码设置为在实现例
  • 当我在 Pandas 中使用 df.corr 时,我的一些列丢失了

    这是我的代码 import numpy as np import pandas as pd import seaborn as sns import matplotlib pyplot as plt data pd read csv dea
  • 如何在 Python 3 中循环遍历集合,同时从集合中删除项目

    这是我的情况 我有一个list set 哪个并不重要 movieplayer我想调用的对象 preload 功能开启 该预加载函数可以立即返回 但希望将来返回一点 我想存储这个电影播放器 集合 表明它们尚未预加载 然后循环它们 调用prel
  • python是带有字符串的运算符行为[重复]

    这个问题在这里已经有答案了 我无法理解以下行为 我正在创建 2 个字符串 并使用 is 运算符来比较它 对于第一种情况 它的工作方式有所不同 对于第二种情况 它按预期工作 当我使用逗号或空格时 它显示是什么原因False与比较is当没有使用
  • PySide6.1 与 matplotlib 3.4 不兼容

    当我只安装PySide6时 GUI程序运行良好 但是一旦我安装了matplotlib及其依赖包 包括pyqt5 则GUI程序将无法运行并输出以下错误消息 This application failed to start because no
  • Pandas 滚动窗口 Spearman 相关性

    我想使用滚动窗口计算 DataFrame 两列之间的 Spearman 和 或 Pearson 相关性 我努力了df corr df col1 rolling P corr df col2 P为窗口尺寸 但我似乎无法定义该方法 添加meth
  • 动态 __init_subclass__ 方法的参数绑定

    我正在尝试让类装饰器工作 装饰器会添加一个 init subclass 方法到它所应用的类 但是 当该方法动态添加到类中时 第一个参数不会绑定到子类对象 为什么会发生这种情况 举个例子 这是可行的 下面的静态代码是我试图最终得到的示例 cl
  • 如何使用 Django 项目设置 SQLite?

    我已阅读 Django 文档 仅供参考 https docs djangoproject com en 1 3 intro tutorial01 https docs djangoproject com en 1 3 intro tutor
  • 在Python中计算内存碎片

    我有一个长时间运行的进程 不断分配和释放对象 尽管正在释放对象 但 RSS 内存使用量会随着时间的推移而增加 如何计算发生了多少碎片 一种可能性是计算 RSS sum of allocations 并将其作为指标 即便如此 我该如何计算分母
  • 乘以行并按单元格值附加到数据框

    考虑以下数据框 df pd DataFrame X a b c d Y a b d e Z a b c d 1 2 1 3 df 我想在 列中附加数字大于 1 的行 并在该行中的数字减 1 df 最好应该 然后看起来像这样 或者它可能看起来
  • 如何使用 sys.path.append 在 Python 中导入文件?

    我的桌面上有两个目录 DIR1 and DIR2其中包含以下文件 DIR1 file1 py DIR2 file2 py myfile txt 这些文件包含以下内容 file1 py import sys sys path append s
  • 具有屏蔽无效值的 pcolormesh

    我试图将一维数组绘制为 pcolormesh 因此颜色沿 x 轴变化 但每个 x 的 y 轴保持不变 但我的数据有一些错误值 因此我使用屏蔽数组和自定义颜色图 其中屏蔽值设置为蓝色 import numpy as np import mat
  • 如何循环遍历字典列表并打印特定键的值?

    我是 Python 新手 有一个问题 我知道这是一个非常简单的问题 运行Python 3 4 我有一个需要迭代并提取特定信息的列表 以下是列表 称为部分 的示例 已截断 数千个项目 state DEAD id phwl type name
  • 如何为所有用户安装 Anaconda python?

    Anaconda python 发行版 https store continuum io cshop anaconda 非常方便地部署科学计算环境 SCE 并根据需要切换python版本 默认情况下 安装会将 python 定位到 anac

随机推荐