【好工具】 深度学习炼丹,你怎么能少了这款工具!

欢迎来到【好工具】专栏,本次我们给介绍一款可以进行远程深度学习炼丹的工具 JupyterLab 及其配置流程,帮助读者在本地进行调试,Max 开发效率。

作者 & 编辑 | Leong

导言

不知道读者们有没有发现,如果你用 Anaconda 中的 Notebook 的话,有时想快速调试几行程序,这时打开 Notebook 每次都得好一会,而且会占用了不少的本地资源,这时要是有一个远程的 Notebook,想用的时候随时打开,而且又不用考虑占用本地的计算资源,那该有多好。说干就干!开始我们的配置之旅吧。

工具:一台服务器(带 GPU 的更好,还可以进行远程训练)、Xshell 软件

PS:笔者之前购买了一台腾讯云的服务器,所以就用它来进行演示。

文后提供相关工具的下载!

安装 Anaconda

(1) 下载 Anaconda 安装包

访问

https://www.anaconda.com/distribution/#linux 

选择 Linux 3.7 版本的软件包,复制链接地址,使用 wget 命令进行下载。(笔者服务器的系统是 Ubuntu)

【好工具】 深度学习炼丹,你怎么能少了这款工具!

wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh

这样就下载了一个 Anaconda3-2020.02-Linux-x86_64.sh 文件

(2) SHA256 验证

SHA256 验证,主要是来验证所下载的软件包是否完整,防止文件内容被篡改,验证的方法是运行下面命令,会出现一串字符。

sha256sum  Anaconda3-2020.02-Linux-x86_64.sh

【好工具】 深度学习炼丹,你怎么能少了这款工具!

https://docs.anaconda.com/anaconda/install/hashes/ 

找到对应的版本,点击进去就会看见 sha256 码,一般是和你终端输出的字符串是一致的,就说明下载的软件包没有问题。

【好工具】 深度学习炼丹,你怎么能少了这款工具!

(3) 安装

运行命令安装

bash Anaconda3-2020.02-Linux-x86_64.sh

【好工具】 深度学习炼丹,你怎么能少了这款工具!

一直回车到底,到最后输入一个 yes 确认同意协议

【好工具】 深度学习炼丹,你怎么能少了这款工具!

安装位置确认 ,回车默认好啦

【好工具】 深度学习炼丹,你怎么能少了这款工具!

开始解压安装

【好工具】 深度学习炼丹,你怎么能少了这款工具!

出现 “Do you wish the installer to initialize Anaconda3 by running conda init?”,输入 yes 回车

【好工具】 深度学习炼丹,你怎么能少了这款工具!

安装成功

【好工具】 深度学习炼丹,你怎么能少了这款工具!

运行 source ~/.bashrc 生效

【好工具】 深度学习炼丹,你怎么能少了这款工具!

安装 JupyterLab

JupyterLab 是 Jupyter Notebook 的下一代产品,集成了更多功能。如果你租过别人的远程服务器的话,那么你会发现,现在很多都是 JupyterLab 居多。所以,我们也使用 JupyterLab 来作为我们的开发界面。

# conda 安装 

conda install -c conda-forge jupyterlab   

# 或者 pip 安装 

pip install jupyterlab

【好工具】 深度学习炼丹,你怎么能少了这款工具!

等待安装即可。。

配置远程访问

既然要进行远程访问开发,那么就需要进行配置。

(1) 生成验证字符

终端运行 ipython  并运行以下命令,设置密码即可(输入密码时是看不见的),然后会生成一串字符,待会需要用到。

In [1]: from notebook.auth import passwd    
In [2]: passwd()

Enter password:

Verify password:
Out[2]: 'sha1:2af47044eb4d:f7c917997d5a91bdeeb4a4a1cab7266b844c94bb'

【好工具】 深度学习炼丹,你怎么能少了这款工具!

(2) 生成配置文件

jupyter lab --generate-config

【好工具】 深度学习炼丹,你怎么能少了这款工具!

(3) 修改配置

修改配置文件的几处地方(修改的时候记得将前面的 # 删除),笔者是下载到本地后修改后再上传到服务器的。

将 ip 设置为 *,意味允许任何 IP 访问

【好工具】 深度学习炼丹,你怎么能少了这款工具!

这里的密码就是上边我们生成的那一串

【好工具】 深度学习炼丹,你怎么能少了这款工具!

服务器上并没有浏览器可以供 Jupyter 打开,所以设置成 False

【好工具】 深度学习炼丹,你怎么能少了这款工具!

监听端口设置为 8888 或其他自己喜欢的端口

【好工具】 深度学习炼丹,你怎么能少了这款工具!

允许远程访问

【好工具】 深度学习炼丹,你怎么能少了这款工具!

我们把工作空间设置在 /home/ubuntu/code 下面,所以进入到该路径下运行 jupyter lab --allow-root 即可使用

【好工具】 深度学习炼丹,你怎么能少了这款工具!

为了让程序在后台运行,我们可以使用 tmux 工具(可以后台运行的工具)

# 安装 tmux 工具

apt install tmux 

# 启动一个窗口,关闭后程序仍然可以在后台运行

tmux -S jupyterlab  # 参数jupyterlab是窗口名随意

# 运行我们所要的程序

jupyter lab --allow-root 

关闭终端窗口,完成!!

在浏览器中输入 ip:8888/lab(换成你服务器的 ip 和端口)输入密码即可看到以下的窗口。

【好工具】 深度学习炼丹,你怎么能少了这款工具!

远程可视化

大家在训练深度学习模型的时候,往往需要对指标进行可视化,其中 Tensorboard 就是一款不错的工具,下面就给大家演示如何在本地显示远程服务器的可视化结果。

首先在 Notebook 运行一个演示程序

【好工具】 深度学习炼丹,你怎么能少了这款工具!

在 Xshell 进行以下设置

【好工具】 深度学习炼丹,你怎么能少了这款工具!

然后运行 tensorboard --logdir runs/ 

【好工具】 深度学习炼丹,你怎么能少了这款工具!

最后在本地的浏览器输入 http://localhost:6006/ 即可看到可视化效果了。

【好工具】 深度学习炼丹,你怎么能少了这款工具!

【好工具】 深度学习炼丹,你怎么能少了这款工具!

后台回复 Notebook 可以获取相关工具

扫码加入有三言选知识星球,共享好资源

【好工具】 深度学习炼丹,你怎么能少了这款工具!

转载文章请后台联系

侵权必究

【好工具】 深度学习炼丹,你怎么能少了这款工具!

【好工具】 深度学习炼丹,你怎么能少了这款工具!

【好工具】 深度学习炼丹,你怎么能少了这款工具!