提交 2259ed09 编写于 作者: A Aston Zhang

revise install

上级 7adf124f
......@@ -50,7 +50,7 @@
### 用Jupyter Notebook读写GitHub源文件
如果你希望为本书内容做贡献,需要修改在GitHub上Markdown格式的源文件(.md文件非.ipynb文件)。通过notedown插件,我们就可以使用Jupyter Notebook修改并运行Markdown格式的源代码。Linux/macOS用户可以执行以下命令获得GitHub源文件并激活运行环境。
如果你希望为本书内容做贡献,需要修改在GitHub上Markdown格式的源文件(.md文件非.ipynb文件)。通过notedown插件,我们就可以使用Jupyter notebook修改并运行Markdown格式的源代码。Linux/macOS用户可以执行以下命令获得GitHub源文件并激活运行环境。
```
git clone https://github.com/mli/gluon-tutorials-zh
......@@ -59,22 +59,22 @@ conda env create -f environment.yml
source activate gluon # Windows 用户运行 activate gluon
```
下面安装notedown插件,运行Jupyter Notebook并加载插件:
下面安装notedown插件,运行Jupyter notebook并加载插件:
```
pip install https://github.com/mli/notedown/tarball/master
jupyter notebook --NotebookApp.contents_manager_class='notedown.NotedownContentsManager'
```
如果你希望每次运行Jupyter Notebook时默认开启notedown插件,可以参考下面步骤。
如果你希望每次运行Jupyter notebook时默认开启notedown插件,可以参考下面步骤。
首先,执行下面命令生成Jupyter Notebook配置文件(如果已经生成可以跳过)。
首先,执行下面命令生成Jupyter notebook配置文件(如果已经生成可以跳过)。
```
jupyter notebook --generate-config
```
然后,将下面这一行加入到Jupyter Notebook配置文件的末尾(Linux/macOS上一般在`~/.jupyter/jupyter_notebook_config.py`)
然后,将下面这一行加入到Jupyter notebook配置文件的末尾(Linux/macOS上一般在`~/.jupyter/jupyter_notebook_config.py`)
```
c.NotebookApp.contents_manager_class = 'notedown.NotedownContentsManager'
......@@ -85,17 +85,17 @@ c.NotebookApp.contents_manager_class = 'notedown.NotedownContentsManager'
### 在远端服务器上运行Jupyter Notebook
有时候,我们希望在远端服务器上运行Jupyter Notebook,并通过本地电脑上的浏览器访问。如果本地机器上安装了Linux或者macOS(Windows通过第三方软件例如putty应该也能支持),那么可以使用端口映射:
有时候,我们希望在远端服务器上运行Jupyter notebook,并通过本地电脑上的浏览器访问。如果本地机器上安装了Linux或者macOS(Windows通过putty等第三方软件也能支持),那么可以使用端口映射:
```
ssh myserver -L 8888:localhost:8888
```
以上`myserver`是远端服务器地址。然后我们可以使用 http://localhost:8888 打开远端服务器`myserver`上运行Jupyter Notebook。
以上`myserver`是远端服务器地址。然后我们可以使用 http://localhost:8888 打开运行Jupyter notebook的远端服务器`myserver`。我们将在下一节详细介绍如何在AWS实例上运行Jupyter notebook。
### 运行计时
我们可以通过ExecutionTime插件来对Jupyter Notebook的每个代码单元的运行计时。以下是安装该插件的命令。
我们可以通过ExecutionTime插件来对Jupyter notebook的每个代码单元的运行计时。以下是安装该插件的命令。
```
pip install jupyter_contrib_nbextensions
......
# 安装和运行
为了便于动手学深度学习,让我们获取本书代码、安装并运行所需要的工具,例如Python、MXNet和Jupyter notebook。在这一节中,我们将描述安装和运行所需要的命令。执行命令需要进入命令行模式:Linux/macOS用户可以打开Terminal应用,Windows用户可以在文件资源管理器的地址栏输入`cmd`
为了动手学深度学习,我们需要获取本书代码,安装并运行Python、MXNet、Jupyter notebook等工具。
## 进入命令行模式
在这一节中,我们将描述安装和运行所需要的命令。执行命令需要进入命令行模式:Windows用户可以在文件资源管理器的地址栏输入`cmd`并按回车键,Linux/macOS用户可以打开Terminal应用。
## 获取代码并安装运行环境
我们可以通过Conda或者Docker来获取本书代码并安装运行环境。下面将分别介绍这两种选项
我们可以通过Conda来获取本书代码并安装运行环境。Windows和Linux/macOS用户请分别参照以下步骤
### 选项一:通过Conda安装(推荐)
### Windows用户
第一步,根据操作系统下载并安装Miniconda(网址:https://conda.io/miniconda.html )。
第二步,下载包含本书全部代码的包,解压后进入文件夹。Linux/macOS用户可以使用如下命令。
第二步,下载包含本书全部代码的包。我们可以在浏览器的地址栏中输入以下地址并按回车键进行下载:
```
mkdir gluon_tutorials_zh && cd gluon_tutorials_zh
curl https://zh.gluon.ai/gluon_tutorials_zh.tar.gz -o tutorials.tar.gz
tar -xzvf tutorials.tar.gz && rm tutorials.tar.gz
```
> https://zh.gluon.ai/gluon_tutorials_zh.zip
Windows用户可以用浏览器下载压缩文件(下载地址:https://zh.gluon.ai/gluon_tutorials_zh.zip )并解压。在解压目录文件资源管理器的地址栏输入`cmd`进入命令行模式。
下载完成后,解压该文件并进入文件夹“gluon_tutorials_zh”。在该目录文件资源管理器的地址栏输入`cmd`进入命令行模式。
在本步骤中,我们也可以配置下载源来使用国内镜像加速下载:
第三步,安装运行所需的依赖包并激活该运行环境。我们可以先通过运行下面命令来配置下载源,从而使用国内镜像加速下载:
```
# 优先使用清华 conda 镜像。
......@@ -32,16 +33,7 @@ conda config --prepend channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pk
conda config --prepend channels http://mirrors.ustc.edu.cn/anaconda/pkgs/free/
```
第三步,安装运行所需的依赖包并激活该运行环境。Linux/macOS用户可以使用如下命令。
```
conda env create -f environment.yml
source activate gluon
```
由于教程会使用`matplotlib.plot`函数作图,macOS用户需要创建或访问`~/.matplotlib/matplotlibrc`文件并添加一行代码:`backend: TkAgg`
Windows用户可以使用如下命令。
然后运行以下命令安装并激活运行环境。
```
conda env create -f environment.yml
......@@ -56,112 +48,140 @@ jupyter notebook
这时在浏览器打开 http://localhost:8888 (通常会自动打开)就可以查看和运行本书中每一节的代码了。
第五步(可选项),如果你是国内用户,建议使用国内Gluon镜像加速数据集和预训练模型的下载。Linux/macOS用户可以运行下面命令。
第五步(可选项),如果你是国内用户,建议使用国内Gluon镜像加速数据集和预训练模型的下载。运行下面命令。
```
MXNET_GLUON_REPO=https://apache-mxnet.s3.cn-north-1.amazonaws.com.cn/ jupyter notebook
set MXNET_GLUON_REPO=https://apache-mxnet.s3.cn-north-1.amazonaws.com.cn/ jupyter notebook
```
Windows用户可以运行下面命令。
### Linux/macOS用户
```
set MXNET_GLUON_REPO=https://apache-mxnet.s3.cn-north-1.amazonaws.com.cn/ jupyter notebook
```
第一步,根据操作系统下载并安装Miniconda(网址:https://conda.io/miniconda.html )。
### 选项二:通过Docker安装
第二步,下载包含本书全部代码的包,解压后进入文件夹。运行如下命令。
第一步,下载并安装[Docker](https://docs.docker.com/engine/installation/)
```
mkdir gluon_tutorials_zh && cd gluon_tutorials_zh
curl https://zh.gluon.ai/gluon_tutorials_zh.tar.gz -o tutorials.tar.gz
tar -xzvf tutorials.tar.gz && rm tutorials.tar.gz
```
如果你是Linux用户,可以运行下面命令。之后登出一次。
第三步,安装运行所需的依赖包并激活该运行环境。我们可以先通过运行下面命令来配置下载源,从而使用国内镜像加速下载:
```
wget -qO- https://get.docker.com/ | sh
sudo usermod -aG docker
# 优先使用清华 conda 镜像。
conda config --prepend channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# 或者选用科大 conda 镜像。
conda config --prepend channels http://mirrors.ustc.edu.cn/anaconda/pkgs/free/
```
第二步,运行下面命令
然后运行以下命令安装并激活运行环境
```
docker run -p 8888:8888 muli/gluon-tutorials-zh
conda env create -f environment.yml
source activate gluon
```
第三步,在浏览器打开http://localhost:8888 ,这时通常需要填Docker运行时产生的token
由于教程会使用`matplotlib.plot`函数作图,macOS用户需要创建或访问`~/.matplotlib/matplotlibrc`文件并添加一行代码:`backend: TkAgg`
第四步,打开Juputer notebook。运行下面命令。
## 更新代码和运行环境
```
jupyter notebook
```
目前我们仍然一直在快速更新教程,通常每周都会加入新的章节。同时MXNet的Gluon前端也在快速发展,因此我们推荐大家也做及时的更新。更新包括下载最新的教程,和更新对应的依赖(通常是升级MXNet)
这时在浏览器打开 http://localhost:8888 (通常会自动打开)就可以查看和运行本书中每一节的代码了
由于MXNet在快速发展中,我们会根据改进的MXNet版本定期更新书中的代码。同时,我们也会不断补充新的教学内容,以适应深度学习的快速发展。因此,我们推荐大家定期更新代码和运行环境。以下列举了几种更新选项
第五步(可选项),如果你是国内用户,建议使用国内Gluon镜像加速数据集和预训练模型的下载。运行下面命令
```
MXNET_GLUON_REPO=https://apache-mxnet.s3.cn-north-1.amazonaws.com.cn/ jupyter notebook
```
### 选项一:通过Conda更新(推荐)
## 激活运行环境
第一步,重新下载最新的包含本书全部代码的包,解压后进入文件夹。下载地址可以从以下二者之间选择
运行环境中已安装了运行书中代码所需的Python、MXNet、Jupyter notebook等工具。我们可以在下载并解压的代码包里的文件“gluon_tutorials_zh/environment.yml”中查看它们。在运行书中代码前,我们需要激活运行环境。Windows和Linux/macOS用户请分别参照以下步骤激活并退出运行环境
* https://zh.gluon.ai/gluon_tutorials_zh.zip
* https://zh.gluon.ai/gluon_tutorials_zh.tar.gz
### Windows用户
第二步,使用下面命令更新运行环境。
首先进入之前解压得到的文件夹“gluon_tutorials_zh”。然后在该目录文件资源管理器的地址栏输入`cmd`进入命令行模式。最后运行以下命令激活安装环境。
```
conda env update -f environment.yml
activate gluon
```
### 选项二:通过Docker更新
我们可以直接下载新的Docker image,例如执行下面的命令。
如需退出激活环境,运行以下命令。
```
docker pull muli/gluon-tutorials-zh
deactivate
```
### 选项三:通过Git更新
### Linux/macOS用户
第一步,如果你熟悉Git操作,可以直接pull并且合并可能造成的冲突:
首先在命令行模式下进入之前解压得到的文件夹“gluon_tutorials_zh”(例如运行`cd gluon_tutorials_zh`),然后运行以下命令激活安装环境。
```
git pull https://github.com/mli/gluon-tutorials-zh
source activate gluon
```
果不想造成冲突,在保存完有价值的本地修改以后,你可以在pull前先用reset还原到上次更新的版本:
需退出激活环境,运行以下命令。
```
git reset --hard
source deactivate
```
## 更新代码和运行环境
为了适应深度学习和MXNet的快速发展,本书的开源内容将定期发布新版本。我们推荐大家定期更新本书的开源内容(例如代码)和相应的运行环境(例如新版MXNet)。以下是更新的具体步骤。
第一步,重新下载最新的包含本书全部代码的包,解压后进入文件夹“gluon_tutorials_zh”。下载地址可以从以下二者之间选择。
* https://zh.gluon.ai/gluon_tutorials_zh.zip
* https://zh.gluon.ai/gluon_tutorials_zh.tar.gz
第二步,使用下面命令更新运行环境。
```
conda env update -f environment.yml
```
## 使用GPU
## 使用GPU版的MXNet
通过上述方式安装的MXNet只支持CPU。本书中有部分章节需要或推荐使用GPU来运行。假设电脑有Nvidia显卡并且安装了CUDA7.5、8.0或9.0,那么先卸载CPU版本:
通过前面介绍的方式安装的MXNet只支持CPU计算。本书中有部分章节需要或推荐使用GPU来运行。如果你的电脑上有Nvidia显卡并安装了CUDA,建议使用GPU版的MXNet。
我们在完成获取代码并安装运行环境的步骤后,需要先激活运行环境。然后卸载CPU版本的MXNet:
```
pip uninstall mxnet
```
然后,根据电脑上安装的CUDA版本,使用以下三者之一安装相应的GPU版MXNet
接下来,退出运行环境。使用文本编辑器打开之前解压得到的代码包里的文件“gluon_tutorials_zh/environment.yml”。如果电脑上装的是8.0版本的CUDA,将该文件中的字符串“mxnet”改为“mxnet-cu80”。如果电脑上安装了其他版本的CUDA(比如7.5、9.0、9.2等),对该文件中的字符串“mxnet”做类似修改(比如改为“mxnet-cu75”、“mxnet-cu90”、“mxnet-cu92”等)。然后,使用下面命令更新运行环境
```
pip install --pre mxnet-cu75 # CUDA 7.5
pip install --pre mxnet-cu80 # CUDA 8.0
pip install --pre mxnet-cu90 # CUDA 9.0
conda env update -f environment.yml
```
我们建议国内用户使用豆瓣pypi镜像加速下载。以mxnet-cu80为例,我们可以使用如下命令
之后,我们只需要再激活安装环境就可以使用GPU版的MXNet运行书中代码了
```
pip install --pre mxnet-cu80 -i https://pypi.douban.com/simple # CUDA 8.0
```
### 更新代码和运行环境
需要注意的是,如果你安装GPU版的MXNet,使用`conda update`命令不会自动升级GPU版的MXNet。这时候可以运行了`source activate gluon`后手动更新MXNet。以mxnet-cu80为例,我们可以使用以下命令手动更新MXNet。
如果使用GPU版的MXNet,更新代码和运行环境可参照以下步骤:
第一步,重新下载最新的包含本书全部代码的包,解压后进入文件夹“gluon_tutorials_zh”。下载地址可以从以下二者之间选择。
* https://zh.gluon.ai/gluon_tutorials_zh.zip
* https://zh.gluon.ai/gluon_tutorials_zh.tar.gz
第二步,使用文本编辑器打开文件夹“gluon_tutorials_zh”中的环境配置文件“environment.yml”。如果电脑上装的是8.0版本的CUDA,将该文件中的字符串“mxnet”改为“mxnet-cu80”。如果电脑上安装了其他版本的CUDA(比如7.5、9.0、9.2等),对该文件中的字符串“mxnet”做类似修改(比如改为“mxnet-cu75”、“mxnet-cu90”、“mxnet-cu92”等)。
第三步,使用下面命令更新运行环境。
```
pip install --pre mxnet-cu80 # CUDA 8.0
conda env update -f environment.yml
```
## 小结
......@@ -172,7 +192,7 @@ pip install --pre mxnet-cu80 # CUDA 8.0
## 练习
* 获取本书代码并安装运行环境。如果你在安装时遇到任何问题,请扫一扫本节二维码。在讨论区,你可以查阅疑难问题汇总,或者向社区小伙伴们提问。
* 获取本书代码并安装运行环境。如果你在安装时遇到任何问题,请扫一扫本节二维码。在讨论区,你可以查阅疑难问题汇总或者提问。
## 扫码直达[讨论区](https://discuss.gluon.ai/t/topic/249)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册