**Author By Bing **
On 2020-08-06
[toc]
1. Anaconda简介
1.1 特点
Anaconda是Python的包管理器和环境管理器,其包含了conda、Python等180多个科学包及其依赖项。
我已经安装了Python,那么为什么还需要Anaconda呢?原因有以下几点:
- Anaconda附带了一大批常用数据科学包,它附带了conda、Python和 180 多个科学包及其依赖项,因此你可以用Anaconda立即开始处理数据。
- 包管理:Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。在数据分析中,你会用到很多第三方的包,而conda(包管理器)可以很好的帮助你在计算机上安装和管理这些包,包括安装、卸载和更新包。
- 环境管理:为什么需要管理环境呢?比如你在A项目中用到了Python2,而新的项目要求使用Python3,而同时安装两个Python版本可能会造成许多混乱和错误。这时候conda就可以帮助你为不同的项目建立不同的运行环境。还有很多项目使用的包版本不同,比如不同的pandas版本,不可能同时安装两个pandas版本。你要做的应该是在项目对应的环境中创建对应的pandas版本。这时候conda就可以帮你做到。
1.2 下载
官网地址:https://www.anaconda.com/download/
官方archive: https://repo.anaconda.com/archive/ (推荐,全)
清华镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/(推荐,快)
1.3 Anaconda 安装包版本与Python版本对应关系
Release date | conda | python2.7 | python3.4 | python3.5 | python3.6 | python3.7 | python3.8 |
---|---|---|---|---|---|---|---|
2015/2/25 | 3.4.3 | ||||||
2015/5/23 | 2.7.10 | ||||||
2015/9/13 | 3.5.0 | ||||||
2015/12/5 | 2.7.11 | ||||||
2015/12/7 | 3.5.1 | ||||||
2015/12/21 | 3.4.4 | ||||||
2016/3/29 | conda 4.0.5 | Anaconda2-4.0.0 | Anaconda3-4.0.0 | ||||
(python 2.7.11) | (python 3.5.1) | ||||||
2016/6/28 | conda 4.1.4 | Anaconda2-4.1.0 | Anaconda3-4.1.0 | ||||
(python 2.7.11) | (python 3.5.1) | ||||||
2016/6/25 | 2.7.12 | ||||||
2016/6/27 | 3.4.5 | 3.5.2 | |||||
2016/7/8 | conda 4.1.6 | Anaconda2-4.1.1 | Anaconda3-4.1.1 | ||||
(python 2.7.12) | (python 3.5.2) | ||||||
2016/9/28 | conda 4.2.9 | Anaconda2-4.2.0 | Anaconda3-4.2.0 | ||||
(python 2.7.12) | (python 3.5.2) | ||||||
2016/12/17 | 2.7.13 | ||||||
2016/12/23 | 3.6.0 | ||||||
2017/1/17 | 3.4.6 | 3.5.3 | |||||
2017/1/31 | conda 4.3.8 | Anaconda2-4.3.0 | Anaconda3-4.3.0 | ||||
(python 2.7.13) | (python 3.6.0) | ||||||
2017/3/10 | conda 4.3.14 | Anaconda2-4.3.1 | Anaconda3-4.3.1 | ||||
(python 2.7.13) | (python 3.6.0) | ||||||
2017/3/21 | 3.6.1 | ||||||
2017/5/31 | conda 4.3.21 | Anaconda2-4.4.0 | Anaconda3-4.4.0 | ||||
(python 2.7.13) | (python 3.6.1) | ||||||
2017/7/17 | 3.6.2 | ||||||
2017/8/8 | 3.5.4 | ||||||
2017/8/9 | 3.4.7 | ||||||
2017/9/26 | conda 4.3.27 | Anaconda2-5.0.0 | Anaconda3-5.0.0 | ||||
(python 2.7.13) | (python 3.6.2) | ||||||
2017/9/16 | 2.7.14 | ||||||
2017/10/3 | 3.6.3 | ||||||
2017/10/25 | conda 4.3.30 | Anaconda2-5.0.1 | Anaconda3-5.0.1 | ||||
(python 2.7.14) | (python 3.6.3) | ||||||
2017/12/19 | 3.6.4 | ||||||
2018/2/5 | 3.4.8 | 3.5.5 | |||||
2018/2/15 | conda 4.4.10 | Anaconda2-5.1.0 | Anaconda3-5.1.0 | ||||
(python 2.7.14) | (python 3.6.4) | ||||||
2018/3/28 | 3.6.5 | ||||||
2018/5/1 | 2.7.15 | ||||||
2018/5/30 | conda 4.5.4 | Anaconda2-5.2.0 | Anaconda3-5.2.0 | ||||
(python 2.7.15) | (python 3.6.5) | ||||||
2018/6/27 | 3.6.6 | 3.7.0 | |||||
2018/8/2 | 3.4.9 | 3.5.6 | |||||
2018/9/28 | conda 4.5.11 | Anaconda2-5.3.0 | Anaconda3-5.3.0 | ||||
(python 2.7.15) | (python 3.7.0) | ||||||
2018/10/20 | 3.6.7 | 3.7.1 | |||||
2018/12/21 | conda 4.5.12 | Anaconda2-2018.12 | Anaconda3-2018.12 | ||||
(python 2.7.15) | (python 3.7.1) | ||||||
2018/12/24 | 3.6.8 | 3.7.2 | |||||
2019/3/4 | 2.7.16 | ||||||
2019/3/18 | 3.4.10 | 3.5.7 | |||||
2019/3/25 | 3.7.3 | ||||||
2019/4/4 | conda 4.6.11 | Anaconda2-2019.03 | Anaconda3-2019.03 | ||||
(python 2.7.16) | (python 3.7.3) | ||||||
2019/7/2 | 3.6.9 | ||||||
2019/7/8 | 3.7.4 | ||||||
2019/7/24 | conda 4.7.10 | Anaconda2-2019.07 | Anaconda3-2019.07 | ||||
(python 2.7.16) | (python 3.7.3) | ||||||
2019/10/14 | 3.8.0 | ||||||
2019/10/15 | 3.7.5 | ||||||
2019/10/19 | 2.7.17 | ||||||
2019/10/29 | 3.5.8 | ||||||
2019/11/2 | 3.5.9 |
1.4 安装
略
Note:注意添加环境变量
1.5 软件简介
-
Jupyter Lab
- JupyterLab,极其强大的下一代notebook!
-
Jupyter Notebook-REPL
- Jupyter Notebook介绍、安装及使用教程
-
Spyder-IDE
- Spyder使用教程
1.6 pip 与 conda之争
配置源的目的:官方服务器在国外,下载速度慢。配置源可以加速下载所需要的软件包。
配置pip源
临时源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas
-
固定源
- 类Unix
cd mkdir .pip # 注意有个点 vim pip.conf # 写入以下内容 [global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple [install] trusted-host = https://pypi.tuna.tsinghua.edu.cn
- Windows
# 在user目录下新建一个pip目录,注意没有“点”。然后新建pip.ini文件,写入以下内容 [global] index-url = http://pypi.douban.com/simple [install] trusted-host = pypi.douban.com
附:国内知名镜像地址 PIP下载安装更高效
配置conda源
-
临时源
- 这个不太常用,没试过,以后试过再来补充。
-
固定源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main conda config --set show_channel_urls yes
-
换回默认源
conda config --remove-key channels
在执行conda config 命令的时候,会在当前用户目录下创建.condarc
文件,注意
附:conda国内镜像修改最新版
pip VS conda
https://www.sohu.com/a/259103573_657064
https://www.jianshu.com/p/5601dab5c9e5
小孩子才做选择,成年人的我全都要。
将pip与conda结合的主要原因是有些包只能通过pip安装。 Anaconda创酷提供超过1,500个软件包,包括最流行的数据科学,机器学习和AI框架。这些,以及包括conda-forge和bioconda在内的数据通过Anaconda云提供的数千个附加软件包,可以使用conda进行安装。尽管有大量的软件包,但与PyPI上提供的150,000多个软件包相比,它仍然很小。有时候需要的包没有conda包,但在PyPI上有,可以用pip安装。
2. 虚拟环境
2.1 使用conda管理虚拟环境
- 创建虚拟环境
conda create -n xb_py_venv
之后y确认即可。
- 激活(脱出)虚拟环境
source activate xb_py_venv #激活
source deactivate xb_py_venv #不激活
其他关于conda的命令
列出所有已有虚拟环境
conda env list
conda info -e
- 创建新的虚拟环境
conda create -n env_name python=version
- 激活并进入虚拟环境
conda activate env_name
- 删除一个已有的虚拟环境(以下两条指令均可)
conda env remove -n env_name
- 分享代码的时候,同时也需要将运行环境分享给大家
conda env export > env.yaml
- 用对方分享的YAML文件来创建一模一样的运行环境
conda env create -f env.yaml
- Jupyter 运行Anaconda的虚拟环境
source activate env_name
conda install ipykernel (注意:在虚拟环境中安装ipykernel)
python -m ipykernel install --name env_name --display-name "env_name" (写入Jupyter的kernel中)
jupyter notebook
- 管理包
- 管理指定虚拟环境的包
conda install package_name -n env_name
conda install package_name
conda install pack=version (指定安装包的版本)
- 删除包
conda remove package_name
- 更新包
conda update package_name
- 列出所有已安装的包
conda list
- 搜索包
conda search package_name
2.2 使用virtualenv管理虚拟环境
pip install virtualenv
virtualenv --no-site-packages xb_test1
2.3 使用venv管理虚拟环境
# venv 不用安装,需要python3.3以上
python -m venv ./xb_test2
3. PyTorch深度学习环境配置
3.1 Linux篇
前提是Anaconda各种环境都配置好
- 安装CUDA (是NVIDIA推出的用于自家GPU的并行计算框架)
- https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#pre-installation-actions
- 安装PyTorch
- 在官网
https://pytorch.org/
根据自己的系统、包管理器、语言以及CUDA版本获取安装命令,如conda install pytorch torchvision cudatoolkit=10.2 -c pytorch
- 在官网
- 安装CUDNN加速((CUDA Deep Neural Network library),是NVIDIA打造的针对深度神经网络的加速库,不必须)
# 卸载已有的旧版本
sudo apt-get purge cuda
sudo apt-get purge libcudnn6
sudo apt-get purge libcudnn6-dev
# 根据自己的系统版本下载
wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libcudnn7-dev_7.0.5.15-1+cuda9.0_amd64.deb
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libnccl2_2.1.4-1+cuda9.0_amd64.deb
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libnccl-dev_2.1.4-1+cuda9.0_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
sudo dpkg -i libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb
sudo dpkg -i libnccl2_2.1.4-1+cuda9.0_amd64.deb
sudo dpkg -i libnccl-dev_2.1.4-1+cuda9.0_amd64.deb
sudo apt-get update
sudo apt-get install cuda=9.0.176-1
sudo apt-get install libcudnn7-dev
sudo apt-get install libnccl-dev
# 重启系统
# 修改环境变量
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
3.2 Windows篇
https://app.yinxiang.com/fx/25e4c22d-f868-486e-9208-e77920e287c7