跳到主要内容

软件环境配置

本年度课程推荐使用 Google Colaboratory 完成作业。如果你已有配备 GPU 的计算机,希望在本地开发,也可以按照下面的说明配置虚拟环境。

使用 Google Colaboratory 云端环境

Google Colaboratory 可以看作 Jupyter 笔记本与 Google 云端硬盘的结合。它完全在云端运行,并预装 PyTorch、TensorFlow 等软件包,使大家能使用相同的依赖环境。Colab 还提供 GPU(如 K80、P100)和 TPU 等硬件加速资源的免费访问,对作业 2、3 尤其有帮助。

使用条件。需要一个关联 Google 云端硬盘的 Google 账号。准备好后,按以下步骤将 Colab 与云端硬盘连接:

  1. 点击右上角的齿轮图标,选择 Settings(设置)。
  2. 点击 Manage Apps(管理应用)选项卡。
  3. 在顶部选择 Connect more apps(连接更多应用),打开 GSuite Marketplace 窗口。
  4. 搜索 Colab,然后点击 Add(连接)。

操作流程。每次作业都提供一个 ZIP 下载链接,内含 Colab 笔记本和 Python 起始代码。将文件夹上传至云端硬盘,在 Colab 中打开笔记本并完成作业,再把进度保存回云端硬盘。建议观看下方教程视频,其中以作业 1 为例演示了推荐流程。

使用建议。Colab 的免费计算资源并不保证始终可用。如果闲置一段时间,或总连接时间超过允许上限(原文约为 12 小时),虚拟机就会断开,未保存的进度也会丢失。因此,做作业时应养成频繁保存代码的习惯。有关资源限制的更多信息,请阅读 Colab 常见问题。

使用 GPU。只需在 Colab 中切换运行环境:点击 Runtime -> Change runtime type -> Hardware Accelerator -> GPU,将硬件加速器设为 GPU,当前实例便会使用 GPU 计算资源。

想进一步了解 Colab,可以阅读以下资料:

配置本地开发环境

本地开发应使用虚拟环境,可以通过 Anaconda(推荐)或 Python 自带的 venv 模块创建。请使用 Python 3.7,课程已不再支持 Python 2。

Anaconda 虚拟环境

推荐使用免费的 Anaconda Python 发行版,便于管理软件包依赖。原文要求下载 Python 3 版本,对应安装 Python 3.7。Anaconda 默认包含 MKL 优化,因此无需修改代码,就能显著提升 numpy 和 scipy 运算的速度。

安装 Anaconda 后,建议为课程创建一个单独的虚拟环境。如果坚持不使用虚拟环境(强烈不推荐),就必须自行确保所有依赖包已在系统环境中正确安装。要创建名为 cs231n 的虚拟环境,请在终端执行:

# this will create an anaconda environment
# called cs231n in 'path/to/anaconda3/envs/'
conda create -n cs231n python=3.7

执行 conda activate cs231n 激活并进入环境;执行 conda deactivate cs231n 或关闭终端即可退出。每次开始做作业时,都需要重新执行 conda activate cs231n。

# sanity check that the path to the python
# binary matches that of the anaconda env
# after you activate it
which python
# for example, on my machine, this prints
# $ '/Users/kevin/anaconda3/envs/sci/bin/python'

通过 Anaconda 管理虚拟环境的详细说明见此页面。

注意:如果已选择 Anaconda,可以跳过下一节,直接阅读安装依赖包。

Python venv 虚拟环境

Python 从 3.3 开始内置轻量级虚拟环境模块 venv。每个虚拟环境有自己独立的软件包集合,与系统环境相互隔离;使用的 Python 版本与创建它的解释器一致。要创建名为 cs231n 的虚拟环境,请在终端执行:

# this will create a virtual environment
# called cs231n in your home directory
python3.7 -m venv ~/cs231n

执行 source ~/cs231n/bin/activate 激活并进入环境;执行 deactivate 或关闭终端即可退出。每次开始做作业时,都需要重新执行 source ~/cs231n/bin/activate。

# sanity check that the path to the python
# binary matches that of the virtual env
# after you activate it
which python
# for example, on my machine, this prints
# $ '/Users/kevin/cs231n/bin/python'

安装依赖包

通过 conda 或 venv 创建并激活虚拟环境后,使用 pip 安装作业所需的依赖库:

# again, ensure your virtual env (either conda or venv)
# has been activated before running the commands below
cd assignment1  # cd to the assignment directory

# install assignment dependencies.
# since the virtual env is activated,
# this pip is associated with the
# python binary of the environment
pip install -r requirements.txt