0 前言
现在深度学习程序基本基于 python 语言来编写。来自 wikipedia 的说法,Python 是一种广泛使用的解释型高级和通用的编程语言。而我们在使用 Python 的时候更多是说安装 Python 环境,而不是说安装 Python 软件,因为我们在安装 Python 的时候更多是安装 Python 的库 lib 等底层的东西。而除了要管理底层的东西之外,我们需要有个编写代码的地方,编写完代码需要运行代码。因此就有一些 ide 出现,比如 pycharm,既能编写代码又能运行程序。
我们就编写代码和运行代码两部分来看。编写代码是写对应的符合语言语法的文本文件,而运行代码则是调用底层的东西来解释语言,运行语言。此处说的不是十分准确,大体明白意思即可,有兴趣的可以去查阅程序运行的一些文章。
对编写代码而言,有许多种方法,从上古的 vim,到 notebook++,再到现在的 pycharm 和 vscode ,只要能编辑文本,其实就能写代码。当然一开始为了省事建议使用 pycharm 和 vscode,我研究生期间基本用的都是 vscode。
而运行代码的话,则需要配置好环境,比如对应版本的 python,各种包,torch、numpy 等等。但如果我们有两个不同的深度学习项目,用到了不同的 python 版本,那该怎么办呢?答案就是虚拟环境管理,常用 conda 进行管理。为了方便不同的 python 版本同时存在,我们常使用 conda 构建一个个虚拟环境,每个环境可以安装不同版本的 python 以及对应的 torch、numpy 等包,这样当我们需要运行某个程序的时候,切换到对应的环境即可。
1 conda 安装
上文提到的 conda,其实就是 anaconda 或者 miniconda。两者其实就是大或者小的问题,前者功能可能更多,但后者也够用。
官方的快速安装链接:https://docs.conda.io/projects/miniconda/en/latest/index.html#quick-command-line-install。
拿 mac 或者 linux 举例子,安装完 conda 之后,可能需要初始化下,conda init
,然后我们重启 terminal 之后就可以进到 base 环境。
一些命名可以运行 conda --help
查看。
2 虚拟环境构建
正常我们在创建 python 版本为 3.x 的新环境 new_env 的时候应当这样
conda create -n new_env python=3.x
等到创建完之后运行
conda activate new_env
这样就可以切换到 new_env 环境了。
而此时如果需要在这个环境安装其他包,比如 torch、numpy等,就可以放心安装了,此时的安装只针对 new_env 环境,并不会影响到 base 环境和其他环境。